Choose audio devices #87
No reviewers
Labels
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
puregarlic/microclimate!87
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "issue/15-audio-device-selection"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #15. Relies on #88 getting merged to main.
a3a63620b5to0b760ff3d2We need better names for the audio devices -- it just lists their categories, not their models.
We should give each device its own randomly-generated ID just in case they have the same name, atm the UI is broken if you have two devices with the same name.
f9cad86178to5d23b0b88e- Extract a MuteEngine that owns the muted/deafened/pre-deafen-muted state and enforces the invariants (deafen implies mute, unmute implies undeafen, undeafen restores prior mute) in one place. Test commands now use a TestIsolationGuard whose Drop restores state and emits the state event, replacing the manual "save → force → restore → emit" dance duplicated across play_test_tone and test_microphone. - Fix audio_state_changed payload: was a (bool, bool) tuple serialized as a JSON array, but the frontend reads it as { muted, deafened }. The engine emits a serde-tagged MuteSnapshot instead. - Single source of truth for device labeling: id == name always; collisions get a "(N)" suffix in both. find_audio_device re-runs the labeling pass and does a linear search, so the dedup and lookup logic can never drift. - AudioManager: clear stored device entry when the persisted device is unavailable instead of silently re-falling-back on every launch. - set_input_device: skip when the requested device is already selected, matching set_output_device. - Remove dead loopback code (commands, AudioManager fields, helper).WIP: Choose audio devicesto Choose audio devicesLGTM... besides the LiveKit bug