最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

HTML5中視頻音頻的使用詳解

  發(fā)布時間:2017-07-07 16:28:48   作者:Poetry   我要評論
這篇文章主要給大家總結(jié)介紹了關(guān)于HTML5中視頻音頻的使用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。

一、video

1.1 video支持視頻格式

常見的視頻格式
 

  • 視頻的組成部分:畫面、音頻、編碼格式
  • 視頻編碼:H.264、Theora、VP8(google開源)

HTML5支持的視頻格式:

1、Ogg 

     帶有Theora視頻編碼+Vorbis音頻編碼的Ogg文件 

         支持的瀏覽器:F、C、O 

2、MEPG4 

     帶有H.264視頻編碼+AAC音頻編碼的MPEG4文件 

     支持的瀏覽器: S、C 

3、WebM 

     帶有VP8視頻編碼+Vorbis音頻編碼的WebM格式 

     支持的瀏覽器: I、F、C、O 

     劣勢:視頻少、轉(zhuǎn)碼器幾乎沒有,不好轉(zhuǎn)碼 

想要video能自動填充慢父div的大小,只要給video標(biāo)簽加上style="width= 100%; height=100%; object-fit: fill"即可

1.2 標(biāo)簽原型

指定一種視頻格式,不能播就提示

<video id="media" src="examp.mp4" width="500" 
poster="examp1.jpg" >您的瀏覽器不支持video</video>

給定多種視頻格式,瀏覽器根據(jù)自身支持程度選擇播放哪一種
 

注意:多個source標(biāo)簽,瀏覽器會從第一個開始識別,如果第一個不被識別,則會繼續(xù)識別第二個;如果第一個識別成功,則會直接播放第一種格式視頻

<video controls = “controls”>
   <source src=”1.mp4” type=”video/mp4” />  //src屬性寫到source標(biāo)簽中,要指定視頻的type類型,例如MP4的即為type=“video/mp4”
   <source src = “2.ogg” type=”video/ogg” />  //ogg格式
   <source src=”3.webm” type=”video/webm” />   //webm格式
</video>

1.3 重要的video標(biāo)簽屬性

屬性(常用) 功能描述
controls controls 是否顯示播放控件
autoplay autoplay 設(shè)置是否打開瀏覽器后自動播放
width Pilex(像素) 設(shè)置播放器的寬度
height Pilex(像素) 設(shè)置播放器的高度
loop loop 設(shè)置視頻是否循環(huán)播放(即播放完后繼續(xù)重新播放)
preload preload 設(shè)置是否等加載完再播放
src url 設(shè)置要播放視頻的url地址
poster imgurl 設(shè)置播放器初始默認(rèn)顯示圖片
autobuffer autobuffer 設(shè)置為瀏覽器緩沖方式,不設(shè)置autoply才有效

API 屬性 

屬性 描述
audioTracks 返回表示可用音軌的 AudioTrackList 對象
buffered 返回表示音頻/視頻已緩沖部分的 TimeRanges 對象
controller 返回表示音頻/視頻當(dāng)前媒體控制器的 MediaController 對象
crossOrigin 設(shè)置或返回音頻/視頻的 CORS 設(shè)置
currentSrc 返回當(dāng)前音頻/視頻的 URL
currentTime 設(shè)置或返回音頻/視頻中的當(dāng)前播放位置(以秒計)
defaultMuted 設(shè)置或返回音頻/視頻默認(rèn)是否靜音
defaultPlaybackRate 設(shè)置或返回音頻/視頻的默認(rèn)播放速度
duration 返回當(dāng)前音頻/視頻的長度(以秒計)
ended 返回音頻/視頻的播放是否已結(jié)束
error 返回表示音頻/視頻錯誤狀態(tài)的 MediaError 對象
mediaGroup 設(shè)置或返回音頻/視頻所屬的組合(用于連接多個音頻/視頻元素)
muted 設(shè)置或返回音頻/視頻是否靜音
networkState 返回音頻/視頻的當(dāng)前網(wǎng)絡(luò)狀態(tài)
paused 設(shè)置或返回音頻/視頻是否暫停
playbackRate 設(shè)置或返回音頻/視頻播放的速度
played 返回表示音頻/視頻已播放部分的 TimeRanges 對象
readyState 返回音頻/視頻當(dāng)前的就緒狀態(tài)
seekable 返回表示音頻/視頻可尋址部分的 TimeRanges 對象
seeking 返回用戶是否正在音頻/視頻中進(jìn)行查找
startDate 返回表示當(dāng)前時間偏移的 Date 對象
textTracks 返回表示可用文本軌道的 TextTrackList 對象
videoTracks 返回表示可用視頻軌道的 VideoTrackList 對象
volume 設(shè)置或返回音頻/視頻的音量
常用API屬性

  • duration:返回當(dāng)前音頻/視頻的長度(以秒計)
  • paused:設(shè)置或返回音頻/視頻是否暫停
  • currentTime:設(shè)置或返回音頻/視頻中的當(dāng)前播放位置(以秒計)
  • ended:返回音頻/視頻的播放是否已結(jié)束

1.4 Video API

1.4.1 Video 方法

API 事件說明
play video.play(); 播放視頻
pause video.pause(); 暫停播放視頻
load video.load(); 將全部屬性回復(fù)默認(rèn)值,視頻恢復(fù)重新開始狀態(tài)
canPlayType var support = videoid.canPlayType(‘video/mp4′); 

判斷瀏覽器是否支持當(dāng)前類型的視頻格式

返回值:
        空字符串:不支持Maybe:可能支持Probably:完全支持

常用方法

  • play():開始播放音頻/視頻
  • pause():暫停當(dāng)前播放的音頻/視頻

1.4.2網(wǎng)絡(luò)狀態(tài)

獲取video對象

Media = document.getElementById("media");

1.Media.currentSrc; 

    返回當(dāng)前資源的URL 

2.Media.src = value; 

    返回或設(shè)置當(dāng)前資源的URL 

3.Media.canPlayType(type); 

    是否能播放某種格式的資源 

4.Media.networkState; 

    0.此元素未初始化 

    1.正常但沒有使用網(wǎng)絡(luò) 

    2.正在下載數(shù)據(jù) 

    3.沒有找到資源 

5.Media.load(); 

    重新加載src指定的資源 

6.Media.buffered; 

    返回已緩沖區(qū)域,TimeRanges 

7.Media.preload; 

    none:不預(yù)載 

    metadata:預(yù)載資源信息 

    auto: 

1.4.3 準(zhǔn)備狀態(tài)

1.Media.readyState 

2.Media.seeking; 

    是否正在seeking 

1.4.4 回放狀態(tài)

1.Media.currentTime = value; 

    當(dāng)前播放的位置,賦值可改變位置 

2.Media.startTime; 

    一般為0,如果為流媒體或者不從0開始的資源,則不為0 

3.Media.duration; 

    當(dāng)前資源長度 流返回?zé)o限 

4.Media.paused; 

    是否暫停 

5.Media.defaultPlaybackRate = value; 

    默認(rèn)的回放速度,可以設(shè)置 

6.Media.playbackRate = value; 

    當(dāng)前播放速度,設(shè)置后馬上改變 

7.Media.played; 

    返回已經(jīng)播放的區(qū)域,TimeRanges,關(guān)于此對象見下文 

8.Media.seekable; 

    返回可以seek的區(qū)域 TimeRanges 

9.Media.ended; 

    是否結(jié)束 

10.Media.autoPlay; 

    是否自動播放 

11.Media.loop; 

    是否循環(huán)播放 

12.Media.play(); 

    播放 

13.Media.pause(); 

    暫停 

1.4.5 視頻控制

  • Media.controls;//是否有默認(rèn)控制條
  • Media.volume = value; //音量
  • Media.muted = value; //靜音
  • TimeRanges(區(qū)域)對象
  • TimeRanges.length; //區(qū)域段數(shù)
  • TimeRanges.start(index) //第index段區(qū)域的開始位置
  • TimeRanges.end(index) //第index段區(qū)域的結(jié)束位置

1.4.6 相關(guān)事件

1.首先綁定事件的話可以通過js中的addEventListener方法來綁定事件 

事件 說明
loadstart 客戶端開始請求數(shù)據(jù)
progress 客戶端正在請求數(shù)據(jù)
suspend 延遲下載
abort 客戶端主動終止下載(不是因?yàn)殄e誤引起)
loadstart 客戶端開始請求數(shù)據(jù)
progress 客戶端正在請求數(shù)據(jù)
error 請求數(shù)據(jù)時遇到錯誤
stalled 網(wǎng)速失速
play play()和autoplay開始播放時觸發(fā)
pause pause()觸發(fā)
loadedmetadata 成功獲取資源長度
loadeddata -
waiting 等待數(shù)據(jù),并非錯誤
playing 開始回放
canplay 可以播放,但中途可能因?yàn)榧虞d而暫停
canplaythrough 可以播放,歌曲全部加載完畢
seeking 尋找中
seeked 尋找完畢
timeupdate 播放時間改變
ended 播放結(jié)束
ratechange 播放速率改變
durationchange 資源長度改變
volumechange 音量改變

2.常用事件 

  • oncanplay:當(dāng)文件就緒可以開始播放時運(yùn)行的腳本(緩沖已足夠開始時)。
  • ontimeupdate: 當(dāng)播放位置改變時(比如當(dāng)用戶快進(jìn)到媒介中一個不同的位置時)運(yùn)行的腳本。
  • onended:當(dāng)媒介已到達(dá)結(jié)尾時運(yùn)行的腳本(可發(fā)送類似“感謝觀看”之類的消息)。

1.4.7 其他

1.全屏:

  • element.webkitRequestFullScreen();( webkit)
  • element.mozRequestFullScreen(); (Firefox )
  • element.requestFullscreen(); (W3C )

2.退出全屏:

  • document.webkitCancelFullScreen(); (webkit )
  • document.mozCancelFullScreen(); (Firefox)
  • document.exitFullscreen(); (W3C)

二、audio

2.1 audio格式

1.常見的音頻格式

    音頻編碼:ACC、MP3、Vorbis 

2.HTML5支持的音頻格式:

  • Ogg 免費(fèi) 支持的瀏覽器:C、F、O
  • MP3 收費(fèi) 支持的瀏覽器: I、C、S
  • Wav 收費(fèi) 支持的瀏覽器: F、O、S

2.2 audio標(biāo)簽中的一些常用屬性

屬性 屬性值 注釋
src url 播放的音樂的url地址(火狐只支持ogg的音樂,而IE9只支持MP3格式的音樂。chrome貌似全支持)
preload preload 預(yù)加載(在頁面被加載時進(jìn)行加載或者說緩沖音頻),如果使用了autoplay的話那么該屬性失效。
loop loop 循環(huán)播放
controls controls 是否顯示默認(rèn)控制條(控制按鈕)
autoplay autoplay 自動播放

對于音樂格式的支持 

音頻格式 Chrome Firefox IE9 Opera Safari
OGG 支持 支持 支持 不支持 不支持
MP3 支持 不支持 支持 不支持 支持
WAV 不支持 支持 不支持 支持 不支持

audio可通過new來創(chuàng)建。也可以通過用document來獲取

//通過new關(guān)鍵字來創(chuàng)建Audio對象
var Music = new Audio("test.mp3");
//通過document來獲取已經(jīng)存在的Audio對象
var Music = document.getElementById("audio");
//當(dāng)然這里也可以使用document.getElementsByClassName('className')等其他的方法來獲取。

2.3 api所提供的對audio標(biāo)簽操作的一些屬性和方法

屬性 注釋
duration 獲取媒體文件的總時長,以s為單位,如果無法獲取,返回NaN
paused 如果媒體文件被暫停,那么paused屬性返回true,反之則返回false
ended 如果媒體文件播放完畢返回true
muted 用來獲取或設(shè)置靜音狀態(tài)。值為boolean
volume 控制音量的屬性值為0-1;0為音量最小,1為音量最大
startTime 返回起始播放時間
error 返回錯誤代碼,為uull的時候?yàn)檎!7駝t可以通過Music.error.code來獲取
currentTime 用來獲取或控制當(dāng)前播放的時間,單位為s。
currentSrc 以字符串形式返回正在播放或已加載的文件

2.4 常用的控制用的函數(shù)

函數(shù) 作用
load() 加載音頻、視頻軟件
play() 加載并播放音頻、視頻文件或重新播放暫停的的音頻、視頻
pause() 暫停出于播放狀態(tài)的音頻、視頻文件
canPlayType(obj) 測試是否支持給定的Mini類型的文件

2.5 audio標(biāo)簽API中的常用事件

首先綁定事件的話可以通過js中的addEventListener方法來綁定事件  

事件名稱 事件作用
loadstart 客戶端開始請求數(shù)據(jù)
progress 客戶端正在請求數(shù)據(jù)(或者說正在緩沖)
play play()和autoplay播放時
pause pause()方法促發(fā)時
ended 當(dāng)前播放結(jié)束
timeupdate 當(dāng)前播放時間發(fā)生改變的時候。播放中常用的時間處理
canplaythrough 歌曲已經(jīng)載入完全完成
canplay 緩沖至目前可播放狀態(tài)。

其實(shí)video的api和audio幾乎一致。稍稍有點(diǎn)不同。所以基本上會了一個其他的也就都會了

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • html5中audio支持音頻格式的解決方法

    HTML5 Audio標(biāo)簽?zāi)軌蛑С謜av, mp3, ogg, acc, webm等格式,但有個很重要的音樂文件格式midi(擴(kuò)展名mid)卻在各大瀏覽器中都沒有內(nèi)置的支持。這篇文章給大家介紹html5中audio
    2018-08-24
  • HTML5實(shí)現(xiàn)音頻和視頻嵌入的方法

    這篇文章主要介紹了HTML5實(shí)現(xiàn)音頻和視頻嵌入的方法的相關(guān)資料,原生的支持音頻和視頻,為HTML5注入了巨大的發(fā)展?jié)摿?,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考
    2018-08-22
  • 詳解移動端HTML5音頻與視頻問題及解決方案

    這篇文章主要介紹了詳解移動端HTML5音頻與視頻問題及解決方案的相關(guān)資料,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-22
  • HTML5制作酷炫音頻播放器插件圖文教程

    本期的教程主要是為了展示Html5新增的
    2014-12-30
  • HTML5自定義mp3播放器源碼

    這篇文章主要介紹了HTML5自定義mp3播放器源碼,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-01-06

最新評論

武安市| 云浮市| 百色市| 赤水市| 克东县| 贵港市| 巧家县| 吉水县| 广昌县| 正安县| 罗甸县| 应城市| 光山县| 资溪县| 怀来县| 子长县| 拉孜县| 呈贡县| 江永县| 靖边县| 兴业县| 莎车县| 苍溪县| 松溪县| 临潭县| 楚雄市| 耿马| 延津县| 丰城市| 兴业县| 景洪市| 翁源县| 台前县| 夏邑县| 宜宾市| 康乐县| 鹰潭市| 永宁县| 西昌市| 滁州市| 安康市|