Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
阿帕奇&x2B;HTML5视频标签-会出什么问题?_Html_Video_Stream_Apache2 - Fatal编程技术网

阿帕奇&x2B;HTML5视频标签-会出什么问题?

阿帕奇&x2B;HTML5视频标签-会出什么问题?,html,video,stream,apache2,Html,Video,Stream,Apache2,[查看更新!-适用于Android/IOS浏览器,但不适用于其他任何地方。FireFox、Chrome、Opera、Safari都会失败。尽管它们绝对支持HTML5视频标签] 简单地尝试使用html5标记流式传输视频。我得到的只是视频播放器的控制,其他什么都没有。这很简单,我认为它应该可以工作: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Movie title

[查看更新!-适用于Android/IOS浏览器,但不适用于其他任何地方。FireFox、Chrome、Opera、Safari都会失败。尽管它们绝对支持HTML5视频标签]

简单地尝试使用html5标记流式传输视频。我得到的只是视频播放器的控制,其他什么都没有。这很简单,我认为它应该可以工作:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Movie title</title>
</head>
<body>
<video id="movie" preload controls>
  <source src="test.mp4" />
</video>
</body>

电影名称
那么我哪里会出错呢?除了这个小片段,我已经尝试了很多。我试过其他人的例子片段。我试过很多视频,很多格式(mp4,flv,ogg)。我试过在Chrome、Firefox、Android嵌入式浏览器、Opera、IE9中查看它

我可以在像VLC这样的程序中从URL流式传输文件,而不会出现任何问题

我开始认为Apache2可能是这里的问题,尽管我认为事实上我可以从VLC流式传输URL而没有问题,这表明Apache2不是问题所在

谢谢你的帮助。我在这里拉扯头发

更新:

  • 每当我尝试从Chrome中访问视频目录的URL时,它似乎会给我以下错误:资源被解释为其他资源,但传输时MIME类型未定义

  • 这个错误肯定是服务器端的问题,apache2在什么地方不能正确配置

  • 如果我从Apache2服务器内的URL访问FLV文件目录,则会出现此MIME类型未定义错误。它可以控制视频控制。每当我单击“播放”时,它都会对未定义的MIME类型进行几次垃圾邮件处理

更新2:

  • 已验证我的。正在读取htaccess

  • 将以下内容添加到my.htaccess中:

    AddType视频/ogg.ogv

    AddType视频/ogg.ogg

    AddType视频/mp4.mp4

  • 仍然无法工作,仍然可以看到Chrome中未定义的MIME类型

更新3:

  • Firefox和其他人可以毫无问题地查看URL/test.mp4,但没有人可以让视频标签正常工作
更新4:

  • Android现在可以让视频标签工作了。.htaccess的更改似乎解决了这个问题。然而,无论出于何种原因,没有一个桌面浏览器可以

Firefox和Opera不支持MP4,Chrome将很快放弃对它的支持。添加WebM源代码也是一个好主意

尝试将
类型
属性添加到
声明:

<source src="test.mp4" type="video/mp4">

这是我网站www.pi-corp.net上的html代码。这允许在所有商用浏览器上回放,并可回退到flash

<div class="video-js-box" style="width: 316px"><br><video class="video-js" width="320" height="240" controls preload autoplay poster="http://pi-corp.net/images/PIC_Full_Logo_PIC_HMI.png"><source src="http://pi-corp.net/picvideo/PIChmi.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' /><source src="http://pi-corp.net/picvideo/PIChmi.ogv" type='video/ogg; codecs="theora, vorbis"' /><source src="http://pi-corp.net/picvideo/PIChmi.webm" type='video/webm; codecs="vp8, vorbis"' />
        <object id="flash_fallback_1" class="vjs-flash-fallback" width="320" height="240" type="application/x-shockwave-flash"
        data="flowplayer-3.2.1.swf"><div class="style23"> <param name="movie" value="http://releases.flowplayer.org/swf/flowplayer-3.2.1.swf" /><param name="allowfullscreen" value="true" /><param name="flashvars" value='config={"playlist":["http://pi-corp.net/images/PIC_Full_Logo_PIC_HMI.png", {"url":"http://pi-corp.net/picvideo/PIChmi.mp4
        ","autoPlay":true,"autoBuffering":true}]}' /> <img src="http://pi-corp.net/images/PIC_no_playback.png" width="320" height="240" alt="Poster Image"
          title="No video playback capabilities." /> </div> </object></video>


我唯一能看到的是缺少HTML结束标记,
预加载控件
似乎不在规范中。例如,预加载采用三分之一的参数“auto | metadata | none”。我删除了preload命令,没有区别。CHROME似乎无法直接从URL/test.mp4流式传输mp4。但是其他浏览器可以,比如FireFox。现在我觉得好像回到了第一步,视频标签就是问题所在。好的,刚刚复制了你的设置,它在我的所有浏览器中都能正常运行,我从以下网站下载了一个webm剪辑:。我的apache安装程序是普通的,通过apt get安装,从未修改过全局配置文件,在
public\u html
中没有.htaccess等等。我在视频标签中添加了
controls=“controls”
。您在哪个浏览器中进行了测试?chrome(和google chrome)、opera和Firefox,尽管添加类型没有改变任何东西。用ffmpeg转换到WEBM似乎解决了所有问题。Chrome、Opera、Firefox现在都可以完美地观看。然而,Android浏览器似乎无法与WEBM配合使用。所以我添加了两个源标记,一个是webm,另一个是mp4。这似乎解决了问题。不幸的是,我必须保留每段视频的两份副本。不管怎么说,恐怕不行,你可以责怪某些公司不同意他们都支持的视频格式。最初,HTML5规范规定必须支持OGG(用于音频和视频),但苹果和诺基亚对此表示不满,因此取消了该规范。无论如何,对于Safari和IE9,您仍然需要MP4。