pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

HTML5多媒體組件的使用——第二部分:音頻

在這個(gè)”使用HTML5組件工作”三部曲的第一部分中,我主要講解了有關(guān)用HTML5在網(wǎng)頁(yè)中嵌入視頻的內(nèi)容。當(dāng)然,大部分視頻中包含了音頻,所以如果你想把音頻文件嵌入到你的網(wǎng)頁(yè)中,同樣用HTML5能夠很容易地實(shí)現(xiàn)。

在這篇教程中,我會(huì)講解audio元素,它的屬性,以及HTML5能夠使用的不同類型的音頻文件。許多在第一部分中提及 的視頻概念和技術(shù),同樣適用于音頻。所以如果你已經(jīng)閱讀過第一部分,你會(huì)注意到在第二部分中有一些相似之處。如果你還沒有讀過第一部分,并且你只對(duì) HTML5音頻感興趣,那么這篇文章有你啟程所需要的全部知識(shí)。

注意: 你可以通過下載和深入研究該示例文件,來研究一些示例代碼和文章中所闡述的許多概念。

 

提供音頻文件的支持:兩種技術(shù)的快速對(duì)比

 

在HTML5出現(xiàn)前,如果你想要在你的網(wǎng)頁(yè)中嵌入音頻文件,必須使用第三方插件,比如Flash Player。

例如,要在你的網(wǎng)頁(yè)中嵌入一個(gè)MP3音頻文件,并使它可通過Flash Player使用。你或許要用到以下的代碼:

 

 
  1. <object type="application/x-shockwave-flash"  
  2. data="player.swf?audioURL=myAudio.mp3&autoPlay=true" height="27" width="320">  
  3. <param name="movie" value="player.swf?audioUrl=myAudio.mp3&autoPlay=true">  
  4. </object> 

 

使用HTML5,你能更加簡(jiǎn)潔地實(shí)現(xiàn):

 

 
  1. <audio src="myAudio.mp3" controls autoplay></audio> 

 

這些HTML5代碼片段和那些為Flash Player提供的更加冗長(zhǎng)的代碼實(shí)現(xiàn)了相同的結(jié)果:在網(wǎng)頁(yè)中嵌入一個(gè)能自動(dòng)播放的音頻文件。你可以看到HTML5代碼有多么的簡(jiǎn)單整潔。

 

音頻編解碼器

 

在該系列的第一部分中我談到了視頻編解碼器。那同樣要介紹許多音頻編解碼器的思想也不足為奇了。HTML5規(guī)范最初也為Ogg Vorbis編解碼器受托者提供支持,但來自蘋果和諾基亞的挑戰(zhàn)使其終止了該支持。如今的瀏覽器,相比于支持視頻編解碼器而言,能支持更多的音頻編解碼 器,所以當(dāng)你抉擇于該使用哪種音頻編解碼器時(shí),你會(huì)有更多的選擇:

  • 火狐支持Ogg Vorbis 和 WAV.
  • Safari支持 MP3, AAC, WAV, 以及 MP4.
  • Internet Explorer 9 支持 MP3, AAC, 和 MP4.
  • Opera 支持 Ogg Vorbis 和 WAV.
  • Chrome支持以上所有格式.

要覆蓋所有支持HTML5音頻的瀏覽器,你只能用兩種不同的格式服務(wù)你的音頻:Ogg Vorbis 和MP3。

由于WAV文件格式不能壓縮得很好因此文件大小會(huì)相當(dāng)大,不建議使用該格式。

 

audio元素

 

正如你所見,audio元素用作在網(wǎng)頁(yè)中嵌入音頻文件。像video元素一樣,它有許多的屬性,表1中列出了其中的部分屬性:

表1. Audio元素屬性

屬性 描述
src 提供音頻文件URL路徑
autoplay 表明如果可能,應(yīng)使音頻自動(dòng)播放
controls 告知瀏覽器顯示其默認(rèn)的音頻控制設(shè)置
muted 設(shè)置音頻的初始狀態(tài)為muted
(當(dāng)前一些瀏覽器不支持該屬性)
loop 表明應(yīng)使音頻循環(huán)連續(xù)播放
(Firefox當(dāng)前不支持該屬性)
preload 暗示瀏覽器應(yīng)該怎樣嘗試預(yù)加載音頻文件。有三種可用值: 

 

  • none:不執(zhí)行任何預(yù)加載
  • metadata: 只加載視頻元數(shù)據(jù),例如,持續(xù)時(shí)間
  • auto: 讓瀏覽器自己決定(這是默認(rèn)設(shè)置)

例如,利用audio元素和它的屬性,你可以使用以下代碼來嵌入一個(gè)MP3音頻文件,該文件可在加載時(shí)開始播放,擁有默認(rèn)的控制設(shè)置,并能反復(fù)循環(huán)播放。

 

 
  1. <audio src="myAudio.mp3" autoplay controls loop></audio> 

 

我必須指出,你的用戶可能會(huì)相當(dāng)討厭該示例。自動(dòng)播放一個(gè)循環(huán)音頻文件通常被認(rèn)作是惡劣的因特網(wǎng)規(guī)范。

 

使用source元素

 

就像我先前提醒的,你需要為音頻文件提供至少兩種不同的解碼器才能覆蓋所有支持HTML5的瀏覽器。如同對(duì)視頻元素的處理一樣,你需要使用source元素來實(shí)現(xiàn)該功能。

一個(gè)audio元素能包含多種source元素,因此你能為你的音頻提供多種格式支持。擴(kuò)展先前的示例,你可以像下面這樣為相同的音頻內(nèi)容指定兩種source, Ogg Vorbis和MP3。

 

 
  1. <audio autoplay controls>  
  2. <source src="myAudio.ogg" type="audio/ogg">  
  3. <source src="myAudio.mp3" type="audio/mp3">  
  4. </audio> 

 

當(dāng)瀏覽器解析音頻元素時(shí),它將通過source元素列表循序地查找直到找到一個(gè)它能播放的文件格式。一旦找到后,就播放該文件并忽略隨后的其它元素。

既然如此,F(xiàn)irefox 和 Opera 會(huì)播放 Ogg 文件。 Chrome 也會(huì)播放 Ogg 文件, 即使它也能播放MP3文件。 Safari 和 Internet Explorer 9 會(huì)播放MP3 文件。

 

指定編解碼器

你也可以指定用來編碼音頻文件的確切的解碼器。這能幫助瀏覽器決定它是否能播放該內(nèi)容。由于你常常不知道究竟用什么解碼器,只簡(jiǎn)單地提供類型并讓瀏覽器自己做決定,通常是一個(gè)更好的主意。

如果你想引用某解碼器,你可以照下面這樣做:

 

 
  1. <audio autoplay controls> 
  2. <source src="myAudio.ogg" type='audio/ogg; codec="vorbis"'> 
  3. </audio> 

 

注意解碼器是如何添加到type屬性中去的,特別要注意用到的引號(hào),以及type和codec之間用分號(hào)隔開了。像指定視頻解碼器那樣,這里很容易犯下會(huì)使音頻不播放的格式化錯(cuò)誤。因此,如果你要明確地指定解碼器,一定要注意語法問題。

 

回歸傳統(tǒng)

 

并不是每個(gè)人都使用支持HTML5的瀏覽器。例如,Internet Explorer的老版本(IE8或者更低)仍然相當(dāng)流行。

為了支持正在用這些瀏覽器的用戶,你需要使用一個(gè)第三方插件比如Flash Player來嵌入音頻文件。正如在HTML5和本地多媒體到來前你需要做的那樣。

瀏覽器會(huì)無視它們不理解的信息,所以你的HTML5音頻和source元素會(huì)被例如IE8這樣的舊版瀏覽器完全忽略。舉例來說,你可能會(huì)使用以下代碼來給音頻文件添加鏈接:

 

 
  1. <audio autoplay controls>  
  2. <source src="myAudio.ogg" type="audio/ogg">  
  3. <source src="myAudio.mp3" type="audio/mp3">  
  4. <a href="myAudio.mp3">Download the audio file</a>  
  5. </audio> 

 

舊版瀏覽器會(huì)簡(jiǎn)單的顯示“Download the audio file”鏈接,而忽視其它內(nèi)容。

要通過FlashPlayer添加fallback支持(和添加下載鏈接一樣),你需要使用以下代碼:

 

 
  1. <audio autoplay controls>  
  2. <source src="myAudio.ogg" type="audio/ogg">  
  3. <source src="myAudio.mp3" type="audio/mp3">  
  4. <object type="application/x-shockwave-flash" data="player.swf?audioUrl=myAudio.mp3&autoPlay=true"> 
  5. <param name="movie" value="player.swf?audioUrl=myAudio.mp3&autoPlay=true">  
  6. </object>  
  7. <a href="myAudio.mp3">Download the audio file</a>  
  8. </audio> 

 

舊版瀏覽器會(huì)顯示Flash Player和下載鏈接,因此用戶可以選擇怎樣訪問音頻。如果用戶沒有安裝Flash player,他們?nèi)匀豢梢酝ㄟ^下載鏈接訪問到你的音頻。注意,你可以使用與Flash Player相同的MP3音頻文件,因?yàn)樗耆心芰Σシ臡P3文件。

 

數(shù)字版權(quán)管理

 

正如我在第一部分中提醒的,HTML5當(dāng)前不支持?jǐn)?shù)字版權(quán)管理(DRM)。因此,如果你不想讓用戶下載你的音頻文件,那么對(duì)你而言,或許HTML5音頻不是一個(gè)正確的解決方案。HTML5會(huì)暴露你的音頻文件鏈接,所以它們是公開地提供給用戶訪問的內(nèi)容。

目前還沒有方法阻止用戶下載HTML5音頻內(nèi)容,雖然將來可能會(huì)有這樣的方法。要獲得更多有關(guān)HTML5和DRM的信息,請(qǐng)參閱W3C’s HTML FAQs on this topic。(這是一個(gè)有關(guān)HTML5視頻的討論,但其概念同樣適用于音頻內(nèi)容)。

 

下一步閱讀方向

 

如你所見,使用HTML5在你的網(wǎng)站中加入音頻是很簡(jiǎn)單的。你確實(shí)需要意識(shí)到一些瀏覽器是不支持HTML5的,因此一定要提供一個(gè)備用機(jī)制,以確保所有用戶都可以訪問到你的音頻內(nèi)容。

同樣記牢,任何你通過HTML5服務(wù)的音頻文件也能被任何人下載使用。因此,如果你想避免你的文件被下載及分享,那么HTML5音頻并不適合你。

本系列的第三部分,小編會(huì)介紹HTML5多媒體元素的自定義控制。

【網(wǎng)站聲明】本站除付費(fèi)源碼經(jīng)過測(cè)試外,其他素材未做測(cè)試,不保證完整性,網(wǎng)站上部分源碼僅限學(xué)習(xí)交流,請(qǐng)勿用于商業(yè)用途。如損害你的權(quán)益請(qǐng)聯(lián)系客服QQ:2655101040 給予處理,謝謝支持。

相關(guān)文檔推薦

這篇文章主要介紹了有關(guān)HTML5頁(yè)面在iPhoneX適配問題,需要的朋友可以參考下
本篇文章主要介紹了html5中canvas圖表實(shí)現(xiàn)柱狀圖的示例,本文使用canvas來實(shí)現(xiàn)一個(gè)圖表,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
Adobe公司出品的多媒體處理軟件產(chǎn)品線較多,涵蓋了音視頻編輯、圖像處理、平面設(shè)計(jì)、影視后期等領(lǐng)域。這篇文章主要介紹了Adobe Html5 Extension開發(fā)初體驗(yàn)圖文教程,非常不錯(cuò),需要的朋
這篇文章主要介紹了基于HTML5的WebGL經(jīng)典3D虛擬機(jī)房漫游動(dòng)畫,需要的朋友可以參考下
這篇文章主要介紹了手機(jī)端用rem+scss做適配的詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
本篇文章主要介紹了canvas 實(shí)現(xiàn) github404動(dòng)態(tài)效果的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
主站蜘蛛池模板: 行业分析:提及郑州火车站附近真有 特殊按摩 ?2025实地踩坑指南 新手如何避坑不踩雷 | 杭州月嫂技术培训服务公司-催乳师培训中心报名费用-产后康复师培训机构-杭州优贝姆健康管理有限公司 | 风淋室生产厂家报价_传递窗|送风口|臭氧机|FFU-山东盛之源净化设备 | ISO9001认证咨询_iso9001企业认证代理机构_14001|18001|16949|50430认证-艾世欧认证网 | 聚合氯化铝-碱式氯化铝-聚合硫酸铁-聚氯化铝铁生产厂家多少钱一吨-聚丙烯酰胺价格_河南浩博净水材料有限公司 | 防水试验机_防水测试设备_防水试验装置_淋雨试验箱-广州岳信试验设备有限公司 | OpenI 启智 新一代人工智能开源开放平台 | 数码管_LED贴片灯_LED数码管厂家-无锡市冠卓电子科技有限公司 | 深圳彩钢板_彩钢瓦_岩棉板_夹芯板_防火复合彩钢板_长鑫 | 真空吸污车_高压清洗车厂家-程力专用汽车股份有限公司官网 | 水厂自动化-水厂控制系统-泵站自动化|控制系统-闸门自动化控制-济南华通中控科技有限公司 | 上海冠顶工业设备有限公司-隧道炉,烘箱,UV固化机,涂装设备,高温炉,工业机器人生产厂家 | 变色龙PPT-国内原创PPT模板交易平台 - PPT贰零 - 西安聚讯网络科技有限公司 | 医用酒精_84消毒液_碘伏消毒液等医用消毒液-漓峰消毒官网 | 食品机械专用传感器-落料放大器-低价接近开关-菲德自控技术(天津)有限公司 | 南京办公用品网-办公文具用品批发-打印机耗材采购 | 冷却塔风机厂家_静音冷却塔风机_冷却塔电机维修更换维修-广东特菱节能空调设备有限公司 | 光谱仪_积分球_分布光度计_灯具检测生产厂家_杭州松朗光电【官网】 | 民用音响-拉杆音响-家用音响-ktv专用音响-万昌科技 | 全国国际化学校_国际高中招生_一站式升学择校服务-国际学校网 | 雾度仪_雾度计_透光率雾度仪价格-三恩时(3nh)光电雾度仪厂家 | 东莞市海宝机械有限公司-不锈钢分选机-硅胶橡胶-生活垃圾-涡电流-静电-金属-矿石分选机 | 网站制作优化_网站SEO推广解决方案-无锡首宸信息科技公司 | 耐火砖厂家,异形耐火砖-山东瑞耐耐火材料厂 | 硬质合金模具_硬质合金非标定制_硬面加工「生产厂家」-西迪技术股份有限公司 | 泰来华顿液氮罐,美国MVE液氮罐,自增压液氮罐,定制液氮生物容器,进口杜瓦瓶-上海京灿精密机械有限公司 | 污水/卧式/潜水/钻井/矿用/大型/小型/泥浆泵,价格,参数,型号,厂家 - 安平县鼎千泵业制造厂 | 气动隔膜泵-电动隔膜泵-循环热水泵-液下排污/螺杆/管道/化工泵「厂家」浙江绿邦 | 温室大棚建设|水肥一体化|物联网系统 | 交联度测试仪-湿漏电流测试仪-双85恒温恒湿试验箱-常州市科迈实验仪器有限公司 | 头条搜索极速版下载安装免费新版,头条搜索极速版邀请码怎么填写? - 欧远全 | 北京浩云律师事务所-企业法律顾问_破产清算等公司法律服务 | 万师讲师网-优质讲师培训师供应商,讲师认证,找讲师来万师 | 合肥礼品公司-合肥礼品定制-商务礼品定制公司-安徽柏榽商贸有限公司 | 西点培训学校_法式西点培训班_西点师培训_西点蛋糕培训-广州烘趣西点烘焙培训学院 | 远程会诊系统-手术示教系统【林之硕】医院远程医疗平台 | 台式低速离心机-脱泡离心机-菌种摇床-常州市万丰仪器制造有限公司 | 上海单片机培训|重庆曙海培训分支机构—CortexM3+uC/OS培训班,北京linux培训,Windows驱动开发培训|上海IC版图设计,西安linux培训,北京汽车电子EMC培训,ARM培训,MTK培训,Android培训 | 杜康白酒加盟_杜康酒代理_杜康酒招商加盟官网_杜康酒厂加盟总代理—杜康酒神全国运营中心 | 全自动翻转振荡器-浸出式水平振荡器厂家-土壤干燥箱价格-常州普天仪器 | 控显科技 - 工控一体机、工业显示器、工业平板电脑源头厂家 |