为什么我录制的MP4视频在本地可以播放但是使用html5的video多媒体播放标签不能正常播放只有一个进度条而不显示图像?当时我也很好奇MP4视频可以用video标签播放呀,我就经常用,毕竟是好朋友我还是亲自去筛查了一下问题,这不结论处来了,其实就是一个视频编码的问题,格式虽然都是MP4但是html中只支持H.264的编码格式,无奈只能重新转换一下编码了。
为了避免大家遇到同样的问题我在这里就给大家普及一下html5关于<video>标签的知识吧:
在使用html4协议做网站时我们想要在网页上播放一个视频要不使用flash去播放,要么就是嵌入式页面来实现,对于html5来说这两种方法非常的不方便因为一个牛逼哄哄的<video>出现了,这个标签的功能就是让多媒体文件可以很方便的在网页中播放。
html中播放一个视频只需要一个标签:
<video src="phpstudy.mp4"controls="controls"width="500"height="300"></video>
代码虽然少了很多,但是功能却很健全,这就是html5的亮点之一吧!
关于<video>标签所支持的视频格式和编码:
-
MP4 = MPEG 4文件使用 H264 视频编解码器和AAC音频编解码器
-
WebM = WebM 文件使用 VP8 视频编解码器和 Vorbis 音频编解码器
-
Ogg = Ogg 文件使用 Theora 视频编解码器和 Vorbis音频编解码器
通过上面的信息我们会发现只有h264编码的MP4视频(MPEG-LA公司)、VP8编码的webm格式的视频(Google公司)和Theora编码的ogg格式的视频(iTouch开发)可以支持html5的<video>标签。
如果浏览器不支持video标签怎么办?
比如IE浏览器还有老版本的浏览器对html5的支持不太好,当用户用这些浏览器打开我们带有视频的网页怎么办呢?
我们可以把代码这样写:
<video src="phpstudy.mp4"controls="controls"width="500"height="300">您的浏览器不支持播放该视频!</video>
这样在不支持html5的浏览器中就会提示“您的浏览器不支持播放该视频!”啦!
关于video标签的扩展参数说明:
video 元素允许多个 source 元素。source 元素可以链接不同的视频文件。浏览器将使用 个可识别的格式,这样我们只要多准备几个不同格式的视频就可以了。
用法:
<video width="500"height="250"controls="controls">
<source src="movie.ogg"type="video/ogg">
<source src="movie.mp4"type="video/mp4">
您的浏览器不支持此种视频格式。
</video>
-
autoplay :出现该属性意味着视频在就绪后将自动播放,用法:autoplay="autoplay"
-
controls :出现该属性意味着向用户显示控件,如播放按钮等,用法:controls="controls"
-
height:设置高度 width:设置宽度
-
loop:自动重播,用法:loop="loop"
-
preload:视频在页面加载时进行加载并预备播放,用法:preload="auto" - 当页面加载后载入整个视频;preload="meta" - 当页面加载后只载入元数据;preload="none" - 当页面加载后不载入视频。注意:若使用了autoplay,则忽略preload
-
src:要播放视频的url
关于<video>标签我就介绍到这里,相信大家都对这个标签已经有了深刻的了解!