我已经研究了很多关于视频流和在网络上播放的当前状态。我正在发布我总结的内容以及我认为我应该遵循的策略以支持跨大多数设备和浏览器的自适应流。如果我正在制定的策略有任何重大漏洞/改进,我只是想从社区获得反馈。
总结
<video>
我们需要以至少 3 种 WEBM、OGG 和 MP4 格式对视频进行编码的元素 现在据我所知,在使用 mpeg-dash 时,它的主要作用是从源文件和一个配置文件中创建具有不同比特率的各种不同的媒体文件,其中包含有关将哪个流发送到客户端的描述/规则取决于带宽。
相同的逻辑适用于 HLS,但它创建的配置文件的扩展名与 mpeg-dash 的扩展名不同。
如果我计划支持 3 种不同分辨率的 3 比特率,例如视频的 1020*720、800*600、400*300,那么我需要为我将要支持的 3 种格式(即 WEBM、 OGG,MP4)
因此,对于客户端上传的任何一个视频,我总共需要生成 3*3 = 9 个视频以及生成 .mpd 和 .m3u8 文件以支持非 Apple 和 Apple 设备。
这似乎是一个好习惯吗?还是我缺少跨浏览器自适应流媒体解决方案的重要内容?
欢迎提示/建议/建议。
谢谢 !
最佳答案
在这里,您可以在 MPEG-DASH 和/或 HLS 支持方面看到不同浏览器和平台的概述:http://www.dash-player.com/blog/2015/06/replacing-flash-adaptive-streaming-and-drm-in-html5/
我们通常并行生成 MPEG-DASH + HLS 内容,并使用 MPEG-DASH(在 HTML5 或 Flash 中使用例如 http://www.dash-player.com)为大约 80% 到 90% 的所有用户提供服务,并使用 HLS 为 10% 到 20% 的用户提供服务。
关于video-streaming - 跨大多数浏览器和设备一致的自适应流媒体策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31357378/