Blog

Encoding Settings For Perfect Ipadiphone Video

Tech Talk

Encoding

AJUSTES DE CODIFICACIÓN PARA UN VÍDEO PERFECTO PARA IPAD/IPHONE

Jan 24, 2012

Con sólo unos pocos perfiles de codificación, puedes transmitir vídeo de alta calidad a todos los dispositivos iOS e incluso prepararte para futuras generaciones de hardware móvil.

Cualquier editor de vídeo que se precie ya es compatible con el iPad y el iPhone o tiene que plantearse seriamente la posibilidad de hacerlo. Para algunos grandes editores, la difusión en iPad representa un tercio o más del total de visionados de vídeo.

Sin embargo, codificar para iOS es un poco complicado. Estos dispositivos han pasado por varias generaciones de capacidades técnicas, y los ajustes de vídeo ideales para el iPhone 4 no lo son para el iPhone 3GS o para el iPad.

Afortunadamente, con sólo unos pocos perfiles de codificación, puedes transmitir vídeo de alta calidad a todos los dispositivos iOS, desde el primer iPhone hasta el iPad 2, e incluso prepararte para futuras generaciones de hardware móvil.

Ajustes generales

Como la mayoría de los vídeos actuales, utiliza vídeo h.264 y audio AAC cuando te dirijas a iOS.

On the audio side, consider using HE-AAC at <64kbps, for App Store compliance. HE-AAC sounds reasonably good at these bitrates, even for complex audio.

En cuanto al vídeo, utiliza varios perfiles para cada dispositivo. El iPhone 3GS y los anteriores solo admiten el perfil h.264 Baseline, nivel 3.0 (y algunos admiten una versión más limitada que esa), mientras que los dispositivos más recientes admiten los perfiles Main y High.

Para obtener la mejor experiencia de usuario, HTTP Live Streaming (HLS) es imprescindible. Apple se lo exige a cualquier aplicación de vídeo de la App Store que reproduzca contenidos de más de 10 minutos, y es el único verdadero formato de streaming compatible con iOS. HLS también está siendo adoptado por Android (versión 3+), Roku y otros destinos.

Enfoque general

Resolution

Profile

Bitrate

@ 16:9

@ 4:3

Audio

Comments

1024×768

Main@3.1

2Mbps

1024×576

1024×768

56kbps HE-AAC

 

960×640

Main@3.1

1.5Mbps

960×540

854×640

56kbps HE-AAC

 

640×432

Main@3.1

1Mbps

640×360

576×432

56kbps HE-AAC

 

480×320

Baseline@3.0

600kbps

480×272

426×320

56kbps HE-AAC

 

400×288

Baseline@3.0

400kbps

400×224

384×288

56kbps HE-AAC

 

400×288

Baseline@3.0

200kbps

400×224

384×288

56kbps HE-AAC

decimate frame rate

N/A (Audio Only)

 

 

 

 

56kbps HE-AAC

 

¿Por qué estas recomendaciones?

  • Son sólo recomendaciones. Las resoluciones y tasas de bits diferentes son perfectamente válidas y, de hecho, pueden ser preferibles en algunas circunstancias. Por ejemplo, un contenido extremadamente complejo puede justificar bitrates más altos.
  • 720p es el mayor tamaño de vídeo reproducible en el iPad 1 y el iPhone 4, y el iPad 2/iPhone 4S reproducen hasta 1080p. Pero como la pantalla nativa sólo tiene 1024 píxeles de ancho, llegar hasta 720p o 1080p no es crítico. A no ser, claro, que quieras reutilizar un vídeo en otro sitio: 720p es una resolución estupenda para la reproducción web a pantalla completa, y 1080p es totalmente apropiada para televisores conectados. Se rumorea que los futuros iPad tendrán cuatro veces la resolución del iPad actual, así que considera añadir 720p para estar preparado para el futuro.
  • El perfil h.264 es importante. Tanto el iPad 1 como el iPhone 4 admiten el perfil Principal. El iPad 2 y el iPhone 4S admiten el perfil Alto, que es ligeramente mejor que el Principal, pero dado el número de dispositivos iPad 1 que hay en el mundo, probablemente sea mejor ceñirse al perfil Principal. Para una orientación realmente óptima de los dispositivos, codifique tanto en Main como en High.
  • Estas seis resoluciones y tasas de bits proporcionan una cobertura razonablemente buena de los distintos anchos de banda. Sin duda podrías hacer más, así que añade o quita resoluciones y perfiles según lo desees.
  • Los usuarios de los antiguos iPhone/iPod Touch dispondrán de tres flujos, incluido un vídeo de 480×320 de calidad razonablemente alta (la resolución de pantalla de estos dispositivos). Los usuarios del iPad y el iPhone 4 podrán hacer uso de las seis secuencias.
  • El escalador de resolución del iPad es bastante bueno, así que los vídeos reescalados se verán bien en general.
  • En la medida de lo posible, estos ajustes permiten dimensiones de resolución divisibles por 16. De este modo, la compresión es más eficaz. El aumento de eficiencia es pequeño, sobre todo a resoluciones altas, pero a resoluciones más bajas empieza a marcar la diferencia.
  • Asegúrate de mantener el audio idéntico en cada vídeo. Si las especificaciones de audio cambian de una versión a otra, el usuario puede oír chasquidos durante la reproducción al cambiar de flujo.

Otros ajustes

  • Ajuste la velocidad en función del tiempo de respuesta deseado. Para estas recomendaciones, vamos a utilizar la velocidad 2, que mejora un poco la compresión con respecto a la línea de base, pero sigue siendo razonablemente rápida.
  • Ensure that each segment is roughly the same size by using a peak bitrate\_cap of 150% of the target bitrate, but within a long buffer\_size (e.g., five seconds, or 5x the bitrate\_cap).
  • Brightcove automatically chooses proper keyframe placement when you set the type to “segmented.” If you’re encoding to MP4 for separate segmenting to HLS, set forced\_keyframe\_rate to “0.2” or “0.1” (for five or 10 second keyframe intervals, respectively).
  • If you can accept slightly unpredictable bitrates, add quality to the mix, and change video\_bitrate to max\_video\_bitrate to optimize for file size. The encoder will use the max bitrate when needed, and will use a lower bitrate when it can achieve the desired quality with fewer bits.
  • Set the max\_frame\_rate to 30 and the max\_audio\_sample\_rate to 48000.
  • The first generation if iOS devices only allow one h.264 reference\_frame, so enable this on the Baseline streams for max compatibility.