Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Branch: master
Pull request Compare This branch is 2 commits ahead, 88 commits behind mbebenita:master.

Add a highly experimental decoder for VP8/WebM, under the name of Rou…


This decoder is a straightforward translation of libvpx and libnestegg via
emscripten, making extensive use of the scaffolding built for Broadway.
Some serious correctness bugs remain, and speed leaves something to be
desired.  So far, the code has only been tested on Firefox 7.
latest commit 33409ef7bb
@bemasc authored


To fetch the dependencies:
git submodule init
git submodule update

To compile libnestegg:
cd nestegg/
autoreconf --install
(EMSCRIPTEN_ROOT=...) (PATH/TO/) ./configure

To compile libvpx:
cd libvpx
(PATH=$PATH:~/local_clang/bin/) ./configure --disable-vp8-encoder --disable-examples --disable-multithread --target=js1-none-clang_emscripten
(PATH=$PATH:~/local_clang/bin/) make

To build the javascript decoder:
Install the closure compiler (
and edit ~/.emscripten to point to the correct path.
(EMSCRIPTEN_ROOT=...) python
(If you have RELOOP=1 in, you may now watch the director's cut of
a James Cameron movie while you wait.  I recommend The Abyss, for its
excellent depiction of the Mammalian Diving Reflex and hypothermic

To test the decoder:
cp js/ ../Demo/route9.js
Open route9.html in your favorite modern browser.
Something went wrong with that request. Please try again.