[AUDIO_WORKLET] Add interactive heap growing test NFC#24931
Merged
sbc100 merged 3 commits intoemscripten-core:mainfrom Aug 19, 2025
Merged
[AUDIO_WORKLET] Add interactive heap growing test NFC#24931sbc100 merged 3 commits intoemscripten-core:mainfrom
sbc100 merged 3 commits intoemscripten-core:mainfrom
Conversation
sbc100
reviewed
Aug 14, 2025
sbc100
approved these changes
Aug 14, 2025
db335d1 to
19eb9f3
Compare
Collaborator
Author
|
I'd be good to land this and its companion hard-pan test. Both are interactive so don't affect the CI. |
sbc100
pushed a commit
that referenced
this pull request
Aug 19, 2025
Built on #24931 (it touches the same file, but a rebase after merge will fix this). This adds hard-panned audio files to test that the left and right channels don't get flipped with any changes to the audio worklet code (relevant for #24891, which changes how the copies are performed). ``` test/runner interactive.test_audio_worklet_hard_pans ``` The bass track is hard-left (with its right muted), drums are right.
inolen
pushed a commit
to inolen/emscripten
that referenced
this pull request
Feb 13, 2026
…e#24931) This adds an interactive test to force growing the heap during playback: ``` test/runner interactive.test_audio_worklet_memory_growth ``` Tested with `interactive64` and `interactive_2gb` (for `interactive64_4gb` the heap is already at the browser's max in testing so can't be grown). It works by alloc'ing and leaking 2/3 of the current size until it can no longer do so. Emscripten regrows its wasm memory in the process, invalidating any data views (see emscripten-core#24891). **Edit: test can now grow from both the main and audio thread.**
inolen
pushed a commit
to inolen/emscripten
that referenced
this pull request
Feb 13, 2026
) Built on emscripten-core#24931 (it touches the same file, but a rebase after merge will fix this). This adds hard-panned audio files to test that the left and right channels don't get flipped with any changes to the audio worklet code (relevant for emscripten-core#24891, which changes how the copies are performed). ``` test/runner interactive.test_audio_worklet_hard_pans ``` The bass track is hard-left (with its right muted), drums are right.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This adds an interactive test to force growing the heap during playback:
Tested with
interactive64andinteractive_2gb(forinteractive64_4gbthe heap is already at the browser's max in testing so can't be grown).It works by alloc'ing and leaking 2/3 of the current size until it can no longer do so. Emscripten regrows its wasm memory in the process, invalidating any data views (see #24891).
Edit: test can now grow from both the main and audio thread.