V45.30: REVERT V45.29 (a069773) - V45.29 ring worklet 80 (~426ms) gay latency cao khi preview midi keyboard (ring luon day, do tre = dung ring cap) va crackle khi Chord VST2; quay ve V45.28 (4ed1de6): ring 48 (~256ms), worklet URL v=202608311820, bo log worklet_stats dinh ky. v=202608311820
This commit is contained in:
@@ -17,7 +17,6 @@
|
||||
var _initialized = false;
|
||||
var _useWorklet = false;
|
||||
var _workletStats = null; // stats tu worklet (overrun/underrun) — getDiag
|
||||
var _statsLogAccum = 0; // dem stats messages — log dbg dinh ky (V45.29)
|
||||
var _dest = null; // destination gain node da noi (chong connect trung)
|
||||
|
||||
function _getCtx() {
|
||||
@@ -33,7 +32,7 @@
|
||||
console.warn('[BridgeAudioNode] AudioWorklet unavailable — ScriptProcessor fallback');
|
||||
return false;
|
||||
}
|
||||
var url = '/static/js/services/bridgeAudioWorklet.js?v=202608311832';
|
||||
var url = '/static/js/services/bridgeAudioWorklet.js?v=202608311820';
|
||||
_ctx.audioWorklet.addModule(url).then(function () {
|
||||
if (!_initialized) return; // disconnect() happened while loading
|
||||
if (_useWorklet) return; // already set up (init retry)
|
||||
@@ -45,18 +44,7 @@
|
||||
});
|
||||
_workletNode.connect(_gainNode);
|
||||
_workletNode.port.onmessage = function (ev) {
|
||||
if (ev.data && ev.data.type === 'stats') {
|
||||
_workletStats = ev.data;
|
||||
// V45.29: log dinh ky worklet_stats (moi ~2s) — preview_diag chi
|
||||
// fire khi bam keybed/vkb, duong preview khac khong log ws= duoc.
|
||||
try {
|
||||
_statsLogAccum++;
|
||||
if (_statsLogAccum >= 4) {
|
||||
_statsLogAccum = 0;
|
||||
if (window.__dbgLog) window.__dbgLog('worklet_stats', 'ov=' + ev.data.overruns + ' un=' + ev.data.underruns + ' ring=' + ev.data.ring + ' max=' + ev.data.max);
|
||||
}
|
||||
} catch (e) {}
|
||||
}
|
||||
if (ev.data && ev.data.type === 'stats') _workletStats = ev.data;
|
||||
};
|
||||
_useWorklet = true;
|
||||
// drain pre-buffer into worklet (order preserved)
|
||||
|
||||
Reference in New Issue
Block a user