2016-11-29 2 views
1

Je suis novice en matière de diffusion multimédia en continu, je viens de commencer à apprendre sur le streaming adaptatif. J'ai quelques questions, s'il vous plaît préciser -Quelqu'un peut-il m'expliquer la corellation entre MSE DASH et HLS?

  1. pris en charge par MSE ne streaming DASH, je veux dire si un site Web en utilisant DASH et mon navigateur prend en charge MSE avec DASH, il va jouer. Mais si un site utilise HLS, alors mon navigateur ne lit pas de contenu vidéo bien qu'il ait MSE. Est-ce parce que MSE ne prend pas en charge HLS, ou que mon navigateur MSE n'a pas implémenté HLS? Si j'inspecte une page Web en train de lire un flux vidéo, j'ai vérifié que de nombreux sites utilisent la balise vidéo avec l'attribut "src" comme blob. Blob signifie qu'il utilise MSE. Peut-on avoir blob dans l'attribut "src" pour DASH (j'ai vérifié sur Youtube) et pour HLS (comme dans dailymotion ou twitch.tv) aussi? Je lisais quelques articles sur twitch.tv, est-ce que twitch.tv ne supporte que HLS avec un lecteur html5 ou un flash? Si un navigateur ne prend pas en charge Flash et HLS via le lecteur html5, alors il n'y a aucun moyen de lire le contenu de twitch.tv sur le navigateur?

Merci

Répondre

0

Vos questions n'ont pas vraiment de sens car elles sont posées, donc je ne peux pas répondre aux questions 1,2,3. Mais je peux clarifier une partie de votre confusion. HLS et DASH sont une collection de technologies, pas de technologies concurrentes uniques. La plupart des protocoles de streaming HTTPS sont constitués d'un format vidéo binaire et d'un format manifeste basé sur du texte. DASH utilise un format manifestement XML complexe avec un format vidéo MP4 fragmenté. HLS utilise un manifeste m3u8, avec un flux de transport fragmenté pour le format vidéo. Depuis IOS 10, HLS prend également en charge la MP4 fragmentée. MSE peut jouer MP4 fragmenté. Mais les navigateurs ne lisent pas les manifestes. Par conséquent, une application de joueur doit être utilisée pour télécharger et analyser le manifeste, télécharger les fragments vidéo, puis les donner au navigateur pour jouer. Twitch utilise HLS avec des flux de transport, mais exécute un logiciel personnalisé dans le navigateur pour les convertir en fragments MP4. (Ou flv flux dans le cas de flash). Quand vous voyez un src avec un blob, c'est un MP4 normal (non fragmenté), et c'est complètement différent. Safari est une exception, il peut jouer HLS en utilisant un manifeste m3u8 comme source.

+0

Merci szatmary pour clarifier mes doutes .. juste une chose de plus que je veux savoir .. J'inspectait twitch.tv sur chrome et l'ai trouvé recevant des paquets vidéo avec le type de contenu - pour HLS. ce qui montre qu'il utilise HLS pour jouer de la vidéo, et j'ai aussi vu son utilisation de blob comme src. Comment puis-je savoir, que ce navigateur utilise MSE ou non. Je veux dire comment crome joue twitch.tv, est-il en utilisant MSE pour les fragments MP4 convertis par twitch logiciel personnalisé .. Je suis totalement nouveau à ces termes et la technologie .. alors peut-être mes questions sont peu vagues. – user3704565

+0

Le blob est autre chose, ce n'est pas la vidéo. Twitch télécharge les fichiers .ts.Les fichiers ts sont convertis en MP4 via JavaScript, puis ajoutés au tampon de la source multimédia. – szatmary

+0

@szatmary Yep, et puis le blob apparaît comme la source vidéo ... – Brad

0

MediaSource Extensions (MSE) prend en charge tout ce que vous pouvez de-MUX en JavaScript et envoient des codecs natifs du navigateur. Les navigateurs ne supportent pas DASH nativement. Certains navigateurs supportent nativement HLS mais la plupart ne le font pas. Il est possible d'utiliser à la fois DASH et HLS dans les navigateurs qui supportent MSE avec la bibliothèque JavaScript correcte pour gérer chacun. Le blob que vous voyez pourrait être un blob régulier (un morceau de binaire immuable), mais plus que probable, il provient de MSE.

Je ne peux pas parler de ce que fait Twitch en interne.

+0

Aimerais connaître la raison de la downvote ... – Brad

+0

Je ne sais pas pourquoi vous étiez abattu. Cette réponse est bien. Je vais voter pour compenser. – szatmary

+0

@szatmary J'apprécie cela, mais ce n'est pas nécessaire. Quelqu'un a baissé le vôtre aussi? : -/Je ne reçois pas vraiment Stack Overflow parfois. – Brad