截至2013年6月5日的最新版Chrome(版本27.0.1453.110米)无法播放mp4视频。例如,W3Schools Video Sandbox为我提供视频控件,而不是其他内容。 (抱歉无法发布截屏,只是注册了StackO。)
任何人都知道为什么?并修复?
是:
有回答这样的问题
chrome could play html5 mp4 video but html5test said chrome did not support mp4 video codec
和
有一个未答复的问题:
答案 0 :(得分:8)
遇到同样的问题 - 这是我的一些想法:
由于它仅影响Chrome(其他浏览器可以正常使用VideoForEverybody解决方案),我使用的解决方案是:
申请以下js:
if (window.chrome)
$("[type=video\\\/mp4]").each(function()
{
$(this).attr('src', $(this).attr('src').replace(".mp4", "_c.mp4"));
});
不幸的是,这是一个糟糕的Chrome黑客,但是嘿,至少它有效。
答案 1 :(得分:3)
我遇到了同样的问题,即使我没有得到任何答案,我试图用另一种方式解决它,这就是我所做的:
首先,将视频嵌入你的html:
<video id="videoId" width="100%" autoplay loop>
<source src="main.webm" type="video/webm">
<source src="main.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
然后检测浏览器是否为chrome:
var isChrome = !!window.chrome;
var isIE = /*@cc_on!@*/false;
如果是Chrome,请用webm版本替换视频。 (对于那些自己没有遇到问题的人: 如果你同时嵌入mp4和webm,chrome将不会播放任何一个,所以你必须只嵌入“webm”
if( isChrome ) {
$("#videoId").replaceWith($('<video id="videoId" width="100%" autoplay loop><source src="video.webm" type="video/webm"></video>'));
}
至于IE: 在我的情况下,我用图像替换了html5视频:
if( isIE ) {
$("#videoId").replaceWith($('<img id="videoId" src="img/video.jpg" />'));
}
答案 2 :(得分:3)
Chrome似乎加载了宣布的第一个视频。因此,对于播放webMV的Chrome,首先声明webMV视频,然后声明mp4视频,依此类推。
答案 3 :(得分:0)
答案在上一篇文章中虽然很难找到:
chrome could play html5 mp4 video but html5test said chrome did not support mp4 video codec
它与逐步淘汰Chrome中的mp4支持有关,支持webm开放格式。目前浏览器支持似乎是虚假的。有关详细信息,请参阅帖子。
Cromium论坛提供了有关编解码器支持的更多信息。
希望这有帮助。
答案 4 :(得分:0)
我在Chrome版本上也遇到此问题:Windows7 64位上的28.0.1500.72。 虽然它不会影响WinXP上相同版本的Chrome。 根据我所读到的,这个问题在不同的主机上是非常零星的,取决于许多变量。但是,由于一些快速的jquery,我能够为潜在的Chrome用户解决此问题。
感谢Sony Flat指出我的方向
var isChrome = !!window.chrome;
var isIE = /*@cc_on!@*/false;
if( isChrome ) {
$("#videoId").replaceWith($('<video id="videoId" width="100%" autoplay loop><source src="video.webm" type="video/webm"></video>'));
}
答案 5 :(得分:0)
感谢eithedog。 此代码可供我使用“视频”标记在Chrome上播放视频
if (window.chrome) {
$("[type=video\\\/mp4]").each(function () {
$(this).attr('src', $(this).attr('src').replace(".mp4", "_c.mp4"));
});
}