HTML多媒體 , 主要分爲Audio 音頻和 Video 視頻。css
src
指定當前播放的音頻文件,controls
播放控制器,loop
歌曲循環,autoplay
自動播放 (chrome66以後被禁止)主流瀏覽器已經關閉了自動播放,須要js觸發才行,preload
預加載,若是使用了autoplay
這個屬性preload就失效了。html
<audio src="xxxx.mp3" controls="controls" loop="loop" autoplay="autoplay"> 您的瀏覽器不支持html5的audio標籤 </audio>
Firefox:支持 Ogg Vorbis和WAV Opera :支持Ogg Vorbis和WAV Safari :支持MP3,AAC格式 ,和MP4 Chrome :支持Ogg Vorbis,MP3,WAV,AAC和MP4 Internet Explorer 9+ :支持MP3,AAC格式 ,和MP4 IOS :支持MP3,AAC格式 ,和MP4 Android :支持AAC和MP3
Audio 不光是一個HTML標籤,它仍是一個window對象。既然是對象,那就有方法和屬性。html5
play,播放git
audio.addEventListener("play",() => {}); audio.onplay = () => {}
之前的Audio瀏覽器是不能直接播放的,若是須要播放一個音頻須要藉助一個flash插件。後來有了Audio.js的出現後,播放音頻不用依賴flash插件了。flash是使用as來編寫的,它和JavaScript有點相像,可是有一些門檻,在此基礎上,出現了不少的Audio插件,audio插件作了兩件事情,一件是舊版的瀏覽器兼容(http://kolber.github.io/audiojs/),第二件是美化自定義了瀏覽器的外觀。github
// 加載audio.js <script src="/audiojs/audio.min.js"></script> // 靜態加載 <script> audiojs.events.ready(function() { const as = audiojs.createAll(); }); </script> // 動態加載 <audio style="display:none" src="./music.mp3" preload="auto" />
src
源,controls
播放控制器,loop
循環播放,autoplay
自動播放,height
,width
,寬度和高度,在Audio裏面不能指定,可是在Video裏面是能夠的,muted
靜音,poster
預覽圖(當視頻沒有播放或者正在加載時展現給用戶的一張圖片,爲了交互的友好性),preload
預加載,和autoplay一塊時失效。web
<video src="xxxx.mp4" controls="controls" loop="loop" autoplay="autoplay" > 您的瀏覽器不支持html5的video標籤 </video>
play,播放ajax
video.addEventListener("play",() => {}); video.onplay = () => {}
video支持的視頻的格式主要有三種:MP四、ogg、webm。chrome
Firefox :支持Ogg Theora格式和WEBM Opera :支持Ogg Theora格式和WEBM Safari :支持MP4 Chrome :支持Ogg Theora格式,MP4和WEBM Internet Explorer 9 :支持MP4和WEBM(須要安裝插件) IOS :支持MP4 Android :支持MP4和WEBM(Android 2.3版本以上)
流媒體是指採用流式傳輸的方式在Internet播放的媒體格式(流媒體格式video標籤是不支持的)。promise
流媒體又叫流式媒體,它是指商家用一個視頻傳送服務器把節目當成數據包發出,傳送到網絡上。瀏覽器
用戶經過解壓設備對這些數據進行解壓後,節目就會像發送前那樣顯示出來。
典型的流媒體格式:rtmp、rtsp、flv都是流媒體的傳輸協議。
rtmp 是Adobe公司提供的一個流媒體協議,使用的是TCP協議,穩定性好
rtsp 是Netscape網景公司提供的一種協議,使用的是UDP協議,實時性好
flv 是蘋果公司提出的一個流媒體的一個協議,也是使用的TCP協議,把整個視頻流切割成一段一段的m3u8文件
<link href="https://cdnjs.cloudflare.com/ajax/libs/video.js/7.3.0/video-js.min.css" rel="stylesheet"> <script src="https://cdnjs.cloudflare.com/ajax/libs/video.js/7.3.0/video.min.js"></script> const player = videojs('video', options, function onPlayerReady() { this.play(); this.on('ended', function() { videojs.log('播放結束'); }); });