FS#31381 - [firefox] no sound in html5 video when using jack with alsa plugin

Attached to Project: Arch Linux
Opened by Alexander (Slesarev) - Saturday, 01 September 2012, 18:49 GMT
Last edited by Ray Rashif (schivmeister) - Wednesday, 20 February 2013, 20:26 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To Jan de Groot (JGC)
Ionut Biru (wonder)
Ray Rashif (schivmeister)
Architecture All
Severity Low
Priority Low
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
No sound in html5 video firefox 15.0

Additional info:
firefox 15.0 all gstreamer and alsa packages installed and up to date; sound works perfectly everywhere else
Seems that firefox is compiled without "--enable-gstreamer"


Steps to reproduce:
http://www.w3schools.com/html5/tryit.asp?filename=tryhtml5_audio or any html5 video
This task depends upon

Closed by  Ray Rashif (schivmeister)
Wednesday, 20 February 2013, 20:26 GMT
Reason for closing:  Upstream
Additional comments about closing:  See comments; please re-open if necessary.
Comment by Ionut Biru (wonder) - Saturday, 01 September 2012, 19:00 GMT
works fine here. by any chance do you use oss4 instead of alsa?
Comment by Alexander (Slesarev) - Saturday, 01 September 2012, 19:03 GMT
No, it is alsa routed through jack (does not work without jack as well)

I do not use pulseaudio.
Comment by mattia (nTia89) - Tuesday, 04 September 2012, 16:31 GMT
it works in my pc
(alsa+pulseaudio)
Comment by Jelle van der Waa (jelly) - Tuesday, 04 September 2012, 19:30 GMT
Works fine too with plain alsa
Comment by Aapo Vienamo (tkln) - Saturday, 08 September 2012, 19:39 GMT
I have come across this too. I have alsa routed to jack in my asoundrc and can't hear any audio from html5 stuff. But for example flash audio works in this setup though.
Comment by Alexander F. Rødseth (xyproto) - Saturday, 08 September 2012, 23:39 GMT
Assuming this is a problem with jack+firefox. Assigning.
Comment by Ray Rashif (schivmeister) - Saturday, 08 September 2012, 23:54 GMT
What is your setup, really? The steps to reproduce do not help, because not all of us are using JACK and Firefox together. Do you also mean that plain ALSA and Firefox do not work either? If so, that should be the first hurdle to go over.
Comment by Alexander (Slesarev) - Sunday, 09 September 2012, 00:17 GMT
Yes, it is jack+alsa

The jack is "jack2-multilib", it is routed through alsa with an exact copypaste of /etc/asound.conf from archwiki (https://wiki.archlinux.org/index.php/JACK#Playing_nice_with_ALSA)

I just checked whether it works without jack and got sound. Either I failed to actually disable jack when I was submitting this bug or some update partially fixed it. Sorry for confusion anyway.

Still it does not work with jack.
Comment by Alexander F. Rødseth (xyproto) - Sunday, 09 September 2012, 01:10 GMT
To reproduce this, does one have to change any settings in firefox after installing jack2-multilib? Would you mind posting a short step-by-step guide for reproducing the issue? Thanks.
Comment by Alexander (Slesarev) - Sunday, 09 September 2012, 03:04 GMT
Ok, I did not change any sound-related settings if ff. List of plugins: NoScript, zotero, CookieMonster, Ghostery, FoxyProxy, AdBlock Plus, Flashblock, shockwave flash, java-icedtea.

ff was inastalled first, then all plugins, than I tried all 3 variations of jack, deinstalling previous one before trying next, and stopped on just "jack2". Than I got all main alsa and gstreamer plugins and edited asound to get everything other than audio software running just following the precious wiki advices. Than I made full system update for some purpose on the day the bug was reported (ff was updated on that day for sure). That is about it.

I did not notice this bug before.

All other sound related issues may be of some importance to you: first, although it is not jack-dbus, I can't start it from qjackctl, but still jack_control command works - although as I understand it should not be like that. Patchage works fine. Also I have wineasio from AUR, which works fine.

Is there anything else I can add to this?
Comment by Ray Rashif (schivmeister) - Sunday, 09 September 2012, 07:46 GMT
Thanks. This is then purely a JACK issue, and using the JACK plug-in from ALSA is not guaranteed to work for all cases by either ALSA upstream or JACK upstream. This is also maybe not an ALSA plug-in issue, but a GStreamer one. I don't know the details about GStreamer or HTML5 plus Firefox.

The important question is, did this setup work previously at any point of time? Or is this the first time you're using it in such a way?

It is most likely not a bug, but a problem with this setup. Either it is not configured correctly and we need to know how, or it does not work this way. I assume you have checked http://jackaudio.org/gstreamer_via_jack ? (provided Firefox does indeed use GStreamer for HTML5)

If qjackctl does not start normal jackd, please file a separate bug report. If you're using dbus, see https://wiki.archlinux.org/index.php/JACK#.22jack2-dbus_and_qjackctl_errors_:.22

Rødseth: Just the .asoundrc is enough to try and reproduce this, nothing else is needed. Use standard jack and jack2, not jack2-multilib or jack2-dbus.

edit: According to one source Firefox uses ALSA directly, and the plug-in should work for HTML5.
Comment by Alexander (Slesarev) - Sunday, 09 September 2012, 09:54 GMT
Thank you.

I went through all those pages (and surely more), and I absolutely like how jack is now controlled by jack_control (I like command-line interface more than overhauled qjackctl menus), although I still do not understand why it is like that.

The setup should have been working before, as I watched plenty of youtube videos and at least some of them should have been html5, I guess.
Comment by Ray Rashif (schivmeister) - Sunday, 09 September 2012, 20:16 GMT
OK. Chromium works, Firefox does not. Use http://camendesign.com/code/video_for_everybody/test.html to test. Problem is Firefox. I'm afraid this is as far as we can help you. You'll have to bring this upstream to Firefox.

edit: According to Paul Davis from JACK, Firefox probably uses an explicit device name, rather than "default" (we make the plug the default in asoundrc).
Comment by Jelle van der Waa (jelly) - Sunday, 09 September 2012, 20:19 GMT
Works in Aurora without jack that is..
Comment by Greg (dolby) - Saturday, 17 November 2012, 04:09 GMT
Has this been reported to the mozilla developers?
Comment by Ray Rashif (schivmeister) - Sunday, 18 November 2012, 12:33 GMT
I don't think so - at least I haven't done so myself. I expected the reporter or the Firefox maintainers to pursue this as I do not use or keep up with that browser.
Comment by Alexander (Slesarev) - Sunday, 18 November 2012, 18:22 GMT
Sorry, forgot about this bug. Just reported it now.
Comment by Greg (dolby) - Sunday, 18 November 2012, 19:28 GMT
Please paste link to report here.
Comment by Alexander (Slesarev) - Sunday, 18 November 2012, 19:53 GMT Comment by Alexander (Slesarev) - Tuesday, 20 November 2012, 07:59 GMT
Matthew Gregan [:kinetik] from bugzilla gave me a quick fix (as a test actually), although I do not understand how this works:

"visit about:config and create the boolean pref "media.use_cubeb" and set it to false"
Comment by Ray Rashif (schivmeister) - Tuesday, 20 November 2012, 10:13 GMT
Yes, confirmed, that appears to work the magic. The upstream report has more information and some more tests now.

edit: removed steps to create the pref; misunderstood 'don't understand' as 'don't know what to do'.
Comment by Alexander (Slesarev) - Friday, 23 November 2012, 18:33 GMT
Matthew Gregan suggests that

"new backend uses float32 samples rather than sint16, which the JACK plugin may not support"

The jack plugin is not part of jack project (I asked specifically on jack project website), so who supports it? Is there any chance it may be fixed?
Comment by Ray Rashif (schivmeister) - Friday, 23 November 2012, 20:46 GMT
http://www.alsa-project.org

Since it's a corner-case issue and we have a workaround as well as some confirmation as to who upstream should really be in this case, I suggest we close this as upstream. Not really worth keeping it open as it'll receive little priority.

Loading...