I recently took the plunge and the transition has gone well so far. Currently, my only exception is audio. I have a Python script that monitors one input and plays it out an output. It uses sounddevice and therefore portaudio.
Obviously I can’t just dnf install portaudio
, so I created a distrobox for it. sounddevice installed successfully and I can use any unused sources/sinks. Key word unused. When I have another application playing back audio, the sink shows 0 available output channels. On my old Fedora system I would solve this by outputting to the “default” device. That doesn’t work in this case. The default devices also have 128 channels for whatever reason, I’d expect it to match the output that is selected as the default in Gnome Settings.
My question may really be about Linux audio servers. Can anyone describe to me what is going on here? Or what comprises the Bluefin audio stack?
Here’s an example of sounddevice.query_devices()
. Output 6 is my selected output in Gnome Settings.
0 UMC404HD 192k: USB Audio (hw:0,0), ALSA (4 in, 4 out)
1 HDA ATI HDMI: 0 (hw:1,3), ALSA (0 in, 8 out)
2 HDA ATI HDMI: XV240Y (hw:1,7), ALSA (0 in, 2 out)
3 HDA ATI HDMI: 2 (hw:1,8), ALSA (0 in, 8 out)
4 HDA ATI HDMI: XV240Y (hw:1,9), ALSA (0 in, 2 out)
5 HDA ATI HDMI: XV240Y (hw:1,10), ALSA (0 in, 2 out)
6 HD-Audio Generic: ALC892 Analog (hw:2,0), ALSA (2 in, 0 out)
7 HD-Audio Generic: ALC892 Alt Analog (hw:2,2), ALSA (2 in, 0 out)
8 HD Pro Webcam C920: USB Audio (hw:3,0), ALSA (2 in, 0 out)
9 sysdefault, ALSA (128 in, 128 out)
10 front, ALSA (0 in, 4 out)
11 surround40, ALSA (0 in, 4 out)
12 iec958, ALSA (0 in, 4 out)
13 spdif, ALSA (4 in, 4 out)
* 14 default, ALSA (128 in, 128 out)
15 dmix, ALSA (0 in, 4 out)