加载失败,因为找不到支持的源。播放 HTML5 音频元素时 [重复]

Posted

技术标签:

【中文标题】加载失败,因为找不到支持的源。播放 HTML5 音频元素时 [重复]【英文标题】:Failed to load because no supported source was found. when playing HTML5 audio element [duplicate] 【发布时间】:2016-09-10 02:23:18 【问题描述】:

我有 html5 音频元素

<audio src="/sounds/call.wav" id="audio1" repeated="0" repetitions="1" class="audio_sound"></audio>

如果我尝试调用element.play(),Chrome Web 控制台中会出现奇怪的错误。

Uncaught (in promise) DOMException: Failed to load because no 找到了支持的来源。

我没有找到任何线索为什么会出现这个错误以及如何解决它。

【问题讨论】:

这个错误提示似乎与 chrome 50 中的一个新功能有关 developers.google.com/web/updates/2016/03/… @CodeToad 看起来这是我遇到的错误。但它出现了吗?我无法理解原因和热避免它。 我还没有找到解决这个问题的方法。我怀疑这可能是一个铬错误。您是否使用 javascript 操作视频元素,例如在页面加载后更改 src 属性?我怀疑这可能是我的应用程序中出现错误的原因。我还将尝试在音频元素内使用 src 标签而不是 src 属性。你试过吗? @CodeToad 我试过了,但没有积极的结果。我也没有改变 src 属性。 这解决了我的问题cnedelcu.blogspot.ca/2016/09/… 【参考方案1】:

这可能有帮助,也可能没有帮助,但我在 .mp3 源文件中遇到了相同的错误消息。我一直在更新内容并优化 mp3,但没有意识到浏览器已经缓存了 mp3 文件的原始版本(或至少它的一部分)。我找不到任何信息来支持这一点,但有趣的是,似乎部分音频文件可能被缓存,当浏览器尝试检索文件的其余部分时,它不能(或不)检索完整的工作版本。

我会尝试将您的 .wav 文件重命名为您以前没有使用过的文件,看看它是否开始工作。

【讨论】:

似乎不起作用。但仍然感谢您的回答。 感谢您的回答,清除浏览器缓存确实会导致错误消息停止显示给我。

以上是关于加载失败,因为找不到支持的源。播放 HTML5 音频元素时 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

Android Chrome:未捕获(承诺)DOMException:加载失败,因为找不到支持的源

使用媒体源扩展符合DOMException:无法加载,因为找不到支持的源

如何在播放期间切换音轨

html5 音频播放器 flash 后备

带有 MPEG DASH 的 JwPlayer

伊斯坦布尔仪器加载程序找不到 Angular2 组件的源映射。