Cabbage Logo
Back to Cabbage Site

Audio output

This is on a mildly-obsolete toshiba laptop running ubuntu 16.10…

Command-line csound --> alsa odac hw:0,0 runs Kung-Xanadu happily.

with Cabbage… underruns.

I notice you set -+rtaudio=null on the videos… I’m not sure of the reasons ( How come!!!) but that seems to resolve some of the difficulty of running a csd at all. Still, underruns.

The default audio on this machine seems to be pulseaudio. When the audio output on Cabbage is set to pulseaudio, the system sound controls show ‘Cabbage’ as an app playing audio – with volume all the way up – but I get no sound. Out of multiple alternatives, the straight built-in hardware is the only one that works (and then the listing for ‘Cabbage’ disappears from the ‘Applications playing audio’ window of the system’s ‘sound settings’.)

Installing (bleh) qjactctl and starting it up, I clobber my direct alsa --> hardware connection, but when I then start cabbage I get a nice test-tone from the Cabbage audio output --> jack. But usually no audio output from the csd it’s editing. (I remember getting output with underruns with a lower buffer setting on the qjackctl buffer setting. Currently 512 sounds good for the test tone.)

How this works? Why it isn’t working, what to do?

Cabbage looks after all audio and MIDI IO. You should avoid setting these things in the CsOptions, although Cabbage should override them anyway, the audio specific flags at any rate. The -n tells Csound not to send any audio to its audio modules. If it did, both Csound and Cabbage will try to output audio to devices simultaneously, thus causing problems. You may not like Jack (I struggled with it for many years), but it really does provide the best audio solution on Linux. I’ve never used qtjack. I prefer to use KXStudio’s cadence instead. It can be set to launch on startup. You never have to think about Jack again. PulseAudio sucks. Alsa is Ok, but for best performance Jack is a necessary evil I’m afraid.

I did (have to) use jack when I was playing with supercollider. (Another program that seemed to start up jack in a functional way – but truly exasperating in its help system. Cadence, hm…)

For now it’s qjackctl, and I’ve needed to reduce sails to ksmps = 8 – but that’s sounding good!