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实现的响应式导航
Oct 31 HTML / CSS
css3 中的新特性加强记忆详解
Apr 16 HTML / CSS
基于Html5实现的react拖拽排序组件示例
Aug 13 HTML / CSS
使用css3 属性如何丰富图片样式(圆角 阴影 渐变)
Nov 22 HTML / CSS
html5 自定义播放器核心代码
Dec 20 HTML / CSS
HTML5注册页面示例代码
Mar 27 HTML / CSS
详解HTML5中的manifest缓存使用
Sep 09 HTML / CSS
canvas 如何绘制线段的实现方法
Jul 12 HTML / CSS
HTML5 textarea高度自适应的两种方案
Apr 08 HTML / CSS
HTML5 HTMLCollection和NodeList的区别详解
Apr 29 HTML / CSS
HTML5实现移动端点击翻牌功能
Oct 23 HTML / CSS
详解使用 CSS prefers-* 规范提升网站的可访问性与健壮性
May 25 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
《斗罗大陆》六翼天使武魂最强,为什么老千家不是上三宗?
2020/03/02 国漫
PHP对象Object的概念 介绍
2012/06/14 PHP
php使浏览器直接下载pdf文件的方法
2013/11/15 PHP
CentOS6.5 编译安装lnmp环境
2014/12/21 PHP
php中JSON的使用与转换
2015/01/14 PHP
浅谈php命令行用法
2015/02/04 PHP
javascript 获取select下拉列表值的代码
2009/09/07 Javascript
采用call方式实现js继承
2014/05/20 Javascript
一个仿糯米弹框效果demo
2014/07/22 Javascript
indexOf 和 lastIndexOf 使用示例介绍
2014/09/02 Javascript
js格式化时间小结
2014/11/03 Javascript
javascript实现获取服务器时间
2015/05/19 Javascript
详解jQuery移动页面开发中的ui-grid网格布局使用
2015/12/03 Javascript
Jquery中巧用Ajax的beforeSend方法
2016/01/20 Javascript
Bootstrap carousel轮转图的使用实例详解
2016/05/17 Javascript
深入理解(function(){... })();
2016/08/16 Javascript
JS绘制微信小程序画布时钟
2016/12/24 Javascript
nodejs模块学习之connect解析
2017/07/05 NodeJs
vue2配置scss的方法步骤
2019/06/06 Javascript
vue + el-form 实现的多层循环表单验证
2020/11/25 Vue.js
[03:37]2016完美“圣”典 风云人物:Mikasa专访
2016/12/07 DOTA
[00:18]天涯墨客三技能展示
2018/08/25 DOTA
Python数据分析中Groupby用法之通过字典或Series进行分组的实例
2017/12/08 Python
python 去除txt文本中的空格、数字、特定字母等方法
2018/07/24 Python
浅谈python在提示符下使用open打开文件失败的原因及解决方法
2018/11/30 Python
Python OpenCV读取显示视频的方法示例
2020/02/20 Python
Python如何给你的程序做性能测试
2020/07/29 Python
基于Python-turtle库绘制路飞的草帽骷髅旗、美国队长的盾牌、高达的源码
2021/02/18 Python
美国受欢迎的女性牛仔裤品牌:DL1961
2016/11/12 全球购物
资产经营总监岗位职责范文
2013/12/01 职场文书
《他得的红圈圈最多》教学反思
2014/04/24 职场文书
医学求职自荐信
2014/06/21 职场文书
刑事起诉书范文
2015/05/19 职场文书
签字仪式主持词
2015/07/03 职场文书
小学生反邪教心得体会
2016/01/15 职场文书
导游词之千岛湖
2019/09/23 职场文书