[LAD] [ALPHA] ladspa.m.lv2 - Some questions :D

Florian Paul Schmidt mista.tapas at gmx.net
Mon Apr 22 05:33:37 UTC 2013


Hi,

These last few days I found some time to work on ladspa.m.lv2, an LV2 
plugin to load ladspa.m.proto instrument definition files:

https://github.com/fps/ladspa.m.lv2

It is in a somewhat usable state, i.e. used in ardour3 it loads the 
example instrument generated by this python script:

https://github.com/fps/ladspa.m.proto/blob/master/example_instrument.py

which is a very simple polyphonic sawtooth synth with exponential 
envelopes and an echo with differing delay times per voice. There's 
still some things to do (e.g. expose control ports, implement 
All-Notes-Off midi messages, lots of optimizations - right now I care 
more for correctness than for efficiency, etc.) and I also have some 
questions:


1] This one is regarding waf. I'm not used to writing wscript files and 
I adapted the whole thing from the example sampler from the 
LV2-distribution. I wonder how I can make waf to use e.g. -fPIC and 
other compiler flags needed for my 64-bit system. Right now I have put a 
little makefile into the repository which passes the missing options 
along as CXXFLAGS environment variable. This is a dirty hack. So if 
anyone waf guru might want to take a look, I'd be so ever grateful.

https://github.com/fps/ladspa.m.lv2/blob/master/makefile

https://github.com/fps/ladspa.m.lv2/blob/master/wscript


2] I'm a little bit puzzled by how the patch_set messages together with 
the LV2 worker extension works. If you take a look at this run() function

https://github.com/fps/ladspa.m.lv2/blob/master/instrument.cc#L702

you'll see that I have an extra LV2_ATOM_SEQUENCE_FOR_EACH at the start 
of the function to process the patch_set messages. I tried to integrate 
that into the loop later on (that iterates over the sample_count frames 
and lets the midi events take effect at their respective frame), but 
once I do that, patch loading stops to work. I must be missing something 
fundamental. So if any LV2 guru might want to take a look, I'd be very 
grateful, too

Thanks and have fun,

Flo

-- 
Florian Paul Schmidt
http://fps.io



More information about the Linux-audio-dev mailing list