HTML5视频无法在Safari中使用

时间:2015-11-20 17:16:55

标签: html5 video safari html5-video

我刚注意到我个人网站上的视频没有在Safari中播放。我试过两台电脑,点击播放什么也没做。它们可以在Chrome,Opera和Firefox中正常运行,但不适用于Safari。它是编解码器/编码问题吗?

链接:http://imwillryan.com/uiuc-timelapse.html

代码:

<video controls preload="none" poster="assets/video/poster_uiuc-timelapse.jpg" data-setup="{}">
     <source src="assets/video/uiuc-timelapse.mp4" type="video/mp4" />
     <source src="assets/video/uiuc-timelapse.ogv" type='video/ogg; codecs="theora, vorbis"' />
     <source src="assets/video/uiuc-timelapse.webm" type='video/webm; codecs="vp8, vorbis"' />
     Your browser does not support the HTML5 video tag. Try updating your browser or using a different one.
</video>

1 个答案:

答案 0 :(得分:6)

通常,这将使用type属性周围的单引号和编解码器的嵌套双引号。但有时这不适用于跨浏览器。因此,有时您不需要为编解码器嵌套和混合type属性的双/单引号。

我会尝试在单引号中没有嵌套的双引号。只需使用一个引用。

转换它:

type='video/ogg; codecs="theora, vorbis"'
type='video/webm; codecs="vp8, vorbis"'

没有编解码器的双引号和单引号的嵌套混合:

type="video/ogg; codecs=theora, vorbis"
type="video/webm; codecs=vp8, vorbis"

总之,像这样:

<video controls preload="none" poster="assets/video/poster_uiuc-timelapse.jpg" data-setup="{}">
   <source src="assets/video/uiuc-timelapse.mp4" type="video/mp4" />
   <source src="assets/video/uiuc-timelapse.ogv" type="video/ogg; codecs=theora, vorbis" />
   <source src="assets/video/uiuc-timelapse.webm" type="video/webm; codecs=vp8, vorbis" />
   Your browser does not support the HTML5 video tag. Try updating your browser or using a different one.
</video>

参考文献

WHATWG网站source元素。关于type元素的source属性的WHATWG,请查看示例,您会看到一些已嵌套引号,而另一些则没有。

https://html.spec.whatwg.org/multipage/embedded-content.html#the-source-element

MDN网站,使用HTML5音频和视频:

https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Using_HTML5_audio_and_video

因此,要么使用单引号或双引号,要么不要嵌套或相互嵌套,因为有时它可能无法跨浏览器工作。