html5中audio支持音频格式的解决方法


Posted in HTML / CSS onAugust 24, 2018

HTML5 Audio标签能够支持wav, mp3, ogg, acc, webm等格式,但有个很重要的音乐文件格式midi(扩展名mid)却在各大浏览器中都没有内置的支持。不是所有的浏览器都支持MP3 OGG之类的,每个浏览器因为版权的问题支持的格式都是不一样的。

浏览器和音频兼容性

浏览器制造商并非都同意使用某种音频文件格式。对于图像,PNG、JPEG 或 GIF 格式的文件在任何浏览器上都能加载到您的网页里。遗憾的是,音频文件并非如此。表 1 展示了网页中可以使用的音频文件格式,但是并非所有格式都能用于所有浏览器。例如,Chrome、Internet Explorer 9 (IE9) 和 Safari 浏览器不支持 WAV 文件,这是一种使用非压缩格式且正在衰败的标准。

HTML5浏览器和音频格式兼容性

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

没有一种通用的文件格式让每个浏览器都使用单个文件格式意味着至少有 2/5 的浏览器无法播放某些声音。这不是无法在单一音频标准中达成一致的浏览器制造商不妥协的问题,而是涉及专利权和特许权使用费的法律和财务问题。不受软件专利限制的 OGG 格式旨在一劳永逸地解决这个问题。然而,在撰写本文时,Opera 和 Safari 都不支持 OGG。与 OGG 格式的文件相比,可用的 WAV 和 MP3 文件数量要更多,因此毫无疑问,浏览器制造商考虑到了这一点。MP3 作为事实的标准是个很好的解决方案。

解决方案:使用三种文件类型和<audio>标签

鉴于目前的状况,您可能认为目前还不是在 HTML5 页面上使用音频的黄金时刻。在某些方面可能的确如此,但是 HTML5 提供了一个解决方案,使您喜欢的浏览器能够找到一种兼容的格式。

与 <audio> 标签结合使用时,<source> 标签可以嵌套在 <audio> 容器内。假设您是一个瓦格纳迷,想在 HTML5 网页上听他的歌剧 Ride of the Valkyries(《女武神》)。首先,您需要获得三种文件类型的音乐,即 OGG、MP3 和 WAV。将这些音乐文件与 HTML5 文件放在同一个文件夹内。然后,将每个文件名放在单独的 <source> 标签里,并且音频容器中的所有源标签都由<audio></audio> 构成,如下所示。

<audio controls>
    <source src=”http://demo.mimvp.com/html5/take_you_fly.ogg” />
    <source src=”http://demo.mimvp.com/html5/take_you_fly.mp3″ />
    <source src=”http://demo.mimvp.com/html5/take_you_fly.wav” />
</audio>

无论访问者使用什么浏览器,它都将自动选择所读取的第一个文件类型,并为您播放声音。

总结

以上所述是小编给大家介绍的html5中audio支持音频格式的解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

HTML / CSS 相关文章推荐
使用CSS3的appearance属性改变任何元素的浏览器默认风格
Dec 24 HTML / CSS
CSS3制作苹果风格键盘特效
Feb 26 HTML / CSS
如何使用localstorage代替cookie实现跨域共享数据问题
Apr 18 HTML / CSS
网易微博Web App用HTML5开发的过程介绍
Jun 13 HTML / CSS
浅谈基于HTML5的在线视频播放方案
Feb 18 HTML / CSS
使用HTML5中的contentEditable来将多行文本自动增高
Mar 01 HTML / CSS
HTML5 画布canvas使用方法
Mar 18 HTML / CSS
html5是什么_动力节点Java学院整理
Jul 07 HTML / CSS
html5使用Drag事件编辑器拖拽上传图片的示例代码
Aug 22 HTML / CSS
canvas实现图片镜像翻转的2种方式
Jul 22 HTML / CSS
原生CSS实现文字无限轮播的通用方法
Mar 30 HTML / CSS
什么是clearfix (一文搞清楚css清除浮动clearfix)
May 21 HTML / CSS
HTML5实现音频和视频嵌入的方法
Aug 22 #HTML / CSS
canvas学习和滤镜实现代码
Aug 22 #HTML / CSS
详解html5 postMessage解决跨域通信的问题
Aug 17 #HTML / CSS
HTML5 manifest离线缓存的示例代码
Aug 08 #HTML / CSS
移动端Html5页面生成图片解决方案
Aug 07 #HTML / CSS
详解WebSocket跨域问题解决
Aug 06 #HTML / CSS
canvas实现二维码和图片合成的示例代码
Aug 01 #HTML / CSS
You might like
是否存在第一台收音机的说法
2021/03/01 无线电
PHP实现货币换算的方法
2014/11/29 PHP
php实现四舍五入的方法小结
2015/03/03 PHP
javascript自动改变文字大小和颜色的效果的小例子
2013/08/02 Javascript
jQuery中验证表单提交方式及序列化表单内容的实现
2014/01/06 Javascript
JS实现将人民币金额转换为大写的示例代码
2014/02/13 Javascript
Javascript排序算法之计数排序的实例
2014/04/05 Javascript
javascript数组详解
2014/10/22 Javascript
详谈JavaScript内存泄漏
2014/11/14 Javascript
jfinal与bootstrap的登录跳转实战演习
2015/09/22 Javascript
bootstrap栅格系统示例代码分享
2017/05/22 Javascript
Webpack常见静态资源处理-模块加载器(Loaders)+ExtractTextPlugin插件
2017/06/29 Javascript
微信小程序实现跑马灯效果完整代码(附效果图)
2018/05/30 Javascript
微信小程序通过websocket实时语音识别的实现代码
2020/08/19 Javascript
vue+高德地图实现地图搜索及点击定位操作
2020/09/09 Javascript
初步解析Python中的yield函数的用法
2015/04/03 Python
python中zip()方法应用实例分析
2016/04/16 Python
python 线程的暂停, 恢复, 退出详解及实例
2016/12/06 Python
Python hashlib模块用法实例分析
2018/06/12 Python
Python小进度条显示代码
2019/03/05 Python
python开发实例之Python的Twisted框架中Deferred对象的详细用法与实例
2020/03/19 Python
基于selenium及python实现下拉选项定位select
2020/07/22 Python
HTML5拖拽文件到浏览器并实现文件上传下载功能代码
2013/06/06 HTML / CSS
新西兰廉价汽车租赁:Snap Rentals
2018/09/14 全球购物
美国台面电器和厨具品牌:KitchenAid
2019/04/12 全球购物
外语系毕业生自荐信范文
2013/12/16 职场文书
先进班组事迹材料
2014/12/25 职场文书
个人事迹材料怎么写
2014/12/30 职场文书
2015年打非治违工作总结
2015/04/02 职场文书
高中化学教学反思
2016/02/22 职场文书
2019年妇科护士的自我鉴定(3篇)
2019/09/26 职场文书
《家庭教育》读后感3篇
2019/12/18 职场文书
Python Django 后台管理之后台模型属性详解
2021/04/25 Python
pandas求平均数和中位数的方法实例
2021/08/04 Python
SQL Server2019数据库备份与还原脚本,数据库可批量备份
2021/11/20 SQL Server
前端监听websocket消息并实时弹出(实例代码)
2021/11/27 Javascript