91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

基于HTML5的音頻技術

發布時間:2020-06-11 06:19:11 來源:網絡 閱讀:469 作者:張肖恒大 欄目:移動開發

作者,蘇州思必馳信息科技有限公司,mdifar

傳統情況下,需要在網頁中播放一段音頻,通常有兩種方案:
1. 基于Flash插件的音頻播放器。
2. 基于瀏覽器插件的音頻播放。

使用Flash播放器,一個顯而易見的好處是基本上兼容所有的PC瀏覽器,瀏覽器上只需要安裝Flash插件即可,兼容性問題Adobe公司已經幫我們很好的解決了。而基于瀏覽器音頻插件,不同瀏覽器都需要特別定制,甚至同一個瀏覽器的不同版本也需要不同的實現,這在使用上造成了一定的困難。

隨著移動設備的發展,基于Flash插件的音頻播放器越來越不能滿足需要:從Flash插件的性能、安全等方面問題考慮,蘋果移動設備也都是不支持Flash的。因此,越來越需要一套規范來使開發者能更方便的在網頁中嵌入多媒體技術。

HTML5的產生,為音頻的播放提供了一套標準。在這之前,要想在頁面中播放一段音頻,通常是很麻煩的。比較通用的做法是寫一個flash音頻播放器,并提供一套接口,以便在各個瀏覽器中都兼容;或者直接寫embed標簽,但這就需要相關插件的支持。而現在,我們只需要在HTML頁面中嵌入一段audio標簽,就能在多款主流瀏覽器下播放音頻了。

下表是截止到2011年7月,各款主流瀏覽器對音頻格式的支持情況。可見,具備OGG+MP3兩種格式的音頻,就能兼容所有現代瀏覽器。
 

基于HTML5的音頻技術
* 注意:為了節省帶寬,移動設備并不會自動加載和播放音頻,需要用戶交互操作。iPhone 和 iPad 僅能同時播放一首音樂,并且不允許動態改變音量。iPad在處理同一頁面中的多個音樂時存在一些問題。

我們知道了瀏覽器支持的音頻格式,實際上還有一點也不能忽略,就是響應header的Content-Type。必須為正確的格式設置正確的Content-Type,瀏覽器的audio標簽才能正常加載和播放音頻。

基于HTML5技術,buzz庫對音頻這方面提供了很好的封裝,其中最重要的是sound類。

下面列出buzz的sound類方法:load,

播放控制play, pause, togglePlay, isPaused, stop, isEnded, loop, unloop

音量控制 mute, unmute, toggleMute, isMuted, setVolume, getVolume, increaseVolume, decreaseVolume, fadeIn, fadeout, fadeTo, fadeWith

事件綁定 bind, bindOnce, unbind, trigger

設置和獲取 setTime, getTime, setPercent, getPercent, getDuration, setSpeed, getSpeed, set, get

時間范圍 getPlayed, getBuffered, getSeekable

錯誤和狀態 getErrorCode, getErrorMessage, getStateCode, getStateMessage, getNetworkStateCode, getNetworkStateMessage

buzz的事件:abort, canplay, canplaythrough, dataunavailable, durationchange, emptied, empty, ended, error, loadeddata, loadedmetadata, loadstart, pause, play, playing, progress, ratechange, seeked, seeking, suspend, timeupdate, volumechange, waiting

通過這些方法,我們不難看出,其中的接口設計比較冗余,有很多接口的功能實際上是好幾個簡單接口的組合。并且buzz庫只是對HTML5的音頻接口進行了封裝,并沒有提供一套多瀏覽器兼容的解決方案。而jQuery的jPlayer就做得不錯,基于HTML5技術和Flash技術提供了一套通用的音頻和視頻解決方案,值得我們借鑒。如果還能加上rtmp協議的支持,那就可以說是完美了。

參考資料:

l W3C: The audio element
http://dev.w3.org/html5/spec/Overview.html#the-audio-element

l Buzz! A Javascript HTML5 Audio library
http://buzz.jaysalvat.com/

l jPlayer
http://jplayer.org/

來源:蘇州思必馳信息就有限公司,blog.aispeech.com

 

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

东丰县| 乌苏市| 新兴县| 安陆市| 威宁| 临夏市| 台北县| 岱山县| 永定县| 仁布县| 弥勒县| 荆门市| 福贡县| 靖西县| 锦州市| 株洲市| 长春市| 横峰县| 日喀则市| 上饶县| 岫岩| 扎鲁特旗| 桑植县| 乌鲁木齐市| 辽阳市| 竹山县| 灵山县| 富民县| 台北市| 奎屯市| 平塘县| 湖南省| 虎林市| 岢岚县| 吴忠市| 南投县| 礼泉县| 定远县| SHOW| 湘潭县| 白城市|