Organ stops present a challenge for the virtual organ builder. Unlike the core geometry of an organ, there are no standards for layout of organ stops. The reason is simple; the number, type and layout of the stops changes from organ to organ. The virtual pipe organ compounds these issues by letting you change organs!
There are a number of approaches to this problem (I'm sure this is not an exhaustive list, but it covers the options I've considered), each has its strengths and weakness...
Option 1: Build a proper Stop Board
This is the traditional approach, your VPO will look like a 'real' organ! Stops are mounted on panels on either side of the keyboard stack, typically grouped by division (e.g. Swell, Great, Pedal).
Each stop is a complex sub assembly, consisting of a drawstop knob, a switch and an electro-mechanical solenoid. The drawstop can either be actuated manually ( pulling out, or pushing in the stop), or automatically, from a controlling computer, in response to a command to load a stored registration.
Advantages: Authentic look, feel and operation.
Disadvantages: Expensive to buy and mount, complex wiring, control and integration. Difficult to change organ sets if stops, changeable facia plates can be used to accommodate the different stop arrangements. Separate monitor is needed for computer management.
Option 2: Use of Computer Monitors
The Hauptwerk software supports the use of one or two monitors (edition dependent) to simulate the stops on any given organ sample
In addition to providing a control / management interface for the organ, these monitors can be used to display graphical representation of:
- The whole organ (see below) on one monitor
- The left Jam on on one monitor, and the right Jam on another monitor
Stops (and pistons and couplers) are selected using with a mouse, or your finger (if the monitor is touch screen).
Advantages: Stop jams can be made to look traditional. Mouse interface is cheap. Separate monitor not needed for computer management.
Disadvantages: Touch monitors (if used) are expensive, monitors have to close to computer. Graphics cards don't always support all orientations. Lack of 'feel'.
Option 3: iPads / Tablets
The touch screen iPad can be used to control a Hauptwerk organ using the TouchOSC app.
A desktop editor for this app allows control screens to be created for the iPad, that can generate and respond to Midi messages from any connected device.
Using Wifi, the app can be connected to a Mac or PC, and is then able to send Midi commands to the Hauptwerk software.
Advantages: Cheap if you have an old iPad 1 lying around! Connection via WiFi, so panels do not need to be near computer.
Disadvantages: Require some programming experience / familiarisation with TouchOSC. Lease authentic interface, graphics limited to coloured rectangular touch buttons. Separate monitor is needed for computer management.
Option 4: Midi Control Panels
Midi control panels provide a push button interface to the Hauptwerk organ software.
Advantages: Out of box solution. Positive action, illuminated buttons showing selected stops. There is a range of panel sizes and prices.
Disadvantages: Overlays needed to support different organ sets. Separate monitor is needed for computer management.
Option 5: iDisplay (ADDED 26/2/14)
I have just discovered this one. The iDisplay app on your iPad (I haven't tested an Android device) connects to a service run on your Mac OSX system. This turns the iPad into wirelessly connected extended screen for the Mac.
Advantages: The touch screen is provided by an iPad, and it able to integrate with the graphical consoles slivered with each Hauptwerk organ set. The screen is connected wirelessly to the Mac, so can be located remotely.
Disadvantages: I have heard mutterings about the reliability of iDisplay, but everything seems to be working fine in my tests. Maybe being solely in the Apple ecosystem helps?
For this build I was originally going to use option 3, but will now be going down the option 5 (as of 26/2, watch this space) route. The implementation will be covered in a separate post.