HLS(Http Live Streaming)与MPEG DASH

时间:2017-01-09 08:19:17

标签: format streaming hls mpeg-dash

我试图找到HLS and DASH这两种广泛使用的流媒体格式之间的差异。

通过我的研究,我看了一下展示自适应流媒体功能比较的图像。

我不确定HTML5的支持 MPEG-DASH是唯一支持HTML5的流格式 或者下面的图像是一种旧的特征比较?

Image for adaptive streaming feature comparison

1 个答案:

答案 0 :(得分:5)

最重要的区别可能是MPEG-DASH是ISO / IEC MPEG批准的独立于供应商的国际标准。以前的自适应流媒体技术 - 例如Apple HLS--已经由供应商发布,对公司独立的流媒体服务器和回放客户端的支持有限。

MPEG-DASH允许使用HTML5进行原生播放,因为主要使用的是fMP4容器,但最近也使用Apple added support for fMP4 on the WWDC16。然而,HLS主要使用和支持MPEG2-TS,它不能用HTML5本地播放。有些解决方案可以将JavaScript中的MPEG2-TS段转换为fMP4,从而允许本机播放。这些播放器包括hls.js,它是开放源代码和商业播放器,如Bitmovin Player

如果你想使用DRM,DASH有更多的优势,因为MPEG-CENC很好地与这个标准集成。其他事情包括通过SegmentTemplate进行更紧凑的清单(在HLS中,每个段都需要描述一个URL),这允许指定段URL生成机制。较小的DASH清单会影响启动延迟。 DASH指定的其他内容是您可以使用BaseURL进行故障转移,以便您在几个不同的位置much more托管您的内容。

然而,HLS也被广泛使用,并且它不是那么复杂和容易实现。因此,如果您不需要DRM,非常高的分辨率和比特率(在使用JavaScript进行transmux时可能会对性能产生影响)或其他一些特定的DASH功能,则可能更适合使用HLS。

对于DASH和HLS,有几种服务(Bitmovin Encodingzencoder)可以生成内容以及开源解决方案,例如ffmpeg。