HLS和MPEG-DASH有什么区别?

45

看起来这两种协议都在做同样的事情,但是有一种优于另一种吗?


1
我还没有看到HSL vs. DASH的比较,但对我来说,Streaming Media的这两篇社论已经足够了解情况: - 什么是HLS: http://www.streamingmedia.com/Articles/Editorial/What-Is-.../What-is-HLS-(HTTP-Live-Streaming)-78221.aspx - 什么是MPEG DASH: http://www.streamingmedia.com/Articles/Editorial/What-Is-.../What-is-MPEG-DASH-79041.aspx 如果有人找到实际的比较,我也会很感激。 - Yury
这里是关于比较的一点内容...Web标准:在两种自适应流媒体协议中,MPEG-DASH有最大的机会成为统一标准。HLS由于历史更久,而且得到了苹果公司的大力支持,在旧版浏览器/操作系统/设备上有更多的支持。现在使用HLS,明天使用MPEG-DASH。以下文章对今天流媒体技术的分裂状态进行了良好的评估:http://blogs.imediaconnection.com/blog/2012/04/27/mpeg-dash-its-time-for-apple-to-put-up-or-shut-up/ - HarryTuttle
4个回答

16

2
这个链接已经更新和移动了:http://www.internetvideoarchive.com/documentation-2016/video-api/progressive-download-vs-adaptive-bitrate/ - Evan Jones

13

以下是Aquary的快速比较:

Web标准: 在两种自适应流媒体协议中,MPEG-DASH有最大可能成为统一标准。

支持: HLS更老,且有Apple强力支持,尤其在旧浏览器/操作系统/设备上有更多事实支持。您可以使用jwplayer在Windows机器上支持HLS。

性能: 不确定,但bitdash(一种mpeg-dash播放器)的制造商声称:“与Microsoft Smooth Streaming相比,流媒体性能提高了53%,与Apple HLS相比提高了101%。”

结论: 现在使用HLS,明天使用MPEG-DASH(如果您能管理)。下面这篇文章对今天的流媒体技术状况进行了良好的评估:http://blogs.imediaconnection.com/blog/2012/04/27/mpeg-dash-its-time-for-apple-to-put-up-or-shut-up/


1
最终还是最好支持多种流媒体技术,但如果必须选择一种或优先考虑哪种技术,则 HLS 仍然是首选,因为 Safari(iPhone 和 iPad 上的事实标准浏览器)不支持 MPEG-DASH。因此,HLS 在2017年和2018年远远是主导的编码格式... https://bitmovin.com/whitepapers/Bitmovin-Developer-Survey.pdf https://www.encoding.com/files/2018-Global-Media-Formats-Report.pdf - HarryTuttle

12

MPEG-DASH是一个由ISO / IEC MPEG批准的供应商无关的国际标准。以前的自适应流媒体技术(例如Apple HLS)是由供应商发布的,并且对于独立于公司的流媒体服务器和播放客户端的支持有限。因此,不希望存在供应商依赖性情况,标准化机构开始了协调过程,导致MPEG-DASH的批准。

近年来,MPEG-DASH已被整合到新的标准化工作中,例如HTML5媒体源扩展(MSE),通过HTML5视频和音频标签实现DASH播放(与在苹果生态系统之外依赖FLASH的Apple HLS相对),以及HTML5加密媒体扩展(EME)可以在Web浏览器中进行DRM保护的播放。此外,使用MPEG-CENC(通用加密)在不同系统上实现MPEG-DASH DRM保护的协调,并通过在HbbTV 1.5和2.0中集成实现了在不同SmartTV平台上的MPEG-DASH播放。

虽然MPEG-DASH是编解码器和容器无关的,而Apple HLS则受限于MP2TS容器,还有许多其他区别。


3
那个 bitcodin 的链接非常误导人。我 5 年前编写了 Motorola HLS 分块器,即使在那时,当 HLS 规范只有 17 页时,它几乎满足该博客文章暗示的所有功能。 - Shane Day
我认为第二段开头并不特别准确。MSE和MPEG-DASH是经过不同标准化流程的独立结构,并且希望允许完全不同的结构。确实,许多相同的人参与了两者,并且它们是互补的,但是暗示其他竞争团体不具备这种情况是不公平和有偏见的。 - Jamie

3
从应用程序设计师的角度来看,如果要选择一个视频流服务技术,例如YouTube或Netflix,我会说它们都有其不足之处,您应该同时使用它们。
今天的每个常规视频流服务都会有两个问题:客户端支持(您应该希望从智能手机到电视、游戏机、Apple TV和Google Chromecast等所有设备都能支持)和服务器基础结构。
HLS在所有苹果设备上都有原生支持,运行非常流畅,并通过使用许多开源JS视频播放器提供了很好的个性化。Android存在问题,但即使在2.3设备上,我也可以在混合应用程序中运行Flash播放器HLS。性能较差,但您可以使用ffmpeg实时转码!直播也是可能且非常简单明了的。
MPEG-DASH在新设备上得到了很好的支持,在5年后这种情况可能会结束。使用ngnix和rtmp扩展,您可以在半小时内构建视频流服务器。
我最初选择了HLS,因为它很容易。现在,我同时为不同的客户端创建HLS、WebM(较低的定义)和MPEG-DASH,以使所有客户端都能本地运行。
这样,我可以依赖于仅构建混合应用程序并在每个客户端上使用我的所有AngularJS代码。否则,对于较小的项目来说,采用视频流服务是不切实际的。然后您还有像Wowza这样的服务。

我很好奇为什么您选择WebM而不是MP4? - geoboy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接