emscripten-core / emscripten-core/emscripten
WebAudio Worklets not working in Firefox
- 主要言語
- C++
- スター
- 27.6k
- フォーク
- 3.6k
- 平均マージ
- 1日 14時間
- マージ済み PR(30日)
- 125
説明
Please include the following in your bug report:
**Version of emscripten/emsdk:**
Anything from `4.0.8` to `4.0.13`
Repo for reproducing is right [here](https://github.com/Andonvr/webaudio-reproducible-bug) <--
This works in Chrome and Safari, but is broken in Firefox.
I followed the guide on Wasm Audio Worklets from [here](https://emscripten.org/docs/api_reference/wasm_audio_worklets.html), and adjusted it slightly.
Basically, I added a class to hold a gain value, which I expose using Embind. When creating the Audio Worklet, I pass an instance of it. Later, I change the value of this, and the gain adjusts.
I compile, using CMake, and run using the most simple Vite project.
All of this works perfectly in Chrome.
But in Firefox, when creating the Wasm Audio Worklet (and not anywhere before that), it throws the error `RuntimeError: index out of bounds`.
With the compiler flag `WEBAUDIO_DEBUG`, it even prints "Registered new WebAudio object [object AudioWorkletNode] with ID 2" before failing.
コントリビューションガイド
調査の方向性
Start with the linked webaudio-reproducible-bug repository, its CMake build, and the simple Vite project; run the reproduction in Firefox and compare Audio Worklet creation with Chrome or Safari. Read the Emscripten Wasm Audio Worklets guide and trace the point where the AudioWorkletNode is created and the `index out of bounds` error appears. Done means the supplied reproduction works in Firefox without that error.
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- cmake, cpp, vite, wasm
- 領域
- audio-video-rtc, compilers
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100