Closed Bug 1533364 Opened 5 years ago Closed 4 years ago

Facebook call ends when switching to the webcam microphone

Categories

(Core :: WebRTC: Audio/Video, defect)

Desktop
Windows 10
defect
Not set
normal

Tracking

()

RESOLVED INVALID
Tracking Status
firefox-esr68 --- wontfix
firefox66 --- wontfix
firefox71 --- wontfix
firefox72 --- wontfix
firefox73 --- wontfix

People

(Reporter: dcicas, Unassigned)

References

Details

(Keywords: regression)

Attachments

(2 files)

**Note:

  • The Browser console and the Web console does not throw any errors when the call ends.

Affected versions

  • Fx Beta 66.0b13
    Fx Release 65.0.2
    Fx Nightly 67.0a1 Build ID: 20190306161300

Affected platforms

  • Win 10 x64

Steps to reproduce
Prerequisites:

A working headset is required to run this test case. The term headset refers to a device that has headphones and a microphone.
We used USB headset.
You need to have 2 computers - one of them needs to have Windows 10.

  1. Start a call using Facebook webRTC.
  2. From the other computer join the same call.
  3. Plug the headset into the machine and check audio/video.
  4. Plug the USB headset into the Windows 10 machine and check audio/video.
  5. Unplug the headset from the Windows 10 machine and check audio/video.
  6. Switch from the headset microphone to the webcam microphone.

Expected result

  • When switching to the webcam microphone the call continues uninterrupted.

Actual result

  • The Facebook call ends when selecting the webcam microphone.

Regression range
Will provide a regression range ASAP

Has Regression Range: --- → no

What steps do you do to "Switch from the headset microphone to the webcam microphone" per step nr 6?

Flags: needinfo?(daniel.cicas)

Hello,

In the Facebook call window, click on the settings button. Then change the microphone setting from your headset to the webcam. Hope this helps, if you have any other questions feel free to NI me!

Flags: needinfo?(daniel.cicas)

I don't have a settings button in the call window. How are you starting the call?

Flags: needinfo?(daniel.cicas)
Attached image bug facebook call.png

Hello,

I made this screenshot showing where the settings are on Win 10 x64, with Fx Beta 66.b13. I activate the video call from the button in the chat window.

Flags: needinfo?(daniel.cicas)
Rank: 14
Priority: -- → P2

Please don't set a priority until we have confirmed that this is a Firefox issue and not a Facebook issue.

Rank: 14
Priority: P2 → --

Sure, it was NEW that's why I set it ...

Status: NEW → UNCONFIRMED
Ever confirmed: false

Daniel, are you still looking for a regression range? It would be useful to know when this started happening? Alternatively, if you're seeing this in version where it wasn't previously a problem, that could indicate a change in Facebook, which would also be useful to know.

Flags: needinfo?(daniel.cicas)

Hello Bryce,

Unfortunately, getting a regression window is harder than anticipated. I used mozregression going back to 2017 only (the bug being still reproducible), but I cant go back more with mozregression because it cant find the builds from 2016 so I am afraid that it has to be done by hand.

On the other hand I did some testing and this is what I found:

  • This issue does not occur on Chrome
  • This issue also occurs if both users have Win 10.

This is a test case that 100% reproduces the issue:

*I disabled the other microphone device in the Windows sound settings. So only one device is used Microphone Lifecam HD-3000.

  1. Open a Facebook video call.
  2. In the permission prompt grant A/V permission to Microphone Lifecam HD-3000.
  3. Click on the settings button in the top right corner.
  4. On the microphone settings you will see "default: Microphone Lifecam HD-3000"
  5. Select from the dropdown menu "Microphone Lifecam HD-3000" (not the "default: Microphone Lifecam HD-3000").
  6. Now change back to "default: Microphone Lifecam HD-3000"

Actual results: the call ends.

*I also tried disabling the webcam device and only had the microphone from the headset. The issue still occurred.

This makes me believe that something happens when changing to the "default:example" that ends the call.

I hope this helps until I can find a regression!

Flags: needinfo?(daniel.cicas)
Rank: 15
Priority: -- → P2

Hello,

After some manual regression investigation I managed to reduce the regression window to https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=5b33b070378ae0806bed0b5e5e34de429a29e7db&tochange=3f6b9aaed8cd57954e0c960cde06d25228196456&full=1
Unfortunately I can't reduce it more that these 3 changesets
Last good build "20171128220048"
First bad build "20171129111030"

Has Regression Range: no → yes
Has STR: --- → yes

Bug 1290948 looks most suspicious in there. Byron, could you take a look?

Even if something changed there, I'm not clear on whether this is a Firefox or a Facebook issue. Obviously we do not support multiple concurrent audio inputs, so implementing audio device changing functionality in a good way is difficult. If it worked prior to bug 1290948 it is likely Facebook has worked around it somehow. I'm unsetting the priority again until we have figured out what they're doing and what is expected.

Rank: 15
Flags: needinfo?(docfaraday)
Priority: P2 → --

That is a super-old change. I would be surprised if it were the real cause, but I'll look into it.

Attached file Reoffer
It is hard to tell exactly what is going wrong, but I do note something strange in the SDP negotiation. When trying to change the input, a round of renegotiation is triggered; this is strange, considering that replaceTrack should be able to handle this without renegotiation at all. Also strange is the fact that the new local SDP contains an extra audio m-section (because I tried to switch microphone). The old one is active still, but in recvonly mode. Perhaps facebook tried to do a replaceTrack(null), and then addTrack, and got confused because that new track was not attached to the original transceiver?

This really seems like a facebook bug to me. Do we have a contact over there?

Flags: needinfo?(docfaraday) → needinfo?(drno)

We are still getting this when using Firefox 72.0b4 on a call with Latest Chrome. Chrome - Chrome is not affected by this.

Version: 66 Branch → Trunk

Mike maybe you can help Byron get in touch with facebook?

Flags: needinfo?(miket)

I'm so sorry about the delay here. I've added Byron to the facebook/mozilla list so he can get a conversation started. Let me know if I can help further.

Flags: needinfo?(miket)

Did this end up somewhere?

Flags: needinfo?(drno) → needinfo?(docfaraday)

Facebook confirmed a bug on their end, and were working on it starting Jan 22.

Status: UNCONFIRMED → RESOLVED
Closed: 4 years ago
Flags: needinfo?(docfaraday)
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: