element-hq / element-hq/element-call

EC-in-EXI got stuck on the wrong audio device

Open
#3,581 1 comment 0 reactions 0 assignees View on GitHub
O-Occasional S-Minor T-Defect
Dominant language
TypeScript
Stars
996
Forks
213
Avg merge
1d 6h
Merged PRs (30d)
54

Description

### Steps to reproduce

1. Joined an embedded call on EC-embedded-in-EXI
2. Audio starts on the phone speaker
3. Put on Airpods Max bluetooth headset
4. Audio correctly routes to headset; hooray.
5. Plug in headset to charge on laptop
6. Headset switches to laptop
7. Audio routes to phone speaker on EC.
8. Go to audio settings on EC, hit 'select audio device', see that Airpods Max are already selected :-/
9. Tap it again and close the window
10. Nothing happens.
11. Go back in again, select "phone speaker" instead.
12. Nothing happens.
13. Go back in again, select "Airpods Max"
14. ...and now the audio gets rerouted back to the Airpods correctly.

### Outcome

#### What did you expect?

When the audio routing changed in step 7, the app apparently wasn't told about the new audio device. So it incorrectly claimed it was using the AirPods when it wasn't. Instead, it should have said it was using phone speaker, so i could have manually overridden it back again.

Alternatively, when I explicitly tapped the right selection, it should have overridden to use it, irrespective of what it thought the current reality was.

#### What happened instead?

App lost track of which audio device it was using, and then ignored my attempts to use the right device (until i switched device and back again).

### Operating system

iOS 26

### Browser information

_No response_

### URL for webapp

_No response_

### Will you send logs?

Yes

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the EC-embedded-in-EXI flow on iOS 26 with AirPods Max: connect the headset, switch its route by plugging it in, and inspect the audio settings afterward. Done means the app reflects the actual phone-speaker route and an explicit selection immediately reroutes audio to the chosen device.

Written by the indexing model from the issue text.

Assessment

Tech stack
ios
Domain
audio-video-rtc, mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.