【问题标题】:Choosing between HLS or MPEG-DASH for a video app为视频应用选择 HLS 或 MPEG-DASH
【发布时间】:2020-09-23 05:30:03
【问题描述】:

我们正在开发一款移动视频应用,需要确定 HLS 或 MPEG-DASH 之间的视频协议。

我们的主要考虑是两者中哪一个对浏览器和移动平台(iOS、Android)有更好的支持和兼容性?

视频内容在移动应用上录制/上传/观看,但也需要共享以在浏览器上观看。

最初似乎 HLS 具有更广泛的平台支持,但很想听听任何人的经验。

谢谢!

【问题讨论】:

  • 您好,我之前做过流媒体应用,HLS 会非常好。如果您使用的是原生 iOS 播放器并且需要 CC,那么 HLS 绝对是最佳选择
  • 2nd @SanjeevSundaravarathan - HLS 有更好的支持,你可以使用 hls.js 在浏览器中支持。
  • 感谢 cmets 和提示 hls.js。那么你会建议使用 HLS 并在 Android 上使用 DASH 吗?

标签: android ios video http-live-streaming mpeg-dash


【解决方案1】:

如果您想覆盖尽可能多的用户,您很可能会发现此时您必须同时支持这两种方法,尤其是在内容被加密的情况下。

iOS 和 Safari 通常使用 HLS 和 FairPlay,Android、Firefox 和 Chrome 使用 DASH 和 Widevine,Windows 和 Edge 使用 DASH 和 PlayReady。

目前,Apple iOS 设备必须对移动网络上超过 10 分钟的内容使用 HLS:

2.5.7 蜂窝网络上超过 10 分钟的视频流媒体内容必须使用 HTTP 实时流媒体,并包括基线 192 kbps HTTP 实时流媒体。 (https://developer.apple.com/app-store/review/guidelines/)

因此,提供给 Apple 设备的流通常是 HLS,而 DASH 用于其他设备。

如果您的流未加密,您可以使用 CMAF 单个源文件。如果它们被加密,那么设备支持单个 CMAF 加密源还需要一段时间 - 在此处查看更多详细信息:https://stackoverflow.com/a/62020034/334402

CMFA 信息在这里:https://developer.apple.com/documentation/http_live_streaming/about_the_common_media_application_format_with_http_live_streaming

【讨论】:

    猜你喜欢
    • 2015-02-03
    • 2015-05-18
    • 1970-01-01
    • 2016-09-03
    • 1970-01-01
    • 2017-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多