diff --git a/app/static/js/services/audioRoutingEngine.js b/app/static/js/services/audioRoutingEngine.js index e25778c..d4e942b 100644 --- a/app/static/js/services/audioRoutingEngine.js +++ b/app/static/js/services/audioRoutingEngine.js @@ -24,8 +24,8 @@ // Idempotent: updateSfRouting/ensureMasteringRouting chay tren MOI keydown/ // note-on — neu da noi dung dest thi KHONG disconnect (disconnect flush ring // -> am phim dang vang bi cat). Chi doi khi dest/track thuc su khac. + if (window.__sfDiag) window.__sfDiag("ROUTE to=" + (trackId || "masterBus") + " prev=" + (this._trackId || "masterBus") + " bridgeReady=" + bridgeNode.isReady() + " conn=" + this._connected); if (this._connected && this._dest === dest && this._trackId === (trackId || null)) return true; - this.disconnect(); if (!bridgeNode.isReady()) bridgeNode.init(); bridgeNode.connect(dest); this._connected = true; diff --git a/app/static/js/services/bridgeAudioNode.js b/app/static/js/services/bridgeAudioNode.js index af6fa6b..7534a31 100644 --- a/app/static/js/services/bridgeAudioNode.js +++ b/app/static/js/services/bridgeAudioNode.js @@ -101,6 +101,16 @@ function onAudio(l, r) { if (!_initialized) init(); var blk = { l: new Float32Array(l), r: new Float32Array(r) }; + _frames = (_frames || 0) + blk.l.length; + for (var _i = 0; _i < blk.l.length; _i++) { + var _a = Math.abs(blk.l[_i]); if (_a > (_peak || 0)) _peak = _a; + var _b = Math.abs(blk.r[_i]); if (_b > (_peak || 0)) _peak = _b; + } + if (!_lastDiag || Date.now() - _lastDiag >= 1000) { + _lastDiag = Date.now(); + if (window.__sfDiag) window.__sfDiag("BRIDGE_AUDIO frames=" + _frames + " peak=" + (_peak ? (20 * Math.log10(_peak)).toFixed(1) : "-inf") + "dB path=" + (_useWorklet ? "worklet" : (_preBuffer.length ? "preBuffer" : "chunks"))); + _peak = 0; + } if (_useWorklet && _workletNode) { _workletNode.port.postMessage({ type: 'audio', l: blk.l, r: blk.r }); return; diff --git a/app/templates/index.html b/app/templates/index.html index 2c4b3a3..b4ca918 100644 --- a/app/templates/index.html +++ b/app/templates/index.html @@ -40,9 +40,9 @@ - + - +