You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[AUDIO_WORKET] Add support for setting the render quantum size (#25747)
The `renderSizeHint` is now available in Chrome Canary
(`--enable-features=WebAudioConfigurableRenderQuantum`) so this can
finally be tested. Most of the work was already done in preparation, so
this required few changes.
Test with:
```
test/runner interactive.test_audio_worklet_params_mixing
```
Which has been extended to request a large `2048` sample audio frame
(which in an older browser will fallback to the default 128 samples).
Note for me: look at why and since how long we can bust out of the stack
without asserting. The stackAlloc() no longer appears to trip when
requesting more bytes than `wwParams.stackSize`.
console.assert(this.outputViews.length>0,`AudioWorklet needs more stack allocating (at least ${this.bytesPerChannel})`);
53
+
assert(this.outputViews.length>0,`AudioWorklet needs more stack allocating (at least ${this.bytesPerChannel})`);
54
54
#endif
55
55
this.createOutputViews();
56
56
@@ -138,8 +138,8 @@ function createWasmAudioWorkletProcessor() {
138
138
#endif
139
139
varoldStackPtr=stackSave();
140
140
#if ASSERTIONS
141
-
console.assert(oldStackPtr==this.ctorOldStackPtr,'AudioWorklet stack address has unexpectedly moved');
142
-
console.assert(outputViewsNeeded<=this.outputViews.length,`Too many AudioWorklet outputs (need ${outputViewsNeeded} but have stack space for ${this.outputViews.length})`);
141
+
assert(oldStackPtr==this.ctorOldStackPtr,'AudioWorklet stack address has unexpectedly moved');
142
+
assert(outputViewsNeeded<=this.outputViews.length,`Too many AudioWorklet outputs (need ${outputViewsNeeded} but have stack space for ${this.outputViews.length})`);
143
143
#endif
144
144
145
145
// Allocate the necessary stack space. All pointer variables are in bytes;
@@ -154,6 +154,10 @@ function createWasmAudioWorkletProcessor() {
0 commit comments