繁体   English   中英

Web Audio API:发现节点的连接

[英]Web Audio API: discover a node's connections

使用Web Audio API,是否可以发现节点的连接?

例如,给定

ctx = new AudioContext();
g1 = ctx.createGain();
g2 = ctx.createGain();
g1.connect(g2);

我可以在g1上调用一个返回[g2]吗?

我有兴趣编写一个类似于Firefox Web Audio Editor的JavaScript库以可视化当前音频图。

简短的答案是“否”-没有这种方法。 您必须自己跟踪连接。

您可能会做这样的事情:

var connect = AudioNode.prototype.connect;
var disconnect = AudioNode.prototype.disconnect;

AudioNode.prototype.connect = function( dest ) {
  this._connections || ( this._connections = [] );
  if ( this._connections.indexOf( dest ) === -1 ) {
    this._connections.push( dest );
  }
  return connect.apply( this, arguments );
};

AudioNode.prototype.disconnect = function() {
  this._connections = [];
  return disconnect.apply( this, arguments );
};

这是一个简单的示例,它不考虑disconnect参数。 但是,我认为,遵循这些原则可以起作用。

有充分的理由这样做。 但是, 将使您可以保持应用程序代码的通用性,如果您希望能够可视化任意音频图,那么这确实是您所需要的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM