La technique la plus courante actuellement consiste à utiliser ABR en parallèle avec un CDN pour assurer une lecture fluide. Le débit binaire adaptatif (ABR, Adaptive Bit Rate) consiste à effectuer plusieurs copies de la vidéo à différents débits binaires, de bas en haut, et à les héberger sur le serveur.
Le client reçoit un fichier d'index pour les vidéos, par ex. un fichier manifest m3u8, puis choisit le meilleur débit pour les conditions actuelles pour permettre une lecture sans buffer.
Si les conditions réseau s'améliorent, le client augmentera les débits binaires et, s'il s'aggrave, réduira les débits binaires.
Généralement, un débit binaire faible ou moyen est choisi comme premier débit pour permettre un démarrage rapide et en douceur.
Vous pouvez voir cet effet sur des services comme Netflix au démarrage, et vous pouvez également le voir sur YouTube si vous cliquez avec le bouton droit de la souris sur la vidéo et sélectionnez "Stats for Nerds".
Quelques liens pour ABR dans AWS Elastic transcoding - vous pouvez définir les débits souhaités, par ex. voir la note ci-dessous de leur FAQ sur les travaux HLS:
Spécifiez que le travail de transcodage crée une liste de lecture qui référence les sorties. Vous devriez ordonner vos débits binaires de la plus basse à la plus haute, avec le flux audio seulement en dernier, puisque cet ordre sera maintenu dans le fichier de playlist généré. Une fois le travail de transcodage terminé, le compartiment de sortie contiendra une disposition appropriée de vos listes de lecture principales et individuelles M3U8, ainsi que des fragments de flux multimédia MPEG-2 TS.
Jetez un oeil à la demande de l'échantillon sur cette page ici qui comprend deux débits différents (fournisseurs de services vidéo ont généralement plus de 2, mais cela vous donne une idée de l'approche):
Mick, merci pour la réponse. Donc, sur AWS, ABR est-il l'équivalent de leur service Elastic Transcoder? Je commençais à jouer avec ça, mais j'avais du mal à comprendre si je l'avais configuré correctement, et à quoi ressemblait le code HTML (dans la balise
Elastic Transcode est le terme générique pour le service de transcodage AWS, mais il prend en charge ABR - si vous recherchez des débits ABR et HLS avec le transcodage élastique AWS, vous devriez voir quelques exemples, mais j'en ajouterai un dans la réponse. Le chemin .m3u8 est ce que vous utilisez comme src pour la balise vidéo, comme vous le notez, pour HTMl5. – Mick
Désolé, toujours comprendre cela comme je vais. Y a-t-il une liste des sorties (et dans quel ordre) que je devrais sélectionner lorsque je crée les sorties pour la Playlist? Je commençais avec HLS Video - 2M, mais je ne savais pas exactement quelles sorties (et combien) j'avais vraiment besoin. – jmarx34