色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術(shù)文章
文章詳情頁

HTML5視頻播放標簽video和音頻播放標簽audio標簽的正確用法

瀏覽:117日期:2022-06-02 17:53:31

如何嵌入視頻和音頻

在網(wǎng)頁里嵌入HTML5音頻播放器和視頻播放器的方法非常簡單:

<video src="https://www.jb51.net/~j/theora_testsuite/320x240.ogg" controls autoplay loop>
 Your browser does not support the <code>video</code> element.
</video>

上面這個例子顯示了如何播放一個視頻文件,并露出視頻播放控制按鈕。

下面這個例子是在HTML網(wǎng)頁里嵌入音頻 audio 的方法:

<audio controls autoplay loop src="/test/audio.ogg">
<p>Your browser does not support the <code>audio</code> element.</p>
</audio>

這里的 src 屬性里可以填入一個音頻/視頻的URL,也可以是一個本地的文件。

<audio src="audio.ogg" controls autoplay loop>
<p>Your browser does not support the <code>audio</code> element </p>
</audio>

下面是<audio> 和 <video> 兩個標記上控制屬性的含義:

controls : 顯示標準的 HTML5 視頻/音頻播放器控制條、控制按鈕。
autoplay : 讓文件自動播放。
loop : 讓文件循環(huán)播放。

<audio src="audio.mp3" preload="auto" controls></audio>

這里的 preload 屬性是用來緩存大體積文件的。它有三個可選值:

"none" 不緩存
"auto" 緩存
"metadata" 只緩存文件元信息
為了能夠兼容各種瀏覽器對不同媒體類型的支持,我們可以用多個 <source> 元素來提供多個不同的媒體類型。例如:

<video controls>
 <source src="foo.ogg" type="video/ogg">
 <source src="foo.mp4" type="video/mp4">
 Your browser does not support the <code>video</code> element.
</video>

支持Ogg格式視頻流的瀏覽器可以播放 Ogg 文件。如果不支持,可以播放 MPEG-4 文件。查看各種瀏覽器對各種媒體類型的支持情況,請查看這里。

我們還可以指定播放使用的解碼器(codecs); 這樣就可以更精確的讓瀏覽器如何播放提供的視頻:

<video controls>
 <source src="foo.ogg" type="video/ogg; codecs=dirac, speex">
 Your browser does not support the <code>video</code> element.
</video>

上面,我們指定了這個視頻需要使用 Dirac 和 Speex 解碼器。如果瀏覽器支持 Ogg 格式,但沒有指定的解碼器,那么,視頻將不會被加載。

如果沒有提供 type 屬性,則瀏覽器會向服務(wù)器詢問媒體類型,看看是否支持;如果不支持,瀏覽器將會去檢查下一個 source 屬性。

用JavaScript控制視頻/音頻播放

一旦視頻文件正確的嵌入到了HTML網(wǎng)頁里,我們就可以使用JavaScript里控制它的部分,獲取它的播放信息。比如,用JavaScript啟動視頻播放:

var v = document.getElementsByTagName("video")[0];
v.play();

用JavaScript可控制HTML5視頻播放器實現(xiàn)播放、暫停、快進,快退、音量等。

<audio id="demo" src="audio.mp3"></audio>
<div>
 <button onclick="document.getElementById("demo").play()">播放</button>
 <button onclick="document.getElementById("demo").pause()">暫停</button>
 <button onclick="document.getElementById("demo").volume+=0.1">降低音量</button>
 <button onclick="document.getElementById("demo").volume-=0.1">提高音量</button>
</div> 

停止下載視頻文件

雖然我們可以使用pause()方法里讓視頻文件停止播放,但瀏覽器并未停止下載媒體文件,除非它達到了一定的緩存量。

下面是讓瀏覽器如何停止下載視頻文件的方法:

var mediaElement = document.getElementById("myMediaElementID");
mediaElement.pause();
mediaElement.src="";
//或
mediaElement.removeAttribute("src"); 

通過刪除 src 屬性(或者設(shè)置為空值),這樣就能停止文件的網(wǎng)絡(luò)下載。

設(shè)定播放的時間點定位

我們可以指定視頻從某時某分某秒開始播放,這是通過設(shè)置 currentTime 屬性來實現(xiàn)。

我們可以通過 seekable 屬性來獲得視頻有效的播放時間范圍。它會返回一個 TimeRanges 對象,能夠告訴你有效的開始時間和結(jié)束時間。

var mediaElement = document.getElementById("mediaElementID");
mediaElement.seekable.start(0); // 返回開始時間 (秒)
mediaElement.seekable.end(0);  // 返回結(jié)束時間 (秒)
mediaElement.currentTime = 122; // 定位到第 122 秒播放
mediaElement.played.end(0);   // 返回已經(jīng)播放的時間長度(秒)

設(shè)定播放范圍

當在網(wǎng)頁里嵌入視頻/音頻文件時, <audio> 或 <video> 元素允許我們提供一些額外的信息來指定播放哪一時間段。實現(xiàn)的方法是在媒體文件后面跟隨(“#”)格式的信息。

它的具體語法是這樣的:

#t=[開始時間][,結(jié)束時間]
時間的表示方法可以使用秒數(shù),也可以提供一個 ”時:分:秒“ 格式的時間(例如 2:05:01 )。/p>

舉例:

//www.jb51.net/video.ogg#t=10,20
指定視頻從10秒開始播放,到20秒處結(jié)束。
//www.jb51.net/video.ogg#t=,10.5
指定視頻從頭開始播放到 10.5 秒處。
//www.jb51.net/video.ogg#t=,02:00:00
指定視頻播放2小時。
//www.jb51.net/video.ogg#t=60
指定視頻從第60秒開始播放,播放到結(jié)束。

設(shè)置視頻封面(poster參數(shù))

當視頻不是自動播放時,在有些瀏覽器里,視頻在未播放前的缺省界面是空白,這樣很沒有意義,我們可以給視頻設(shè)定一個封面,用視頻里的某個比較具有代表意義的畫面截圖作為視頻的封面,設(shè)定視頻封面的參數(shù)是 poster:

<video poster="cover.jpg" src="https://www.jb51.net/~j/theora_testsuite/320x240.ogg" controls autoplay loop>
 Your browser does not support the <code>video</code> element.
</video>

當視頻加載遇到錯誤時的補救方法
有時候視頻資源會失效,或加載失敗,或者瀏覽器不能解碼當前視頻格式,當遇到這種情況,我們應(yīng)該給與補救措施,替換當前視頻資源地址,或用其它措施補救,比如將video對象替換成圖片。我們可以使用JavaScript對視頻加載中的“error”事件進行監(jiān)聽,比如對于下面的視頻資源:

<video controls>
 <source src="dynamicsearch.mp4" type="video/mp4"></source>
 <a href="dynamicsearch.mp4" rel="external nofollow" >
  <img data-original="dynamicsearch.jpg">
 </a>
 <p>Click image to play a video demo of dynamic app search</p>
</video>

我們使用下面的js代碼進行補救:

var v = document.querySelector("video"),
  sources = v.querySelectorAll("source"),
  lastsource = sources[sources.length-1];
lastsource.addEventListener("error", function(ev) {
 var d = document.createElement("div");
 d.innerHTML = v.innerHTML;
 v.parentNode.replaceChild(d, v);
}, false);

更多關(guān)于HTML5視頻播放器video標簽和音頻播放器audio標簽的正確用法請點擊查看下面的相關(guān)文章

標簽: CSS HTML
相關(guān)文章:
主站蜘蛛池模板: 黄色在线视屏 | 黄色三级网址 | 欧美成人a视频 | 国产综合在线观看 | 久久免费久久 | 国内久久 | 国产精选在线播放 | 免费国产成人高清在线看软件 | 国产自在自线午夜精品 | 三级黄色毛片网站 | 国产精品一区二区综合 | 免费黄色网址在线播放 | 青青草色久综合网 | 欧美国产日韩在线播放 | 欧美成人久久久免费播放 | 99久久精品免费看国产免费软件 | 久久视频精品53在线观看 | 久青草青综合在线视频 | 成人公开免费视频 | 国产午夜精品久久理论片小说 | 国产成人免费在线观看 | 亚洲美女高清aⅴ视频免费 亚洲美女黄色片 | 久草视频中文在线 | 一区二区在线欧美日韩中文 | 一级做a毛片在线看 | 免费高清一级欧美片在线观看 | 亚洲综合色吧 | 日本黄区 | 最新国产午夜精品视频成人 | 亚洲精品国产美女在线观看 | 亚洲成人国产精品 | 成人亚洲综合 | 国产a国产片 | 手机在线看片国产日韩生活片 | 失禁h啪肉尿出来高h男男 | 亚洲精品一区二三区在线观看 | 五月桃花网婷婷亚洲综合 | 最近手机中文在线视频 | 久艹在线观看视频 | 日本护士一级毛片在线播放 | 亚州视频一区 |