HTML5视频播放标签video和音频播放标签audio标签的正确用法
如何嵌入视频和音频
在网页里嵌入HTML5音频播放器和视频播放器的方法非常简单:
Yourbrowserdoesnotsupportthe video
element.
上面这个例子显示了如何播放一个视频文件,并露出视频播放控制按钮。
下面这个例子是在HTML网页里嵌入音频audio的方法:
Yourbrowserdoesnotsupportthe
audio
element.
这里的src属性里可以填入一个音频/视频的URL,也可以是一个本地的文件。
Yourbrowserdoesnotsupportthe
audio
element
下面是
controls:显示标准的HTML5视频/音频播放器控制条、控制按钮。
autoplay:让文件自动播放。
loop:让文件循环播放。
这里的preload属性是用来缓存大体积文件的。它有三个可选值:
"none"不缓存
"auto"缓存
"metadata"只缓存文件元信息
为了能够兼容各种浏览器对不同媒体类型的支持,我们可以用多个
Yourbrowserdoesnotsupportthe video
element.
支持Ogg格式视频流的浏览器可以播放Ogg文件。如果不支持,可以播放MPEG-4文件。查看各种浏览器对各种媒体类型的支持情况,请查看这里。
我们还可以指定播放使用的解码器(codecs);这样就可以更精确的让浏览器如何播放提供的视频:
Yourbrowserdoesnotsupportthe video
element.
上面,我们指定了这个视频需要使用Dirac和Speex解码器。如果浏览器支持Ogg格式,但没有指定的解码器,那么,视频将不会被加载。
如果没有提供type属性,则浏览器会向服务器询问媒体类型,看看是否支持;如果不支持,浏览器将会去检查下一个source属性。
用JavaScript控制视频/音频播放
一旦视频文件正确的嵌入到了HTML网页里,我们就可以使用JavaScript里控制它的部分,获取它的播放信息。比如,用JavaScript启动视频播放:
varv=document.getElementsByTagName("video")[0]; v.play();
用JavaScript可控制HTML5视频播放器实现播放、暂停、快进,快退、音量等。
播放 暂停 降低音量 提高音量
停止下载视频文件
虽然我们可以使用pause()方法里让视频文件停止播放,但浏览器并未停止下载媒体文件,除非它达到了一定的缓存量。
下面是让浏览器如何停止下载视频文件的方法:
varmediaElement=document.getElementById("myMediaElementID"); mediaElement.pause(); mediaElement.src=''; //或 mediaElement.removeAttribute("src");
通过删除src属性(或者设置为空值),这样就能停止文件的网络下载。
设定播放的时间点定位
我们可以指定视频从某时某分某秒开始播放,这是通过设置currentTime属性来实现。
我们可以通过seekable属性来获得视频有效的播放时间范围。它会返回一个TimeRanges对象,能够告诉你有效的开始时间和结束时间。
varmediaElement=document.getElementById('mediaElementID'); mediaElement.seekable.start(0);//返回开始时间(秒) mediaElement.seekable.end(0);//返回结束时间(秒) mediaElement.currentTime=122;//定位到第122秒播放 mediaElement.played.end(0);//返回已经播放的时间长度(秒)
设定播放范围
当在网页里嵌入视频/音频文件时,
它的具体语法是这样的:
#t=[开始时间][,结束时间]
时间的表示方法可以使用秒数,也可以提供一个”时:分:秒“格式的时间(例如2:05:01)。/p>
举例:
//www.nhooo.com/video.ogg#t=10,20
指定视频从10秒开始播放,到20秒处结束。
//www.nhooo.com/video.ogg#t=,10.5
指定视频从头开始播放到10.5秒处。
//www.nhooo.com/video.ogg#t=,02:00:00
指定视频播放2小时。
//www.nhooo.com/video.ogg#t=60
指定视频从第60秒开始播放,播放到结束。
设置视频封面(poster参数)
当视频不是自动播放时,在有些浏览器里,视频在未播放前的缺省界面是空白,这样很没有意义,我们可以给视频设定一个封面,用视频里的某个比较具有代表意义的画面截图作为视频的封面,设定视频封面的参数是poster:
Yourbrowserdoesnotsupportthe video
element.
当视频加载遇到错误时的补救方法
有时候视频资源会失效,或加载失败,或者浏览器不能解码当前视频格式,当遇到这种情况,我们应该给与补救措施,替换当前视频资源地址,或用其它措施补救,比如将video对象替换成图片。我们可以使用JavaScript对视频加载中的“error”事件进行监听,比如对于下面的视频资源:
Clickimagetoplayavideodemoofdynamicappsearch
我们使用下面的js代码进行补救:
varv=document.querySelector('video'), sources=v.querySelectorAll('source'), lastsource=sources[sources.length-1]; lastsource.addEventListener('error',function(ev){ vard=document.createElement('div'); d.innerHTML=v.innerHTML; v.parentNode.replaceChild(d,v); },false);
更多关于HTML5视频播放器video标签和音频播放器audio标签的正确用法请点击查看下面的相关文章