html 视频中带有 php src 脚本的 JS currentTime 在 Chrome 上不起作用

JS currentTime in html video with php script for src don't working on Chrome

我目前正在尝试修改从 php 脚本(headers 方法)获取源的 html5 视频播放器的 currentTime。视频加载正确,我可以通过 JS 访问命令:

我通过 php 脚本将视频加载到 html5 标签中

<video controls id="MyVideo">
    <source src="getVideo.php?nom=sunset_plaine&sens=1&qualite=hd" type="video/mp4" />
    <!--<source src="datas/videos/voie_lactee_1_hd.mp4" type="video/mp4" />-->
</video>

我可以控制视频JS

var myvideo = document.getElementById("MyVideo");
myvideo.play();

加载视频后(事件可以播放),我可以检索有关视频的信息

console.log(myvideo.duration);
console.log(myvideo.currentTime);

我无法更改视频的当前时间,并且该命令不会return任何错误

console.log(myvideo.currentTime);

myvideo.currentTime = 2.6;

console.log(myvideo.currentTime);

如果我将 php 脚本替换为直接 link 到视频,我可以修改 currentTime

<video controls id="MyVideo">
    <!--<source src="getVideo.php?nom=sunset_plaine&sens=1&qualite=hd" type="video/mp4" />-->
    <source src="datas/videos/voie_lactee_1_hd.mp4" type="video/mp4" />
</video>

此代码在 IE 和 FF 上完美运行,问题出现在 chrome

是否有人可以阐明这个问题?

谢谢!

我通过在 php 脚本上使用 headers 找到了解决方案 getVideos.php:

在阅读 php 脚本中的视频之前,我只是使用了一个 header :

header('Content-Type: video/mp4');

我添加了这个,现在可以在 Chrome 上编辑当前时间(不要问我为什么...):

header("Content-Disposition: inline;");

我也借此机会补充了这些:

header('Accept-Ranges: bytes');
header('Content-Length: '. filesize($file_path_name));
header("Content-Transfer-Encoding: binary");
header('Connection: close');

就这些了。