這篇文章給大家介紹怎么在HTML5中嵌入音頻和視頻,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、小程序制作、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了渝水免費(fèi)建站歡迎大家使用!
HTML5支持的音頻格式:
視頻
視頻格式:
由上可知,HTML5貌似支持的格式有點(diǎn)少哈,所以當(dāng)你發(fā)現(xiàn)用HTML5放置音頻和視頻不顯示時(shí),應(yīng)該就是格式不支持的問(wèn)題。注: MP4有3種編碼,mpg4(xdiv),,mpg4(xvid),avc(h364), 只有h364才是公認(rèn)的MP4標(biāo)準(zhǔn)編碼(在這也是被坑了,其他格式的只有聲音沒(méi)有圖像。)遇到這種問(wèn)題,就用視頻格式轉(zhuǎn)換器,轉(zhuǎn)換一下格式就OK啦。
音頻實(shí)現(xiàn)起來(lái)很簡(jiǎn)單:這里工具條使用了瀏覽器默認(rèn)的工具條。
視頻雖然也可以使用瀏覽器默認(rèn)的,但無(wú)法實(shí)現(xiàn)私人訂制,所以從學(xué)技術(shù)的角度講,還是要學(xué)習(xí)一下自己做工具實(shí)現(xiàn)功能(audio也可參照此方法)。
audioVideo.html
網(wǎng)頁(yè)放置視頻 1fps
顯示(html)與功能實(shí)現(xiàn)(js)分離,由外部導(dǎo)入
ControlBar.js
//使用腳本檢測(cè)瀏覽器的標(biāo)簽支持情況 var support = !!document.createElement("audio").canPlayType; if (!support) { alert("你的瀏覽器不支持本視頻播放"); } // 定義全局的視頻對(duì)象 var e1 = null; window.addEventListener("load", function() { e1 = document.getElementById("myPlayer"); }); /*前進(jìn):一分鐘 */ function Next() { e1.currentTime+=10; //設(shè)置屬性currentTime,快進(jìn)10s } /*后退:一分鐘 */ function Prev() { e1.currentTime-=10; //設(shè)置屬性currentTime,后退10s } /*播放/暫停*/ function Play(e) { if(e1.paused){ e1.play(); document.getElementById("btn1").innerHTML="暫停" }else{ e1.pause(); document.getElementById("btn1").innerHTML="播放" } } /*慢進(jìn):小于等于1時(shí),每次都只減慢0.2的速率;大于1時(shí),每次減1 */ function Slow(){ if(e1.playbackRate<=1){ e1.playbackRate-=0.2; }else{ e1.playbackRate-=1; } document.getElementById("rate").innerHTML=fps2fps(e1.playbackRate); } /*慢進(jìn):小于等于1時(shí),每次都只減慢0.2的速率;大于1時(shí),每次減1 */ function Fast(){ if(e1.playbackRate<1){ e1.playbackRate+=0.2; }else{ e1.playbackRate+=1; } document.getElementById("rate").innerHTML=fps2fps(e1.playbackRate); } function fps2fps(fps){ if(fps<1){ return fps.toFixed(1); }else{ return fps; } } /*靜音*/ function Muted(e){ if(e1.muted){ e1.muted=false; e.innerHRML="X"; document.getElementById("volume").value=e1.volume; }else{ e1.muted=true; e.innerHRML="x"; document.getElementById("volume").value=0; } } /*調(diào)整音量*/ function Volume(e){ if(e1.muted==true){ e1.muted=false; } e1.volume=e.value; } /* 進(jìn)度信息:控制進(jìn)度條,并顯示進(jìn)度時(shí)間*/ function Progress(){ var p1=document.getElementById("progress"); p1.style.width=(e1.currentTime/e1.duration)*720+"px"; document.getElementById("info").innerHTML=s2time(e1.currentTime)+"/"+s2time(e1.duration); } function s2time(s){ var m=parseFloat(s/60).toFixed(0); s=parseFloat(s%60).toFixed(0); return (m<10? "0"+m:m)+":"+(s<10?"0"+s:s); } /* 網(wǎng)頁(yè)加載完畢后,把進(jìn)度處理函數(shù)添加至視頻對(duì)象的timeupdate事件中*/ window.addEventListener("load",function(){ e1.addEventListener("timeupdate",Progress); }); /*給window.onload事件添加進(jìn)度處理函數(shù)*/ window.addEventListener("load",Progress);
實(shí)現(xiàn)的功能:播放,暫停,快進(jìn),慢進(jìn),前進(jìn),后退,音量控制,進(jìn)度條和時(shí)間顯示。由此可見(jiàn)通過(guò)Audio或Video的屬性和方法可以實(shí)現(xiàn)更復(fù)雜的功能。
關(guān)于怎么在HTML5中嵌入音頻和視頻就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。