H5多媒体能力 author: @TiffanysBear
多媒体能力顾名思义就是H5提供的播放视频、音频能力。 在HTML5中通过HTML标签\和\来支持嵌入式的媒体,是开发者能够方便的将媒体嵌入。
##例子
###音频
<audio src="XXX">
你的浏览器不支持audio标签
</audio>
###视频
<video controls>
<source src="foo.ogg" type="video/ogg">
<source src="foo.mp4" type="video/mp4">
你的浏览器不支持video标签
</video>
##\<audio>标签
如果元素包含 src 属性:零个或多个 \<track> 元素,其后紧跟不包含 \<audio> 或者 \<video>媒体元素的透明内容。 或者:零个或多个 \<source> 元素,其后紧跟零个或多个 \<track> 元素,其后紧跟不包含 \<audio> 或者 \<video>媒体元素的透明内容。
###事件 | 事件 | 描述 | | —- | —- | | abort | 在播放被终止时触发。| | canplay | 在媒体数据已经有足够的数据(至少播放数帧)可供播放时触发。| | canplaythrough |在媒体的readyState变为CAN_PLAY_THROUGH时触发,表明媒体可以在保持当前的下载速度的情况下不被中断地播放完毕。注意:手动设置currentTime会使得firefox触发一次canplaythrough事件,其他浏览器或许不会如此。| | durationchange |元信息已载入或已改变,表明媒体的长度发生了改变。例如,在媒体已被加载足够的长度从而得知总长度时会触发这个事件。| | emptied |媒体被清空(初始化)时触发。| | ended |播放结束时触发。| |error|在发生错误时触发。元素的error属性会包含更多信息| | loadeddata | 媒体的第一帧已经加载完毕| | loadedmetadata | 媒体的元数据已经加载完毕,现在所有的属性包含了它们应有的有效信息。| | loadstart | 在媒体开始加载时触发。| | mozaudioavailable |当音频数据缓存并交给音频层处理时| | pause |播放暂停时触发。| | play | 在媒体回放被暂停后再次开始时触发。即,在一次暂停事件后恢复媒体回放。| | playing |在媒体开始播放时触发(不论是初次播放、在暂停后恢复、或是在结束后重新开始)。| | progress | 告知媒体相关部分的下载进度时周期性地触发。有关媒体当前已下载总计的信息可以在元素的buffered属性中获取到。| | ratechange | 在回放速率变化时触发。| | seeked |在跳跃操作完成时触发。| | seeking |在跳跃操作开始时触发。| | stalled | 在尝试获取媒体数据,但数据不可用时触发。| | suspend |在媒体资源加载终止时触发,这可能是因为下载已完成或因为其他原因暂停。| | timeupdate |元素的currentTime属性表示的时间已经改变。| | volumechange |在音频音量改变时触发(既可以是volume属性改变,也可以是muted属性改变)| | waiting | 在一个待执行的操作(如回放)因等待另一个操作(如跳跃或下载)被延迟时触发。|
###业内实例
##\<vedio>标签
\ 元素 用于在HTML或者XHTML文档中嵌入视频内容。包含任一 src 属性或是一个或多个 \ 元素,其后紧跟流式内容 或 段落内容 , 不包括\ 或者 \ 元素。
时间偏移量目前是指定为float类型的值,表示偏移的秒数
###事件 同之前内容。
###业内实例
####爱奇艺、腾讯视频、优酷 三大视频网站都是使用的是\元素来播放视频。
####哔哩哔哩 哔哩哔哩使用的是自己开源的播放器flv.js 不过基本上也是用的\元素
####现在github上star最多的视频播放器一个是videojs/video.js,另一个是哔哩哔哩的flv.js,还有sampotts/plyr。音频视频播放器mediaelement/mediaelement
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有