将部分视频流式传输到客户端

时间:2014-08-04 11:19:46

标签: javascript html5 video streaming

鉴于Windows服务器后端,有没有办法实现一个纯javascript / html5客户端,只能播放视频文件的指定部分(例如,在2小时视频中从第10秒到第15天)?

据我所知,标准的html5视频标签会下载一个不适合我情况的整个文件。

服务器上的流媒体解决方案可能是一个答案,但有没有适用于纯javascript / html客户端?感谢。

2 个答案:

答案 0 :(得分:0)

为此,您应将视频编码为分段/分段格式之一,如MPEG-DASH或Apple HLS。结果将是一个播放列表文件和一个或多个媒体文件,其中包含(长)视频文件的2到10秒片段。对于DASH,您通常会有1个碎片化的MP4文件,其中包含2秒的视频片段,播放列表文件会告诉您的播放器要下载的文件部分与您希望播放的时间相对应。为此,您的Web服务器需要支持HTTP RANGE标头(大多数都是这样)。

对于HLS,您通常会得到多个10秒的文件。播放列表文件将告诉播放器下载哪个文件以供播放。

以下是如何构建HTML5播放器来播放DASH流: http://blogs.msdn.com/b/interoperability/archive/2014/01/03/mpeg-dash-tutorial-embedding-an-adaptive-streaming-video-within-your-html5-application.aspx http://www-itec.uni-klu.ac.at/dash/?page_id=746

答案 1 :(得分:0)

除了HLS或MPEG-DASH等复杂方法,您还可以考虑使用pseudo-streaming, or progressive download。它的搜索功能由许多媒体服务器支持,可让您随时观看MP4视频。使用Javascript,您应该能够实际设置播放并在需要时停止播放(但是您需要处理处理HTML5视频容器中播放的不同浏览器)。

相关问题