【问题标题】:JS currentTime in html video with php script for src don't working on Chrome带有用于 src 的 php 脚本的 html 视频中的 JS currentTime 在 Chrome 上不起作用
【发布时间】:2018-11-12 09:49:25
【问题描述】:

我目前正在尝试修改从 php 脚本(标题方法)获取其源的 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);

我不能改变视频的currentTime,并且命令没有返回任何错误

console.log(myvideo.currentTime);

myvideo.currentTime = 2.6;

console.log(myvideo.currentTime);

如果我用视频的直接链接替换php脚本,我可以修改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 下

有没有人可以对这个问题有所了解?

谢谢!

【问题讨论】:

    标签: javascript php html5-video current-time


    【解决方案1】:

    我通过在我的 php 脚本 getVideos.php 上玩标题找到了解决方案:

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

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

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

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

    我也借此机会添加了这些:

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

    就是这样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-01-18
      • 2013-06-25
      • 2011-02-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-18
      相关资源
      最近更新 更多