New LV2 EQ Plugin avalible now!

72 replies [Last post]
tbonedude
User offline. Last seen 1 year 51 weeks ago. Offline
Joined: 2008-11-08
Posts:

on openSuse you can still build the lib from source. Search google for the sourceforge page..

sapista
sapista's picture
User offline. Last seen 24 min 20 sec ago. Offline
Joined: 2006-03-30
Posts:

tbonedude: Be sure that you have all the dependencies at requiered versions? I sugest you to recompile PlotMM. I know that PlotMM is not a good option for EQ10Q. Lot of problems come from PlotMM. I will rewrite EQ10Q without PlotMM, with a new graph widget, this will be more easy.

thorgal
User offline. Last seen 1 year 20 weeks ago. Offline
Joined: 2007-08-03
Posts:

@sapista

I was a bit surprised by the choice (plotmm). does not look like this lib is maintained or actively developed. Is there a way for you to use another lib ?

I have a couple of other things:

- is possible to make the points dragable at all times ? (whether the band curve is ON or OFF)

- why are some of the parameters disabled in some shaping presets ?

- is it possible to implement Q changes by scroll-wheel action ? (I have a VSTi instrument with EQ curve manipulation as well, and it is very nice to have)

- could we have an overall flat level adjustment ? I know it can be done by ardour's fader but it would nice to provide here as well. You e.g. could lower the whole level by say -5dB and push up only one point from that flat bottom (quick way of working).
(- as a corrolary, could we lock the whole curve shape and drag it up or down ?)

- is it possible to display the current data on the frequency domain ? I mean, most LV2 plugins are showing overall levels (at least peak levels) coming in and going out of the plugin. But for an EQ plugin, it would be nice to show the levels over the freq. domain and see how adjusting the curve affect the data over that domain. A passthrough button that one could turn on and off would be cool in this context, so one could quickly see how things get modified when the freq. curve is applied.

Of course, one must hear the effect before anything, but sometimes, it is also nice to combine visuals. However, I don't know what compromise you would have to make in terms of performance, CPU, etc.

On another discussion thread, someone was mentioning how obsolete jamin was. But the freq. visualization in realtime is really cool. You see how the data is affected right in front of your eyes when you play with the EQ curve (pencil tool). It would be nice if an LV2 EQ provided the same sort of visuals.

sapista
sapista's picture
User offline. Last seen 24 min 20 sec ago. Offline
Joined: 2006-03-30
Posts:

thorgal:

- I spend some time searching a library for draw the curve. I tried diferent libraries and the easiest for include a graph widget in EQ10Q with gtkmm and C++ programming is PlotMM. I know, it isn't a good choise. It is only a provisional solution. I plan write a new drawing widget to display the curve without PlotMM and increase efficiency.

- Points draggable at all times: Yes its possible, but I don't understand why you need drag a point if this is not activated. Please, explain me your idea.

- Some parameters are disabled in some shaping presets because this presets don't have this parameter. For exemple, a 2nd order HPF filter don't have gain parameter. Or a 1st order HPF don't have Q (consequence of transfer function).

- Q changes by scroll-wheel action: Nice idea! I will implement this in the future.

- Overall flat level adjustment: You can do it with in/out gain controls. I'm considering to include a graphic representation of this gain changes in the curve.

- Display the current data on the frequency domain: Yes its possible and I have planed implement this feature in future versions using FFT libraries.

I hope I have answered all your questions. Otherwise, please tell me.

thorgal
User offline. Last seen 1 year 20 weeks ago. Offline
Joined: 2007-08-03
Posts:

sounds great sapista, looking forward to seeing these features. Were it not for the lack of spare time, I would definitely help you on the coding. This kind of plugin was among one my pet projects but I can see you're already way ahead of me :)

About the ability to drag points at all times, it is not necessary. I just got a bit confused because sometimes I could do it, sometimes not. It may originate from the fact that switching shaping presets on the fly turns the band curve OFF even though it was originally ON (not sure about it though, I have to try it again).

I would also suggest to grey out the point marker when the band is OFF (or inactive) so that a quick glance at the curve shows what is active. But I have to use the plugin a bit longer to judge whether this is useful or not.

vervelover
vervelover's picture
User offline. Last seen 1 week 7 hours ago. Offline
Joined: 2009-06-10
Posts:

Man, this EQ is amazing. It is just the thing that was missing from ardour. Amazing.

linuxdsp
linuxdsp's picture
User offline. Last seen 5 days 3 hours ago. Offline
Joined: 2009-02-04
Posts:

@sapista: great plugin - took me a while to find all the necessary bits and pieces to get it to build etc, could I make a suggestion about FFT, I think its a great idea to put an FFT on the EQ display, but if you do, would you consider writing your own FFT algorithm as opposed to just linking to a library? E.g. I did this kind of display on an audio analyser (to test some of my plugins) - and rather than linking to a complex library like FFTW and all the extra dependency stuff that can cause, I just used a fairly standard FFT algorithm (only about a page of code) and just compiled it in. I just think its good to keep the number of external dependencies to a minimum - just a suggestion.. btw, am I correct in thinking this plugin GUI will only work in ardour or more specifically only in GTK hosts?

sapista
sapista's picture
User offline. Last seen 24 min 20 sec ago. Offline
Joined: 2006-03-30
Posts:

linuxdsp: I can consider write my own FFT algorithm. I think that is good to minimize dependencies. But now FFT visualitzation for EQ10Q is only an idea, there are other priorities before the FFT visualitzation. I will contact you for your experience when I implement FFT feature.

About the GTK hosts: I don't know, I used a library called lv2-C++-tools that take care about the GUI extension. But I think that EQ10Q must work into non-gtk hosts. If you find some case that EQ10Q GUI don't works, please tell me.

linuxdsp
linuxdsp's picture
User offline. Last seen 5 days 3 hours ago. Offline
Joined: 2009-02-04
Posts:

I may be wrong - I haven't looked at your code too much, but I have a feeling that it will only work with GTK host apps, this was one of the major 'headaches' for me when dealing with LV2 (That's why I use the LV2 external_UI extension - which is designed to run the GUI in another process, although in reality I just use the functions the extension provides to enable the plugin to pass parameters back to the host, and I manage the GUI using XLib - while dealing with XEvents inside the plugin's own GUI thread so that it doesn't depend on the host running GTK or Qt or whatever...) that way I can avoid any IPC problems (at the expense of having to code my GUI in XLib) - but this works out well in other ways since it then has only XLib dependency and will port across to linux VST quite nicely) I'm currently testing some of my plugins in Qtractor (SVN trunk) so I'll try your plugin and see what happens

nowhiskey
User offline. Last seen 3 weeks 6 days ago. Offline
Joined: 2006-09-30
Posts:

hallo,
still no luck here...

peder - nm /usr/lib/libplotmm.so.0 | grep _ZTv0_n16_N6PlotMM4PlotD1Ev
0002ad60 T _ZTv0_n16_N6PlotMM4PlotD1Ev

this all looks ok..?

also tried recompiling several times and running ldconf, but i still get that tiny line, which when i resize is a empty window...

the plotmm is v0.1.2

cheers,
doc

thorgal
User offline. Last seen 1 year 20 weeks ago. Offline
Joined: 2007-08-03
Posts:

nowhiskey -> noluck ? :D just kidding, the 'nm' output is fine (no UNDEF string).
which system are you on ? which version of gtkmm are you using ?

nowhiskey
User offline. Last seen 3 weeks 6 days ago. Offline
Joined: 2006-09-30
Posts:

hallo thorgal,

here:

debian lenny,
gtkmm-2.4-1c2a-v2.12.7-1
plotMM-0.1.2
libpstreams-dev-0.5.2-1

perhaps i should update all that stuff to debian testing, but i do not dare for longer now, cause the machine is just running fine.

cheers,
doc

thorgal
User offline. Last seen 1 year 20 weeks ago. Offline
Joined: 2007-08-03
Posts:

debian unstable has libgtkmm-2.4-1c2a@2.18.2-1

could be a too old version (2.12 vs 2.18)

nowhiskey
User offline. Last seen 3 weeks 6 days ago. Offline
Joined: 2006-09-30
Posts:

well, i just updated gtkmm (and about 50 other libraries), than recompiled plotmm and the eq too, running ldconfig several times (after every installations instance) but obviousely still no luck...
still the same 'undefined symbols...' error...rrrr

cheers,
doc

p.s. yes, i also took the newest lv2-c++-tools-v1.0.3

thorgal
User offline. Last seen 1 year 20 weeks ago. Offline
Joined: 2007-08-03
Posts:

can you post again the "undefined" error ?

nowhiskey
User offline. Last seen 3 weeks 6 days ago. Offline
Joined: 2006-09-30
Posts:

of caurse, here it is:

Unable to open UI library /usr/local/lib/lv2/paramEQ-Rafols.lv2/parameq_gui.so (/usr/local/lib/lv2/paramEQ-Rafols.lv2/parameq_gui.so: undefined symbol: _ZThn8_N6PlotMM4PlotD1Ev)

as i told, i get a tiny line, just few pixels wide and about a cm high which i am able to resize, but than it is only a empty window.
yes, ardour is 2.8.4

cheers,
doc

sapista
sapista's picture
User offline. Last seen 24 min 20 sec ago. Offline
Joined: 2006-03-30
Posts:

nowhiskey: Debian Lenny must works, I used it to develop EQ10Q. Is PlotMM installed with correct PREFIX? By default, most build systems uses /usr/local as PREFIX and this prefix can be a problem for a library in Debian. Try recompile and reinstall plotMM with prefix = /usr (somthings like ./configure PREFIX=/usr)

vervelover
vervelover's picture
User offline. Last seen 1 week 7 hours ago. Offline
Joined: 2009-06-10
Posts:

Just to let you know: I had no problems whatsoever with plotMM nor anything else under ubuntu karmic 32 bit, the plugin runs just fine in Ardour with no crashes so far..

linuxdsp
linuxdsp's picture
User offline. Last seen 5 days 3 hours ago. Offline
Joined: 2009-02-04
Posts:

@vervelover: Same here - I'm trying it on Ubuntu Karmic at the moment - had some trouble tracking down the liblv2-c++-tools initially, but then compiled them from source, built plotmm from source. (V0.1.2) - runs fine in Ardour 2.8.4 (the dickmacinnis.com ardour_pro build). As I suspected, the GUI doesn't show in non-GTK hosts - tried it in Qtractor (Qt based obviously) and I just get the 'default' GUI sliders and buttons etc.

nowhiskey
User offline. Last seen 3 weeks 6 days ago. Offline
Joined: 2006-09-30
Posts:

sapista, i already installed plotMM in /usr as you mentioned befor in this thread:

/usr/include/plotmm
/usr/include/plotmm/compat.h
/usr/include/plotmm/curve.h
/usr/include/plotmm/doubleintmap.h
/usr/include/plotmm/doublerect.h
/usr/include/plotmm/errorcurve.h
/usr/include/plotmm/paint.h
/usr/include/plotmm/plot.h
/usr/include/plotmm/rectangle.h
/usr/include/plotmm/scalediv.h
/usr/include/plotmm/scale.h
/usr/include/plotmm/supplemental.h
/usr/include/plotmm/symbol.h
/usr/lib/libplotmm.a
/usr/lib/libplotmm.la
/usr/lib/libplotmm.so
/usr/lib/libplotmm.so.0
/usr/lib/libplotmm.so.0.0.0
/usr/lib/pkgconfig/plotmm.pc

cheers,
doc

sapista
sapista's picture
User offline. Last seen 24 min 20 sec ago. Offline
Joined: 2006-03-30
Posts:

nowhiskey: Are you recompiled EQ10Q afeter intall PlotMM?
Another thing, I found a problem with EQ10Q and Ardour font scaling. EQ10Q GUI don't works properly if you have a scaling value different to 100%. Can be that?

nowhiskey
User offline. Last seen 3 weeks 6 days ago. Offline
Joined: 2006-09-30
Posts:

yes, i did recompiled the eq several times and no, i do not use 100% but 70% of font scaling in ardour.
thanks to everyone for the time trying to help me get it running!

cheers,
doc

sapista
sapista's picture
User offline. Last seen 24 min 20 sec ago. Offline
Joined: 2006-03-30
Posts:

nowhiskey:
I'm confused. To discard problems test plotmm without EQ10Q.
In the source code of plotmm there is a directory named examples/simple
In this folder exist a simple test program for PlotMM library.
If simple.cc is not still compiled do a make.
Then run it ./simple
If appears a windows with some curves, plotmm is working fine. Otherwise your problem is with plotmm installation.
Tell me what happens

prokoudine
User offline. Last seen 9 weeks 1 day ago. Offline
Joined: 2006-04-24
Posts:

Dude, just pull the equalizer widget from darktable.sf.net. No need to use bloody 3rd party libraries noone else has :)

joegiampaoli
joegiampaoli's picture
User offline. Last seen 22 weeks 2 days ago. Offline
Joined: 2008-02-27
Posts:

@ nowhiskey:

Did you already run ldconfig after buildin+installing all the dependencies?

I also had the same problem, the eq showed on taskbar only, when I maximized the window it would only show an empty full screen window, try ldconfig after installing the dependencies and recompile the plugin.

nowhiskey
User offline. Last seen 3 weeks 6 days ago. Offline
Joined: 2006-09-30
Posts:

sapista,
i see this funny graph when running ./simple

joe, i really did exactly what you say several times, and even just now again...

but no sucsess.

cheers,
doc

vervelover
vervelover's picture
User offline. Last seen 1 week 7 hours ago. Offline
Joined: 2009-06-10
Posts:

Man, can you please add denormals handling to your amazing plugin? It's causing me some trouble as explained here:

http://ardour.org/node/3277

DavePhillips
User offline. Last seen 6 days 9 hours ago. Offline
Joined: 2006-04-19
Posts:

Hi Doc,

IIRC the error you posted indicates that a dependency is unmet, or that the particular dependency is missing a dependency of its own.

Are you on a 64-bit system ? Did you compile everything with --with-pic ?

Best,

dp

nowhiskey
User offline. Last seen 3 weeks 6 days ago. Offline
Joined: 2006-09-30
Posts:

hallo dave,
thank you too for taking the time and trying to fond out what the preoblem is.
unfortunatelly i can't speek here for some time anymore cause i menaged to screw up my old agnula system by doing some strange updates and later downgrades...
(see my post above: i do not dare....but i did!)
how ever, i just installed sidux and it is gonna take me some more time untill i am at the point to compile this plugin again.

cheers,
doc

p.s. no data lost!!

joegiampaoli
joegiampaoli's picture
User offline. Last seen 22 weeks 2 days ago. Offline
Joined: 2008-02-27
Posts:

sapista:

I really love your plugin, really nice work, I use it quite a bit, although I hope you don't mind but I hacked the skin a bit. I felt a bit distracted with some of the colored lines in the controls so I modified it quite a bit, wanted to share in case you or others in the forum would like to use it. Just the skin is modified, nothing in the code.....

Screenshot:
http://www.joegiampaoli.com/personal_files/EQ10Q/eq10q.jpg

Source Package:
http://www.joegiampaoli.com/personal_files/EQ10Q/EQ10Q_My_Skin.tar.gz

Thanks.