Re: Making OSSO default JACK option

From: Florian Walpen <dev_at_submerge.ch>
Date: Tue, 20 Aug 2024 16:33:20 UTC
Hi Meka,

On Monday, August 19, 2024 3:42:42 PM CEST Goran Mekić wrote:
> Hello,
> 
> First and most important, all kudos go to Florian for doing amazing work
> on JACK and his new audio library: OSSO. Before building JACK with this
> option, Ardour showed DSP 90ish percent busy. With OSSO, it's around
> 12%. Naturally, I am more than interested in making it a default port
> option, so I just wanted to report my findings.

Nice to hear that it's working! The option is called SOSSO BTW, but OSSO(BUCO) 
would sound yummy too. Just to clarify, the high DSP busy percentage was 
probably not due to CPU load, but caused by timing difference between playback 
and recording channel IO, and OSS buffer restrictions.

One of the achievements in the new JACK sosso backend is the decoupling of 
JACK period from the OSS processing interval. The mmap'ed IO and a rigorous 
progress measurement let JACK and OSS process at their own pace, without a 
huge buffer that hurts latency. This way it also gets rid of the timing 
dependencies between playback and recording.

With some assistance from the kernel it should be possible to simplify the 
progress measurements and implement the decoupling method in other sound 
servers and applications on FreeBSD. We'll see how that goes.

As for JACK, I'd like to get some more feedback before we turn SOSSO into the 
default option. But I did hear you ;-)

> I would like to thank
> you for the timing, too, as I have a album recording that's waiting for
> me. :o)

Good luck and success with your album recording!

Florian