Blog

Encoding Settings For Perfect Ipadiphone Video

Tech Talk

Encoding

PARAMÈTRES D'ENCODAGE POUR UNE VIDÉO IPAD/IPHONE PARFAITE

Jan 24, 2012

Avec seulement quelques profils d'encodage, vous pouvez diffuser des vidéos de haute qualité sur tous les appareils iOS et même vous préparer pour les générations futures de matériel mobile.

Tout éditeur vidéo sérieux prend déjà en charge l'iPad et l'iPhone ou doit réfléchir sérieusement à la possibilité de le faire. Pour certains grands éditeurs, la diffusion sur iPad représente un tiers du total des vidéos vues, voire plus.

L'encodage pour iOS est cependant un peu délicat. Ces appareils ont connu plusieurs générations de capacités techniques, et les paramètres vidéo idéaux pour l'iPhone 4 ne le sont pas pour l'iPhone 3GS ou l'iPad.

Heureusement, quelques profils d'encodage suffisent pour diffuser des vidéos de haute qualité sur tous les appareils iOS, du premier iPhone à l'iPad 2, et même pour préparer les futures générations d'appareils mobiles.

Paramètres généraux

Comme la plupart des vidéos actuelles, utilisez la vidéo h.264 et l'audio AAC lorsque vous ciblez 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 ce qui concerne la vidéo, utilisez plusieurs profils pour cibler chaque appareil. L'iPhone 3GS et les modèles antérieurs ne prennent en charge que le profil h.264 Baseline, niveau 3.0 (et certains prennent en charge une version plus limitée), tandis que les appareils plus récents prennent en charge les profils Main et High.

Pour une expérience utilisateur optimale, le HTTP Live Streaming (HLS) est indispensable. Apple l'exige pour toutes les applications vidéo de l'App Store qui diffusent des contenus de plus de 10 minutes, et c'est le seul véritable format de diffusion en continu pris en charge par iOS. Le HLS est également adopté par Android (version 3+), Roku et une série d'autres destinations.

Approche générale

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

 

Pourquoi ces recommandations ?

  • Il ne s'agit que de recommandations. Des résolutions et des débits différents sont parfaitement valables et peuvent même être préférables dans certaines circonstances. Par exemple, un contenu extrêmement complexe peut justifier des débits binaires plus élevés.
  • 720p est la plus grande vidéo lisible sur l'iPad 1 et l'iPhone 4, et l'iPad 2/iPhone 4S lit tout ce qui va jusqu'à 1080p. Mais comme l'écran natif ne fait que 1024 pixels de large, il n'est pas indispensable d'aller jusqu'à 720p ou 1080p. Sauf, bien sûr, si vous souhaitez réutiliser une vidéo ailleurs - le 720p est une excellente résolution pour la lecture en plein écran sur le web, et le 1080p est tout à fait approprié pour les téléviseurs connectés. Selon les rumeurs, les futurs iPad auront une résolution quatre fois supérieure à celle de l'iPad actuel ; envisagez donc d'ajouter le 720p pour vous prémunir contre l'avenir.
  • Le profil h.264 est important. L'iPad 1 et l'iPhone 4 prennent tous deux en charge le profil principal. L'iPad 2/iPhone 4S prend en charge le profil High, qui est légèrement meilleur que le profil Main, mais étant donné le nombre d'appareils iPad 1 dans le monde, il est probablement préférable de s'en tenir au profil Main. Pour un ciblage optimal des appareils, il convient d'encoder à la fois en profil principal et en profil élevé.
  • Ces six résolutions et débits binaires permettent de couvrir assez bien les différentes bandes passantes. Vous pouvez certainement en faire plus, alors ajoutez ou soustrayez des résolutions et des profils à votre guise.
  • Les utilisateurs de l'ancien iPhone/iPod Touch disposeront de trois flux, dont une vidéo de qualité raisonnable 480×320 (la résolution de l'écran de ces appareils). Les utilisateurs de l'iPad et de l'iPhone 4 pourront utiliser les six flux.
  • L'échelle de résolution de l'iPad est assez bonne, de sorte que les vidéos qui sont redimensionnées ont généralement une bonne apparence.
  • Dans la mesure du possible, ces paramètres permettent de diviser les dimensions de la résolution par 16. Cela permet une compression plus efficace. Les gains d'efficacité sont faibles, en particulier pour les résolutions élevées, mais ils commencent à faire la différence pour les résolutions plus faibles.
  • Veillez à ce que l'audio soit identique sur chaque vidéo. Si les spécifications audio changent d'une version à l'autre, l'utilisateur peut entendre des bruits parasites et des clics pendant la lecture lorsqu'il passe d'un flux à l'autre.

Autres paramètres

  • Définissez la vitesse en fonction du délai d'exécution souhaité. Pour ces recommandations, nous allons utiliser la vitesse 2, qui améliore légèrement la compression par rapport à la ligne de base, mais reste raisonnablement rapide.
  • 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.