JavaScript WebM encoder

344 views
Skip to first unread message

Kagami Hiiragi

unread,
Sep 3, 2015, 10:37:11 AM9/3/15
to webm-d...@webmproject.org
Hi all.

I've been working on pure JavaScript WebM encoder for a some time and
now it's somewhat usable. I share here the link in case if someone
interested.

Code: https://github.com/Kagami/webm.js
Online demo: https://kagami.github.io/webm.js/
Demo video:
https://raw.githubusercontent.com/Kagami/webm.js/assets/demo.webm

webm.js is built upon FFmpeg, libvpx and libopus which were ported to
JavaScript using Emscripten. It's not that fast and supports only
VP8+Opus currently but still may be used for short clips, especially if
native application is not an option. Though I hope to improve
performance with SIMD.js adoption in near future.

Regards.

Basil Mohamed Gohar

unread,
Sep 4, 2015, 6:37:50 AM9/4/15
to webm-d...@webmproject.org
Kagami,

Thanks for sharing, this looks really interesting. The demo page is not
bad, and I love how you already took into account threaded encoding --
looks like you seek ahead and encode the video into multiple parts.

--
Libre Video
http://librevideo.org

Kagami Hiiragi

unread,
Sep 4, 2015, 7:03:38 AM9/4/15
to webm-d...@webmproject.org
On 04/09/15 13:37, Basil Mohamed Gohar wrote:
> looks like you seek ahead and encode the video into multiple parts
Yes, exactly.

Thanks!

James Bankoski

unread,
Sep 4, 2015, 9:24:16 AM9/4/15
to webm-d...@webmproject.org
Very cool!  Thanks for doing this and sharing your app.  

Maybe someday it will also be possible to do so with the optimized encoder that'll ship in browsers via 



--
You received this message because you are subscribed to the Google Groups "WebM Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to webm-discuss...@webmproject.org.
To post to this group, send email to webm-d...@webmproject.org.
Visit this group at http://groups.google.com/a/webmproject.org/group/webm-discuss/.
For more options, visit https://groups.google.com/a/webmproject.org/d/optout.

C Henry Adams

unread,
Sep 4, 2015, 9:57:56 AM9/4/15
to webm-d...@webmproject.org
We are definitely interested. Thanks!


Sign,
C. Henry Adams

--
You received this message because you are subscribed to the Google Groups "WebM Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to webm-discuss...@webmproject.org.
To post to this group, send email to webm-d...@webmproject.org.
Visit this group at http://groups.google.com/a/webmproject.org/group/webm-discuss/.
For more options, visit https://groups.google.com/a/webmproject.org/d/optout.



--
Broadcasting Interest Enterprise, Inc.
PO Box 757
Lithia Springs, GA 30122-0757
(404) 348-8319
bien...@gmail.com

Kagami Hiiragi

unread,
Sep 4, 2015, 10:16:54 AM9/4/15
to webm-d...@webmproject.org
On 04/09/15 16:24, 'James Bankoski' via WebM Discussion wrote:
> Maybe someday it will also be possible to do so with the optimized
> encoder that'll ship in browsers

Sure, it's hard to beat native code. But very promising things happen in
browser world around WebAssembly and SIMD.js. Hope that will help to
increase performance in case of JavaScript encoders too.

The great thing with asm.js is that it works in every engine so you
don't need to wait for native implementation. The only thing in question
is speed. Though almost all popular browsers have special optimizations
targetting such code now.

In other words, it's good to have both but optimized JS engine might be
even better because you can add any video codec you want, without
waiting for vendor. (Though I agree, this sounds a bit utopic.)

James Bankoski

unread,
Sep 4, 2015, 10:18:33 AM9/4/15
to webm-d...@webmproject.org
Agreed!

Reply all
Reply to author
Forward
0 new messages