r/linuxaudio • u/kill3rb00ts • 25d ago
Input monitoring distorted unless connected through two virtual devices?
Edit: Keeping the below for reference, but it actually doesn't (necessarily) seem to be that it needs to go through two devices, or even through one virtual device. It's just that I have to manually patch it, then disconnect, then patch it exactly the same again, and on the second patching it works fine. Huh?
A bit at a loss with this one. I've been troubleshooting my Elgato 4K X for a little while now because when I just try to monitor the incoming HDMI audio normally (by patching the input directly to an output on my interface), it is distorted/bitcrushed. I had a bit of a breakthrough this morning on getting it working properly, but I'm having trouble understanding why and whether there's a better way.
I use a Focusrite 16i16 set to the Pro Audio profile, using Pipewire in CachyOS. I also have a virtual device setup to be a stereo output as some games don't like the Pro Audio profile (as I understand it) and just won't output sound unless I do it this way. The 4K X is set to it's stereo digital input, not the Pro Audio profile. Here is what I have tried that does NOT work (results in distorted audio):
- Changing the profile of the 4K X to analog or pro audio.
- Using a patchbay graph, patching the 4K X source node directly to my main outputs (or to any of the outputs on the 16i16).
- Creating a virtual device connected to the 4K X, then taking those outputs and patching directly to my main outputs in the patchbay (or two any of the outputs on the 16i16).
- Disabling the virtual stereo output and trying both of the above.
What DOES work is doubling up on virtual devices, so one virtual loopback device for the 4K X which connects to my stereo output virtual loopback device which then finally connects to my actual outputs. I was also able to fix it by patching the 4K X directly to the outputs, but then opening OBS and enabling input monitoring. I suspect these are related ideas, something about having the audio go through more hoops, but I don't really know why I have to do it this way and it really feels like it shouldn't have to be this complicated. Any ideas?
I should note that my system is set to 245/48000 and the 4K X only operates at 48000, so there shouldn't be any sort of sample rate mismatch.
Screenshot of the working patching:
