2010-07-15 16 views

Respuesta

2

Si tuviera que adivinar, podría utilizar el iPhone's own specifications como una guía para la prueba: formatos

de vídeo compatibles: vídeo H.264 de hasta 720p, 30 fotogramas por segundo, perfil principal de nivel 3.1 con AAC- Audio LC de hasta 160 Kbps, 48kHz, audio estéreo en formatos de archivo .m4v, .mp4 y .mov; Video MPEG-4, hasta 2.5 Mbps, 640 por 480 píxeles, 30 cuadros por segundo, perfil simple con audio AAC-LC de hasta 160 Kbps por canal, 48kHz, audio estéreo en formatos de archivo .m4v, .mp4 y .mov ; Motion JPEG (M-JPEG) hasta 35 Mbps, 1280 por 720 píxeles, 30 fotogramas por segundo, audio, audio estéreo PCM en formato de archivo .avi

+0

Gracias por adivinar, pero me gustaría tener una respuesta más definitiva. ¿Alguien quiere hacer algunas pruebas para verificar esto? – Avalanchis

+0

Sería extraño que las propias especificaciones de Apple fueran incorrectas, ¿no crees? –

+0

El hecho de que el iPhone sea compatible con un formato de video determinado no significa necesariamente que la API en cuestión lo acepte. Aunque no tengo ninguna información que sugiera lo contrario, esperaba que alguien pudiera confirmar que realmente admite cada uno de estos formatos. – Avalanchis

4

Si desea una lista de las tecnologías de audio/video compatibles , lea la Descripción general de la tecnología de iOS, en particular, el Media Layer (desplácese hacia abajo hasta donde dice "Tecnologías de video").

Las tecnologías de vídeo de apoyo a iOS la reproducción de archivos de película con la .mov, .mp4, .m4v, .3gp y nombre de archivo y extensiones usando los siguientes estándares de compresión :

  • Vídeo H.264, hasta 1.5 Mbps, 640 por 480 píxeles, 30 fotogramas por segundo, Versión de baja complejidad del H.264 Perfil básico con audio AAC-LC up a 160 Kbps, 48 ​​kHz, audio estéreo en .m 4v, .mp4 y .mov formatos

  • de vídeo H.264, hasta 768 Kbps, 320 por 240 píxeles, 30 fotogramas por segundo, perfil básico hasta nivel 1.3 con audio AAC-LC hasta 160 Kbps, 48 ​​kHz, audio estéreo en .m4v, .mp4 y .mov formatos de archivo

  • vídeo MPEG-4, hasta 2.5 Mbps, 640 por 480 píxeles, 30 fotogramas por segundo, perfil simple con audio AAC-LC hasta 160 Kbps, 48 ​​kHz, audio estéreo en Formatos de archivo .m4v, .mp4 y .mov

  • Numerosos formatos de audio, incluyendo los que se enumeran en “Audio Technologies”

Esa es la información de referencia para los marcos de medios en iOS.

14

Nadie ha mencionado esto todavía, pero depende del dispositivo iPhone/iOS. Al crear una aplicación que intenta copiar videos de Flickr al álbum de fotos, me frustraba cuando obtenía resultados de datos no válidos en writeVideoAtPathToSavedPhotosAlbum: llamadas para un iPhone que no sea Retina.

Ejecuté algunas pruebas de videoAtPathIsCompatibleWithSavedPhotosAlbum en videos de Flickr de varios tamaños, como se solicita en esta pregunta.

 
            iPhone  iPhone  iPad 
           (non-Retina) (Retina) 
6119419764_orig.mov 
H.264, 1,920 x 1,080    NO    NO   NO 
Linear PCM, 16 bit 
little-endian signed 
integer, 48000 Hz, 
Stereo (L R) 
35.33 Mbit/s 

6119419764_hd.mp4 
AVC Coding, 1,280 x 720   NO    YES   YES 
AAC, 44100 Hz, Stereo (L R) 
2.15 Mbit/s 

6119419764_site.mp4 
AVC Coding, 640 x 360    NO    YES   YES 
AAC, 44100 Hz, Stereo (L R) 
833.71 kbit/s 

6119419764_mobile.mp4 
AVC Coding, 568 x 320    YES   YES   YES 
AAC, 32000 Hz, Mono 
775.14 kbit/s 

6121206003_orig.mov 
(Taken with iPhone 3Gs)   
H.264, 480 x 360     YES   YES   YES 
AAC, 44100 Hz, Mono 
865.94 kbit/s 
30 fps 

6110638568_reformat.mov 
H.264, 640 x 360     YES   YES   YES 
AAC, 44100 Hz, Mono 
3.57 Mbit/s 

En base a esta prueba limitada, por un formato y un dispositivo dado, parece que el tamaño importa la mayoría. (Para los actuales métodos de codificación de Flickr y url scheme, mobile vídeos funcionan en todos los álbumes de fotos dispositivo iOS, mientras que hd y site vídeos sólo funcionan en la retina iPhones y iPads.)

Una nota interesante es que los vídeos de alta definición se juego en iPhones que no sean retina con MPMoviePlayerController; simplemente no puede guardarlos en el álbum de fotos.

+1

¡Buen cuadro detallado! Anecdóticamente, aún no he encontrado un caso en el que MPMoviePlayerController reproduzca un video de alta resolución que no llegue a CameraRoll, en particular videos tomados con Galaxy S5 (no estoy seguro de qué configuración, QA solicitó usar la mejor calidad posible) ganado No juego incluso en un iPhone 5C (no intenté 5S).Pero no tengo el nivel de detalle que proporciona aquí con respecto a las características de los videos. –

0

No parece haber una manera documentada de consultar qué formatos harán feliz a videoAtPathIsCompatibleWithSavedPhotosAlbum y el hecho de que un dispositivo pueda decodificar un determinado formato no significa que AssetLibrary lo acepte. Sin embargo, esperaría que un dispositivo equipado con cámara siempre pueda guardar la salida de mayor resolución de la cámara en el carrete de la cámara.

Si puede vivir con esta suposición, entonces todo lo que tiene que hacer es enumerar el AVCaptureDevices y consultar los diversos ajustes preestablecidos con supportsAVCaptureSessionPreset.

pruebas de Victor muestran que el área de píxeles parece importar más, por lo que una vez que se haya interrogado AVCaptureSessionPreset1920x1080, AVCaptureSessionPreset1280x720, AVCaptureSessionPreset640x480 usted debería ser capaz de elegir un tamaño que hará videoAtPathIsCompatibleWithSavedPhotosAlbum decir SÍ.

No tengo idea de cómo lo resolverías para los dispositivos sin cámara.

3

Recientemente agregué una función de exportación de video para la ráfaga de fotos en vivo en mi aplicación de cámara súper rápida SnappyCam Pro.

para atender a los dispositivos nuevos y viejos por igual, terminé la creación de unos 4 MPEG-videos "sonda", cada uno con un solo marco negro, en una variedad de 4: 3 resoluciones:

  1. 320x240px
  2. 640x480px 960x720px
  3. 1440x1080px

los cuatro archivos de vídeo añaden simplemente 12KB a la App Bundle.

Al iterar a través de cada uno, con -[ALAssetsLibrary videoAtPathIsCompatibleWithSavedPhotosAlbum:], pude determinar qué opciones son válidas para la exportación final del video de Camera Roll.

+0

¡Agradable! Me gusta este enfoque –

Cuestiones relacionadas