Unreliable MIDI program change? (working on organ playback configuration)

I wonder if as a temporary work around, the following could be used for organ playback. Haven’t tried it as I’ve not done much organ work on Dorico (except for trios which naturally can work). This is definitely a kludge. There’s probably something wrong with this approach that would be a huge pain for “tutti” passages.

  • Write each stop as a separate instrument (oboe, flute, etc.).
  • 4’ stops would have 8va applied, 16’ would apply 8vb, etc.
  • Use the condensing feature to collapse the score into three staves.
  • Or use cues to have a linked copy on three staves.

From my extremely limited understanding of this side of Dorico (and no understanding of GrandOrgue whatsoever), I suspect it’d be easier to take advantage of Dorico’s independent voice routing. You might end up using 27 different voices in a piece, but that doesn’t bother Dorico.

Even without a tutti, that won’t even start to handle something like this.

  • Write each stop as a separate instrument (oboe, flute, etc.).
  • Use the condensing feature to collapse the score into three staves.

Thanks a lot for suggesting workarounds!

That kind of approach would work if an organ would allow to arbitrarily jump between combinations of stops (like between combinations of instruments in an orchestra) without changing the “state” of the organ. However, for such jumps between stop combinations it is necessary to switch stops on the organ, and doing that and in parallel jumping between divisions (quasi groups of stops) is currently not supported, I understand.

However, a close variant of that idea would avoid changes between divisions: having a separate grand stave for each manual and one stave for the pedal, e.g., 3 x 2 + 1 = 7 staves in total. Then, I only need to notate switches between stop combinations (for which the actual stops are allocated by the organ setup), but no changes between divisions (those are fixed to the staves). So, there is only one playing technique at a time per stave, which should be possible for Dorico. Couplings between divisions like II+III would be notated as exact doublings of the relevant staves.

I’m not sure whether it will be possible to reduce such an arrangement with the new condensing feature to the normal three-stave organ notation for an organist, as the information on which division plays which notes would need to be preserved in a well readable way (even if non-traditional) in the resulting notation.

Anyway, this sounds at least like a workable idea for creating a mockup, which then later with some additional manual work could be turned into the normal organ notation for handing it to the performer.

So, thank you very much! I will ponder a bit more on this.

I don’t know anything about GrandOrgue either. But if you can assign a group of stops to a voice using GrandOrgue, that would be a way easier than duplicating notes for multiple stops and 4’, 2’, etc. And mutations, resultants and mixtures? Yikes. My suggestion is for simple stuff only.

the information on which division plays which notes would need to be preserved in a well readable way (even if non-traditional) in the resulting notation

Take a look at cues. Might do just what you want.

I wasn’t suggesting using 27 voices simultaneously. You can route each voice on a stave to a different playback thingummybob, meaning that (as I understand it) if you want a different noise you can just put the notes in a different voice, then tell GrandOrgue how to play each voice from within Play mode.

Seldom does one assign a single instrument/stop sound to a given manual or give multiple instrument sounds to one hand (unless one is Cameron Carpenter). From what I understand of the organ and the way manuals and combination pistons work, your really need a player that lets you change the sound-slot assignments’ MIDI channels via CC numbers. This may be what torstenanders GrandOrgue does by some mechanism Dorico cannot currently access, but for all intents and purposes one needs to take the stops in separate slots and say put the right hand staff on MIDI 01 and then send controller codes that tell the player “set slots 1,4,5,10,17 all to receive on MIDI Channel 01.” To my knowledge no current player does lets one change the MIDI-receive channels via CC messages. The closest I have seen is the Garritan Harps Package that lets one change the pedal settings via numbers sent via CC’s.

Any solution needs cooperation between the VST Player and the controlling program (Dorico); I don’t envy the challenges ahead in this area. The challenge for an organ VST seems even more complex than that for some of the more advanced orchestral VST Players, which is why it makes sense to tackle those challenges first.

But that’s not how real organ consoles work.

If you decide some passage needs another stop added, it doesn’t make any sense to have to change the voice of the notes (and try to remember what registration upstem voice 17 was configured to play).

I once saw an interview with an international concert organist about preparing a concert programme on a new instrument. The total number of registration changes was close to 1500 - that’s around one every 5 seconds of music, on average. IMO the only sane way to implement that level of detail is to map instructions (e.g. playing techniques) in the score onto the individual controls on the instrument.

Otherwise, you hit the “combination explosion” problem - even with a tiny instrument with one manual and 8 stops, you theoretically have 256 possible combinations. Of course not all of those are useful, but 50 or 60 of them might be. On a typical size instrument the useful options run to hundreds, if not thousands.

Dare I say “Great minds think alike,” Rob? :smiley:

Yeah, the methods Derrek and Rob mention would be ideal. The workarounds are kludges for using now.
1500 registration changes seems very excessive, but to each (organist) their own!

A regular size, old fashioned organ has maybe 10 combination pistons per manual, plus one for the whole instrument. Of course, new fancy computerized consoles can have so many that nobody can keep track of 'em.

Anyway, I’m sure Dorico in a few years will have something pretty cool to use.

Derrek wrote:

From what I understand of the organ and the way manuals and combination pistons work, your really need a player that lets you change the sound-slot assignments’ MIDI channels via CC numbers.



for all intents and purposes one needs to take the stops in separate slots and say put the right hand staff on MIDI 01 and then send controller codes that tell the player “set slots 1,4,5,10,17 all to receive on MIDI Channel 01.”

To play a tone on an organ, one needs to choose its divisions (e.g., manual I), engage the intended stops on that division, plus triggering the actual note. If one allocates a separate (grand) stave for each division, then one could allocate each division a fixed MIDI channel and each staff a coresponding MIDI channel and then communicate via that MIDI channel for sending all the other information concerning that division.

Usually, organ music is only notated with 3 staves and therefore the division(s) allocated to a stave can change during a piece. You are suggesting to do that by changing the MIDI channel(s) of the responding divisions on the fly. Even if that would be technically possible, doing so would result into problems as soon as you use multiple divisions per stave with overlaps in terms of divisions between staves and then want to change the divisions again as it could result in conflicts between staves.

Instead, the free virtual organ GrandOrgue offers an abstraction that provides a way around, which in GrandOrgue has the fancy name coupler coupling manuals. The concept is straightforward: think of them as an additional set of manuals and pedal, but which by default have no division at all assigned to them. Normally, in an organ, each manual/pedal has its own division (great, swell…) and further divisions can be coupled to it, but its default division cannot be removed. Instead, a coupler coupling manual has no default division.

In my setup (already working in Sibelius), each organ staff sends MIDI on a specific channel (three channels in total), and for each channel one separate coupler coupling manual listens to it. Arbitrary division combinations can now be assigned to each organ staff without switching MIDI channels, by coupling arbitrary divisions to its coupler coupling manual via certain MIDI events. That setup allows to express all division combinations possible on an organ (as long as thumbing down across manuals and divided pedals are ignored).

I don’t know the commercial virtual organ Hauptwerk well enough, but I would be surprised if it does not offer a very similar feature, and the recently released Organteq might provide that in time as well (if it is not already there).


I don’t envy the challenges ahead in this area

I think the actual challenge is that every organ is different; they all offer their unique set of stops etc. Therefore, if one wants to engage specific stops explicitly in the score by playing techniques, for every organ and every stop of that organ, a playing technique and its corresponding playback settings has to be customly defined.

For my own purposes I try to reduce this problem by using another abstraction layer, stop combinations defined by the virtual organ. GrandOrgue offers for each of its virtual organs not only a 1000-slot combination setter (where each stores the complete state of the organ), but also 10 divisional combination setters for each division (where each stores the engaged stops of its division). I am not using the global combinations, but instead the divisional combinations, because they are more flexible (together they offer an even greater range of stop combinations), but I also find them more easy conceptually. They are less setters overall, and only the, well, combinations of these combinations result in the intended flexibility. So, I define a custom Dorico playing technique for each of the divisional combinations (40 in total for 4 divisions: 3 manuals + pedal) only once, and then can change at the virtual organ conveniently what stops these combinations amount to. For better memorability I may arrange, e.g., the combinations for each division from very soft (combination 1) to loud (10), but might additionally arrange them depending on timbre, e.g., combinations involving reeds only on even combination numbers etc.

I only need to define this setup once in Dorico, and when I change the organ (or want to change the overall registering on the same organ) I just need to allocate divisional combinations at the new virtual organ. It is a compromise, of course, but much preferrable to me than instead defining a separate playing technique for each stop for each organ in Dorico (leave aside that technically that is currently not supported, while using combinations works, as their are not multiple playing techniques – stops – engaged “in parallel”).


Now, my currently outstanding problem in Dorico is that I cannot have an independent control over divisions and stop combinations on a single stave (see discussion above), but as at least a temporary work around I am considering to use a separate stave for each division.


rubberfingers wrote

Anyway, I’m sure Dorico in a few years will have something pretty cool to use.

Considering the care they demonstrate in the Dorico design so far (e.g., just the recently introduced harp pedalling), I am very confident the Dorico team will find a good solution at some stage :slight_smile:

What I was saying is that using separate voices for each stop would not work, since at one time a manual (represented by one or two staves) would almost certainly playing multiple voices on each note–a notation nightmare if using multiple voices. I am well aware how stops, couplers, and combination pistons work and also that organists frequently draw out or push in individual stop knobs while playing to add to the preset they began with.

However a given VST handles the organization of stops, pistons, and couplers, Dorico needs to find a way that works for multiple such players; they can’t configure a specific design for each Organ VST (unless the eventual release of Lua capabilities allows users and VST companies to develop plug-ins for their own player).

At any rate, my point is that multiple voices would not be a suitable work-around for anything other than the very simplest organ music–which I think argues for your point that a more tailored solution is needed. The Dorico Team seems aware of this and plans for something along these lines down the road.

Couplers and combination pistons (or pedals) weren’t invented by GrandOrgue. Pipe organ builders have been making them for centuries. In fact French organ builders in the 19th century introduced another layer of “abstraction” - you can switch the wind supply to groups of stops on and off, independent of the other controls, rather like the “solo” and “mute” buttons in a modern mixer.

Much 19th and early 20th century French organ music used this design of instrument in a very formulaic way, adding and subtracting blocks of sound rather than controlling individual ranks of pipes, but the “formula” only works for that particular repertoire and that particular design of organ.

Using (only) the combination pistons, as Torsten was doing in Sibelius, is precisely the what a human organist does when faced with an unknown instrument and no rehearsal time - you do a quick check that the 8 or 10 preset combinations on each manual are arranged roughly corresponding to dynamics from pp to ff, and then just “enjoy the ride” when the actual noises you produce may or may not be exactly what you had in mind!

GrandOrgue and Hauptwerk are pretty good at providing enough tools to allow the control system of any real organ to be modeled and controlled from MIDI, but if you want to use the full capabilities of any particular set of organ samples, you inevitably end up creating something that is unique to that particular instrument.

Organ samples like Garritan work with a different logical structure which doesn’t attempt to simulate any one instrument, but gives a set of generic options which are easier for a non-organist to make sense of, and produce something that doesn’t sound completely unrealistic. That may be easy to use, but if you set up a project to use the Garritan organ, you have to start again if you change to a different set of samples - but that is not really any different from changing from say an EW to a VSL orchestra sample library.

The organ in NotePerformer uses another idea which works OK (just about) for a very small instrument but doesn’t extend to a bigger one: if there are 6 stops in one division, sending a CC value between 0 to 63 selects a combination of stops based on interpreting it as a binary number (e.g. 41 selects the three stops corresponding to 32 + 8 + 1). The downside is the “add a particular stop” now means “increase the current CC value by a particular number, e.g. 8” and Dorico doesn’t have any capability to do that except by manually drawing the CC value in play mode.

And this isn’t very extensible, since if there were 15 stops in the division not 6, you would need a data value between about 0 and 32,000!

Couplers and combination pistons (or pedals) weren’t invented by GrandOrgue

Of course :slight_smile:

I just wanted to leave a record here for a concrete example setup how an organ can be flexibly remote controlled by a software like Dorico (and without changing any MIDI channels of the fly).

Dorico needs to find a way that works for multiple such players

If you want to use the full capabilities of any particular set of organ samples, you inevitably end up creating something that is unique to that particular instrument

We all agree on both accounts (though division combinations independent of any particular organ in the notation, which users can then set to arbitrary stop combinations on any specific organ are also pretty flexible).

So possibly, Dorico can only provide the generic building blocks in the end for users to define their own setup (like we already do by defining expression maps etc).

Hey everyone,

I have been using the Hauptwerk which works great, but Dorico plays it back about half a semitone up or so. It does not do this with other VSTs, and Hauptwerk organ pitch is is set up properly (does not do this standalone, or in Sibelius, or in a DAW) Would anyone know a way to solve this, to adjust and reset this?

Welcome to the forum, Frank. Normally if playback is too high or too low by a half-step/semitone, it’s because there’s a mismatch between the sample rate Dorico expects to be able to use and the sample rate your audio interface is actually using. Try going to Edit > Device Setup, choosing a different sample rate, waiting a moment, then re-choosing the original sample rate again.

Thanks Daniel! This has worked. Although, only if I stayed at 44100. Not an issue I think. On my current set-up, it would only allow me to change the sample rate if I was using an interface, and not with the Generic Low Latency ASIO Driver.