HTML5 audio/video with nw.js 0.13

1,159 views
Skip to first unread message

TrevorPT

unread,
Aug 26, 2015, 3:12:58 PM8/26/15
to nw.js
To distribute a nw.js app with support for proprietary HTML5 codecs (mp3, mp4) you currently have to either provide a custom build of ffmpegsumo or copy one from the matching version of Chrome.  I just noticed that the latest versions of Chrome no longer have this file and so was wondering how we'll be able to provide support for proprietary codecs for non-GPL apps with future releases of
nw.js like 0.13 ?

Thanks.

Roger Wang

unread,
Aug 26, 2015, 9:43:20 PM8/26/15
to nw.js
In next alpha version it will be compiled as DLL as in 0.12 and before.

Thanks,

Roger

TrevorPT

unread,
Aug 27, 2015, 11:43:00 AM8/27/15
to nw.js
Thanks Roger, but if we cannot distribute mp3/mp4 codecs due to royalty/licencing restrictions (our application is not GPL), how can we provide mp3/mp4 support to end users if a suitable replacement of ffmpegsumo cannot be found from Chrome?  Will it be possible?

admin

unread,
Aug 27, 2015, 10:52:40 PM8/27/15
to nwjs-g...@googlegroups.com
On Thursday, August 27, 2015, TrevorPT wrote:

>...if we cannot distribute mp3/mp4 codecs due to royalty/licencing
>restrictions (our application is not GPL), how can we provide mp3/mp4
>support to end users...

I'm with Trevor on this one. The main reason I moved to nwjs was it
offered unrestricted access to live stream data without the browser
refusing cross-origin manipulation. This has become a necessity if we
want to implement web-audio calls on live streams (EQs, Compressors,etc.).

So to those of us developing client-side players/recorders,
cross-platform support for mp3 and aac is important as they comprise the
majority of streamed audio formats.

I see from various sources on the web that the majority of mp3 patents
run out on Sept. 2015, and all of them run out by 2017.

As for aac, I don't know. There's no requirement to license aac itself
since the codec mfr. pays the license fees, but in the case of ffmpeg,
it still requires us to release as GPL if we use the mpeg/aac codecs in
the compiled ffmpegsumo dll.

Looks like it's GPL or nothing until the patents run out, no way to even
pay for a license since webkit/Chromium uses ffmpeg (GPL) codecs.

Any alternative suggestions?

Roger Wang

unread,
Aug 27, 2015, 11:10:04 PM8/27/15
to nw.js
How did you work around this issue at user's end with previous versions?

Roger

TrevorPT

unread,
Aug 28, 2015, 10:14:13 AM8/28/15
to nw.js
Our application is a course authoring tool and we provide the ability to insert HTML5 media of all formats to support cross-platform delivery.  We have "preview" functionality and in the preview only ogg/ogv and webm will play, not mp3 or mp4.  For now we're stating it as a limitation and I just started looking into finding a way to preview mp3/mp4 media.  Following the wiki entry (https://github.com/nwjs/nw.js/wiki/Using-MP3-&-MP4-%28H.264%29-using-the--video--&--audio--tags) I started to look around for a matching version of ffmpegsumo.dll (for nw.js 0.12.3) and then happened to notice that the latest Chrome doesn't have that dll.  Then I read about how Chrome is dropping (or has dropped?) support for mp3/mp4 in favour of webm and started wondering if this will be possible at all in future builds of nw.js. 

Thanks,
Trevor

lza...@gmail.com

unread,
Aug 28, 2015, 11:30:50 AM8/28/15
to TrevorPT, nw.js
Hi all,

It's not silver bullet but a perfect way to work around your audio and video issues. Here is a port of ffmpeg in javascript https://bgrins.github.io/videoconverter.js/
I briefly used it in my RaptorGL editor to auto convert diff sounds to the same format but then decided against it in favor of let the user decide on these things. 
Anyhow it works and you could easily turn this into a child process to speed up the conversion or just use it to play your mp3. 

Hope it helps. 

Laszlo
--
You received this message because you are subscribed to the Google Groups "nw.js" group.
To unsubscribe from this group and stop receiving emails from it, send an email to nwjs-general...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

eladk...@gmail.com

unread,
Mar 9, 2019, 5:50:03 PM3/9/19
to nw.js
@TrevorP you can get it from K-Lite,
download the x64 version of CodecGuide's K-Lite
and then, either install it, or unpack it with UniExtract Mod or 7zip Mod

If you've install it (on a VM for example) you'll find your desired ffmpeg.dll (with the proprietary codecs) under the path:
C:\Program Files (x86)\K-Lite Codec Pack\Filters\ffdshow\ffmpeg.dll
and
C:\Program Files (x86)\K-Lite Codec Pack\Filters\ffdshow64\ffmpeg.dll

Enjoy.
EladKarako
Reply all
Reply to author
Forward
0 new messages