AudioContext解析音频报错 Unable to decode audio data

4,592 阅读1分钟

1.音频文件用XMLHttpRequest或者axios请求的

2.音频文件是本地文件的,例如assets

3.请求成功回调函数中输出响应数据为ArrayBuffer

若符合上面两三种情况的,在AudioContext.decodeAudioData时报错解析失败Unable to decode audio data.
建议看下路径是不是写错了,vue项目打包后文件路径就会发生改变,所以把文件url改成require('.......')这种形式,也许会有惊喜发现

另外,移动端和谷歌浏览器不允许自动播放,若发现解析成功,代码不报错,但是没有声音出现,可以把AudioContext.start()放在手动执行代码中,例如点击事件中执行,只要有交互产生后就可以了