tl;dr: Listen only mode has distorted audio in Firefox on Debian GNU/Linux. Seems to be related to the flash plugin 11.x and maybe pulseaudio, likely a problem in other GNU/Linux distros too.
Hi,
I have been testing the 0.9.0 beta and I have a problem regarding the »listen only« option.
My system is Debian Wheezy. I found the problem on my server first but it can be reproduced on
demo.bigbluebutton.org.
In Iceweasel (31.4.0esr-1~deb7u1) and Firefox (33-35, beta [36] and nightly [38a]), the »listen only« option leads to distorted audio. To reproduce, (re)start Firefox, open
demo.bigbluebutton.org, choose »listen only«. If you are the only person there, you get the »you are currently the only person in this conference« message and it is heavily distorted. So is all other audio.
You can make it work with the following steps:
1) Stop sharing your microphone
2) Share your microphone, choose »Microphone«
3) In the WebRTC audio test, answer no (did not hear audio)
4) Allow Flash
5) In the flash audio test click next, answer yes (did hear audio). Audio is ok now.
6) Stop sharing your microphone.
7) Share your microphone, choose »listen only«
8) You got a working »listen only« session. Not only in this session, but for the whole browser session. Close BBB and reload, use a different server, does not matter. It just works. Once you close the browser and restart it, it's broken again. If you kill the plugin-container that runs flash, BBB crashes and when you reload it, audio is broken again.
Going through these 8 steps is hardly something I can expect a user to do. :)
In Chromium (37.0.2062.120-1~deb7u1) and latest Chrome, listen only works fine for me.
Flash in Firefox is Shockwave Flash 11.2.202.442.
Flash in Chromium is Pepper Flash 16.0.0.305.
In KMix (The KDE audio mixer) I can see that in the moment I join listen only mode in Firefox, a stream called »ALSA plug-in [plugin-container]: ALSA Playback« is created, but appears to be constantly activated and deactivated (a few times per second), all streams in the mixer are flickering. The flickering stops when I click »Stop sharing your microphone«.
At step 5), when I click next, there is a short, nasty sound and a second entry for »ALSA plug-in [plugin-container]: ALSA Playback« appears in the mixer. This is the moment when things are set right, it does not really matter if I choose yes (did hear audio) or just cancel audio setup at that point, listen only mode works afterwards.
I found that if I start Firefox as root, it works instantly. That is not really an option of course.
I also found this, which sounds very similar to my problem:
https://github.com/i-rinat/freshplayerplugin/issues/66So it might be a problem with flash and pulseaudio.
I compiled the freshplayer plugin (it's a wrapper for Chrome's pepper flash to be used in Firefox) and when I load BBB now it says flash is version 16.0.0.305 and listen only works instantly. The entry in the mixer says »freshwrapper: playback« now. Again this is not really something I could ask a user to do before joining a webinar session.
Given that a) it works as root and b) it works with the work-around and c) it works in microphone mode, I hope it can be fixed to work instantly with the regular flash plugin for Firefox (11.2.202.442). At the moment it is a little more complicated than just hitting a BigBlueButton when you use Firefox in GNU/Linux. ;)