Fix cannot activate mic if last used mic no longer available #4699
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Had an issue where I couldn't activate mic on Firefox, it traced to this feature that pulls the last used mic from local storage to reselect it, but the mic was no longer available. This happened to me and a colleague on different OSes (Linux, Windows) at the same time, so I suspect an FF update may have changed the device id hashing. In testing I could also repro by unplugging mic or altering the saved mic id.
This PR changes the media device query to substitute another mic if the requested one is not available (rather than fail). Oddly, I could only repro on my outdated Hubs cloud. Could not repro master or on the latest Hubs cloud, but I also couldn't identify any changes that would have solved it, so I thought I'd submit the fix anyway since it's so innocuous.