尝试运行 AudioContext.createMediaElementSource() 时如何解决“音频无法识别调用‘连接’的对象”错误?

Posted

技术标签:

【中文标题】尝试运行 AudioContext.createMediaElementSource() 时如何解决“音频无法识别调用‘连接’的对象”错误?【英文标题】:How to fix "Audion could not identify the object calling 'connect'" error when trying to run AudioContext.createMediaElementSource()? 【发布时间】:2019-07-05 13:00:26 【问题描述】:

尝试使用 javascript 创建音频元素,然后通过调用 AudioContext.createMediaElementSource() 创建音频源,但在 Chrome 控制台中出现错误,提示 Audion 无法识别调用“连接”的对象

Screenshot of the error message

我尝试在 html 中创建此音频元素并使用 Document.querySelector() 获取此音频文件,但遇到了同样的错误。

const audio = new Audio("./path/to/audio.mp3");
const audiosource = audioCtx.createMediaElementSource(audio);
audioSource.connect(audioCtx.destination);

【问题讨论】:

这里的Audion 是什么?如果一个插件/库可以链接到它的文档吗? 【参考方案1】:

警告来自正式名称为 Web Audio Inspector 的 Chrome 扩展程序。它的代号是Audion。源代码在GitHub 上提供。此处生成警告消息:https://github.com/google/audion/blob/master/js/entry-points/tracing.js#L747

我认为问题在于 Audion 仍在修补 BaseAudioContext 的原型,但规范中的最近更改将 createMediaElementSource() 等函数移至 AudioContext 原型。我将继续在 GitHub 上为此创建一个问题,希望在某个时候得到修复。

话虽如此,这只是一个警告,不应阻止您的网站正常运行。

【讨论】:

谢谢,非常有帮助的答案!

以上是关于尝试运行 AudioContext.createMediaElementSource() 时如何解决“音频无法识别调用‘连接’的对象”错误?的主要内容,如果未能解决你的问题,请参考以下文章

尝试运行命令“flutter run”时出错

尝试运行 jupyter notebook 时出现导入错误

尝试让 Javascript 函数同步运行

尝试运行android时出现Meteor.js错误

尝试为 iOS 运行或构建 Flutter 项目时出错

第一次尝试运行 KIVY