I missed that topic and I posted it somewhere else just moment ago so I'll just copy my message:
Latency compensation is perfectly possible in pipewire and it can be done globally through wireplumber ~/.config/wireplumber/main.lua.d/50-alsa-config.lua file as described here: https://pipewire.pages.freedesktop.org/ ... properties
It's also possible to put that setting in particular interface config.
My entry looks like this:
["latency.internal.rate"] = 120,
and it's important to add that coma at the end, as default config file had that omitted for some reason, otherwise wireplumber won't start. Maybe it's my system only, but I also had to do a reboot as restarting pipewire and wireplumber wouldn't register the change. (Although, pw-cli s <ID> ProcessLatency '{ rate = 120 }' works immediately and it's best for testing or quick adjustment).
Latency can also be set in nano seconds as explained in the above article.
Setting can be verified with:
pw-cli e <ID> ProcessLatency
Different DAWs deal with latency compensation differently so it's important to find value that works well in the DAW used. Reaper allows offsetting latency in options > preferences > recording so it not necessary to set it with latency.internal.rate at all. Different story with Ardour. It has a nice tool to set latency for Alsa back-end but not for jack or pipewire. It's where jack's -I/-O switches and pipewire's latency.internal.rate come in handy.
Statistics: Posted by magill — Sat Feb 24, 2024 8:39 pm