Reply 40 of 51, by darry
gdjacobs wrote on 2021-08-03, 21:42:
I've been using Pipewire for a little while now with good results. It simplifies handling of multiple audio devices and can be managed with JACK routing tools, so it would be particularly useful for this project.
Pipewire would be great, if I did not have issues with it, namely intermodulation distortion . See Re: Not so crazy idea : using a Raspberry Pi 4 with jackd , Zita A2J bridge and jack_mixer to make a software S/PDIF mix
I get that distortion if I link a pw-Jack source on ALSA device A a to a pw-jack sink on ALSA device B . ALSA devices A and B are on different audio hardware and thus have clocks that are not in sync . My understanding is that Pipewire is supposed to handle the required the async sample rate conversion dynamically, but either this is not happening or is happening badly. Admittedly, I may be the one doing something wrong here to cause the observed behavior, but I have no idea what that might be . I even tried setting source, sink and Pipewire master sampling rates to different values in order to guarantee/force resampling was actually taking place, but the observed distortion issue remains .
If operating in non-duplex mode (only recording OR playing back), there are no issues with pw-jack, I get the same results as with ordinary jack or zita .
Since everything works fine with jack and zita, I decided to put aside Pipewire for the moment until it, its docs and session manager options mature a bit more and try again at a later date . I didn't feel like reporting this as a bug/issue at this time .