This patchset is heavily based on the work done 4 years ago by Jean-Baptiste Kempf and Etienne Brateau on the asmjs port.
It would not have been possible without the support, patience and multiple reviews by jbk, garf, chouquette, janni, tguillem, magsoft, and ePirat. Un grand merci à Videolabs!
Kudos to Alon Zakai from Emscripten and Paul Adenot from Mozilla, for the help with testing and for the quick interventions when things went wrong.
A demo application statically linking to libvlc compiled to wasm-emscripten can be tested with the procedure below:
# build: # dependency: emsdk 2.0.17 # if not on linux, it is recommended to run : # denv vlc-compile-wasm ./extras/package/wasm-emscripten/build.sh # if you know what you are doing: ./extras/package/wasm-emscripten/build.sh # pull and setup application: cd ./extras/package/wasm-emscripten/build git clone https://code.videolan.org/jbk/vlc.js.git --branch demo PROJECT_DIR="../../build" SAMPLE="./BigBuckBunny.mp4" PATH_VLC="../../../../../" ./create_main.sh emrun --no_browser vlc.html
This was tested on arch-linux in :
- Mozilla Firefox 88.0
- Mozilla Firefox 90.0a1 (faster playback)
- Todo : Safari + other OSes