Greetings from that 2 months ago someone! I had grand plans for moving the
LADSPA support forward -- I suppose I still do, but they have been tempered
by other goings-on.

But I digress...

Here's a quick summary of my brief excursion in LADSPA:

-Albert sent me a patch that successfully enabled ladspa plugin loading,
which I attach here. This patch is probably moot in light of the suggestion
discussed in this thread, but I include it for historic interest if nothing
else.

-Once LADSPA loader is enabled, my checkout required some changes required
to get the sources for the LADSPA plugins included in the Mixxx source
actually built (see below).

-There is a LADSPA feature branch on launchpad that I created. I believe it
is named features_ladspa2. I don't believe I've checked in any changes, I'm
ashamed to admit.

I hope to pick up some of this work again, but it won't be very soon. If no
one beats me to the punch, I'll try to clean up my working copy and check-in
my changes to the LADSPA branch.

-Adam

Following is a quote from Albert regarding building the LADSPA plugins. His
suggestion allowed me to successfully build the plugins themselves.

"""
It turns out, in the "caps" directory, there's no source file which
declares the required function:
     const LADSPA_Descriptor *ladspa_descriptor (unsigned long i)
After discovering, I downloaded the original caps source (which
includes many more plugins than I stole the source from), and spotted
a file called "interface.cc" which contains that magic function. So it
looks like I:
A) Didn't know what I was doing when I forked the caps/cmt libraries
B) Didn't copy all the files I needed from their sources over.

So what I would recommend doing is:
1) Grab the caps library source: http://quitte.de/dsp/caps.html#Download
2) Copy that interface.cc file over to our caps directory.
3) Hack up that interface.cc file so it compiles with only the couple
of plugins we want. If you need to drag in more source files from
caps, feel free to do so. I think there was a reason why I didn't fork
the entire caps source tree, but I can't remember why. Even though
there's plugins we don't want to use from caps, we can simply not
write preset .xml files for those.
"""

On Mon, Jun 29, 2009 at 5:56 PM, Albert Santoni <[email protected]> wrote:

> Hey Navaho,
>
> I noticed this too a few weeks ago, and fixed it in my local copy, but
> I totally forgot to check it into trunk or the 1.7.0 branch. I was
> scratching my head when I saw this too - I think I must have been in
> the process of moving the code from main.cpp to ladspaloader.cpp when
> I got sidetracked, and I just totally forgot about this. (Someone else
> pointed this out on mixxx-devel about 2 months ago too. eeek!)
>
> Please go ahead and move the LADSPA paths code from main.cpp to
> ladspaloader.cpp. There shouldn't be any LADSPA code in main.cpp once
> you're done. I'm away from my PC with these changes on it for the next
> 2 weeks, so unfortunately I can't commit my changes, but it's only
> like 5 minutes of work to move the code around.
>
> If you want to keep working on LADSPA, you should register a branch in
> Launchpad and we can help you out where we can. Slide 11 from our 1.8
> planning meeting explains the state of the code more or less:
> https://docs.google.com/Present?docid=dd557nj5_28fvx8jkgx&hl=en
> Nobody's actively working on LADSPA right now, so please feel free to
> tweak and polish it. :)
>
> Thanks,
> Albert
>
> On Mon, Jun 29, 2009 at 5:33 AM, Navaho Gunleg<[email protected]>
> wrote:
> > Hello list,
> >
> > Today I was checking out why LADSPA plugins weren't loading on my
> machine...
> > also figuring it's a path problem, after reading some LADSPA
> documentation,
> > I grepped for LADSPA_PATH and noticed commented-out code in main.cpp that
> > checks a LADSPA_PATH environment variable.
> >
> > Further poking around, in ladspa/ladspaloader.cpp, I noticed a
> QStringList
> > plugin_paths being defined, but not assigned...
> >
> > When I put the (slightly modified) code from main.cpp that assigns the
> > ladspaPath, splits it, and assigns it to the plugin_paths variable -- I
> can
> > see the loader iterating through the files in the directory, so appears
> to
> > be working again.
> >
> > Interestingly, in the original main.cpp -- before the commented out code
> it
> > prints "Setting up plugin paths" and after it, it prints out "done" but
> > effectively nothing happens in between.
> >
> >
> > So, it appears to be code that still has to be moved to the
> > ladspaloader.cpp, or somebody was/is in the process of moving it from the
> > ladspaloader.cpp to main.cpp?
> >
> > I ask because it would not be fruitful to spend time trying to undo
> somebody
> > else's work-in-progress if you know what I mean... :-)
> >
> >
> ------------------------------------------------------------------------------
> >
> > _______________________________________________
> > Mixxx-devel mailing list
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/mixxx-devel
> >
> >
>
>
> ------------------------------------------------------------------------------
> _______________________________________________
> Mixxx-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/mixxx-devel
>

Attachment: enable_ladspa.patch
Description: Binary data

------------------------------------------------------------------------------
_______________________________________________
Mixxx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mixxx-devel

Reply via email to