Re: [linux-audio-dev] questions to be resolved

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

Subject: Re: [linux-audio-dev] questions to be resolved
From: Abramo Bagnara (abramo_AT_alsa-project.org)
Date: Mon May 21 2001 - 10:26:02 EEST


Paul Davis wrote:
>
> >> 1) what kind of object allocates and frees buffers used to store data
> >> for a port? is it something more like an engine object, or
> >> something more like a plugin? in LADSPA and VST, all buffers are
> >> owned by the host, and the plugins merely use them via their
> >> ports.
> >
> >The soundbox (using properties negotiated with its client/user and link
> >request).
>
> its unclear to me from reading your proposed API what kind of thing a
> soundbox is. it feels to me as if its more like what the rest of us
> are calling a plugin.

A soundbox is an object that either takes audio or gives audio data or
both.

A plugin is a soundbox with input port(s) and output port(s).
A capture PCM is a soundbox with an output port.
A playback PCM is a soundbox with an input port.
A file reader is a soundbox with an output port.
A file writer is a soundbox with an input port.
A mp3 decoder is a soundbox with an input port and an output port.
etc.
A soundbox may contains other somewhat linked soundboxes.
Many applications may be written as soundboxes. They still need an
engine to make their work.
Soundbox job may be controlled using panel of controls.

> >> 2) are buffers associated with input ports, output ports, both or neither?
> >
> >I don't understand what you mean. Please define "associate".
>
> when something wants to write data so that it is "visible" at an
> output port, it has to have a region of memory to write it to. is this
> memory region owned by the output port itself, or with the input port(s) that
> the output port is connected with? "owned" means that if the
> connection between the ports is removed, the location of the memory
> region remains unchanged. obviously, for at least one of the ports,
> the location memory region must change when the connection is broken.

Ok, I think we need to discuss what you call "connection" and that in my
model is still not present (because it's on the internal side of
soundboxes).

Is this a dynamic thing (i.e. may be changed when soundbox is *not*
relaxed)? Add, move and remove are the expected action?

Knowing that we can proceed.

> >> 4) is there a fixed or variable method that a plugin should use
> >> when storing a value in a buffer?
> >
> >There may be some variants negotiated between client and soundbox.
> >soundbox say what it can do, client say what it needs.
>
> and when they don't agree, what then? it just doesn't work? or the

What do you expect when you try to insert a German AC plug in an US AC
socket?

-- 
Abramo Bagnara                       mailto:abramo_AT_alsa-project.org

Opera Unica Phone: +39.546.656023 Via Emilia Interna, 140 48014 Castel Bolognese (RA) - Italy

ALSA project http://www.alsa-project.org It sounds good!


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

This archive was generated by hypermail 2b28 : Mon May 21 2001 - 10:47:44 EEST