View Issue Details

IDProjectCategoryView StatusLast Update
0001881ardourbugspublic2008-11-21 00:04
Reporterkenrestivo Assigned Topaul  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product Version2.0 
Summary0001881: LADSPA MIDI assignments aren't saved with the Ardour project
DescriptionIf you assign MIDI CC's to BarController inside a LADSPA plugin, that assignment will not be saved along with the project.
TagsNo tags attached.

Activities

paul

2007-09-26 20:08

administrator   ~0004409

this is fixed in svn for 2.0-ongoing, rev 2488 and above. confirmation of the fix would be appreciated.

gellyfish

2007-09-27 14:45

reporter   ~0004417

Hi,
I can confirm that MIDI assignments to plugin controls (and MIDI connections to ardour) are saved and restored correctly.

paul

2007-09-27 15:58

administrator   ~0004419

see notes. reopen or file a new bug if there are any issues.

kenrestivo

2007-09-30 01:10

reporter   ~0004440

I built revision 2496, and tried it, and it is still broken.

The settings are apparently getting saved with the file, aye, but they aren't getting actually *read* by Ardour when it re-loads the file.

Worse yet, Ardour becomes "deaf" to all the controls. Doing a control-center-click, and then moving any of the controllers thad had been previously assigned, simply won't "move" the BarController. Then, after doing that, the control-center-click themselves become "deaf"-- doing a control-center-click simply doesn't do anything anymore, it isn't responding, no pop-up "Operate Controller" window appears anymore.

Finally, looking at the file, the first time I saved it, even though "General MIDI" was selected in the Options menu, the file said "Mackie". I disabled General MIDI in the menu, re-enabled it, and then saved, and it seems to have removed the "Mackie" from the file.

Here is the file that is saved:
-------------------------
<?xml version="1.0" encoding="UTF-8"?>
<Session version="2.0.0" name="ladspa-saving-test" id-counter="275">
  <Config>
    <Option name="output-auto-connect" value="2"/>
    <Option name="mtc-port-name" value="control"/>
    <Option name="mmc-port-name" value="control"/>
    <Option name="midi-port-name" value="control"/>
    <Option name="monitoring-model" value="1"/>
    <Option name="meter-falloff" value="32"/>
    <end-marker-is-free val="no"/>
  </Config>
  <Sources/>
  <Regions/>
  <DiskStreams>
    <AudioDiskstream flags="Recordable" channels="1" playlist="guit test" speed="1" name="guit test" id="65"/>
  </DiskStreams>
  <Locations>
    <Location id="18" name="start" start="0" end="0" flags="IsMark,IsStart"/>
    <Location id="17" name="end" start="13230000" end="13230000" flags="IsMark,IsEnd"/>
    <Location id="53" name="Loop" start="0" end="13230000" flags="IsAutoLoop,IsHidden"/>
    <Location id="54" name="Punch" start="0" end="13230000" flags="IsAutoPunch,IsHidden"/>
  </Locations>
  <Connections/>
  <Routes>
    <Route flags="MasterOut" default-type="audio" active="yes" muted="no" soloed="no" phase-invert="no" denormal-protection="no" mute-affects-pre-fader="yes" mute-affects-post-fader="yes" mute-affects-control-outs="yes" mute-affects-main-outs="yes" order-keys="editor=0:signal=0">
      <IO name="master" id="19" inputs="{guit test/out 1}{guit test/out 2}" outputs="{alsa_pcm:playback_1}{alsa_pcm:playback_2}" gain="1.000000000000" iolimits="-1,2,-1,2">
        <Panner linked="no" link_direction="SameDirection" bypassed="no">
          <Output x="0" y="0"/>
          <Output x="1" y="0"/>
          <StreamPanner x="0" type="Equal Power Stereo" muted="no">
            <Automation>
              <AutomationList id="48" default="0" min_yval="0" max_yval="1" max_xval="0" state="Off" style="Absolute"/>
            </Automation>
            <controllable name="panner" id="47"/>
          </StreamPanner>
          <StreamPanner x="1" type="Equal Power Stereo" muted="no">
            <Automation>
              <AutomationList id="51" default="1" min_yval="0" max_yval="1" max_xval="0" state="Off" style="Absolute"/>
            </Automation>
            <controllable name="panner" id="50"/>
          </StreamPanner>
        </Panner>
        <controllable name="gaincontrol" id="20"/>
        <Automation>
          <AutomationList id="21" default="1" min_yval="0" max_yval="2" max_xval="0" state="Off" style="Absolute"/>
        </Automation>
      </IO>
      <controllable name="solo" id="23"/>
      <controllable name="mute" id="24"/>
      <remote_control id="1"/>
      <extra>
        <GUI color="7412:3424:10183" track_height="normal" shown_mixer="yes" shown_editor="no">
          <gain track_height="normal" shown="no"/>
          <pan track_height="normal" shown="no"/>
        </GUI>
      </extra>
    </Route>
    <Route default-type="audio" active="yes" muted="no" soloed="no" phase-invert="no" denormal-protection="no" mute-affects-pre-fader="yes" mute-affects-post-fader="yes" mute-affects-control-outs="yes" mute-affects-main-outs="yes" order-keys="editor=1:signal=1" mode="Normal" diskstream-id="65">
      <IO name="guit test" id="58" inputs="{}" outputs="{master/in 1}{master/in 2}" gain="1.000000000000" iolimits="1,-1,-1,-1">
        <Panner linked="no" link_direction="SameDirection" bypassed="no">
          <Output x="0" y="0"/>
          <Output x="1" y="0"/>
          <StreamPanner x="0.5" type="Equal Power Stereo" muted="no">
            <Automation>
              <AutomationList id="70" default="0.5" min_yval="0" max_yval="1" max_xval="0" state="Off" style="Absolute"/>
            </Automation>
            <controllable name="panner" id="69"/>
          </StreamPanner>
        </Panner>
        <controllable name="gaincontrol" id="59"/>
        <Automation>
          <AutomationList id="60" default="1" min_yval="0" max_yval="2" max_xval="0" state="Off" style="Absolute"/>
        </Automation>
      </IO>
      <controllable name="solo" id="62"/>
      <controllable name="mute" id="63"/>
      <remote_control id="2"/>
      <Insert type="ladspa" id="C* AmpVTS - Tube amp + Tone stack" unique-id="2592" count="1">
        <Redirect active="yes" placement="PreFader">
          <IO name="C* AmpVTS - Tube amp + Tone stack" id="76" inputs="" outputs="" gain="1.000000000000" iolimits="-1,-1,-1,-1">
            <Panner linked="no" link_direction="SameDirection" bypassed="no"/>
            <controllable name="gaincontrol" id="77"/>
            <Automation>
              <Automation/>
            </Automation>
          </IO>
          <Automation visible=""/>
        </Redirect>
        <ladspa>
          <port number="1" value="+2.000000"/>
          <controllable name="model" id="80"/>
          <port number="2" value="+0.118110"/>
          <controllable name="gain" id="81"/>
          <port number="3" value="+1.000000"/>
          <controllable name="bass" id="83"/>
          <port number="4" value="+0.755906"/>
          <controllable name="mid" id="85"/>
          <port number="5" value="+0.000000"/>
          <controllable name="treble" id="87"/>
          <port number="6" value="+0.559099"/>
          <controllable name="drive" id="89"/>
          <port number="7" value="+0.078832"/>
          <controllable name="watts" id="91"/>
        </ladspa>
        <controls>
          <controllable name="model" id="80" parameter="1"/>
          <controllable name="gain" id="81" parameter="2"/>
          <controllable name="bass" id="83" parameter="3"/>
          <controllable name="mid" id="85" parameter="4"/>
          <controllable name="treble" id="87" parameter="5"/>
          <controllable name="drive" id="89" parameter="6"/>
          <controllable name="watts" id="91" parameter="7"/>
        </controls>
        <PortAutomation>
          <port number="1">
            <AutomationList id="100" default="0" min_yval="1.17549435082e-38" max_yval="3.40282346639e+38" max_xval="0" state="Off" style="Absolute"/>
          </port>
          <port number="2">
            <AutomationList id="82" default="2.25" min_yval="1.17549435082e-38" max_yval="3.40282346639e+38" max_xval="0" state="Off" style="Absolute"/>
          </port>
          <port number="3">
            <AutomationList id="84" default="0.5" min_yval="1.17549435082e-38" max_yval="3.40282346639e+38" max_xval="0" state="Off" style="Absolute"/>
          </port>
          <port number="4">
            <AutomationList id="86" default="1" min_yval="1.17549435082e-38" max_yval="3.40282346639e+38" max_xval="0" state="Off" style="Absolute"/>
          </port>
          <port number="5">
            <AutomationList id="88" default="0.75" min_yval="1.17549435082e-38" max_yval="3.40282346639e+38" max_xval="0" state="Off" style="Absolute"/>
          </port>
          <port number="6">
            <AutomationList id="90" default="0.250075012445" min_yval="1.17549435082e-38" max_yval="3.40282346639e+38" max_xval="0" state="Off" style="Absolute"/>
          </port>
          <port number="7">
            <AutomationList id="92" default="0.750024974346" min_yval="1.17549435082e-38" max_yval="3.40282346639e+38" max_xval="0" state="Off" style="Absolute"/>
          </port>
        </PortAutomation>
      </Insert>
      <extra>
        <GUI color="16087:10416:16299" shown_mixer="yes" shown_editor="yes" track_height="normal">
          <gain track_height="normal" shown="no"/>
          <pan track_height="normal" shown="no"/>
        </GUI>
      </extra>
      <alignment style="ExistingMaterial"/>
      <controllable name="recenable" id="227"/>
    </Route>
  </Routes>
  <EditGroups/>
  <MixGroups/>
  <Playlists/>
  <UnusedPlaylists/>
  <Click>
    <IO name="click" id="25" inputs="" outputs="{alsa_pcm:playback_1}" gain="1.000000000000" iolimits="0,0,-1,-1">
      <Panner linked="no" link_direction="SameDirection" bypassed="no"/>
      <controllable name="gaincontrol" id="26"/>
      <Automation>
        <AutomationList id="27" default="1" min_yval="0" max_yval="2" max_xval="0" state="Off" style="Absolute"/>
      </Automation>
    </IO>
  </Click>
  <NamedSelections/>
  <TempoMap>
    <Tempo start="1|1|0" beats-per-minute="120.000000" movable="no"/>
    <Meter start="1|1|0" note-type="4.000000" beats-per-bar="4.000000" movable="no"/>
  </TempoMap>
  <ControlProtocols>
    <Protocol name="Mackie" active="no"/>
  </ControlProtocols>
</Session>

paul

2007-10-10 01:55

administrator   ~0004463

ken,you've almost certainly run into a problem of having an incompatible version of the generic MIDI control surface code lying around. this will cause precisely the behaviour you are describing. are you testing by installing then using ardour2 or by using the ./ardev script?

kenrestivo

2007-10-10 05:35

reporter   ~0004464

Last edited: 2007-10-10 05:37

I ran it with ardev, as I always do with new ardour revisions.

I don't remember if I did a clean svn checkout or just "svn update".

I also probably did *not* do a "scons clean" or whatever the scons equivalent to "make distclean" might be.

paul

2007-10-10 19:46

administrator   ~0004467

you will need to run scons install to avoid this issue.

the old versions of the control surface protocols are discovered first, and fail to load correctly. thus the protocols they represent do not exist as far as Ardour is concerned, and everything stops working.

this is problem for me from time to time when testing things related to control surfaces - i rarely run scons install, and eventually the old libraries just stop loading because they are no longer compatible with changes i've made to ardour.

kenrestivo

2007-10-13 06:52

reporter   ~0004474

Ah. Well, that fixed it!

Thanks!

paul

2007-10-17 15:23

administrator   ~0004475

see notes.

Issue History

Date Modified Username Field Change
2007-09-22 05:02 kenrestivo New Issue
2007-09-26 20:08 paul Note Added: 0004409
2007-09-26 20:08 paul Status new => feedback
2007-09-27 14:45 gellyfish Note Added: 0004417
2007-09-27 15:58 paul Status feedback => resolved
2007-09-27 15:58 paul Resolution open => fixed
2007-09-27 15:58 paul Assigned To => paul
2007-09-27 15:58 paul Note Added: 0004419
2007-09-30 01:10 kenrestivo Status resolved => feedback
2007-09-30 01:10 kenrestivo Resolution fixed => reopened
2007-09-30 01:10 kenrestivo Note Added: 0004440
2007-10-10 01:55 paul Note Added: 0004463
2007-10-10 05:35 kenrestivo Note Added: 0004464
2007-10-10 05:37 kenrestivo Note Edited: 0004464
2007-10-10 19:46 paul Note Added: 0004467
2007-10-13 06:52 kenrestivo Note Added: 0004474
2007-10-17 15:23 paul Status feedback => resolved
2007-10-17 15:23 paul Resolution reopened => fixed
2007-10-17 15:23 paul Note Added: 0004475
2008-11-21 00:04 seablade Status resolved => closed