[LAD] [ANN] IR: LV2 Convolution Reverb

David Robillard d at drobilla.net
Wed Feb 23 16:30:53 UTC 2011


On Wed, 2011-02-23 at 13:20 +0300, Alexandre Prokoudine wrote:
> On 2/22/11, David Robillard wrote:
> 
> > I have a working plugin (called "dirg") that provides a UI by hosting a
> > web server which you access in the browser. It provides a grid UI either
> > via a Novation Launchpad, or in the browser if you don't have a
> > Launchpad. Web UIs definitely have a ton of wins (think tablets, remote
> > control (i.e. network transparency), etc.)
> >
> > I also have a complete LV2 "message" system based on Atoms which is
> > compatible with / based on the event extension.  Atoms, and thus
> > messages, can be serialised to/from JSON (among other things,
> > particularly Turtle).
> 
> Any of them available to have a look at?

It's all in my lad svn repository at http://svn.drobilla.net/lad/trunk/

The Atom extension is http://lv2plug.in/ns/ext/atom/

The idea is to use the 'standard' types in the Atom extension (and other
ones as necessary for e.g. waveforms) to build higher level things,
rather than make a different struct for every little thing. Then host
just need to implement serialisation/persistence/network
transparency/etc (all the same thing, essentially) once, and it just
works for everything. "Messages" are essentially dictionaries
(http://lv2plug.in/ns/ext/atom#Blank)

> > Currently dirg provides the web server on its own with no host
> > involvement, but every plugin doing this obviously doesn't scale, so
> > some day we should figure this out... first we need an appropriately
> > high-level/powerful communication protocol within LV2 land (hence the
> > messages stuff).
> 
> Where do you stand with priorities now? That sounds like something
> very much worth investing time in.

This is the sort of thing I would like to be working on, right now. It
somewhat works, but Ingen is not yet a powerful enough programming
environment to actually do anything with the message sent to/from Dirg
(other than print them).

First I need to sort out this UI stuff, and get LV2r4 out. Then finalize
the atom extension (i.e. get it used by a few people, replacing the use
of instance-access in the new IR plugin with it would be a good start).
This will solve the long-standing "LV2 RPC" problem needed to take
things to the next level.

Then, the required tech will be more or less sorted out, and I'll get on
with making plugins to do what I need (i.e. make Ingen as powerful as
Max by implementing LV2 plugins as necessary).

My ultimate end-user visible goal for this is to make a multi-track
looper/sequencer in Ingen, with Dirg functioning as the UI.

> You see, one thing I'm puzzled about is that you have beginnings of
> what could be significant part of a potentially successful cloud
> computing audio app, and then you talk about how donations don't even
> pay your rent :)

Tell me about it, but to be fair, it's all still in experimental svn
land. I understand people aren't all that inclined to support things
that aren't releases they can depend on. Hence, making releases is my
primary mission.

Unfortunately, there's always digressions down into technology that I
just want to have, but aren't there yet (i.e. all this LV2 stuff;
somebody has to do it...). C'est la vie. It's coming along...

-dr





More information about the Linux-audio-dev mailing list