[Ardour-Users] Plugins referenced inappropriately by name?

Paul Winkler pw_lists at slinkp.com
Tue Jul 24 12:42:10 PDT 2007

Hi folks,

forwarding this from ardour-dev, wondered if any other users had seen
problems like this.  For me the problem started when I upgraded the
CAPS plugin suite from 0.3 to 0.4.2 and suddenly old sessions cannot
load CAPS plugins.  AFAICT, the problem is with Ardour, not with CAPS.


----- Forwarded message from Paul Winkler <pw_lists at slinkp.com> -----

Subject: [ardour-dev] Plugins referenced inappropriately by name?
Date: Wed, 18 Jul 2007 15:24:04 -0400
From: Paul Winkler <pw_lists at slinkp.com>
To: ardour-dev at lists.ardour.org
Mail-Followup-To: Paul Winkler <pw_lists at slinkp.com>,
	ardour-dev at lists.ardour.org

Hi folks,

I tried to open an old session today (recorded with ardour
0.99.something), using ardour 2.0.2, and was surprised to see a lot of
warnings about various CAPS plugins not found.

Having a look at the session file, I see stuff like this:

      <Insert type="ladspa" id="CAPS: AmpV - Refined tube amp
      emulation" count="1">
        <Redirect active="no" placement="pre">
          <IO name="CAPS: AmpV - Refined tube amp emulation"
      id="1722982965" inputs="" outputs="" gain="1.000000000000" iolimits="-1,-1,-1,-1"
      automation-state="0x0" automation-style="0x1">
            <Panner linked="no" link_direction="0" bypassed="no"
      automation="beehead-pan-CAPS: AmpV _ Refined tube amp emulation.automation"/>
          <Automation path="IT'S REALLY MIXED Thu Apr 27 21:07:51 2006-redirect-1722982965.automation" visible=""/>
          <port number="1" value="+2.036088"/>
          <port number="2" value="-3.804122"/>
          <port number="3" value="+0.154640"/>
          <port number="4" value="+1.000000"/>
          <port number="5" value="+150.000000"/>
          <port number="1" auto="0x0"/>
          <port number="2" auto="0x0"/>
          <port number="3" auto="0x0"/>
          <port number="4" auto="0x0"/>
          <port number="5" auto="0x0"/>

Nothing in there looks like a LADSPA plugin ID.

listplugins tells me that CAPS is definitely installed:
 ... snip...
        C* AmpV - Tube amp (2587/AmpV)
 ... snip...

By comparing caps 0.3.0 to caps 0.4.2, you can see that the plugin
Name was changed, but not its Unique ID or Label:

$ analyseplugin ~/tmp/caps-0.3.0/caps.so | grep -A 2 "AmpV "
Plugin Name: "CAPS: AmpV - Refined tube amp emulation"
Plugin Label: "AmpV"
Plugin Unique ID: 2587
$ analyseplugin /usr/lib/ladspa/caps.so | grep -A 2 "AmpV "
Plugin Name: "C* AmpV - Tube amp"
Plugin Label: "AmpV"
Plugin Unique ID: 2587

So it looks to me like maybe Ardour is trying to load the plugin using
the Name, which is inappropriate per ladspa.h:

 /* This identifier can be used as a unique, case-sensitive
     identifier for the plugin type within the plugin file. Plugin
     types should be identified by file and label rather than by index
     or plugin name, which may be changed in new plugin
     versions. Labels must not contain white-space characters. */
  const char * Label;

Is my hypothesis correct? If so I'll file it in Mantis. I searched
briefly but didn't find anything similar.


Paul Winkler
ardour-dev mailing list
ardour-dev at lists.ardour.org

----- End forwarded message -----


Paul Winkler

More information about the Ardour-Users mailing list