Отладка WASM в WebAudio Worklet

Код, сгенерированный Emscripten, не работает в браузере, если задана опция отладки (-g4) и создание исходной карты (--source-map-base).

Я начал с образца Googel WebAudio с Audio Worklet, расположенного по адресу https://github.com/GoogleChromeLabs/web-audio-samples.git. Запуск образца из коробки с использованием EMSDK 1.39.14 все работает нормально.

Однако при изменении оптимизации с -O1 на что-то еще (-O0, -O2) или при использовании -g4 в сочетании с --source-map-base вместо этого приложение не работает при загрузке Audio Worklet с ошибками, появляющимися в браузере. консоль.

Мне нужно отладить мой собственный проект, демонстрирующий такое же поведение.

Изменения в образце Makefile:

DEPS = SimpleKernel.cc

build: $(DEPS)
    @/home/johannes/workspace/emsdk/upstream/emscripten/emcc --bind -g4 \
        --source-map-base https://myhost/web-audio-samples/audio-worklet/design-pattern/wasm \
        -s WASM=1 \
        -s BINARYEN_ASYNC_COMPILATION=0 \
        -s SINGLE_FILE=1 \
        SimpleKernel.cc \
        -o simple-kernel.wasmmodule.js \
        --post-js ../lib/em-es6-module.js

clean:
    @rm -f simple-kernel.wasmmodule.js

Сообщения об ошибках из консоли браузера:

Uncaught TypeError: Cannot assign to read only property '__wasm_call_ctors' of object '[object Object]'
    at simple-kernel.wasmmodule.js:3794
(anonymous) @ simple-kernel.wasmmodule.js:3794
(index):34 Uncaught (in promise) DOMException: Failed to construct 'AudioWorkletNode': AudioWorkletNode cannot be created: The node name 'wasm-worklet-processor' is not defined in AudioWorkletGlobalScope.
    at demoCode (https://myhost/web-audio-samples/audio-worklet/design-pattern/wasm/:34:26)
demoCode @ (index):34
async function (async)
demoCode @ (index):32
DemoRunner.eButton.onclick @ Components.js:263
DevTools failed to load SourceMap: Could not load content for https://myhost/web-audio-samples/audio-worklet/design-pattern/wasm{{{ FILENAME_REPLACEMENT_STRINGS_WASM_BINARY_FILE }}}.map: HTTP error: status code 404, net::ERR_HTTP_RESPONSE_CODE_FAILURE

0 ответов

Другие вопросы по тегам