[Ardour-Dev] ARDOUR::IO::ensure_limits()

Paul Davis paul at linuxaudiosystems.com
Fri Jul 22 12:01:49 PDT 2011


On Fri, Jul 22, 2011 at 12:39 PM, John Emmas <johne53 at tiscali.co.uk> wrote:
> Hi Paul,
>
> While running some tests in Mixbus recently I came across a couple of my Ardour sessions that wouldn't load with Mixbus (although they load successfully with Ardour).  I haven't completely tracked the problem down yet but it seems to have something to do with setting up the output ports and I'm pretty sure that function ARDOUR::IO::ensure_outputs() is at least partly to blame.  In 'libs/ardour/io.cc' there are a couple of calls that look something like this:-
>
>      if (ensure_outputs (limit, false, false, src)) {
>            return -1;
>      }
>
> but AFAICT ensure_outputs() always returns zero.  Could you possibly take a look at that function and let me know if it's doing what it's supposed to do?

its a remnant of older code, and is poor programming style.  i'll try
to fix that up this afternoon.

btw, "DSP load" = JACK knows how long it has to process nframes of
audio when it is woken by the JACK backend (e.g. ALSA, CoreAudio,
ASIO/PortAudio etc). It measures how long the total execution of the
graph (i.e. calling all clients' process() callback), and computes the
percentage of the total time available. So, if there was 5.3msec
available (because the buffer size used by the backend is 5.3msec),
and calling the graph takes 2.65msec, the DSP load is 50%.



More information about the Ardour-Dev mailing list