spreed
spreed copied to clipboard
Media settings sometimes reset to a wrong microphone
How to use GitHub
- Please use the 👍 reaction to show that you are affected by the same issue.
- Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
- Subscribe to receive notifications on status change and new comments.
Steps to reproduce
- Have a webcam with a microphone and additionally a headset
- Join a call
Expected behaviour
Headset is used like you did the last times
Actual behaviour
Sometimes it selects the webcam mic instead and you have to repick to the headset instead.
Snapshot of data to compare next week:
Devices (from top down) | Labels | IDs (after explicitly selecting airpods) |
---|---|---|
Default USB audio = Headset with USB Audio connected via Docking station Brio = Webcam MacBook = obvious 14P = iPhone that could be used as external mic MS Teams = virtual Airpods None |
As I checked the MediaDeviceManager , there is a fallback to set the default or first audio stream if the current device Id was not found. Did you see a console log
'Could not find previous audio device, falling back to default/first device in the list'
?
I couldn't reproduce it though.
https://developer.mozilla.org/en-US/docs/Web/API/MediaDeviceInfo also seems to list a "groupId" maybe we can check that and see if it is helpful.
Above are some screenshots of devices from colleagues:
C | Audio | Video | OS Audio |
---|---|---|---|
Jan | |||
Andy | |||
me |
This is how audio media streams are handled for now:
- If a user selects an audio input device, it is stored in browser and will be selected for future calls.
- If the stored device is not found ( either different browser or the device was removed from peripherals), it falls back to default device (first on the list or
deviceId === default
).
Even when you plug the headset again, it should reset to it because its id is still stored in browser storage unless you selected other device intentionally before plugging it and another id will be stored. So if you remove your headset and don't select any other device ( default is picked automatically) and then add your headset again, it will reset correctly.