I’m aware that editing the ODF by users isn’t officially supported, but I am working on a CODM file for which I would really like to implement a blind crescendo. In the CODM, I have programmed buttons for all the crescendo steps, and set up an expression pedal control to control it. All I need is a basic strategy for how to implement the linkage in the ODF. I would use an existing example, but I’m not aware of an organ that isn’t copy protected with an implemented blind crescendo pedal. Could someone help me out with the basic theory of linking the controls up so they work? If anyone knows of a free organ with a blind crescendo pedal implemented, that would be helpful too. I now have Hauptwerk VII, in case that makes any difference.
I’ve taken a look at the ODF, and I think what I have to do is duplicate the existing stops and stop ranks, then provide a linkage between the crescendo buttons and those stops. However, what I’m not sure is how to make it so that the buttons are only active based on the state of the expression pedal?
Thanks!
Implementing a Crescendo pedal
Re: Implementing a Crescendo pedal
Hello larason2,
Very briefly, I'd suggest:
Have a look at the standard St. Anne's ODF, which has a blind crescendo and isn't encrypted. I'd recommend exporting it to a SQLLite database, then using something like the freeware DB Browser for SQLite ( https://sqlitebrowser.org/ ) to open the resulting database (which will be in [HauptwerkUserData]\OrganDatabases ) to browse the tables.
If I recall correctly, in it you'll find that there is a non-displayed/non-MIDI-accesssible latching node switch for each crescendo stage, being toggled on/off via ContinuousControlImageSetStage objects as the crescendo pedal increases and decreases. There are also other non-displayed/non-MIDI-accesssible non-latching node switches for each rank, with the latching crescendo stage switches connected to them via Switches and SwitchLinkages which implement the crescendo programmer on the virtual console panel, and which 'add' to the user registration (because the rank nodes are momentary, and thus can have more than one source holding them in the on state).
Very briefly, I'd suggest:
Have a look at the standard St. Anne's ODF, which has a blind crescendo and isn't encrypted. I'd recommend exporting it to a SQLLite database, then using something like the freeware DB Browser for SQLite ( https://sqlitebrowser.org/ ) to open the resulting database (which will be in [HauptwerkUserData]\OrganDatabases ) to browse the tables.
If I recall correctly, in it you'll find that there is a non-displayed/non-MIDI-accesssible latching node switch for each crescendo stage, being toggled on/off via ContinuousControlImageSetStage objects as the crescendo pedal increases and decreases. There are also other non-displayed/non-MIDI-accesssible non-latching node switches for each rank, with the latching crescendo stage switches connected to them via Switches and SwitchLinkages which implement the crescendo programmer on the virtual console panel, and which 'add' to the user registration (because the rank nodes are momentary, and thus can have more than one source holding them in the on state).
Best regards, Martin.
Hauptwerk software designer/developer, Milan Digital Audio.
Hauptwerk software designer/developer, Milan Digital Audio.
Re: Implementing a Crescendo pedal
Thanks Martin, that’s very helpful!
Re: Implementing a Crescendo pedal
Thanks, larason2.
You're very welcome. P.S. I've edited my reply a bit above, since I realised that I'd misremembered how it's implemented in St. Anne's.
You're very welcome. P.S. I've edited my reply a bit above, since I realised that I'd misremembered how it's implemented in St. Anne's.
Best regards, Martin.
Hauptwerk software designer/developer, Milan Digital Audio.
Hauptwerk software designer/developer, Milan Digital Audio.