任何人都可以解释我MSE DASH和HLS之间的关系吗?

问题描述:

我是新来的媒体流,刚开始学习自适应流媒体。 我有几个疑问,请澄清 -任何人都可以解释我MSE DASH和HLS之间的关系吗?

  1. MSE是否只支持DASH流,我如果使用DASH和我的浏览器支持MSE与DASH任何网站的意思是,它将发挥。但是,如果一个网站使用HLS,那么我的浏览器不会播放视频内容,尽管它具有MSE。 是因为MSE不支持HLS,或者我的浏览器MSE没有实现HLS?

  2. 如果我检查网页播放视频流,我查了很多网站使用视频标签为“src”属性的斑点。 blob意味着它使用MSE。 我们可以在DASH(我在Youtube中检查过)和HLS(如dailymotion或twitch.tv中)的“src”属性中使用blob吗?

  3. 我正在读上twitch.tv几篇文章,并与twitch.tv HTML5播放器或闪存仅支持HLS?如果假设浏览器不支持通过html5播放器的Flash和HLS,那么在浏览器上无法播放twitch.tv内容?

感谢

您的问题没有什么意义,因为他们被要求,所以我不能回答1,2,3。但我可以澄清一些你的困惑。 HLS和DASH是技术的集合,而不是单一的竞争技术。大多数HTTPS流媒体协议由二进制视频格式和基于文本的清单格式组成。 DASH使用过分复杂的XML清单格式以及分段的MP4视频格式。 HLS使用m3u8清单,对视频格式使用碎片传输流。截至IOS 10 HLS还支持分段MP4。 MSE可以播放分段的MP4。但浏览器不会读取清单。因此必须使用播放器应用程序来下载和解析清单,下载视频片段,然后将它们提供给浏览器播放。 Twitch将HLS与传输流一起使用,但在浏览器中运行定制软件将其转换为MP4片段。 (或在闪光的情况下flv流)。当你看到一个带有blob的src时,这是一个普通的(而不是零散的)MP4,而且完全不同。 Safari是一个例外,它可以使用m3u8清单作为源播放HLS。

+0

感谢szatmary澄清我的疑惑..只是我想知道的另一件事..我正在检查铬的twitch.tv,发现它接收内容类型的视频数据包 - HLS。其中显示它使用HLS播放视频,并且我还将其使用的blob视为src。我怎么能知道,这个浏览器使用MSE或不。我的意思是,crome如何玩twitch.tv,它是否使用MSE转换为抽搐定制软件的MP4片段。我对这些术语和技术完全陌生......所以可能我的问题有点模糊。 – user3704565

+0

blob是别的,它不是视频。 Twitch下载.ts文件。ts文件通过JavaScript转换为MP4,然后添加到媒体源缓冲区。 – szatmary

+0

@szatmary是的,然后blob显示为视频源... – Brad

MediaSource的扩展(MSE)支持任何你可以去多路JavaScript和发送到浏览器的原生编解码器。浏览器本身不支持DASH。有些浏览器本身支持HLS,但大多数浏览器不支持。可以在支持MSE的浏览器中同时使用DASH和HLS,并使用正确的JavaScript库来处理每个。

你看到的可能是一个普通的BLOB(二进制的不可变块)团块,但更可能它是从MSE到来。

我不能什么抽搐内部不说话。

+0

很想知道的downvote的原因......我 – Brad

+0

不知道你为什么下降了投票。这个答案很好。我会投票抵消。 – szatmary

+0

@szatmary我明白,但没有必要。有人也低估了你的? : - /我有时候并没有得到Stack Overflow。 – Brad