如何在 IE 上播放 .wav 文件?
Posted
技术标签:
【中文标题】如何在 IE 上播放 .wav 文件?【英文标题】:How to play .wav files on IE? 【发布时间】:2017-01-14 05:04:01 【问题描述】:我正在开发一个 html5 - angularjs 应用程序。
我需要在 UI 上播放从服务器获取的 .wav 文件。
所有浏览器都需要支持此功能。
在 Chrome、firefox、safari 上运行良好。
但在 IE 上,我收到错误消息。
如果我尝试
<audio controls>
<source src="example.wav">
</audio>
错误 - 在音频标签中显示无效来源。但没有控制台错误。
如果我尝试
<audio controls src="example.wav"></audio>
错误 - 它显示在音频标签中
来源无效
也在浏览器控制台中显示
MEDIA12899:音频/视频:未知的 MIME 类型。
【问题讨论】:
哪个版本的IE? 你看过supported media formats页面了吗? 我需要支持IE9+ 有什么插件可以支持IE上的wav文件吗?音频标签的任何替代方法? 【参考方案1】:我遇到了同样的问题,这是由于 IE 不支持 HTML5 中的 .wav 文件(这没有任何意义,但是,哦,好吧)。
我想出了一个 javascript 函数来处理这个问题;我在<a>
中包含了对触发音频播放的函数的调用;这样,该函数会触发,但在非 IE 浏览器中什么也不做,但在 IE 中,它会播放它,并且在 HTML5 音频播放器中非常优雅地失败。
function playWavFileInIE(src)
if(/msie/i.test(navigator.userAgent) || /trident/i.test(navigator.userAgent))
var origPlayer = document.getElementById('currentWavPlayer');
if(origPlayer)
origPlayer.src = '';
origPlayer.outerHtml = '';
document.body.removeChild(origPlayer);
delete origPlayer;
var newPlayer = document.createElement('bgsound');
newPlayer.setAttribute('id', 'currentWavPlayer');
newPlayer.setAttribute('src', src);
document.body.appendChild(newPlayer);
return false;
if(origPlayer)...
块中的所有行似乎都是必需的;没有其中任何一个,我最终将 .wav 保留在页面上,并且每次点击都稳定地成为回声。我确信有一个合乎逻辑的解释,但是……我很着急。
【讨论】:
你能为此创建sn-p吗?我无法完成这项工作。【参考方案2】:如果可能,请将服务器上的 .wav 文件转换为 .mp3。
这适用于我正在开发的网站的音频元素。
.MP3 文件格式似乎比 .WAV 得到更广泛的支持(请参阅下面的链接):
https://caniuse.com/#search=wav https://caniuse.com/#search=mp3【讨论】:
以上是关于如何在 IE 上播放 .wav 文件?的主要内容,如果未能解决你的问题,请参考以下文章
我如何使用 javascript 在 IE7、IE8、Safari 和其他支持的浏览器中播放 .Wav 声音
.net c# 在网页上客户端如何播放服务器端的wav音频文件 急急急!!!!!!!
如何在 Windows 上使用 gstreamer 播放 .wav 音频文件?