视频未在浏览器中播放故障排除

时间:2012-02-12 18:28:25

标签: html video

所以,这些.mp4视频无效。

即使我使用视频标签,也可以直接链接到视频。他们好像不玩。它们在Windows Media Player(或VLC)中播放得非常好。

所以我只是想知道视频无法在浏览器中播放的原因是什么。感谢

1 个答案:

答案 0 :(得分:0)

基本上将其创建为video_download.php,然后链接到此页面 - 更改路径以匹配您的视频,然后当最终用户点击链接时,应提示他们将其作为文件下载。不能总是依靠他们的系统直接从浏览器在媒体播放器中打开它。

<?php
$path = "path/to/video.mp4";

$fsize = filesize($path);
$path_parts = pathinfo($path);
$ext = strtolower($path_parts["extension"]);
header("Content-type: video/mp4");
header("Content-Disposition: attachment; filename=\"".$path_parts["basename"]."\"");
header("Content-length: ".$fsize);
header("Cache-control: private");
echo readfile($path);
?>

当然你需要将它保存为PHP文件!

就像我上面说过的那样,如果你使用HTML5中的<video>选项和Flash作为后备更好 - 这样他们就可以在他们的网络浏览器中观看它,这总是更好,更容易!

<强>更新

<video width="640" height="360" controls>
<!-- MP4 must be first for iPad! -->
<source src="__VIDEO__.MP4" type="video/mp4" /><!-- Safari / iOS video    -->
<source src="__VIDEO__.OGV" type="video/ogg" /><!-- Firefox / Opera / Chrome10 -->
<!-- fallback to Flash: -->
    <object width="640" height="360" type="application/x-shockwave-flash" data="__FLASH__.SWF">
        <!-- Firefox uses the `data` attribute above, IE/Safari uses the param below -->
        <param name="movie" value="__FLASH__.SWF" />
        <param name="flashvars" value="controlbar=over&amp;image=__POSTER__.JPG&amp;file=__VIDEO__.MP4" />
        <!-- fallback image. note the title field below, put the title of the video there -->
        <img src="__VIDEO__.JPG" width="640" height="360" alt="__TITLE__" title="No video playback capabilities, please download the video below" />
</object>
</video>