Re: [linux-audio-dev] LAAGA - main components

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-dev] LAAGA - main components
From: Jim Peters (jim_AT_aguazul.demon.co.uk)
Date: Wed May 02 2001 - 02:22:28 EEST


Kai Vehmanen wrote:
> Well, if you have a GUI-knob that affects the produced audio, you will
> need a <5ms delay from changing the knob value to hearing the result. So
> in this case 20ms is too much for the plugin<->GUI communication.

Yeah, sorry - it seems I've confused several people it seem by talking
about these delays. I'm referring to the time to do a safe round trip
from the low-latency server process, out to an external app, and back
again. This is the latency for an `external loop' or `out-of-process
loop' from the low-latency server, however you want to describe it.

For feeding controller data into the plugin, it can go straight
through a shared memory segment with no delay between writing it there
and it affecting the output (except the 1ms/whatever latency of the
server).

Something I was going to ask - can we consider writing an aligned int
(4 bytes) to memory to be an atomic operation on a SMP machine ? Is
this true for all possible target platforms ? Any SMP 68000 machines
out there !?

If we can consider it atomic, it makes a lot of things much easier -
just write new int or float controller data values to SHM without
worry. If not, to safely use SHM needs a few additional precautions
to make sure the plugin never reads half-complete sets of data.

> Another set of possible clients to consider are the various
> audio-producing sequencers (SoundTracker, Octal), and then audio players
> (Alsaplayer, XMMS). But I think these app types either benefit less from
> LAAGA, or are much more difficult to turn into a plugin.

I'm quite interested in the idea of using a text-mode tracker
interface to drive all the parameters of a set of plugins. All this
real-time low latency framework we're discussing would be ideal. In
the `good old days', the Amiga custom chips made sound immediately on
being programmed - no delay at all. A low-latency server running a
hardware-emulating plugin with a shared memory interface isn't too
much different to this ...

There's a lot of potential here, I think.

Jim

-- 
 Jim Peters         /             __   |  \              Aguazul
                   /   /| /| )| /| / )||   \
 jim_AT_aguazul.      \  (_|(_|(_|(_| )(_|I   /        www.aguazul.
  demon.co.uk       \    ._)     _/       /          demon.co.uk


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Wed May 02 2001 - 02:58:52 EEST