截至2013年6月5日的最新版Chrome(版本27.0.1453.110米)不播放mp4视频。举个例子 W3Schools Video Sandbox 给了我视频控制,没有别的。 (抱歉无法发布屏幕截图,只是注册了StackO。)
有谁知道为什么??并修复?
是:
有一个 回答 像这样的问题
chrome可以播放html5 mp4视频,但html5test表示chrome不支持mp4视频编解码器
和
有一个 悬而未决 像这样的问题:
截至2013年6月5日的最新版Chrome(版本27.0.1453.110米)不播放mp4视频。举个例子 W3Schools Video Sandbox 给了我视频控制,没有别的。 (抱歉无法发布屏幕截图,只是注册了StackO。)
有谁知道为什么??并修复?
是:
有一个 回答 像这样的问题
chrome可以播放html5 mp4视频,但html5test表示chrome不支持mp4视频编解码器
和
有一个 悬而未决 像这样的问题:
遇到同样的问题 - 这是我的一些想法:
因为它只影响Chrome(其他浏览器可以正常使用 VideoForEverybody 解决方案)我使用的解决方案是:
申请以下js:
if (window.chrome)
$("[type=video\\\/mp4]").each(function()
{
$(this).attr('src', $(this).attr('src').replace(".mp4", "_c.mp4"));
});
不幸的是,这是一个糟糕的Chrome黑客攻击,但嘿,至少它是有效的。
我遇到了同样的问题,即使我没有得到任何答案,我试图以另一种方式解决它,这就是我所做的:
首先,将视频嵌入您的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" />'));
}
Chrome似乎加载了宣布的第一个视频。因此,对于播放webMV的Chrome,首先声明webMV视频,然后声明mp4视频,依此类推。
答案在前一篇文章中虽然很难找到:
chrome可以播放html5 mp4视频,但html5test表示chrome不支持mp4视频编解码器
它与逐步淘汰Chrome中的mp4支持有关,支持webm开放格式。目前浏览器支持似乎是虚假的。有关详细信息,请参阅帖子。
Cromium论坛提供了有关编解码器支持的更多信息。
希望这可以帮助。
我在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>'));
}
谢谢eithedog。 此代码可供我使用“视频”标记在Chrome上播放视频
if (window.chrome) {
$("[type=video\\\/mp4]").each(function () {
$(this).attr('src', $(this).attr('src').replace(".mp4", "_c.mp4"));
});
}