html5音频和视频标签

在html5之前的版本中如果想要在网页中插入音频和视频必须要安装插件才可以,比如最常见的flash插件。很多人在刚安装一款浏览器的时候都会遇到浏览器建议安装flash插件,在移动端也是如此。如果想要在手机上面看视频必须要安装flash插件,但是手机本身内存就很小这样无疑增加了手机处理器德尔压力所以苹果公司在2007年之后宣城自己的任何设备将不再支持flash插件,不就安卓也紧随其后,那么取而代之的就是用html标签。

 


在html中插入视频标签

 

<video src=‘movie.webm‘></video>

 

voedo标签是双标签,跟所有html标签一样有很多属性,src就是最基本的属性表示引入的视频地址,示例中视频地址格式为webm,那么html支持哪些视频格式呢?

  • Ogg =带有Theora视频编码+Vorbis音频编码的Ogg文件 支持的浏览器:F、C、O
  • MEPG4=带有H.264视频编码+AAC音频编码的MPEG4文件 支持的浏览器: S、C
  • WebM=带有VP8视频编码+Vorbis音频编码的WebM格式 支持的浏览器: I、F、C、O

看来哪种浏览器支持哪种格式都不是统一的,我们要写一个让所有支持html5标签的浏览器都正常显示的代码需要借助其一个子标签source 将示例补充如下

<video>
    <source src="movie.webm" type="video/webm" >
    <source src="movie.ogg" type="video/ogg" >
    <source src="movie.mp4" type="video/mp4" >
</video>

这样写就好了,放三个不同格式的视频在一起这样所有的所有支持html5的浏览就会从第一个开始找直到发现自己认识的格式,但是这样也仅仅是针对支持html5的浏览器那对于ie9以下不支持的浏览器会显示空白,所以我们也要有所提示告诉用户这个地方是一个视频标签

<video>
    <source src="movie.webm" type="video/webm" >
    <source src="movie.ogg" type="video/ogg" >
    <source src="movie.mp4" type="video/mp4" >
    您的浏览器版本过低不能支持html5视频标签
</video>

这样就会在不支持html5video标签的浏览器中显示这一句话,提醒用户更换浏览器或者升级浏览器。

在video标签可以正常显示时候就该考虑它的更多复杂的用法了,下面是其他属性:

   
   

属性 

 值 描述
Autoplay Autoplay  视频就绪自动播放
controls  controls  向用户显示播放控件

Width  Pixels(像素)  设置播放器宽度

Height  Pixels(像素)  设置播放器高度

Loop  Loop  播放完是否继续播放该视频,循环播放

Preload  Proload  是否等加载完再播放

Src  url  视频url地址

Poster  Imgurl  加载等待的画面图片

Autobuffer  Autobuffer 设置为浏览器缓冲方式,不设置autoply才有效

 

 在html5中是包含API的,所以video标签在javascript中也有很多属性和方法的API提供下面是详细:

 

方法描述
addTextTrack() 向音频/视频添加新的文本轨道
canPlayType() 检测浏览器是否能播放指定的音频/视频类型
load() 重新加载音频/视频元素
play() 开始播放音频/视频
pause() 暂停当前播放的音频/视频

 

属性描述
audioTracks 返回表示可用音轨的 AudioTrackList 对象
autoplay 设置或返回是否在加载完成后随即播放音频/视频
buffered 返回表示音频/视频已缓冲部分的 TimeRanges 对象
controller 返回表示音频/视频当前媒体控制器的 MediaController 对象
controls 设置或返回音频/视频是否显示控件(比如播放/暂停等)
crossOrigin 设置或返回音频/视频的 CORS 设置
currentSrc 返回当前音频/视频的 URL
currentTime 设置或返回音频/视频中的当前播放位置(以秒计)
defaultMuted 设置或返回音频/视频默认是否静音
defaultPlaybackRate 设置或返回音频/视频的默认播放速度
duration 返回当前音频/视频的长度(以秒计)
ended 返回音频/视频的播放是否已结束
error 返回表示音频/视频错误状态的 MediaError 对象
loop 设置或返回音频/视频是否应在结束时重新播放
mediaGroup 设置或返回音频/视频所属的组合(用于连接多个音频/视频元素)
muted 设置或返回音频/视频是否静音
networkState 返回音频/视频的当前网络状态
paused 设置或返回音频/视频是否暂停
playbackRate 设置或返回音频/视频播放的速度
played 返回表示音频/视频已播放部分的 TimeRanges 对象
preload 设置或返回音频/视频是否应该在页面加载后进行加载
readyState 返回音频/视频当前的就绪状态
seekable 返回表示音频/视频可寻址部分的 TimeRanges 对象
seeking 返回用户是否正在音频/视频中进行查找
src 设置或返回音频/视频元素的当前来源
startDate 返回表示当前时间偏移的 Date 对象
textTracks 返回表示可用文本轨道的 TextTrackList 对象
videoTracks 返回表示可用视频轨道的 VideoTrackList 对象
volume 设置或返回音频/视频的音量

 

事件描述
abort 当音频/视频的加载已放弃时
canplay 当浏览器可以播放音频/视频时
canplaythrough 当浏览器可在不因缓冲而停顿的情况下进行播放时
durationchange 当音频/视频的时长已更改时
emptied 当目前的播放列表为空时
ended 当目前的播放列表已结束时
error 当在音频/视频加载期间发生错误时
loadeddata 当浏览器已加载音频/视频的当前帧时
loadedmetadata 当浏览器已加载音频/视频的元数据时
loadstart 当浏览器开始查找音频/视频时
pause 当音频/视频已暂停时
play 当音频/视频已开始或不再暂停时
playing 当音频/视频在已因缓冲而暂停或停止后已就绪时
progress 当浏览器正在下载音频/视频时
ratechange 当音频/视频的播放速度已更改时
seeked 当用户已移动/跳跃到音频/视频中的新位置时
seeking 当用户开始移动/跳跃到音频/视频中的新位置时
stalled 当浏览器尝试获取媒体数据,但数据不可用时
suspend 当浏览器刻意不获取媒体数据时
timeupdate 当目前的播放位置已更改时
volumechange 当音量已更改时
waiting 当视频由于需要缓冲下一帧而停止

 

 

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。