Skip to content

fix input device filtering and descriptor serialization#39

Open
josiahsrc wants to merge 1 commit intomainfrom
fix-linux-devices
Open

fix input device filtering and descriptor serialization#39
josiahsrc wants to merge 1 commit intomainfrom
fix-linux-devices

Conversation

@josiahsrc
Copy link
Owner

Fixed Linux audio device selection issues in apps/desktop/src-tauri/src/platform/audio.rs by making three changes: (1) added #[serde(rename_all = "camelCase")] to InputDeviceDescriptor struct to fix a serialization mismatch where Rust was sending is_default but TypeScript expected isDefault, (2) changed device name matching from exact string equality to bidirectional substring matching (label.contains(pref) || pref.contains(label)) so that saved device preferences like "USB Microphone" still match when ALSA/PulseAudio returns names with hardware suffixes like "USB Microphone (hw:1,0)", and (3) added Linux-specific virtual device keywords ("monitor of", "samplerate", "null") to the LOW_QUALITY_INPUT_KEYWORDS filter to prevent the app from trying to record from PulseAudio monitor devices and ALSA virtual converters that don't provide actual microphone input, which was causing timeouts in automatic mode.

Closes #36

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Recording Device Failure

1 participant