osxmidi / LinVst

Linux Windows vst wrapper/bridge
GNU General Public License v3.0
682 stars 41 forks source link

XRuns with linVST #168

Closed transistorkreis closed 4 years ago

transistorkreis commented 4 years ago

Hi there,

I'm switching to Linux and trying to get my music setup running (I tried Ubuntu Studio, but it did not properly support my 4K touchscreen):

There are some few VST plugins that I'd like to keep. I installed wine, winetricks and linVST. In Bitwig the plugins are scanned and can be used. Unfortunately, there is some short digital crackling let's say every 5-20 seconds and XRuns are reported. This only occurres when I activate VST plugins, i.e. there is no digital crackling when I use native Bitwig plugins. Jack is started in realtime mode and no errors are reported in the QjackCtl message window during startup. I tried different sampling rates and buffer sizes, but could not get rid of this problem.

This is what the QjackCtl message window says when XRuns are reported and the digital crackling occurres:

Thu Nov 5 22:06:05 2020: ERROR: JackEngine::XRun: client = Bitwig Studio was not finished, state = Running Thu Nov 5 22:06:05 2020: ERROR: JackAudioDriver::ProcessGraphAsyncMaster: Process error

Is there anything that I can try to solve this problem?

Thank you in advance!

keybreak commented 4 years ago

This is not the place to ask really, but:

Is there anything that I can try to solve this problem?


Common terms

buffer under-or-overrun, X stands for under or over. It’s a sign that your system did not process some buffers in time, so some data is missed. It is particularly true when you run at very low buffer size where the sound card should process incoming buffers very fast (overrun). Some chips cannot cope with small buffer sizes, so you have to increase the buffer length to ease the work done by the sound chip.

Realtime config quick scan

https://github.com/raboof/realtimeconfigquickscan

Run as:

perl ./realTimeConfigQuickScan.pl

Use this script and all of it’s recommendations (except maybe CPU Governors & RT Kernel), then reboot

Route all audio through JACK

Install jack2 and cadence (not sure exact package names, since i use Arch) and then:

Basic settings for starters (I use RME Fireface UCX, so that should be fairly similar):

JACK Settings [x] Auto-start JACK or LADISH at login

ALSA Audio Alsa -> PulseAudio -> JACK (plugin)

PulseAudio [ ] Auto-start at login

Engine [x] Realtime !

Driver [x] ALSA [x] Duplex Mode ! Device/Interface - your audio card Sample rate - 44100 kHz Buffer size - 512 Period/Buffer - 2

System settings - Audio [x] JACK sink (PulseAudio JACK Sink)

Then you can try lowering Buffer size until crackles start again, if they start - just up buffer a notch...You can set extremely low Buffer on Linux btw :smile:

transistorkreis commented 4 years ago

Thank you very much for your post! This was really helpful, although I could not solve my problem. I solved all issue reported by realTimeConfigQuickScan and changed to Ubuntu Studio for the realtime kernel. But there are still XRuns if I activate a VST plugin via linVST, even with 44.1 kHz and 1024 frames (46 ms latency). I get it running more or less without errors with only native Bitwig plugins and 44.1 kHz and 128 frames (5.8 ms latency), which is not satisfying.

Nevertheless I'm closing this issue now, since I assume that my problem ist not caused by linVST and will create a post on the LinuxMusicians forum.

keybreak commented 4 years ago

Hmm...Well that's really weird you still have xruns, hopefully they'll help you further, although still getting your system RT ready is always a good first step! :+1: