AudioGNU/Linux

Firefox with native JACK support

Last year I wrote a duplex JACK audio backend for Firefox browser.
It took a lot of negotiating with Mozilla people and they accepted most of the code. However, they won’t turn on JACK support in default builds. This currently requires --enable-jack to be added to the mozconfig at compile time.

Thus I am providing a binary tarball package for GNU/Linux (64 bit) with JACK support enabled by default and PulseAudio and ALSA disabled entirely from the build. This should enable seamless streaming from webpages into your favourite JACK aware audio programs.

Feel free to compile your own version, but if you just want to use it right away, CLICK HERE to download the Firefox (JACK) tarball (SHA-1 = 9be8aac4db2ead40749f6d0c0fd174a03b6433e5).

14 thoughts on “Firefox with native JACK support

  1. Hey, what a very good idea !

    Can’t you compile a 32 Bits plugin for Firefox for a poor Windows user like me ?

    I will be great !

    Best regards.

    E-Gwen.

  2. Hello.
    Amazing ! Simply genius !
    With the new policy from Mozilla, to force pulse audio to have sound working with firefox, your build is life saver !
    Can you tell us more on the code ? Do you have it somewhere ? Do we have to patch the source of each new released version of firefox ? Does the code will stay in firefox ?
    I found you randomly, you should spread the world of this build / compile option !
    You did *the* job that Mozilla was unable to provide during all these years….big congrats !
    Thank you very much.

  3. Perhaps “genius” is an understatement. I was super surprised and pleased to discover this even existed at all thanks to someone mentioning it in the #ardour IRC channel. FWIW this is a comment I posted into a bugzilla thread…

    Just a usability comment but when patching FF into ie; Audour the FF audio system makes a typical connection directly to the playback ports every time a new ie; youtube video starts playing (not just on tab open) which renders using any kind of Jack mixer almost useless. As aenertia mentioned, if it was a once off auto-connection to capture/playback ports on startup then that would be manageable. Better still would be an about:config option to disable auto-connection altogether so apps like patchage and qjackctl/patchbay can work as expected.

  4. Hello.

    Also : would you be kind enough to post your mozdev option list to buid firefox, pretty please.
    It’s not easy to create one that work :/
    Would be greatly appreciate !
    Thank you.

  5. Hello.
    @Mark Constable :
    Use the Qjackctl’s patchbay, with some REGEX in the name of the Output like .+out_.+ and patch it to the input of whatever, when an output appear from firefox or whatever, it will be connected directly.

    All the best.

  6. Could you provide a step by step guide for compiling Firefox with –enable-jack
    I would like to try the latest version of firefox, but this is all kind of new to me.

  7. Adrienne: Clone the gecko-dev mozilla-central repo and create a file in the root folder like this: echo "ac_add_options --enable-jack" > mozconfig , then ./mach configure && ./mach build && ./mach package enjoy!

  8. Hi Damo,
    thanks a lot! I will give it another try. My first attempt failed because I am not used to compiling things.

  9. When I discovered this post in December I wanted an easy way to keep firefox-with-jack up-to-date, as .deb packages based on the official Debian ones, so I wrote an automation script which – at the cost of recompile/package-build time whenever I update firefox – integrates nicely on my Debian (Unstable/Experimental) system – and I guess should also work as-is on an Ubuntu system(?). I uploaded it to github, blogged about it, and tweeted the blogpost at the time (see https://twitter.com/rowanthorpe/status/942927608932642816) but forgot to comment here until now. I am presently writing this comment and listening to music on a deb-packaged jack-enabled firefox 58 (about to update to 59 now). Hope that helps someone.

  10. Hi. Thank you for this! Playback works great! Still I cannot make audio capture work. When checking with https://online-voice-recorder.com/ I can select “JACK capture” but even when capturing is started, I see no capture port in the patchbay (for cases when I need to route signal from another microphone). Audio capturing with the default soundcard does not work with JACK as well. Can you please advice how to resolve the issue or where to seek for help? Many thanks!

  11. Hi Plz help me , Im getting this error when compiling firefox for jack support ERROR: –enable-jack is not supported with bootstrapped sysroot. Drop the option, or use –without-sysroot or –disable-bootstrap
    Error running mach:

    [‘configure’]

Leave a Reply

Your email address will not be published. Required fields are marked *