please make pacat respect default sinks/sources
PA 12.2 on Fedora here.
I have two sources:
- Internal (laptop) mic
- USB headset mic
I mute the laptop mic via the KDE mixer. Because I want to use the USB headset's mic
parecord /tmp/foo
nothing gets recorded.
I start pavucontrol. I go to "Input Devices". Internal mic is displayed as muted. I tick "Set as fallback" (whatever that could mean -> a help text for noobs would help).
parecord /tmp/foo
nothing gets recorded.
On the command line I do:
pacmd set-default-source alsa_input.usb-Plantronics_Plantronics_Blackwire_3210_Series_XXXXXXXXXXXXXXXXXXXXXXXXXXXXX-00.analog-stereo
parecord /tmp/foo
nothing gets recorded. Now I do:
parecord -d alsa_input.usb-Plantronics_Plantronics_Blackwire_3210_Series_XXXXXXXXXXXXXXXXXXXXXXXXXXXXX-00.analog-stereo /tmp/foo
Now sound from the headset gets recorded. So I interpret that as pacat ignoring PA set-default-source
settings.
pactl list
tells me:
Source #1
Name: alsa_output.pci-0000_00_1b.0.analog-stereo
Ports:
analog-input-internal-mic: Internal Microphone (priority: 8900)
analog-input-dock-mic: Dock Microphone (priority: 7800, not available)
analog-input-mic: Microphone (priority: 8700, not available)
Source #3
Name: Plantronics_Plantronics_Blackwire_3210_Series_XXXXXXXXXXXXXXXXXXXXXXXXXXXXX-00.analog-stereo
Ports:
analog-input-headset-mic: Headset Microphone (priority: 8800)
I don't know why Source #1 has both prio 8900 and prio 8700, one being "not available" and the other I don't know. I'd expect prio 8800 (headset) being higher than 8700 (internal) parecord to respect that and use the headset mic. Which again, it does not.
I'd think that parecord respecting set-default-sink PA settings and priorities would be wise, because when audio is not working, then command line tools are the first step to debug stuff. If they are anti-intuitive to use, because the do not act as "naturally expected" (as I'm trying to argue above) then result users getting lost in dead labyrinth ends. IMHO.
I'd be very glad if pacat could be improved to respect the set-default-sink and priority settings.