AVFoundation max render size

He buscado mucho y parece que no pudo encontrar una respuesta definitiva al tamaño máximo de renderización de un video en iOS utilizando AVFoundation .

Necesito unir dos o más videos uno al lado del otro o encima de cada uno y reproducirlos en un nuevo video con un tamaño final mayor a 1920 x 1080. Así, por ejemplo, si tengo dos videos de alta definición (1920 x 1080) al mismo time que el La composition final sería 3840 x 1080.

Lo he intentado con AVAssetExportSession y siempre networkinguce el video final proporcionalmente a un máximo de 1920 en ancho o 1080 en altura. Es bastante comprensible debido a todas las configuraciones posibles de AVAssetExportSession como preset, tipo de file, etc.

Intenté también usar AVAssetReader y AVAssetWriter pero los resultados son los mismos. Solo tengo más control sobre la calidad, el bitrate, etc.

Entonces … ¿hay alguna manera de que esto se pueda lograr en iOS o tenemos que seguir max Full HD?

Gracias

Bueno … En realidad, la respuesta debería ser y también NO . Al less de lo que he encontrado hasta ahora.

H.264 permite resoluciones más altas solo con un perfil de nivel superior que está bien. Sin embargo, en iOS, el perfil máximo que se puede usar es AVVideoProfileLevelH264High41 que según las especificaciones, permite una resolución máxima de 1,920 × 1,080 @ 30,1 fps o 2,048 × 1,024 @ 30,0 fps . Por lo tanto, la encoding con H.264 no hará el trabajo y la respuesta debería ser NO .

La otra opción es utilizar otra compression / códec. AVVideoCodecJPEG y pude reproducir dicho video. Entonces, la respuesta debería ser . Pero … el problema es que este video no se puede reproducir en iOS, que de nuevo cambia la respuesta a NO .

Para resumir, diría: es posible si ese video está destinado a ser utilizado fuera del dispositivo, de lo contrario, el video simplemente no será utilizable.

Espero que también ayude a otras personas y si alguien da una respuesta mejor, incluso diferente, me alegraré.