[LV2] How to load a LV2 preset stored in a Turtle file?

Robin Gareus robin at gareus.org
Sun Apr 29 18:42:26 PDT 2018


On 04/30/2018 02:23 AM, Sylvain Leroux wrote:
> Hi everyone,
> 
> I would like to extend lv2apply
> (https://github.com/drobilla/lilv/blob/master/utils/lv2apply.c) to
> support presets and plug-in states stored as Turtle data files.

Hi Sylvain,

I guess you're coming from
https://github.com/lucianodato/noise-repellent/issues/56

Coincidentally Julien _FrnchFrgg_ Rivaud and me discussed this earlier
today on IRC and I have whipped up a patch to `lv2file`:
https://github.com/jeremysalwen/lv2file/pull/3

> As a starting point, I would like to load a preset (example below). I
> think I should use either serd,sord, or sratom. But I'm not quite sure
> which of these libraries is suitable for that task, nor how exactly to
> load a Turtle file. Maybe someone could point me to an example?
> 

lilv_state_restore() does it all and uses serd/sord under the hood. See
http://drobilla.net/docs/lilv/

For an example use, maybe the recent git-log of
https://github.com/x42/lv2file can help.

It would be nice to have a clean implementation of this, but IMHO it
would make more sense to continue re-factoring lv2file and clean things
up there instead of extending lv2apply.

[...]

For noise-repellent, you'll also have to add support for an LV2 URI map
to lv2apply at the very least.

As opposed to lv2file, lv2apply is very clean and good example code --
in fact it seems that lv2file was initially inspired by it. I am not
sure if it is a good idea to clutter up lv2apply with all the
complexities of making it a feature-complete file processing host.
Eventually there should be support for Atom ports, worker extension,
replicated mono-plugin instances for stereo-files, downmixes for mono
files, delay-compensation...

@drobilla: What do you think?

ciao,
robin

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.lv2plug.in/pipermail/devel-lv2plug.in/attachments/20180430/806f552e/attachment.sig>


More information about the Devel mailing list