【发布时间】:2022-01-17 19:43:44
【问题描述】:
使用 HLS(HTTP Live Streaming)而不是 HTML5 <video> 共享大型视频文件有什么优势吗?我正在使用ffmpeg 在我的服务器上手动创建块和关联的m3u8 清单文件以共享大型视频文件,并使用hls.js 之类的库将其集成到我的网站中。以前我直接使用<video>标签分享视频文件(例如:<video src="/path/to/some_video.mp4">
我知道 HTML5 视频使用 HTTP 渐进式下载,网络服务器将使用视频文件中的 moov 原子来提供小的渐进式块。另一方面,在 HLS 的情况下,我在服务器端手动创建块,以便我的浏览器可以直接通过 m3u8 清单文件请求它们。我相信 HTML5 视频会导致网络服务器花费额外的 CPU 周期使用 moov 原子对视频进行分块,而在 HLS 情况下,它不会花费任何周期进行分块,并且可以在HTTP 获取。因此,我认为 HLS 在提供视频文件时可能会减少服务器端的 CPU 工作量,因为这些片段是预先分块的。
我不确定这是否属实,我想对此有所了解:使用 HTML5 视频与 HLS 来提供视频文件。
【问题讨论】:
标签: html nginx web video-streaming html5-video