giada
giada copied to clipboard
Giada freezes on exit when output is Jack on a Pipewire based system
Environment
- OS: EndeavorOs
- Giada version: 0.22.0
Describe the bug If I set Jack as the output on a system running Pipewire, Giada will hang on exit and produce a stream of the following errors
[KA] RtAudio error 1: RtApiJack::callbackEvent(): the JACK buffer size has changed ... cannot process!
[KA] RtAudio error 1: RtApiJack::callbackEvent(): the JACK buffer size has changed ... cannot process!
[KA] RtAudio error 1: RtApiJack::callbackEvent(): the JACK buffer size has changed ... cannot process!
To Reproduce Steps to reproduce the behavior:
- Install Giada on an up to date distro like Arch or EndeavorOS
- Set output to Jack and enable debugging messages.
- Save and exit.
- Start Giada again.
- You will now see the error message spam and Giada will freeze when told to quit.
- The only way I have found to prevent this is to completely remove the configuration file before restarting.
Expected behavior Giada should exit without freezing and run without Jack error messages.
Hey @Kirtai , thanks for reporting. We are using https://github.com/thestk/rtaudio as a backend which currently doesn't support Pipewire. There is a proposal for Pipewire implementation here: https://github.com/thestk/rtaudio/issues/324.
I found a workaround to this problem (at least for AudioStellar)
- Copy jack.conf from /usr/share/pipewire to ~/.config/pipewire
- Edit the file adding node.force-quantum option to jack.properties
In my configuration I'm using node.latency = 512/44100 and node.force-quantum = 512 . I guess latency and force-quantum should match but I'm not sure.
This should also work until the next reboot:
pw-metadata -n settings 0 clock.force-quantum 1024
Hey @Kirtai , thanks for reporting. We are using https://github.com/thestk/rtaudio as a backend which currently doesn't support Pipewire. There is a proposal for Pipewire implementation here: thestk/rtaudio#324.
Unfortunately, that link 404s. I couldn't find anything regarting rtaudio and Pipewire support, but… shouldn't this "just work" as long as Pipewire's JACK implementation is compliant?
Edit: This doesn't happen for me anymore. I'm not sure whether it was because of an update or something else. In any case, thanks a lot! <3
Tested latest version (0.26.1) with JACK + Pipewire on Debian, can't reproduce this. Closing.