HTML5视频:修改http范围请求标头

时间:2013-04-04 18:43:56

标签: javascript html5 video http-headers

我有一个html5视频播放器(video -tag)。当页面加载时,它会向视频文件发送请求。

是否可以修改http请求标头范围字段? (见截图,2条红线之间)

范围:字节= 0- 将下载整个视频,我想将其限制为“范围:字节= 0-1000000”,例如

Screenshot

视频文件托管在CDN上,因此我无法在服务器端执行任何操作。

1 个答案:

答案 0 :(得分:1)

您可以使用XMLHttpRequest发送范围请求!如果服务器的“Accept-Range:Bytes”,则在window.URL.createObjectURL上获取blob文件。视频标签为您提供了许多事件和属性,因此您始终可以了解缓冲的内容以及您的位置。即使用户单击进度条,也可以暂停或停止按钮。由于视频属性与字节范围相比是基于时间的,因此您需要来自视频文件的一些额外信息,称为视频元数据。我使用Yamdi来获取文件搜索位置比的播放时间的xml文件,并在.flv的开头设置元数据。

在服务器端读取范围标题(bytes = number1-number2 ...),打开视频文件,搜索number1,打印(number2-number1 + 1)字节并发送一些特定标题:Content-Type,Content -Disposition,HTTP / 1.1 206部分内容,内容范围。

你应该按照寻找位置。长度取决于你。