How to use MuseScore with Hauptwerk and GrandOrgue Virtual Pipe Organs

• created 6 years ago • last updated 4 years ago
This tutorial is for an outdated version of our software. Update the information

    (12/17/2019) Hauptwerk V5 has been available for a week, and Milan intends to drop support for V4 in a short time. V5 has no “free” modes other than a 14-day fully-enabled trial (it has an elaborate licensing system based upon iLok; see ilok.com). You can't experiment with St. Mary's the same way as you could with V4; you ultimately have to purchase the product. So this page is still useful to those who either are still with V4, or purchase V5 outright (it also has a subscription scheme which can be monthly). I have to test these procedures with V5, but it is similar enough that I don't expect problems. I still have to document the Catalina MIDI Setup enhancements. V5 is Catalina-compliant out of the box. —BSG
    (10/18/2019) MacOS 10.15 (Catalina) and Hauptwerk (4.x) don't work together "out of the box", but with a little effort, can be made to. You must download and install the latest, Catalina-compatible, license USB driver from http://www.downloadhauptwerk.com/osx if you want your USB license key to be recognized (if you're in one of the evaluation/free modes, doesn't matter). You must also move, as root, the Hauptwerk tree which Hauptwerk put under the root, to /Users/Shared and chgrp/chown -R to make it usable. Catalina installation puts it in the "Relocated\ Items/Security" directory. And you must change the configuration file referenced in the error popup appropriately. Then it works. Milan promises upgrades not needing this.

    I (BSG) am the current "author/owner" of this document. Its basis was a post by "Jester Musician" (henceforth, "JM") from March, 2018 that described (very tersely) how to use his supplied files only applicable to Hauptwerk and St. Anne's Moseley. Thus, the site logs a post by JM every time I revise it. (4/2019) JM has inspected this new document and given his imprimatur.

    This has been tested, as it stands, with both MuseScore 2.3 and 3.0.5, with Hauptwerk 4.2.1.003, configured "Free edition" and Advanced Edition (licensed), in MacOS Mojave 10.14.3. Tested with GrandOrgue on Ubuntu Linux (but not SDRC/XML).

    Introduction

    MuseScore (as of 2.2, including Version 3) features the ability to output real-time, “live” MIDI, and thus drive not only MIDI-controlled instruments, but virtual MIDI instruments running on the same computer, in particular, the two wonderful Virtual Pipe Organ (VPO) systems, Hauptwerk (HW) and GrandOrgue (GO). This means that you can play a score from MuseScore directly on the pipe organs offered virtualized by these systems, especially while composing or otherwise entering it. Although some of the details will differ between HW and GO, and other details distinguish one virtualized organ from another, the general scheme is the same, and we will explain the commonalities shortly.

    Keep in mind that direct control by MuseScore is not the only way to use it in conjunction with VPO’s. There are digital audio workstations (DAWs) that can accept live MIDI, or MIDI files, from MuseScore or other applications and process them in ways that might be useful (and the scheme we present here may be useful in that regard). There is also the JACK system on some computers, and private tools that post-process MuseScore-produced MIDI files for use with VPOs, and all of these alternatives offer differing advantages. Ultimately, it is to be hoped that an audio recording (e.g., mp3) out of Hauptwerk (or GO) is the end goal. Of course, if HW or GO is required for the automatic performance of a score, there are problems posting it, but we will describe non-obvious ways of negotiating this.

    “Direct control of a VPO” involves two separable capabilities, the first fairly easy to set up and the second requiring significant preparation. These are:

    • The control of keys and pedals of all the manuals (and pedal) from staves in MuseScore
    • The control of registrations and manual disposition (which of the two upper staves is on what manual at any given time). If registration and disposition control is not needed during the course of a piece, you can set up the registrations on the VPO app before working with MuseScore; otherwise, more complex arrangements (described) are needed to allow insertion of appropriate directions at the beginning of the piece and places within it where either changes. We will call this SDRC (score-directed registration control) below. If you're scoring almost any Baroque chorale prelude (e.g., not BWV 656), you don't need it. If you're scoring the Bach Passacaglia (BWV 582) or 19th or 20th century organ music, you will. For anything in between, your choice.

    Besides acquiring and familiarizing yourself with the VPO apps, there are several logical divisions of this operation, some of which are optional. But we will list them now, and then detail them. They are:

    • Creation of a MIDI conduit, an operating-system MIDI pseudo-instrument that accepts MIDI from a MIDI source app (MuseScore) and supplies it as input to a MIDI consumer (the VPO). On Mac, they are system-supplied. On Windows, a third-party app must be downloaded. On Linux, (GO only), there is JACK, and maybe other tools. Whatever can route MIDI will do.
    • Telling HW or GO that the conduit so created is to be used as a “MIDI console Input”. This is easy; there are configuration dialogs in both apps.
    • Telling MuseScore that that conduit is to used as a MIDI output destination. While that seems to be readily available in the MuseScore Preferences I/O tab, two outstanding MuseScore bugs make this trickier than might be expected.
    • If you intend to use SDRC, you have to prepare and tell MuseScore about “supplementary instruments” by XML files, of which we supply one that applies only to the Hauptwerk Sample Instrument at St. Anne’s Moseley, UK, and preparing others is difficult and time-consuming. If you don’t, or can wait, this is not needed.
    • For each instrument (i.e., organ) of the VPO app you intend to use with MuseScore, you must reconfigure its divisions to accept MIDI input from the conduit and, depending upon your choices, reorder the channels from which they do.
    • For each instrument of the VPO you intend to use with MuseScore with SDRC, you must direct the attention of each stop-knob and other control you wish to so control to commands and control numbers chosen by you for the XML file. This is difficult and time-consuming. To be described.
    • For each piece (score, composition) you want to use with the VPO, create staves in the order to assign the desired channels. If you use the sample, optional, XML file, selecting the MuseScore instrument “Pipe Organ (Moseley)” will do that for you, but otherwise, a little care will get it right (and MuseScore 3 makes channel choice explicit and easy).
    • If you are using SDRC, you will insert "Staff Text" strings and configure their properties at the points where you want to affect registrations.

    Prerequisites

    If you only wish to use St. Anne's Moseley, on HW, to try this technology out for experiment, you can skip the HW channel and SDRC configuration by using the zip file supplied, and restoring HW from the saved HW state within it, and using the XML file within it as the "supplementary instrument file". If you are, however, attempting to use other instruments with SDRC, you will have to study that XML file as an example. If you are working with GO, the saved HW state will, obviously, not be useful.

    Significant restrictions of the VPO apps of which you must be aware:

    • Hauptwerk does not run on Linux. Windows and Mac only.
    • Hauptwerk can be downloaded for free, but can only run as the "free edition" unless the quite expensive license dongle is purchased. In "Free Mode", you can only use small organs, with non-reverberant sound samples (limited to 1.5 GB RAM space). The St Anne's Moseley organ works in Free Mode, but not much more.
    • GrandOrgue is fully free, but has no corporate support and considerably less and less-detailed documentation. The greatest organs are only available for Hauptwerk, and are expensive. GO runs on Linux, Windows, and Mac, although obtaining the Mac version has proven "dicey".
    • Many independent vendors offer many fine shareware organs for both applications, which can be found on the web. The excellent offerings of Piotr Grabowski (http://www.piotrgrabowski.pl) are to be commended in this regard.

    Creating the MIDI conduit

    On Windows, open the loopMIDI tool you have downloaded. Create a port and name it (suggestion) MuseScore to Hauptwerk. Exit the tool.

    On the Mac, invoke Audio MIDI Setup (from Spotlight). Choose Show MIDI Studio from the Window menu. You will create two IAC (inter-application communication) Driver pseudo-devices, IAC Bus 1 and IAC Bus 2, by the "+" tool in its IAC window. (More detail and images in the MacOS section below.)

    On Linux (GO only), use JACK or whatever you have. Here is a diagram of the JACK connections between MuseScore and GO — the connections can only be made if both apps are open.
    LxJack.png

    Advising the VPO app of the conduit

    (GrandOrgue further down). If you have not used Hauptwerk before, and don't own a license dongle, open the app, and when asked for a license, press "Cancel" and select the "Free Edition". When asked about MIDI hardware, select I don't yet have any MIDI hardware and click Next then Finish. Cancel the remaining dialogue windows. (If you are familiar with HW and have a license, just open it as usual).

    If you are going to experiment with St. Anne's, select File > Restore your Hauptwerk settings or personal data from a backup... and select the musescore_organ.Backup_Hauptwerk_gz file downloaded. If you own HW, and want to save your state elsewhere before doing so, do that (from the same File menu) first. Choose Simple restoration. Hauptwerk will close. Reopen it.

    In either case (SDRC or not), under General Settings > Audio outputs..., change the Audio output device to your audio device, usually the console/speakers/earphone port.

    Under General Settings > MIDI ports..., on Windows check MuseScore to Hauptwerk; On the Mac, IAC Driver IAC Bus 1 as Console MIDI IN;
    HWPorts.png

    Now load the St. Anne's Moseley organ, or whatever organ you wish to experiment with.

    For GrandOrgue, the Midi and Audio Settings dialog looks like this. You call it up from the main GO menu, Audio and Midi Settings: click on Midi Devices, and in the upper, MIDI Input Devices pane, find and check the conduit you have created.
    GOMidiAudioSettings.png

    Advising MuseScore of the conduit

    MuseScore must be told to output MIDI to the conduit you have set up. Unfortunately, this will step on two unfixed, reported MS bugs (at least in 3.0.5):

    • When MuseScore is connected to MIDI devices, it will crash every time you attempt to shut it down (at least every time on the Mac). (This bug has been fixed in MuseScore 3.3).
    • It will, unprompted, pick one of whatever MIDI devices you have as an input source; the bug is that you cannot say "no MIDI input source, please". If you have only one MIDI device, a condulit/loopback/IAC bus that you intend to use for output, you will create loop which can crash the computer, and it will warn you if you try. For that reason, you have to set up (in Mac) a dummy device to placate the bug.

    The MIDI configuration is done in the I/O tab of the MuseScore Preferences tab dialog. The MIDI Input dropdown must be set to the dummy conduit, and MIDI Output to the "real" one to which you pointed HW or GO as an input source. As so (with HW on Mac). Make certain you route the input to the dummy conduit before routing the output!

    MSAudPref.png

    [During early debugging in MS2 in 2018, JM found it necessary to set the output delay to 100 ms to ameliorate a timing irregularity he encountered, but the problem no longer seems to be present.]

    Channels, instruments, and staves

    MIDI Channels are conceptual entities like TV or Radio channels: a MIDI "controller" like a keyboard or sequencer outputs “MIDI events” on specific channels, which you almost always can configure, and MIDI instruments or applications “listen” on channels as instructed, picking up only events on their specific channel(s) as directed. Notes on a single channel are either on or off; while you can certainly have multiple notes sounding on a channel, you cannot have multiple instances of a single note, as you an on a real violin with two different strings playing the same note (e.g., opening of BWV 1004).

    Channels are numbered from 1 to 16, although the binary representation is 0 to 15. You can address additional channels with “ports”, but let’s stay away from that for now. We wlll use the 1-based (1-16) convention.

    In MuseScore, most instruments are addressed on a single channel, for example, woodwinds, piano, (normal MIDI “Church”) organ. Other instruments, such as strings, respond on multiple channels: arco (normal), pizzicato, and tremolo, representing three different soundsets. Instruments also require score staves: most instruments require one (e.g., woodwinds and strings), while others (organ, piano, harp) require two or three, although all of those require only one channel.

    In the VPO applications, channels correspond to divisions (i.e., manuals and pedal, but keyboards are only controllers of divisions, conceptually in real organs as well, and it is possible to have “floating’” divisions with no keyboard or pedalboard). In both HW and GO, the normal assignment is pedals as 1, and manuals going upward 2, 3, etc. That is, the top manual of a four-manual organ would be on channel 5 (4 binary).

    MuseScore assigns channels in the order you create instruments, which may or may not be the same visual order as you have them in the score. If you create parts for an oboe, a violin, and a piano, in that order, no matter how you rearrange the staves, the oboe will be on channel 1, the violin on 2 (arco), 3 (pizz.), 4 (trem.), and the piano on 5, with four staves in the score.

    In MuseScore 3, you can set an instrument’s channel explicitly in the Mixer. The whole trick to using HW or GO (short of SDRC) is to make MuseScore and the VPO app agree about channel numbers. We will now describe what to do in each.

    Assigning channels in the VPO app

    In Hauptwerk, directing a channel to a division is very easy. Simply choose Organ > Keyboards ... from the command menu, which will bring you this dialog, with a list of divisions on the left and settable parameters on the right. Choose the division whose channel you wish to set (even if HW's initial choice is what you want—you must enable the external MIDI input).

    There any number of ways to choose the channels for the VPO divisions, but there is much merit to going with either of two conventions, “bottom up” (pedal is 1, lowest manual 2, etc.) and “top down” (top manual is 1, next down 2, pedal is number of manuals plus 1). “Bottom up” has the advantage that both VPO’s ship that way, but “top down:” has the advantage that the channels in MuseScore are assigned top down as instruments are assigned, and the supplied sample files assume and implement “top down” (on the score page, and the organ pedal staff, by no accident, is the lowest). At very least, you should be consistent between organs, so that at least organs of the same number of manuals have a chance of being interchangeable (in the non-SDRC use model). There is also an argument to be made that people doing this should agree on one or the other to allow some score interchangeability.

    In the image below, I have the division Grande Organo, and set the Input: (circled orange) to Direct input from your MIDI organ console/keyboard/sequencer as you must, too. If you have not used HW (or the organ involved) before, it will say No input (input disabled). If you have, it may already be correct,

    You may (not "must") then change the channel for that division in the MIDI channel dropdown two fields below. You might choose to leave the native order (Pedal is 1, manuals 2, 3 ... going up) of both VPO apps, or reassign in top-down order (Upper manual 1, lower 2, pedal 3, for a 2-manual instrument), vaguely allusive to MuseScore's ordering of staves, and required for JM's files for St. Anne's (his saved environment includes this),
    KbdConfig.png

    In GrandOrgue, bring up the channel dialog for a manual or the pedals by clicking right on the one you want to configure in the organ picture. The dialog looks like the below: the Channel setting is labelled such — the name of the manual is in the dialog title bar ("Grande organo", Italian).
    GOChannels.png

    Note that changing these channel assignments will disable whatever MIDI keyboards and pedalboards you have. These will need to be reset with the usual "listen while I play high and low notes" method common to both applications. Perhaps, as I do, you have different computers for composing and live organ-playing.

    Assigning channels in scores, without SDRC

    Please review “Channels, Instruments, and staves” above. The goal here is to create MuseScore staves for instruments that use channels we selected for the VPO (HW or GO) divisions. Without SDRC, you have to make the decision at the beginning of the score which staves go to which divisions, and by definition (of (the lack of) SDRC), those decisions hold for the whole score. Normally, you do not care about channels at all when you create a MuseScore score.

    We will assume here that you are using “top-down” manual channel assignment as just defined. To create a score that will work nicely with both VPO’s and MuseScore, follow these steps:

    1. Add the following (single-channel, single-staff) instruments in this order. Strings (violin, viola, cello) cannot be used.
      1. Oboe
      2. Bassoon
      3. Bassoon
        That will give you a treble staff and two bass staves assigned to channels 1, 2, and 3 respectively. You’re almost done!
    2. Add a brace so the top two staves are braced together (optional).
    3. For each staff, click right, “Staff Properties”, and change the instrument to “Pipe Organ”, the regular old-fashioned “pipe organ” under “keyboards”. Remove the names “Organ” etc . from the staff label boxes. Or you can use any single-channel instruments you prefer for the "non-VPO" sound, even multi-staff ones.
    4. You’ll note that doing this installs treble clefs in all of the staves. If that’s not what you want, drop bass clefs in the lower two, Do not use the ottava bassa bass clef in an attempt to get 16’ tone!
    5. (MS3 only) F10 to open the mixer. For each of the three bars, which should all say “organ”, look at the channel number, which should be 1, 2, and 3, from left to right from staves top to bottom. If that’s right (top staff for top manual, next for second from the top), you’re set. Otherwise, change the channel numbers. If the organ is more than 2 manuals, the pedal channel should be that much greater than 3.
    6. You’re done. Save the file. It should work either with VPO hooked up (and registered) or in MuseScore. Either zero “Master Gain” in the mixer, or cancel all stops on the VPO if you want to hear the other source. You can even post it on the site.

    To get 16’ pedal on the MuseScore side, add a Trombone ottava bassa, copy all the pedal part, transpose it down an octave, and hide it. It will have no effect on the VPO, especially if you make the channel number large enough (greater than two plus the number of manuals). You can, of course, use other instruments besides "the old MuseScore pipe organ" as the native sound (e.g., recorders, oboes, pan flute, very common for non-plenum textures).

    You can add all the instruments you like beside the organ, as long as the channel numbers of the organ staves are what you expect them to be. You cannot make one soundfile (wav or mp3); you must make one from the VPO and one from MuseScore, and mix them with Audacity or the like. Make sure that the VPO is using A=440 pitch before attempting this — you will hear harsh detuning beats if not.

    Using the HW/Moseley files supplied below (MuseScoreVPO.zip)

    These details, and these files, only apply under the conjunction of these conditions:

    • You are using Hauptwerk, free or licensed, not GrandOrgue.
    • You will settle for the free St. Anne's, Moseley (UK) organ.
    • You want to see and experiment with/use the full SDRC available for this organ, courtesy JM.

    So,

    1. In HW, restore from the supplied musescore_organ.Backup_Hauptwerk_gz.gz as detailed above and restart.
    2. Load up the St. Anne's Moseley instrument.
    3. In MuseScore, under Edit > Preferences... > Score, specify the downloaded MoseleyHauptwerk.xml file as Instrument list 2. Then restart MuseScore. (Alternatively, you can open the Instruments dialogue, click Load... and select the MoseleyHauptwerk.xml, but this would need to be done every time you wish to add the HW organ to the score.
    4. Open the instrument dialogue. There should be a Pipe Organ (Moseley) entry under Keyboards. Add it to your score. Other instruments can be used, and will play and be heard along with the organ, but recording the result from two apps simultaneously will require some finesse (and you must be watchful for divergent tunings and temperaments). This 'magical' instrument requires 4 channels and three staves that it will associate with the Great, Great, and Pedal channels (1, 1, 3), although you can reconfigure Hauptwerk and use SDRC to redirect staves.
    5. Press F11 to open the Play Panel and turn the MuseScore volume down or off if you don't want to hear the piano which will still behind your notes (but you won't be able to hear notes as you enter them or click on them). Or do similar in the mixer, especially if you have other instruments in the score. Please see the discussion at Registration general cancel ... below. See "Native MuseScore 'backup' patches" below if you want something more useful than these default pianos.f

    MuseScore should now be communicating with Hauptwerk via the loopback connection , but you must create or set registrations and assign divisions to staves if you wish to hear the result (see immediately below).

    For what it's worth, note that the MoseleyHauptwerk.xml file contains nothing specific to Hauptwerk, except that the Moseley organ is only available with that application and not GrandOrgue. Instrument definitions contain division, stop, and control names and addresses specific to an instrument, and those addresses (i.e.,, channel and control numbers) can be configured (identically, if so desired) for a specific organ on both applications, for those (such as Piotr Grabowski's) that are offered for both.

    The saved state, musescore_organ.Backup_Hauptwerk_gz.gz, however, is Hauptwerk specific.

    Assigning and changing stops in your score (SDRC)

    In order to do that, you must have prepared the XML instrument definition and installed it in MuseScore (or used the supplied one if St. Anne's Moseley in HW is your only destination for now).

    Divisions are assigned per-staff (and, as has been true for centuries, stops are per division). "Staff texts" (the little texts you attach to staves with Ctrl-T (Command-T Mac) contain well-hidden "Properties" to select sub-channels of an instrument (e.g., arco, pizzicato, tremolo of a violin) and script "MIDI Actions" defined by an instrument or sub-instrument.

    To insert a manual or registration change in a MuseScore so prepared:

    • Add a Staff Text (like "Sw." or "II") on the first note or rest whose registration or manual you want to assign or change. Then click right on the new text, and select Staff Text Properties . You will see tabs for Change Channel and MIDI Action.
      StaffTextProperties.png
    • To assign or change the division for a staff, under the Change Channel tab, select all voices (1/2/3/4) and select a division. This includes assigning the bottom staff to the pedal.
    • To draw or retire stops (turn them on or off), under the MIDI Action tab, select a division, and the appropriate On or Off actions for the stops you want to draw or retire:
      StaffTextActions.png

    You must worry about the "Native MuseScore 'backup' patches" issue described below if you care at all what you or other listeners to score hear without the VPO connected (the default is "pianos all the way down").

    Known issues

    All of these issues only pertain to SDRC-enabled scores.

    • Playing from the middle of a score with repeats sometimes causes all stops to be reset [JM].
    • [JM also says] Jumping playback around the score should turn on stops as necessary (this is called MIDI chase). However, stops will not turn off automatically unless there are also explicit "off" actions. For example, if you have an "add mixtures" action in the middle, and you jump during playback to before that notation, the mixtures will still play. To correct this, add the corresponding "remove mixtures" action to the beginning of the score (with invisible staff text or as part of the initial registration).
    • The large issue explained at Registration general cancel .... below.

    Happily, it is possible to send an SDRC-enabled score via MIDI to "the wrong organ" in a VPO, if the manuals line up credibly — the SDRC instructions will be ignored (if the organ does not have its own control commands SDRC-configured), for both better and worse. For "gratuitous use of SDRC" (no actual changes during the score), this is acceptable.

    Native MuseScore “backup” patches behind SDRC

    Use of an SDRC (XML-defined) organ in MuseScore creates an n-channel instrument (where n is the number of manuals plus 2) whose default “patches” in MuseScore will all be pianos. That is, if you disconnect the MIDI or cancel all the VPO stops, and don't turn down the volume, you will hear pianos. Normally, in MuseScore, you can change the "patch" for an instrument (not a staff) without changing its official "instrument", via the mixer. For a multi-channel instrument, this is more difficult. In MuseScore 2, you will see individual mixer slots for the sub-channels of a multi-channel instrument; a violin shows its “normal”, “pizz” and ”trem“ slots, and you can set the patch for each.

    In MS3, it is a bit trickier. Look at the red-circled little arrow box in the upper-left-hand corner of mixer volume sliders of multi-channel instruments:
    Mixer1.png
    Click on it and it will open up sliders for all the subchannels. By clicking on the body of each slider, the dialog will show the patch and channel, which can be changed for that subchannel. There will be sliders for all the manuals, pedal, and control channel (which leave alone). Clicking on the slider to select it (its color will change) is often tricky and needs be done several times.
    Mixer2.png
    For a plenum work, choosing the usual MuseScore Church Organ 2 is the best you can do. For works more like chorale preludes, use oboes, flutes, recorders etc. (interpreted at all pitches) or whatever you want. Needless to say, “mid-piece instrument changes” will not affect VPO registrations -- that's what SDRC is for.

    Supporting other organs for SDRC.

    The basic idea is to imitate the MoseleyHauptwerk.xml supplied for St. Anne's. Note that MuseScore only allows one supplementary instrument file, so you have to be prepared to merge (and name appropriately) defined instruments into one. Perhaps a separate document is needed.

    This document on MuseScore XML instrument definitions (2 years old) exists: https://musescore.org/en/developers-handbook/references/instruments.xml….

    • Obviously, consistency about channel assignments between scores and the VPO apps is required, as well as between the XML file's enumeration of divisions and the the assignments of the organ involved. MuseScore will assign channel numbers to divisions in the order they are listed in the XML.
    • The couplers and other controls not specific to a division are controlled by channel one greater than the number of manuals and pedals, which should be listed last. MIDI commands CC20 and CC110 (CC = control change) should be chosen to turn a stop on and off, respectively (this control style can be opted in HW) and the CC value specifies which stop to change. The values should be in the numerical order on the Hauptwerk settings page, starting from 0 for each division, but must be set in each.
    • “Program change 0” on the control channel so defined should be bound to whatever General Cancel the particular organ supplies, or Hauptwerk's master General Cancel, and <program value="0"> supplied in the definition of that division. This causes all stops to be reset when at the beginning and end of all playbacks, but not note entries. Please see the section on General Cancel immediately below.

    Registration General Cancel (and Note Entering problem)

    SDRC with a full XML file (such as by the supplied files), presents a challenge with respect to hearing notes as you enter them (an option in MuseScore, but it is near-fundamental to most people). The problem arises because all stops will be cancelled at the beginning and end of a playback via a “hack” to be described imminently. As a result, when you drop notes in, you won't hear them, because there are no stops drawn. You will see that if you draw stops on a division after playback has stopped (from the Hauptwerk organ console), you will be able to happily hear notes as you drop them in. But start playback and they will be gone.

    The problem of “resetting all stops and couplers” bedevils all attempts at interfacing score editing tools to virtual pipe organs, whether via live MIDI connections or MIDI files. For a score, or a MIDI file of a score, to play properly in the music editor on the VPO requires that either contain appropriate registration instructions, even if only for the beginning of the piece. In our current framework, SDRC is precisely that. But you must not only draw the stops you want, but cancel ones you don't want if they are drawn for whatever reason. Most non-fully mechanical organs include a "general cancel" button to do that, but MuseScore has no mechanism to do "special actions" for instruments in general, including VPO's in specific.

    JM (Jester Musician) found an ingenious “hack“ (sly technique) for working around this and making MuseScore seemingly do so, i.e.,, cancel all registrations prior to commencing playback. At the beginning (and end, which is a problem here) of playback of measures, selections, or whole pieces (but not drop-in of individual notes), MuseScore issues a “program change” on each channel to select the synthesizer patch, e.g., piano, oboe, trumpet, etc. And VPOs (HW at least) offer the ability to allow particular controls, such as “General Cancel”, to respond to any of a wide variety of stimuli, including “program change”. JM, as recorded and revealed in the supplied HW saved state, has configured St. Anne’s “General Cancel” to respond to a “program change” of instrument 0 on the Control Channel (the fourth pseudo-division). As a result, all the stops are cancelled before and after any playback under SDRC on the Moseley Organ. Here is the relevant dialog in Hauptwerk for setting that, with the two relevant fields highlighted. This can be done for any organ (if the required <program value="0"> is supplied in the Control Channel XML in the instrument file.

    HWResetDlg.png

    The “after” is a problem if you want to hear notes that you drop in as you edit an SDRC-enabled score, because, as noted, all stops will have been cancelled by the end of the last playback. There are four known work-arounds:

    1. Don't use SDRC (or, at St Anne’s, the supplied files) at all. Rig up the the VPO channels yourself, and set registrations by hand as already explained.
    2. You can use the pistons and similar controls on the organ to establish registrations that are not reset by these actions. The FF piston under the lower manual at St. Anne's engages a very substantial sound that suffices very well in this context, but if that's not what you want for playback, engaging and disengaging it will rapidly grow tedious.
    3. Via the MuseScore mixer, you can engage some "real MuseScore instrument" "behind" the VPO. You get Grand Piano by default (if you don't squelch it in the mixer, and/or turn off all MuseScore output in the Play Panel), but Reed Organ will almost always be better for organ music. Choose your own poison. Balance it in the Mixer such that you can hear your notes as you enter them, but not befoul the Hauptwerk playbacks. Of course, if you record an audio performance in the VPO, no MuseScore sounds will be in it. And if you are making parallel audios for later mixing, you'd better silence the Reed Organ or Piano before you record.
    4. Disable the JM hack, or don’t use it, and you will be responsible for cancelling registrations before playback or recording of the whole piece, and you may not even need to. But this applies to the instrument, not the score. In HW, set the upper of the two circled slots in the image above to No Input, and the General Cancel will not respond.

    Sample scores included

    Two small sample scores are included in the zip file, appropriately enough (BSG) chorale preludes on Willam Croft's tune, “St. Anne”, one generic (non-SDRC) with solo, accompaniment, and pedal on channels 1, 2, 3, respectively, and the other configured to use the St. Anne's organ via Hauptwerk, with SDRC directions in it. The generic score is equally usable with GrandOrgue, hand-registered on either platform.

    Additional notes for MacOS

    • Ignore this if you already have Hauptwerk installed. Apple's legacy Java SE 6 runtime is required to use the Hauptwerk installer (but not the app itself). If you haven't already done so, you will be prompted to download and install the runtime when double-clicking the installer. Don't panic. Apple has reversed its previous policy of blocking the runtime, and it is now available for users of all recent versions, including 10.12 "Sierra" and 10.13 "High Sierra". There seem to be issues even with later OS versions; if the Hauptwerk installer complains about missing Java runtime, obtain and install this item from http://www.java.com .
    • About the Audio MIDI Setup applet (in /Applications/Utilities) See its built-in help and the Hauptwerk User Guide (https://www.hauptwerk.com/clientuploads/documentation/CurrentUserGuide/…) for more information (search for "Audio MIDI").
    • In the Audio MIDI Setup, choose Show MIDI Studio in the Window menu. When the MIDI Studio opens (below), click the "rescan" button (looks like a circular "reload" arrow). Then double-click the red IAC Driver square when it is offered..
      AudioMidi.png
    • Click the + button twice, to create IAC Bus 1 and IAC Bus 2. 1 is the good one which will pipe MIDI from MuseScore to Hauptwerk, and 2 will be the dummy. Exit the tool from its command menu. (The ability to rename the buses seems not to work, at least in Mojave 10.14.3). Click Device is online if it is not.
      IACTool.png

    (10/10/2019) The MacOS 15.0 (Catalina) Audio MIDI Setup tool is considerably more powerful and complicated, and the documentation here remains TBD (to be done) (as well as testing of the whole).

    Attachment Size
    MuseScoreVPO.zip 255.41 KB

    Do you still have an unanswered question? Please log in first to post your question.