[英]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.