3

WebAudio ノードは、それに接続されている他のノードに (入力または出力として) アクセスできますか?

たとえば、ゲイン ノードとバッファ ソース ノードがあります。バッファ ソース ノードはゲイン ノードに接続され、ゲイン ノードは最終宛先に接続されます。

var gainNode = ac.createGainNode(); // gain node
ac.createBufferSource().connect(gainNode); // source
gainNode.connect(ac.destination);

ゲイン ノードへの参照のみが与えられた場合、ソース ノードへの参照を取得できますか? およびその逆。

4

1 に答える 1

4

いいえ。理由はよくわかりませんが。それはいくつかのことをかなり簡単にするようです。

編集:

冒険好きなら、次のようなクレイジーなことを試してみてください。

AudioNode.prototype.connect = (function(){
  var func = AudioNode.prototype.connect;
  return function(){
   ( this.outputs || ( this.outputs = [] ) ).push(arguments[0]);
   return func.apply(this, arguments);
  }
}());

AudioNodesこれにより、出力ノードのoutput配列が接続されます。AudioNode.prototype.disconnect配列からそれらを削除するには、同様の方法でオーバーライドする必要もあります。

これはおそらくひどい考えですが、何をする必要があるかによってはうまくいくかもしれません。

于 2013-09-19T14:12:35.263 に答える