在 IE 中加载 6 个音频后 Html5 音频返回错误 MEDIA_ERR_SRC_NOT_SUPPORTED

Posted

技术标签:

【中文标题】在 IE 中加载 6 个音频后 Html5 音频返回错误 MEDIA_ERR_SRC_NOT_SUPPORTED【英文标题】:Html5 audio return error MEDIA_ERR_SRC_NOT_SUPPORTED after 6 audio loaded in IE 【发布时间】:2011-12-15 16:04:31 【问题描述】:

我需要在我的页面上加载近 20 种声音。我想也许我只需要单独加载 2 个元素,这就是为什么你会看到 inProgress 属性

loadAudio: function () 
        if (this.inProgress <= 1) 
            this.inProgress++;
            var elem = this.audioQueue.pop();
            if (elem != null) 
                var path = elem.Path + elem.Fileid + ((this.canPlayMp3) ? '.mp3' : '.wav');

                audio = new Audio();
                audio.src = "http://localhost:55578/~/x.mp3";
                audio.addEventListener('loadedmetadata', function (e)  AudioPlayer.audioLoaded(e); , false);
                //audio.addEventListener('loadeddata', function (e)  AudioPlayer.audioLoaded(e); , false);
                audio.addEventListener('error', function (e)  AudioPlayer.audioLoaded(e); , false);
                if (elem.AudioType == AudioPlayerTypes.Keyboard) 
                    this.keyboardAudio[elem.Id] = audio;
                
            
        



 audioLoaded: function (e) 
        var t = e.target;
        if (e.type == "error") 
            var code = e.target.error.code;

            console.log("error" + t.currentSrc + e.target.error.code);
         else 
            console.log("loaded" + t.currentSrc);
        
        this.inProgress--;
        this.loadAudio();
    

如你所见,我加载相同的声音只是为了测试,但在 6 个音频后出现同样的问题,我得到了错误

LOG: loadedhttp://localhost:55578/~/x.mp3 
LOG: loadedhttp://localhost:55578/~/x.mp3 
LOG: loadedhttp://localhost:55578/~/x.mp3 
LOG: loadedhttp://localhost:55578/~/x.mp3  
LOG: loadedhttp://localhost:55578/~/x.mp3  
LOG: loadedhttp://localhost:55578/~/x.mp3  
LOG: errorhttp://localhost:55578/~/x.mp3 (4 - is error code)

它在 Chrome 和 Firefox 中非常棒,但在 IE 中却不行。 我找不到任何限制和解决方案。

还有一个问题:我读到有时最好避免使用 DOM 元素,这就是我使用音频对象的原因,因为我需要多次播放不同的元素。

【问题讨论】:

4 的错误代码意味着“资源不适合”,尽管它们都是相同的 MP3,所以我不确定它为什么会引发该错误。 w3.org/TR/html5/… 是的,这对我来说是主要的痛苦,因为我正在加载相同的元素。看起来像这样,即总音频流被限制为 6 或什么...... 哪个版本的IE?我假设9?如果您尝试加载 5 个音频流怎么办?另外,您是否安装了媒体播放器? 是的,它的 IE9。我还安装了 WMP,因为我可以播放已加载的声音。 是的,5 个音频流非常酷,但有时它会加载超过 6 个声音,但它就像一个随机的..... 【参考方案1】:

这真的很奇怪,通常错误是正确的,因为 IE 没有可用资源。 在我的笔记本电脑上,充电器有问题,电脑真的很慢,今天我换了它,电脑工作得更快了,声音也可以正确加载到资源管理器中:)

【讨论】:

什么?您的笔记本电脑充电器修复了您的 HTML 音频错误? @Michael 是的,这是很久以前的事了,我认为这与电池配置有关,如果笔记本电脑不充电,它会减慢 PC 的使用寿命

以上是关于在 IE 中加载 6 个音频后 Html5 音频返回错误 MEDIA_ERR_SRC_NOT_SUPPORTED的主要内容,如果未能解决你的问题,请参考以下文章

HTML5 音频加载和播放无法在 iPad 上运行

当枢轴选择更改时,如何在枢轴项目中加载图像后加载音频文件

音频处理Melodyne 简介 ( Melodyne 音频处理注意事项 | 在音乐宿主软件中加载 Melodyne 插件 )

使用 Linkage 从库中加载音频文件时出错

在 Elementor 中加载 youtube 视频时暂停音频播放器

当 HTML5 在 IE11-Invalid Source 和 Safari-Missing Plugin 中加载视频时出现问题