ffmpegwasm / ffmpeg.wasm

FFmpeg for browser, powered by WebAssembly
https://ffmpegwasm.netlify.app
MIT License
14.22k stars 831 forks source link

Playground throws DataCloneError on Safari #528

Open matvp91 opened 1 year ago

matvp91 commented 1 year ago

Describe the bug Ran playground (https://ffmpegwasm.netlify.app/playground/) on Safari 15.6.1 and it halts after loading the wasm bundle. A DataCloneError is thrown in console.

image

To Reproduce Steps to reproduce the behavior:

  1. Go to playground on Safari
  2. Wait until the error throws in console.

Expected behavior The wasm bundle should load on Safari.

Desktop (please complete the following information):

jeromewu commented 1 year ago

Hmm, it is tricky that I have no MacOS machine to test this one.

matvp91 commented 1 year ago

Ran a local build and put several BP's to trace execution, the underlying error is: message: "Aborted(CompileError: WebAssembly.Module doesn't parse at byte 3: can't get Function local's type in group 0, in function at index 11)…" which happens when the worker receives a message with type=LOAD. My wasm / emscripten knowledge is fairly limited but this points to the following issue: https://github.com/emscripten-core/emscripten/issues/18043

matvp91 commented 1 year ago

@jeromewu does this sound familiar? Might make it compatible by modifying compile params. I'd be happy to test as I have macOS.