Re: [LAD] CAPS* as LV2

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Tim Goetze <tim@...>
Cc: Aurélien <blablack@...>, <linux-audio-dev@...>, LAU <linux-audio-user@...>
Date: Thursday, November 29, 2012 - 10:58 pm

--=-YdHdgFheifRLtq0q5LFa
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, 2012-11-29 at 23:15 +0100, Tim Goetze wrote:

ow
?

It's not so much about efficiency, but that wrapped plugins tend to be
flakier, and a bit less pleasant to work with in some cases.

Since the common part of LADSPA and LV2 are so similar, I doubt it would
be that much work. Instantiate has a different signature and things
take void* instead of float* pointers, but that's about it for plain
LADSPAey plugins.

Of course since someone has apparently already done it, we should
probably just look at that, but whatever :) Hopefully it was done in a
way mergeable with upstream.

> In the end, if you're looking for a constructive solution, I think

Most "conservative" hosts already do, however there are no plans to make
Ingen (the host Aur=C3=A9lien is interested in) or Jalv support LADSPA.
These are "next-generation" LV2 only tech, supporting LADSPA would bog
down their development, bloat the code, and cause a bunch of unnecessary
ugly/hard problems I have neither the time nor desire to solve. I
dropped it some time ago on purpose.

There are other LV2 only hosts as well, and that number will likely
increase over time.

That said, you can use NASPRO to use all LADSPA plugins in any LV2 host,
with a few minor degradations from real LV2s (e.g. no nice port
symbols). This means you have to have NASPRO and load/execute dynamic
library code at discovery time, of course (which with LV2 is not the
case), via the dynmanifest extension, but any host that uses Lilv
automatically supports this, assuming support is compiled in.

It is because this exists that I dropped the redundant and half-baked
LADSPA support in Ingen itself (plus it works for other APIs, like VST,
too). Any problems with bridging should be addressed in NASPRO, though
as far as I know it works well.

Native ports are, of course, the nicest. If the plugin code is already
abstracted away from the API, that's the way to go.

Cheers,

-dr

P.S. This is not intended as a suggestion for anyone else. By all
means, implement LADSPA in hosts, it is a reasonable thing to do. I
simply do not have the time to do so, Ingen is quite a fancy thing
architecturally and there is still much work to do to fully realize it
without adding that to the pot, and much of it is blazing new territory
which needs the additional functionality and extensibility of LV2 to
happen anyway. If you want compatibility with old things, it is not the
host for you. Naturally, I consider incentive to port to LV2 a feature
and not a bug anyway :)

--=-YdHdgFheifRLtq0q5LFa
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part
Content-Transfer-Encoding: 7bit

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iQIcBAABCAAGBQJQt+iKAAoJEDZyeCqb82jz/KoP/0CQMlB1JEsLrugKwqtRyfU7
K216Ma+4LYMqKzT3RPKt1T7keXZWDB3f4u4Zo9Iurj4qm+kcth85anT/DCD6ZV3i
IxYU0hyqDgvN0d8V2FYaQ4N4lkmhsmUKosrxW2e7f2MEP9+LY6t+IrXz39D5uzXC
GEEXo1H000yeiv2l0dcfvDvZNkPwZGOrSKl0Cg1+Yxtn5veaatTaStXv2xAD96+t
stkd+1hAbp8RNxI1/KpVZWviW9cNM8/FrfCIVjY+y9SWj5bSvSpKR5KmyuNJgX7e
xSxAwbcoVq3dgI+LYjTozh8Xc1h5tfvG+VZhqlRjIau1njvCFCKugAnwe4ZBZTbj
IJbUbMuieh72Mreh5SwRmQgmHMdnLxrptWH34Uw66muRVu7MwN8k+w3ica6xU+ZU
4RAnP7S4+pfHF7IB4sC/+e4nJSR9zHeiIFoy1NS98lhXhNL4pFujBq3l0XEQVBj0
FYzHDW6ICsxz9bk3fsC2CdXGT4jlj1XgGXkjS9tGsne4QqUJbWUAV4qYNK29jB7b
eMx1c/e8HL5EXmGoUXVKf2RImZIYUW67ASowDHNeLX7PCoiSYacsHKlGJNs0370l
NzuDi5MNe8QYp8vEcSm0Xhr/z+tfnreyjKNmOrekMSa8hts28XN4ptQjOYZS5s3u
vUTUxiJra0amqDQNx5Ay
=Lm+V
-----END PGP SIGNATURE-----

--=-YdHdgFheifRLtq0q5LFa--

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[LAD] CAPS* as LV2, Aurélien Leblond, (Thu Nov 29, 4:37 pm)
[LAD] LV2 amp, hermann meyer, (Sat Dec 8, 4:35 pm)
Re: [LAD] CAPS* as LV2, Tim Goetze, (Thu Nov 29, 10:21 pm)
Re: [LAD] CAPS* as LV2, David Robillard, (Thu Nov 29, 10:58 pm)
Re: [LAD] CAPS* as LV2, David Robillard, (Thu Nov 29, 8:58 pm)
Re: [LAD] CAPS* as LV2, brummer-, (Thu Nov 29, 5:12 pm)
Re: [LAD] CAPS* as LV2, Bruno Gola, (Thu Nov 29, 5:37 pm)
Re: [LAD] CAPS* as LV2, Tim Goetze, (Fri Nov 30, 11:36 am)
Re: [LAD] CAPS* as LV2, Bruno Gola, (Fri Nov 30, 12:08 pm)
Re: [LAD] CAPS* as LV2, Tim Goetze, (Fri Nov 30, 3:18 pm)
Re: [LAD] CAPS* as LV2, Jeremy Jongepier, (Fri Nov 30, 8:42 pm)
Re: [LAD] CAPS* as LV2, Jeremy Jongepier, (Thu Nov 29, 9:10 pm)
Re: [LAD] CAPS* as LV2, Ricardo Crudo, (Fri Nov 30, 12:44 am)
Re: [LAD] CAPS* as LV2, Jeremy Jongepier, (Fri Nov 30, 8:45 pm)
Re: [LAD] CAPS* as LV2, Bruno Gola, (Mon Dec 3, 3:42 pm)
Re: [LAD] CAPS* as LV2, Aurélien Leblond, (Thu Nov 29, 7:33 pm)
Re: [LAD] CAPS* as LV2, Bruno Gola, (Mon Dec 3, 3:44 pm)
Re: [LAD] CAPS* as LV2, hermann meyer, (Mon Dec 3, 7:08 pm)
Re: [LAD] CAPS* as LV2, Bruno Gola, (Mon Dec 3, 7:39 pm)
Re: [LAD] CAPS* as LV2, Bruno Gola, (Thu Nov 29, 7:41 pm)