安卓上的HTML5<video>元素无法播放

7

以下类似的视频标签在iPhone上播放良好,但在Android上不行:

<video id="video" width="320" height="240" poster="video/placeholder.jpg" autobuffer controls>
  <source src="pr6.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'>
  <source src="pr6.ogv" type='video/ogg; codecs="theora, vorbis"'>
</video>

使用上面的代码,Android 甚至无法点击视频。它只会看到海报图像。

以下类似下面的视频标签可以在 Android 上工作:

<video src="vpr6.mp4" poster="video/placeholder.jpg" onclick="this.play();"/>

然而,我仍需要多源能力(用于Firefox ogv支持...)。下面的代码不起作用(如果我把javascript粘贴到源标签中也不起作用):

<video id="video" width="320" height="240" autobuffer controls onclick="this.play();">
  <source src="pr6.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'>
  <source src="pr6.ogv" type='video/ogg; codecs="theora, vorbis"'>
</video>

使用以上代码,在Android中剪辑是可点击的,但仍然没有任何作用。

有人可以帮忙吗?


1
啊,我对视频和音频标签的状况感到绝望。 - spender
这是本地应用还是网页?如果是本地应用,你是否已经为你的Webview启用了Javascript? - Pentium10
我正在尝试设置一个网页,以便多个浏览器可以正确播放视频。 - T1000
@T1000,你能解决这个问题吗? - edwin
1个回答

5
尝试从源清单中删除编解码器。可能是您列出的编解码器在Android上不存在,因此它会出现问题。
如果使用src属性,它将自动检测编解码器,因此它会使用其他东西 :)

就是这样!谢谢。现在它完美地工作了。通过在源中添加另一个flowplayer,我现在可以在IE、Firefox、Safari、iPhone和Android上正确播放网页上的视频。这让人想知道为什么要使用编解码器属性。是为了加快速度吗? - T1000
大家注意了,onclick="this.play();" 只适用于安卓系统,其他浏览器不需要这个才能正常工作。 - T1000
@Artiom Chilaru,你能帮我找出这个问题中出了什么错吗?(链接:https://dev59.com/JWYq5IYBdhLWcg3w0kAT) - edwin
有人能告诉我在移动设备的 Chrome 浏览器上背景视频没有显示吗?网址:https://dtlapi.portal.azure-api.net/ - Jasbir

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接