Using GrandOrgue as sound
This topic is in the process of being created and it will be a few days until it is complete. It was originally created for jOrgan 3.7 and will be updated for use with jOrgan 3.12.
Introduction
GrandOrgue is a free open source pipe organ sample playing program that creates a very realistic audio VPO experience. The graphics and coupler/piston/swells/crescendo configuration are not as visually appealing nor as easy to configure as those in jOrgan, so I use jOrgan as a front-end to GrandOrgue and get the best of both worlds.
Using jOrgan as a front-end to GrandOrgue also means that we can mix sound source applications, so one could run a GrandOrgue organ and add fluidsynth stops to the sound in jOrgan. It is also possible to run multiple instances of GrandOrgue (let me know if you are interested in this) and route the audio to different audio cards or channels.
Getting Started
If you don’t already have GrandOrgue, download it from GrandOrgue on Sourceforge . In this tutorial I also use software MIDI connections provided by MIDI Yoke, so if you don’t already have MIDI Yoke installed, please download it from MidiOx Siteand install it.
I have provided a very simple GrandOrgue organ definition file for you to use with this tutorial. You can download it from jOrganGrandOrgue Tutorial.zip
Please familiarize yourself with the GrandOrgue organ definition file, as you will need to know where to make changes to your own GrandOrgue organ definition files. Open the Demo.organ file (it is located in the Organ folder) in Notepad and take note of the following things:
The first section Organ defines the organ name, screensize, number of possible stops, etc.
The next sections define the manuals and what ranks are configured to them Manual000, Manual001, and Manual002. Take note of the Ranks and the associate Stop numbers for each rank on each manual. For example, Stop001=001 ;Flute 8 on the Pedal manual means that the first pedal rank is configured to Stop definition 001, which is the Ped Flute 8 rank. Scroll down the file until you find Stop001. Here you will find name, number of pipes, the actual location of wave files loaded to create the rank, and the StopControlMIDIKeyNumber. The StopControlMIDIKeyNumber is the most important property for our purposes, as it defines the MIDI note number that controls that Stop. You will see that for the Ped Flute 8 rank, the property is set to MIDI note 001. Below the Manualxxx definitions you will find the wind chest and enclosure definitions. You won’t need to worry about these. I have also not included couplers in the organ definition file as you can use the jOrgan coupler elements more effectively than the native GrandOrgue couplers. Please go through each of the Stop definitions and find out which StopControlMIDIKeyNumber controls which Stop. We will use these values when you create a jOrgan disposition to control the Demo Organ.
Once you have familiarized yourself with the contents of the Demo.organ file. Start GrandOrgue and configure the MIDI device settings to receive MIDI message from “In From MIDI Yoke: 1”.
You will also need to configure your channel settings to match the ones that this tutorial is using.
The important settings are
the Pedal manual configured to MIDI channel 1,
the Great manual to MIDI channel 2,
the Swell manual to MIDI channel 3,
and the Stop Changes channel to MIDI channel 5.
At this stage it does not matter what your physical MIDI keyboard channels are as they will be configured in jOrgan.
Create Your Own jOrgan disposition to control the Demo Organ
Run jOrgan and load the demo.disposition that is included in the download for this tutorial
Enter 'Construct Organ Mode' [click on the icon]
In the list of jOrgan elements you will find one item, the Console element. This element is used to define what skin (graphics) the organ screen will have, as well as the name of the organ, and the MIDI Input and Output of the items that will be configured on the screen. Click on the Console element to select it and display the empty properties of the blank console in the Properties tab below the list of elements
Configure the Console Skin property to the classic.zip skin (you can just type this in). Enter 'GrandOrgue Demo' in the Name property, jOrgan Keyboard in the Input property (click on the Input property box and select the jOrgan keyboard from the drop down), and leave the Output property blank
Click on the Skin tab to the right of the Elements column and select the wooden background as the Console background (If the Skin tab is not visible, enable it by selecting View from the main menu and clicking on ‘Skin’)
Now add a Generic Sound element. Click on the add element icon, and then type “Output to GrandOrgue” in the Name property. Select the Generic Sound element from the list of elements and click ‘Finish’. Configure the Output property to “Out to MIDI Yoke: 01” (click on the Output property box and select the MIDI output device from the drop down list)
Next add a Rank element. Click on the add element icon, type “GrandOrgue Pedal” in the Name property and select Rank from the list of elements. Click on “Next”. Reference the Rank to the Output to GrandOrgue Sound element, and then click on “Finish”. Configure the -Channel property to “equal 0” [This must match the MIDI channel for the Pedal manual in GrandOrgue, remembering that jOrgan starts MIDI channels at 0, so jOrgan channel 0 is the same as GrandOrgue channel 1]
Add a second Rank element. Name this rank “GrandOrgue Great” and reference it to the Output to GrandOrgue Sound element as well. Configure the Channel property to “equal 1”
Add a third Rank element. Name this rank “GrandOrgue Swell”, reference it to the Output to GrandOrgue Sound element. Configure the Channel property to “equal 2”
Add a fourth Rank element. Name this rank “GrandOrgue STOPS” and reference it to the Output to GrandOrgue Sound element. Configure the Channel property to “equal 4”. The rank elements that you have created configure the flow of the MIDI messages from jOrgan out to the Generic Sound element that is configured to the virtual MIDI port/device that GrandOrgue is configured to receive MIDI data from.
Now add a Stop element. Enter “Pedals” in the Name property box and then select Stop from the list of elements. Click on Next. Now reference the Stop to the GrandOrgue Pedal Rank by clicking on GrandOrgue Pedal. Click on Finish. Then configure the Active property to “True” (click on the Active property box and select “True” from the drop down)
Then add a second Stop element. Name the Stop “Great” and reference this one to the GrandOrgue Great Rank. Configure the Active property to “True”
Add a third Stop element. Name the Stop “Swell” and reference it to the GrandOrgue Swell Rank. Configure the Active property to “True”
Add a fourth Stop element. Name the Stop “Stop Changes” and reference it to the GrandOrgue STOPS Rank. Configure the Active property to “True” (You should now have four Stop elements that are referenced to the four Rank elements, channelling the flow of MIDI messages through to the specific channels configured for GrandOrgue)
Now add a Keyboard element. Name the Keyboard “Pedal Manual” and reference it to the Pedals Stop. Configure the Input property to the jOrgan keyboard
Add a second Keyboard element. Name the Keyboard “Great Manual” and reference it to the Great Stop. Configure the Input property to the jOrgan keyboard
Then add a third Keyboard element. Name the Keyboard “Swell Manual” and reference it to the Swell Stop. Configure the Input property to the jOrgan keyboard
Now the messages from the MIDI keyboards configured in jOrgan (currently coming from the jOrgan Keyboard) will be routed through to GrandOrgue via the Stop and Rank elements.
jOrgan Keyboard -> jOrgan Stop -> jOrgan Rank -> jOrgan Generic Sound.
The next thing we need to do is create the Stop Changes activation Note On and Note Off messages to send to GrandOrgue... and we’ll use jOrgan Keyer elements to do this:
Add a Keyer element. Click on the add element icon, type "Pedal Flute 8" in the Name property and select “Keyer” from the list of elements. Click on “Next”. Reference the Keyer to the Stop Changes Stop element and click “Next”. Then reference the Keyer from the GrandOrgue Demo Console element (this will allow us to select a graphic from the classic skin to represent the Keyer of the console screen). Click on “Finish”. Change the Pitch property to "1" [this matches the StopControlMIDIKeyNumber=001 message in the [Stop001] definition of the GrandOrgue organ definition file]. Then click on the Skin tab and select the white with black writing Stop graphic. Position it to where you want it on the console screen
Then add a second Keyer element named "Great Bourdon 8", reference it to the Stop Changes Stop element and from the GrandOrgue Demo Console element. Change the Pitch property to "2". Then click on the Skin tab and select the white with black writing Stop graphic. Position it where you want it.
Now add a third Keyer element, this time named "Great Flute 4'", reference it to the Stop Changes Stop element and from the GrandOrgue Demo Console element. Change the Pitch property to "3". Then click on the Skin tab and select the white with black writing Stop graphic. Position it where you want it.
Add a fourth Keyer element, this time named "Pos Flute 8'", reference it to the Stop Changes Stop element and from the GrandOrgue Demo Console element. Change the Pitch property to "4". Then click on the Skin tab and select the white with black writing Stop graphic. Position it where you want it.
Add a fifth Keyer element, this time named "Pos Flute 4", reference it to the Stop Changes Stop element and from the GrandOrgue Demo Console element. Change the Pitch property to "5". Then click on the Skin tab and select the white with black writing Stop graphic. Position it where you want it.
You have now created 5 Keyer elements that send Note On and Note off messages from the jOrgan console to the Stop Changes controller in GrandOrgue. Each Note On and Note Off message is configured to the same MIDI note number as the StopControlMIDIKeyNumber=nnn of the Demo.organ organ definition file. Now let's test it...
Testing the Relay
Load the Demo Organ in GrandOrgue. Double check that the correct MIDI Yoke port is configured in GrandOrgue, and that the correct MIDI channels for the Manuals and Stop Changes have been selected (this was covered in the Getting Started section of this tutorial). Then in jOrgan, exit Construct Organ mode by clicking on the Construct icon. Click on ‘File’ in the top jOrgan menu and select ‘Customize’ to configure the MIDI channels for the keyboards as seen below: -add image- Once the keyboard channels are configured, click on ‘Finish’ to exit the customization. Now click on the Pedal Flute 8 stop on the jOrgan console... then take a look at the GrandOrgue screen. The Ped Flute 8 stop should now be active. If it is, play a few notes on the jOrgan keyboard (by clicking the keyboard notes with your mouse) in the lower two octaves of organ. You should hear the Flute pipes.
Now right click once on the keys of the jOrgan keyboard and select ‘Channel 2’ from the popup menu (the MIDI data will now be sent to the Great manual). Click on the Great Bourdon 8’ stop, make sure it is activated in GrandOrgue, and then play some notes on the jOrgan keyboard. You should hear the Bourdon 8’ playing. Now click on the Great Flute 4’ in jOrgan, activating the Great Flute 4’ in GrandOrgue. Now play some notes with the jOrgan keyboard and you should hear the Bourdon and the Flute playing. If the stops are not activating, or you cannot hear the sound of the sampled pipes, please contact me (details at the end of the tutorial).
If things are working as they are supposed to, then continue with the next portion of the tutorial.
Configure Manual Couplers
Now that you have a working jOrgan front-end to GrandOrgue, let’s create some couplers for each of the manuals.
Swell Octave Coupler:
Add a Coupler element. Click on the add element icon, type "Positif Octave" in the Name property and select “Coupler” from the list of elements. Click on “Next”
Reference the Coupler to the Swell Stop element and click “Next”. Then reference the Coupler from the Swell Manual and the GrandOrgue Demo Console element (click on one, then hold down the Ctrl key and click on the second one). Then click on “Finish”
In the Properties tab, change the Transpose property to “12”
Then click on the Skin tab and select the white with black writing Stop graphic. Position the Coupler where you want it on the console screen.
By selecting the Swell Manual Keyboard element we receive the MIDI data arriving from the Swell keyboard. Referencing that data to the Swell Stop element sends the MIDI through to the Swell manual in GrandOrgue. Setting the Transpose property to 12 raises the MIDI data by an octave before it goes through to GrandOrgue, effectively creating an Octave coupler.
Swell to Great Coupler
Add a Coupler element. Click on the add element icon, type "Pos to G.O." in the Name property and select “Coupler” from the list of elements. Click on “Next”.
Reference the Coupler to the Swell Stop element and click “Next”. Then reference the Coupler from the Great Manual and the GrandOrgue Demo Console. Then click on “Finish”
Click on the Skin tab and select the white with black writing Stop graphic. Position the Coupler where you want it on the console screen
Again, by selecting the Great Manual Keyboard element we receive the MIDI data arriving from the Great keyboard, it is then reference to the Swell Stop, sending the MIDI data through to the Swell manual in GrandOrgue.
Great to Pedal Coupler
Add a Coupler element. Click on the add element icon, type "G.O. to Ped" in the Name property and select “Coupler” from the list of elements. Click on “Next”.
Reference the Coupler to the Great Stop element and click “Next”. Then reference the Coupler from the Pedal Manual and the GrandOrgue Demo Console. Then click on “Finish”
Click on the Skin tab and select the white with black writing Stop graphic. Position the Coupler where you want it on the console screen
Now that you have created three couplers following these directions, use the knowledge that you have gained to create three more:
Swell to Pedal
Great Octave
Great SubOctave
In order to test and use the couplers, you will need to save your disposition and exit Construct mode. Simply click on the Save organ icon (computer diskette), and then the Construct icon.
Now test the disposition to make sure that things are working.
As before, if you need help, please contact me using the jOrgan forum (jorgan-user(at)lists.sourceforge.net) or at ggoode (dot) sa (at) gmail (dot) com .
Swell Pedals
Now that you have Stops and Couplers visible on your jOrgan disposition (controlling the GrandOrgue Stop Changes and keyboards), the final thing do configure is linking a jOrgan swell pedal with a GrandOrgue swell pedal. Open the Demo.organ text file (the one that we opened and examined in the first section of this tutorial) in Notepad again. Locate the windchest configurations and find the one that controls the Swell manual: [WindchestGroup003]. Within that configuration is the Enclosure001=001 declaration. Just beneath that you will find the Enclosure configuration: [Enclosure001] Name=POS. EXP. AmpMinimumLevel=20 MIDIInputNumber=001 This controls the amplitude level of the swell, and which of the six GrandOrgue Enclosure controllers are used. The MIDIInputNumber=001 identifies this Swell pedal as GrandOrgue Enclosure 1. You can now close the Demo.organ file and go into the Audio Settings of organ in GrandOrgue (Audio -> Settings).
Click on the Midi Messages Tab and locate the Enclosure 1 properties.
Double click on Enclosure 1 to open the MIDI configuration window
Set the Channel property to ‘3’ and the Data property to ‘11’
Click on ‘OK’ (This sets GrandOrgue up to receive Change Control MIDI messages from the standard Expression pedal setting (CC 11) on MIDI channel
You can click on OK in the Audio Settings window to finish the configuration.
Now we can create the Swell controller within your Demo.disposition in jOrgan:
Go into Construct Organ Mode [click on the icon]
Now add a Continuous Filter element. Click on the add element icon, then type “Swell Expression” in the Name property. Select the Continuous Filter element from the list of elements. Click ‘Next’ and then select the GrandOrgue Demo console element and the GrandOrgue Swell rank. Then click ‘Finish’
Type ‘0.125’ into the Threshhold property, and ‘1’ into the Value property
Now click on the Skin tab and select the Swell Expression with Label image
Position the Continuous Filter where you want it on the console screen
The next step is to configure the MIDI messages to send
Click on the Messages tab
Click on the Add Message icon
Then select Engaging from the list of possible MIDI messages
Enter ‘set 178’ into the Status property of the Engaging message (this configures it to the Change Control message of MIDI Channel 3)
Enter ‘set 11’ into the Data 1 property (this configures it to send CC 11 – Expression midi messages)
Enter ‘set value | mult volume 127’ in the Data 2 property (this configures the expression amount that will be sent to the GrandOrgue Swell pedal)
Finally, click on the Save icon, and exit Construct Organ mode by click on the Construct icon
You are now ready to test the Swell Pedal. Engage the Positif stops in jOrgan (and make sure they are engaged in GrandOrgue), then play some chords and move the Swell Expression controller up and down (click the mouse on the jOrgan swell expression and keep the mouse button down, then move the mouse up or down to decrease/increase the expression amount). If you are successful in getting all of this to work, congratulations! Please let us know so that we can celebrate with you :)
Your next assignment is to take another GrandOrgue organ (like the Stiehr Mockers – Jeuxdorgues2 from www.jeuxdorgues.com) and create your own jOrgan front end to it...
Have fun! GrahamG
Navigation