Open Bug 1441456 Opened 7 years ago Updated 2 years ago

On Ubuntu if you unplug then plug back in your USB headset the audio output is not captured by the USB headset

Categories

(Core :: Audio/Video: cubeb, defect, P2)

All
Linux
defect

Tracking

()

Tracking Status
firefox59 --- affected
firefox60 --- affected

People

(Reporter: Ovidiu, Unassigned)

References

Details

Affected versions]: Tested on Firefox beta 59.0b12 FF Nightly 60.0a1(2018-02-25) [Affected platforms]: Ubuntu 16.04 [Steps to reproduce]: Prerequisites: You need to use a laptop that has a build in camera. A working USB headset is required to run this test case. STR: 1. Load: https://mozilla.github.io/webrtc-landing/gum_test.html 2. Click on “Audio + Video” and accept the webcam and microphone prompt. 3. Uncheck the "Muted" box. 4. Plug and unplug repeatedly a USB headset and check audio input and output. [Expected result]: The audio is captured, and output is available from the proper device each time. [Actual result]: The audio output is not captured by the USB headset. NOTE: I tested this issue using RTTS headset and I can't reproduce it.
OS: Unspecified → Linux
Hardware: Unspecified → All
Version: 60 Branch → Trunk
I'd like to rule some things out. Is video required for this test, or could we achieve the same thing with only audio capture? When this happens, could you check in `pavucontrol` and its playback tab which device is used for output for Firefox, if any? Likewise for input on the recording tab. To figure out whether it's audio output that is broken, when this happens, could you paste and run this in the console on the same page: ``` ac = new AudioContext(); osc = ac.createOscillator(); osc.frequency.value = 300; osc.connect(ac.destination); osc.start(); ``` It should emit a 300Hz tone, and beware that it might be loud. Moving this to cubeb since it seems like an audio issue.
Component: WebRTC: Audio/Video → Audio/Video: cubeb
Flags: needinfo?(ovidiu.boca)
Rank: 17
Priority: -- → P2
I retested this on Ubuntu with FF Nightly 60.0a1(2018-03-05) and after I reproduce this issue I run the script in the browser console and I heard the tone.
Flags: needinfo?(ovidiu.boca)
I tried this one. gUM was started using the mic from the usb device. On first unplug the audio input is "transferred" to the build in mic and stays there. That means that all following plugs/unplugs does not affect the audio input which is coming from the the build in mic. It's not very clear from the description of the problem if audio input is busted completely or there is audio input but it is not coming from the USB mic. Can you please clarify?
Flags: needinfo?(ovidiu.boca)
Is module-switch-on-connect loaded in pulse perhaps? Check with `pactl list short modules | grep switch` in the terminal.
In my case module-switch-on-connect was not loaded. I tried again with that module loaded, the result is that when I connect back the usb device the mic is "transferred" back to that device.
Hi Alex, In my case, I don't hear anything in the USB headset.
Flags: needinfo?(ovidiu.boca)
Hi! One question, do you have a second mic installed in that system? If yes, is audio coming from that mic when USB headset doesn't work?
I have the integrated microphone form the laptop. This is working when the USB headset doesn't work.
That's great news thanks! Can you try one more thing? On the terminal execute the following command: `pactl load-module module-switch-on-connect` then try it again, I expect that USB headset will work after that.
I'll NI? myself to don't forget about it.
Flags: needinfo?(ovidiu.boca)
I retested this on Ubuntu 14.04 using the test page from the description and I have different results. I tested on Nightly 61.0a1(2018-03-21) and FF beta 60.0b5 and I can't reproduce the same result like the one from comment 7 and comment 9. Here are my latest results: 1. Load: https://mozilla.github.io/webrtc-landing/gum_test.html 2. Click on “Audio + Video” and accept the webcam and microphone prompt. - here I select the USB headset(Plantronics) 3. The "Muted" box is checked by default(you shouldn't hear anything) - I can hear myself. Sometimes this doesn't happen and if I unplug then re-plug the headset the sound capture starts. In both cases, all this capture is for 5-10 seconds, then the capture is stopped and I can't hear anything. If I unplug the headset the sound is not captured by the microphone from the laptop. Should I still use the command from comment 10?
Flags: needinfo?(ovidiu.boca) → needinfo?(achronop)
Yes please use the command from comment 10. Also if possible can you please re do the initial scenario. Had anything changed in your configuration that can have caused the different results? If you try it again but you use the "Audio" button (instead of "Audio + Video") what behavior do you get.
Flags: needinfo?(achronop)
I tested on Ubuntu 14.04 with FF Nightly 61.0a1(2018-03-26) following the scenario from the description. For the first test, I selected the default Built-in-Audio mic to share and everything worked as expected. If the mute box is checked the sound is not captured. For the second test, I selected to share the USB headset (Plantronics Audio 622 ) in the microphone section. Doesn’t matter if the mute box is checked or un-checked the sound is captured. For the third test, I kept the USB headset (Plantronics Audio 622 ) in the microphone section and started to plug and unplug repeatedly the headset. After you plug back in, the audio is captured for ~3 sec and then it stops. Note, during this test the “Muted” box is checked and the sound is captured. I used the Audio button: After I plug back in the USB headset the audio is captured for ~3 sec and then it stopped. I used the command line from comment 10 and after I plug back in the headset the audio was captured for ~3 sec and then nothing.
Severity: normal → S3

Hello! This issue is still reproducible on Zoom using Jabra USB headset on firefox 111.0b5 with Ubuntu 22.04.

You need to log in before you can comment on or make changes to this bug.