通过自适应流媒体协议(如HLS或DASH)提供静态视频内容(非实时流),在速度上是否比直接使用HTTP服务器作为文件提供服务有优势?
例如,当你有一个500MB的mp4 h264+AAC视频,你必须通过HTML5视频元素在网站上提供服务。你是愿意直接提供服务,因为大多数流行的浏览器都实现了诸如seek这样的功能,而不需要先下载整个文件;还是愿意使用ffmpeg或类似的解决方案从mp4文件中创建HLS块,并为HTML5视频元素提供.m3u8播放列表源。这样做在速度上有真正的优势吗?
如果你有几百个视频文件都作为静态内容提供,你会采用哪种方式?
大多数大型视频点播(VOD)OTT服务将使用ABR进行流媒体传输。
这是因为它允许终端用户设备根据当前的网络条件选择最佳分辨率和比特率。
它还可以避免浪费带宽,因为设备会意识到自己的能力,例如,如果只能显示高清或更低的分辨率,就可以避免流媒体4K。
它可以帮助启动速度,通过使用较低的分辨率和比特率,当一个视频第一次开始,因为这将下载较差,然后加强,如果网络条件允许。当你开始一个新的视频时,你经常可以在Netflix和YouTube等服务上观察到这一点。
你可以在这里看到查看统计和切换行为的方法。https:/stackoverflow.coma42365034334402。
如果你有一个封闭的用户组,并且你知道他们都会有高速连接到你的服务器,例如在一个高容量的内部网络上,那么你可能不需要这么复杂,但在大多数其他情况下,ABR通常会受到青睐。