Giglad is an arranger keyboard software for PC and MAC. It allows you to create your own styles(e.g. 8 Beat, 16 Beat, Slow Rock, Waltz, Tango, Samba, etc)
which can be used later to either play live using a midi keyboard controller or create songs via a scripting language very fast and easy. The great benefit of giglad when compared
with physical keyboard arrangers is that is using virtual instruments to produce audio. As such, the sound gets to be high quality and on top of that the the musicians can make use
of the countless plug-ins which can be found over the internet.
Due to licensing reasons, giglad is distributed without any virtual instruments. The user needs to take care of creating his own library of sounds which will be used in his styles.
There are awesome virtual instruments on the internet which can be downloaded for free and others which must be purchased. It is up to the user to decide what
instruments he will be using. This may sound as a restriction but it also comes with a great advantage: Each user of giglad has a unique sound result.
Giglad is distributed without any build-in styles but provides all the necessary tools for the user to create his own unique styles as easy and fast as possible. Additionally, giglad
can read and play Yamaha SFF2 and SFF3 styles.
The following guide describes the full functionality and all the features of giglad without taking into account licensing restrictions. If you are using the FREE or LITE version
of the software, you may have limited access or not access at all to some of the features that are explained in this guide.
The shortcuts that are described in this manual are meant for Windows users. MAC users should adapt to the MAC O/S, for example Ctrl+C will be Command + C for MAC users.
A picture worth a thousand words which means that a video must worth a million words. Watch the quick start guide below to
get familiar with the basic functionality of the software. Please mind that the guide has been created with an earlier version of giglad and
it does not reflect 100% the current state of the software but the core functionality remains.
Before downloading, purchasing or even installing giglad you should prepare your environment (i.e. your PC or MAC and your external hardware). The following describe what you need
to take under consideration in order to use the software effectively.
Virtual Instruments
Giglad supports VST2 and VST3 in Windows and VST3 and Audio Units in MAC plug-ins as well as soundfonts in both Windows and MAC. You need to download a few plug-ins and/or soundfonts to be able to create a decent style.
There are many high quality free VST/VST3/Audio Units plug-ins and soundfonts
on the internet which will help you get started. Some of them come with an installer and others are simply files which must be placed in a directory where giglad can find them.
Please be careful when downloading VSTs to select the x64 version of the plug-in.
Sound Card
It is recommended to have a decent sound card which will allow you to play live and with no latency. For Windows, giglad supports the default Windows Audio Driver but for better results, it is recommended to use
ASIO Interface Technology by Steinberg Media Technologies GmbH. For MAC, core audio is of course supported.
Midi Controller
If you wish to play live then you need at least one midi keyboard controller which will be used as the arranger keyboard. In theory, you can use your PC keyboard but that would be quite inefficient.
With a midi controller not only you will be able to play your music (i.e. switching chords with your left hand, and playing solo with your right hand) but also controlling giglad by
starting/stopping the style, changing the tempo and many more.
The main screen of giglad is divided into 3 windows:
- The top window from where you can select the Arranger to play live, the Style Editor to create
a new or edit an existing style, the Song Editor to create a new or edit an existing song and the Memory Pool
which allows you to efficiently use plug-ins.
- The bottom-left window from where you can view and manipulate your styles, your programs,
your presets, your songs and your recordings. It also includes the Midi Editor.
- The bottom-right window which contains the Output Window where important messages are displayed
and the Performance window where you can monitor the behavior of giglad's audio engine.
The bottom windows can be detached from the main user interface by clicking on the corresponding menu View item. At the top right corner of the screen the sample rate and the buffer size of your driver's sound card is displayed.
Program settings can be accessed via the menu Tools→Settings... and they are separated into different categories as shown below.
Modifying the settings is one of the first steps someone needs to undertake the first time the program is about to be used. Some of these have default values but others
(e.g. the search directories of the plug-ins) need to be set otherwise you will be unable to progress.
Here you can select the parent directory which giglad will use to create your styles and find the existing ones.
It can change any time in the future and your styles can easily
be moved and renamed so do not worry too much. You may leave the default value as it is. You may not type directly into the edit box. Use the button on the right side of
the edit box and select the directory from there.
You are advised to keep back ups of your styles as giglad does not do this for you.
Here you can select the parent directory which giglad will use to create your programs and find the existing ones.
It can change any time in the future and your programs can easily
be moved and renamed so do not worry too much. You may leave the default value as it is. You may not type directly into the edit box. Use the button on the right side of
the edit box and select the directory from there.
You are advised to keep back ups of your programs as giglad does not do this for you.
Here you can select the parent directory which giglad will use to save your presets and find the existing ones.
It can change any time in the future and your presets can easily
be moved and renamed so do not worry too much. You may leave the default value as it is. You may not type directly into the edit box. Use the button on the right side of
the edit box and select the directory from there.
You are advised to keep back ups of your presets as giglad does not do this for you.
Here you can select the parent directory which giglad will use to create your songs and find the existing ones.
It can change any time in the future and your songs can easily
be moved and renamed so do not worry too much. You may leave the default value as it is. You may not type directly into the edit box. Use the button on the right side of
the edit box and select the directory from there.
You are advised to keep back ups of your songs as giglad does not do this for you.
Here you can select the parent directory which giglad will use to save your recordings and find the existing ones.
It can change any time in the future and your recordings can easily
be moved and renamed so do not worry too much. You may leave the default value as it is. You may not type directly into the edit box. Use the button on the right side of
the edit box and select the directory from there.
You are advised to keep back ups of your recordings as giglad does not do this for you.
Chords Progressions File Manager
Here you can select the parent directory which giglad will use to create your chords progressions and find the existing ones.
It can change any time in the future and your chords progressions can easily
be moved and renamed so do not worry too much. You may leave the default value as it is. You may not type directly into the edit box. Use the button on the right side of
the edit box and select the directory from there.
You are advised to keep back ups of your chords progressions as giglad does not do this for you.
Here you must select the audio device which will be used to produce audio. In Windows by default, the Windows Audio type will be selected. It is advised to switch to ASIO if
you have a sound card which supports it. In MAC the Core Audio will be selected. Additionally, if the driver of the card allows it, you can change the Sample Rate and the Buffer Size.
The smaller the buffer size the lower the latency but also higher processing power requirements.
You can also specify the Output channels in which the audio will be sent. Giglad only supports Stereo output at the moment, so you may choose only two channels.
If you wish to use external input devices such as a microphone or an electric guitar, you must also specify the number of input channels which you are going to use. Do no create more input channels than what you need
as this impacts the performance. If you are not using any input devices, set this to 0.
The Processing Threads is the number of threads that the audio engine will use. Spreading the audio process to multiple system cores, can surely help to improve your system performance. If
you hear sound glitches or notice in the Performance Window that your system works on its limits, you should consider increasing the number of these threads.
The Control Panel button will display your sound's card configuration window and it is obviously different for different sound cards.
Here you must enable the midi input devices (i.e. keyboard controllers) you wish to use to play and control giglad. Your midi controllers should be preferably connected to your system via USB.
Before using a device, you need to enable it by clicking on the corresponding check box button. After enabling one device, you can verify that giglad properly recognizes it by
sending a midi event(note or control) using your midi controller and see if the "Signal" column reacts to it. If everything works as expected you will see the Signal column green highlighted as
seen in the picture and the relative information of the event you have sent.
You should also select a "role" for your midi controller. If you have only one midi controller then the role should always be "Main". Even if you have more than one controller, you may select only one of them to have the "Main" role.
If you have more than one devices, you can assign one of them to have the role "Chords". A midi device with this role will be used only to identify chords. In that case, you will want to move the splitter of the main keyboard in such a way to
have the whole keyboard as melody because the chords will be received from a separate device (The one with the role "Chords"). If you have a foot midi controller, you can assign the role "Pedal" which will allow you to switch chords by using your
foot. All other devices should have the role "Aux". All enabled midi devices, no matter their role, can send control messages to giglad in order to start, stop, switch sections etc.
Here is where you can also enable midi output devices. As the message in the window suggests: "By enabling at least one midi output device the midi engine will be activated and the audio engine will be deactivated.
Giglad will produce no audio, meaning that virtual instruments, soundfonts and effects will not work. The software will only send the corresponding midi events to the enabled midi output devices which are responsible to produce the sound." Please also
mind that it is highly recommended to only use hardware synths (e.g. physical arranger keyboards or sound modules). Software synthesizers such as "Microsoft GS Wavetable Synth" should be avoided as the latency they introduced will not allow you to play live with
giglad.
When the Midi Engine of giglad is enabled (i.e. when at least one midi output device is enabled) a few changes take place in the software UI:
- You will only be able to select midi instruments in the melody and style tracks. Virtual instruments and soundfonts will not be supported. If a virtual instrument already exists in a melody track or a style with virtual instruments has been loaded
the corresponding tracks will produce no audio.
- The gain leads in the mixer are replaced by midi note leds.
- Audio functionalities such as Recording are disabled.
Only one options here at the moment which defines if giglad will perform a plug-ins scanning when the program starts.
(Windows Only)
Here you need to select one or more directories where your VST plug-ins can be found. To add a directory, click on the Add button and select a directory which contains one
or more VST plug-ins. To remove a directory, select it from the list and click on the Remove button. Please mind that no default directory is provided and
the list is by default initially empty.
After defining the directories, you need to press the scan button in order for the scan process to start. When completed, you will see the list of all the VST plug-ins which have been found
and can be used.
Giglad does not monitor your VST directories. If you add or remove a plug-in from your system you need to perform a manual scan for the list to be updated. If you add a new
plug-in to an existing directory then only scan is required. If you remove a plug-in then you will have to re-scan to see this removed from the list.
Windows Only: Many plug-ins do not have DPI awareness. In your PC display settings, if your "Change the size of text, apps and other items" is something different than 100% then you might be interested in this setting.
This concerns the plug-in window and if at any time you notice that a plug-in's window is either too small or either too big, you may try switch the corresponding option on.
You can perform a scan or a re-scan without visiting the settings window from the menu Tools→Plugins→Scan
(Windows And MAC)
Please refer to the section of VST Plug-ins.
The functionality is exactly the same and the only thing that changes is that you must select the directories of your VST3 plug-ins instead of VST.
(MAC Only)
Please refer to the section of VST Plug-ins.
The functionality is quite the same but you may not select search directories for the audio units. Giglad only searches for them where the MAC O/S defines they should be.
Here you need to select one or more directories where your soundfonts can be found. To add a directory, click on the Add button and select a directory which contains one
or more soundfonts. To remove a directory, select it from the list and click on the Remove button. Giglad comes by default with the soundfont
"FluidR3 GM" which is installed in \ProgramData\giglad\Soundfonts and this is the default search directory.
After defining the directories, you need to press the Re-scan button in order for the scan process to start. When completed, you will see the list of all the soundfonts which have been found
and can be used along with information regarding these soundfonts.
Giglad does not monitor your soundfonts directories. If you add or remove a soundfont file from your system you need to perform a manual Re-scan for the list to be updated.
You can perform a re-scan without visiting the settings window from the menu Tools→Soundfonts→Re-scan
The General settings in the Arranger currently has a single option.
- When program starts:
- Initialise everything: Giglad will start on its default state (no style loaded, no instruments, etc).
- Recall last state: Giglad will save the state of the arranger (such as the selected style, the selected instruments in your right hand, the mixer
state etc) when it exits and will reinstate it when the program restarts.
- Set other preset...: Giglad will start by loading a preset of your choice
The Chords Detection settings in the Arranger affect the way the software detects the chords while playing live. You can experiment with these settings if
you are an advanced user, otherwise it is recommended to leave the default values as they are.
- Mode:
The different chord detection modes are described in in detail at the end of this section.
- Midi Input Channel:
This is set to "All" by default which means that the arranger will detect chords which come from the corresponding midi device by any channel. You may restrict
that by selecting only the midi channel that you wish to be used to detect the chords.
- Precision (in beats):
The arranger clock is using midi ticks. A style for example with PPQ=768 has 768 ticks in a quarter note. And to that extend a measure
with time signature 4/4 has 768x4 = 3072 ticks. The default value of precision 1/2 means that if you switch a chord at lets say 99 ticks this will actually be applied at
768/2 = 384 ticks. Do not think for a second that the higher the precision the better. It depends on the style and on how good you are with the tempo.
- Note on delay:
This is the time in milliseconds that the chord detector waits before identifying a chord when a note goes down in the midi controller.
- Note off delay:
This is the time in milliseconds that the chord detector waits before identifying a chord when a note goes up in the midi controller. This value is ignored
if the Suppress chord detection when note goes off is ticked.
- Suppress chord detection when note goes off:
If this is ticked there will be no chord detection when notes go off in the midi controller. With simple words if you play the chord Am for example and then
you move your hand away from the midi controller, the arranger will still be playing the Am chord.
- Preserve last detected chord when notes "on" do not define a valid chord:
If for example you play C-E-G (Cmaj) and then you play only C, because C does not define a valid chord the arranger will keep playing Cmaj if this options is on.
The Transposition options give you some additional flexibility on the way the transposition will behave in your arranger.
- Apply transposition on input:
In this case the transposition is applied directly to your midi keyboard controller. if you play for example the note C4 in your midi keyboard controller
with transposition +2, the note D4 will be highlighted in the Arranger's Virtual Keyboard and you will be hearing the note D4 coming out.
Respectively if you play a chord like Cmaj7 in you your midi keyboard controller with transposition +2 you will see a chord Dmaj7 highlighted in your
Arranger's Virtual Keyboard and you will be hearing the chord Dmaj7 by your style.
- Apply transposition on output:
In this case the transposition is applied only to the output. if you play for example the note C4 in your midi keyboard controller
with transposition +2, the note C4 will also be highlighted in the Arranger's Virtual Keyboard but you will be hearing the note D4 coming out.
Respectively if you play a chord like Cmaj7 in you your midi keyboard controller with transposition +2 you will see a chord Cmaj7 highlighted in your
Arranger's Virtual Keyboard but you will be hearing the chord Dmaj7 by your style.
Many midi keyboard controllers enhance the transposition functionality. So be careful because if you have transport from both your midi keyboard controller and from giglad
the transpositions will be added. +3 transposition in the controller and -2 transposition in the giglad will result +1 transposition.
The following Modes are supported by giglad:
- Single Finger:
Allows detection of the four chords major, minor, seventh and minor seventh by pressing a minimum number of key notes.
For a major chord, press the root note key only.
For a minor chord, press the root key and a black note key to its left.
For a seventh chord, press the root key and a white note key to its left.
For a minor seventh chord, press the root key and both a black and a white note key to its left.
- Fingered:
At least three key notes need to be pressed(with the exception of 1+5 and 1+8) in order for a chord to be detected. This is the default mode and the one being recommended for playing in giglad. It recognizes the
various chord types as listed on any hardware arranger manual or in the web.
- Fingered Incomplete:
Detects all the chords in a similar way with Fingered but additionally it will detect chords with one or two key notes:
- A single note key will result a major of the note key being pressed (exactly as the Single Finger).
- Two key notes will result the closest corresponding major, minor or sus4 chord. For example C+E will result Cmaj, C+Eb will result Cm, C+F will result Csus4.
- Fingered On Bass:
Detects all the chords in a similar way with Fingered but the lowest note played will be considered a bass note allowing you to play bass chords. For example G-E-C will result the C/G chord. Only tracks which have
CTA Shift [Bass] will be affected by this mode. For Yamaha Styles this is set automatically to the bass track. But for custom styles you must set this CTA to the track which plays the bass.
- Multi Finger:
It is using all Single Finger, Fingered and Fingered Incomplete modes in order to detect a chord.
- Full Keyboard:
Detects chords in the full range of the main midi keyboard controller. At least three key notes need to be pressed and if there is an interval of more then 5 semitones between two key notes, all the notes
at the right will be ignored. The "Chords" "Melody" ranges remain visible at the top of the virtual keyboard as they define the default ranges of the Left and Right hand tracks in melody.
Here you can select the counting in while recording in the Style Editor and if you wish to auto snap while recording (i.e. auto quantize).
Here you can change the Song's Editor Font size and you have the option for the Line Numbers at the left of the editor
to be visible or not.
Here you can select which groups will be visible on the Arranger Mixer.
Midi Controls allow you to map some, if not all, of your controls of your midi keyboard controllers with the giglad functionality. While playing live, you will wish to stay away from the mouse
and keyboard as much as possible. By mapping conveniently your controls, you will be able to start/stop, change the tempo, change a style and much more, directly from your midi
controllers without interacting with giglad UI at all.
All the enabled midi controllers are placed in tabs and you can assign control or note events to them. You can even assign the same action to different controllers which
means for example that you may start giglad by 2 different midi controllers. As the note suggests, you need to be extra careful when you assign notes. An event is identified by
its type(note or control), number(e.g note C3) and the channel that it is sent. If for example you assign a pad which sends a note event C3 at channel 1 and your main keyboard
also sends the note events at channel 1, then when you play C3 on your keyboard instead of listening the corresponding note, a midi control will be triggered.
The Midi Controls are divided into 2 main types. The buttons and the faders. A button of a midi controller will give a value of 127 (when pressed) and a value of 0 (when unpressed).
A fader will give values between 0-127. Notes are considered as buttons. The best way to assign a value is to give the focus to the corresponding control by placing the mouse cursor inside it and then
press the button or move the fader from your midi keyboard controller. To de-assign a value simply delete the assigned one. You cannot assign the same control to different
actions. The newest assign value will replace the old.
- Prepare [Button]:
This is a very useful button and its purpose is explained in detail in the Bank Memories section.
- Accept [Button]:
This is like the Return button of your PC keyboard. It does nothing by its own but it is combined with other midi controls.
- Accept [Button]:
This is like the Return button of your PC keyboard. It does nothing by its own but it is combined with other midi controls.
- Fade Up [Button]:
This will send +1 of the previous fader that was used. For example if you are choosing styles via the corresponding control fader, by pressing this button you
will go to the next style.
- Fade Down [Button]:
This will send -1 of the previous fader that was used. For example if you are choosing styles via the corresponding control fader, by pressing this button you
will go to the previous style.
- Play [Button]:
This will cause the Arranger to start playing. It will do nothing if the Arranger is already playing.
- Toggle Play [Button]:
This will cause the Arranger to start playing if not already and to stop if already playing.
- Sync Play [Button]:
This will set the Sync Play on/off.
- Stop [Button]:
This will cause the Arranger to stop playing. It will do nothing if the Arranger is not playing.
- Tempo [Fader]:
This controls the tempo of the Arranger. Because the tempo has a range of 32-288 and the keyboard midi controller can only send messages in the range
of 0-127, there is no immediate correspondence. If the fader has a value of 0 the tempo will be 32 and if the fader has a value of 127 then the tempo will be
288. The values between are calculated accordingly. Hence, a change in the fader +1 does not mean tempo +1. It will probably mean +2 or +3.
- Tempo Up[Button]:
This will increase the tempo of the Arranger by one. Does not have the same restrictions with the tempo fader.
- Tempo Down[Button]:
This will decrease the tempo of the Arranger by one. Does not have the same restrictions with the tempo fader.
- Transposition [Fader]:
This controls the transposition of the Arranger.
- Transposition Up[Button]:
This will increase the transposition of the Arranger by one.
- Transposition Down[Button]:
This will decrease the transposition of the Arranger by one.
- Prev Bank[Button]:
This will set the previous bank active.
- Next Bank[Button]:
This will set the next bank active.
- Bank Memory 1, 2, 3...16 [Button]:
This will set the corresponding memory of the bank active.
- Select Style [Fader]:
This allows you to select a style and set it to the Arranger. When moving the fader,
the Styles Explorer gets the focus and the selection on it is moving along with the fader.
When you see the style you wish to select you must press the Accept control button (You must assign this as well) in order for
this to be set to the Arranger. You can also press the Accept control button when a directory is selected in
order for this to expand or collapse. Because the faders of Midi Controllers usually have great sensitivity, you will wish to combine this with the
Fade Up - Fade Down control buttons. The best practice is first using the fader to get ownership if not already, and then use the Fade Up - Fade Down
control buttons to move slowly between the files.
- Select Program LH1 [Fader]:
Works in exactly the same way with the Select Style, and allows you to set a program to the Left Hand 1 track.
- Select Program RH1 [Fader]:
Works in exactly the same way with the Select Style, and allows you to set a program to the Right Hand 1 track.
- Select Program LH2 [Fader]:
Works in exactly the same way with the Select Style, and allows you to set a program to the Left Hand 2 track.
- Select Program RH2 [Fader]:
Works in exactly the same way with the Select Style, and allows you to set a program to the Right Hand 2 track.
- Select Preset [Fader]:
Works in exactly the same way with the Select Style, and allows you to set a preset to the Arranger.
- Select Song [Fader]:
Works in exactly the same way with the Select Style, and allows you to set a song to the Arranger.
- Style Section 1,2,3...16 [Button]:
Each of this buttons allows you to set the corresponding style section to the Arranger.
- Style Master Volume [Fader]:
This allows you to control the volume of your style.
- Style T1, T2...T16 Volume [Fader]:
This allows you to control the volumes of each track of your style.
- Melody Master Volume [Fader]:
This allows you to control the volume of your melody.
- Melody T1, T2, T3, T4 Volume [Fader]:
This allows you to control the volumes of each of your melody tracks.
- Mixer Master Volume [Fader]:
This allows you to control the master volume.
- Split Chords/Melody [Fader]:
This allows you to define your chords and melody section in the arranger's main keyboard.
- Octave Up [Button]:
This will cause the notes to be played one or more octave(s) up.
- Octave Down [Button]:
This will cause the notes to be played one or more octave(s) down.
If you are experienced in physical keyboard arrangers, you probably already know what a style is. But maybe you have never created a style by yourself.
In any case, let's try to give a definition of what a style is.
A style is a mix of instruments which are playing the same root chord in different ways repeatably. They can have one or more variations (in giglad these are named sections) and
each of this section can have one or more measures. When the end of a measure is reached, the section starts playing again from the begging. The software (in our case giglad)
knows how to convert the root chord of the style into a different chord by applying a transposition algorithm. Hence, in order to play live, you are creating a style and
then you give the chord instructions by simply using your left hand while you are using your right hand to play the main melody.
Giglad is using a standardized file format to save/load your style in your hard drive, the midi file format (.mid) and adds additional information (such as the sections, the virtual
instruments of your tracks, the CTA's and more). This means that the style can be read by any other software which can read midi files and giglad can read any midi file
which has been created by a different software as well. In the latest case, information will be missing but it can be filled later.
This gives great flexibility on the way you can create your styles.
You can create a new style from the menu File→New→Style... or in the Styles Explorer by right clicking on the
parent directory where you wish to create your style and then select the corresponding menu command New→Style.... In both cases the Style Definition window
will pop up where you need to define the basic attributes of your style.
- Name:
A unique in its relative path name for your style. Because the name of the style is used to save the corresponding file, only valid file names are allowed.
You can easily rename a style after creating it.
- Relative Path:
The relative path of the style considering the Styles Directory. You may not type directly into the edit box. You
need to click on the button at the right side of the control and select the directory from there. Styles can be moved around after their creation.
- Using:
This option is there for future reference in which you will be able to select creating a style using virtual instruments or midi instruments. Currently you may not switch
to something different than virtual instruments.
- Root Chord:
The chord which will be used as a reference for giglad to be able to convert in different chords. It is recommended using a chord which is described by at least four
notes. Cmaj7 (C-E-G-B) is a very good chord as it is quite simple and contains the four notes needed, hence it is the default option. The root chord does not restrict the
chords that you will be able to play. A root chord of Cmaj7 does not mean by any means that you will not be able to play for example Am, E7, Bdim etc. As mentioned it is
just a reference and unless you are an experienced user or style creator, best leave the default of Cmaj7 as it is. The root chord can change after creating the style but
the existing events (i.e. notes) will not be converted to the new chord. It is also possible to override the root chord in one or more tracks.
- Time signature:
Pretty straight forward option for a musician; this will be the time signature of your style. The time signature can change after creating the style but
the existing events (i.e. notes) will not be converted to the new time signature.
- Tempo (Beats per minute):
The tempo of a style is defined in beats per minute. A tempo with a value of 120 means that within a minute (60s) 120 beats will be played. The beat is described by
the denominator of the time signature of the style. With a time signature of 4/4 for example: 1 beat = 1 quarter note.
With a time signature of 4/8 respectively: 1 beat = 1 eighth note. Tempo can easily change after creating your style and it is just the default tempo of the style. It is
the tempo that will be set to the arranger when the style is set if the arranger is not playing. If the arranger is already playing, this tempo will be ignored.
- PPQ (Pulses per quarter note):
PPQ describes the number of ticks that a quarter note has and is a standard midi file entry. Unless you are an experienced user, it is advised to leave the default
value of 768 as it is. The PPQ cannot be changed after creating your style.
- Sections:
You can pre-define the sections of you style here, but this feature is mainly present to setup the sections for midi files that have not been created by giglad and
nevertheless can be used as styles. If you are creating a style from scratch it will be easier to setup the sections from the
Style Editor directly; so you may leave the default as it is with one section named "Main" and rename it later as well as add more
sections. If you need to define your sections here then you may add new ones by clicking the Add button and you can remove an existing one by selecting it on the table
and clicking on the Remove button. A section is described by its name which must be unique, the measure that starts and the number of measures that it has.
Clicking on the OK button will create a style file in you hard drive and will navigate you in the Style Editor, from where you can
describe your style.
The styles explorer displays your styles, as these exist as midi files in your O/S, in a tree hierarchy. The root item is the Styles Directory as this can be
defined and changed from the settings. Changing the Styles Directory will cause the tree to re-populated.
Giglad is using the tree hierarchy instead of a linear representation of the styles as it gives great flexibility and allows you to group your styles anyway you wish.
The styles explorer provides some functionality but, at the moment, in no case has the power of your O/S explorer. If for example you wish to copy or move styles around,
you need to do this outside giglad. Mind that the software does not monitor style changes outside the software itself. If for example you rename a style from your
O/S or move a style to a different place, you must manually press the F5 key in the styles explorer window in order for the tree to be updated.
☛ Double left clicking on a style will cause the style to be loaded and be set to the Arranger.
☛ Right clicking on a style will select the style and pop up a menu in order to take further actions regarding your selection.
- Edit: Causes the style to be loaded and to be set to the Arranger.
It then switches to the Style Editor in order for you to edit the style.
- Rename: Pops up a new window in which you can set a new name for the style.
- Delete: Deletes the style (i.e. the corresponding file) permanently from your system. This action is not undo-able so use it with caution.
- Show in explorer: Opens O/S Explorer to show this style's location.
☛ Right clicking on a style's parent directory will select the directory and pop up a menu in order to take further actions regarding your selection.
- New Style: Pops up the Style Definition window in order to create a new style in the directory that has been selected
in the explorer.
- New Directory: Creates a new directory which will have the selected in the explorer directory as its parent.
- Delete: Deletes the directory and all the styles in it. Be extra careful when using this, because the action is not undo-able
- Show in explorer: Opens O/S Explorer to show this directory's location.
Giglad can read and play Yamaha SFF2 and SFF3 styles. The styles should exist inside styles working directory in order to
be revealed in the Styles Explorer. You can then use them and edit them as you would do with your own styles.
When a Yamaha style is read for the first time, giglad will use the default soundfont to set the instruments. The default soundfont can change from the
settings but must be a standard soundfont, i.e. supporting all the necessary instruments. Using the
Style Editor, you can change the instruments and even replacing them with VSTs. If the Midi Engine of giglad is enabled then instead of soundfonts, the style tracks
will be populated with midi instruments.
Because the Yamaha style data format does not exactly match giglad's data format and because giglad's arranger engine has not been written for this purpose, the styles
will not be heard as actually playing them in a physical Yamaha arranger but the result is quite decent and if you take the time to process them a bit and replace the
instruments with VST's the result will be quite satisfying.
You may edit a Yamaha style in the Style Editor but due to data mismatch as explained above, you may not rename the sections and you may
not change the CTA. If a Yamaha file is saved,
A program is a virtual instrument's preset along with the effects that it may or may not using. In order to avoid confusion over the Arranger's Presets, the word Program is used.
Many VST/VST3 plug-ins come with a predefined number of presets and you can usually create your owns. You can save them as Programs and add effects on top in order to re-use them later
to your style or solo tracks. Because soundfonts in giglad are also handled by a VST3 plug-in, programs can also be used to save your soundfonts.
Programs have a standardized file format when saved in your hard drive, the lightweight data-interchange JSON. But the actual program is described by a HEX string which
makes it impossible to edit these files using a text editor such as Notepad.
You can create a new program from the menu File→New→Program... or in the Programs Explorer by right clicking on the
parent directory where you wish to create your program and then select the corresponding menu command New→Program.... Additionally, after selecting a virtual
instrument on a track (melody track or style track) and adding effects, you can choose to save it as it is by clicking on the corresponding "program" icon which can be found at the top right corner
of the track. In all cases the Program Definition window will pop up where you need to define the basic attributes of your program.
- Name:
A unique in its relative path name for your program. Because the name of the program is used to save the corresponding file, only valid file names are allowed.
You can easily rename a program after creating it.
- Relative Path:
The relative path of the program considering the Programs Directory. You may not type directly into the edit box. You
need to click on the button at the right side of the control and select the directory from there. Programs can be moved around after their creation.
- Instrument:
You can select one from your installed plug-ins by clicking on the arrow down button on the corresponding field. The plug-in's window will pop up and any changes you
make there will be taken under consideration when the program is saved. If you close the plug-in's window, you can continue editing it by selecting Edit...
after clicking again on the arrow down button.
- Include Instrument Suffix:
If this is ticked then the final name of the program will include the virtual instrument's name at the end. In the image above for example,
the file name that will be saved will be myProgram - Dexed.
- Effects:
You can add one or more effects to your program by clicking on the Add button and remove them by selecting the proper one and press the Remove button. You can also reorder
them by using the arrow buttons.
While this window is opened, your main midi input controller can be used to play the selected instrument. Programs are quite flexible. You can choose for example to only save effects
in which case when applied on a track which already has an instrument, the action will only apply the effects to it.
The programs explorer
displays your programs, as these exist as json files in your O/S, in a tree hierarchy. The root item is the Programs Directory as this can be
defined and changed from the settings. Changing the Programs Directory will cause the tree to re-populated.
Giglad is using the tree hierarchy instead of a linear representation of the programs as it gives great flexibility and allows you to group your Programs anyway you wish.
The programs explorer provides some functionality but, at the moment, in no case has the power of your O/S explorer. If for example you wish to copy or move programs around,
you need to do this outside giglad. Mind that the software does not monitor program changes outside the software itself. If for example you rename a program from your
O/S or move a program to a different place, you must manually press the F5 key in the programs explorer window in order for the tree to be updated.
☛ Double left clicking on a program will pop up the Program Definition window from where you can edit the selected program.
☛ Right clicking on a program will select the program and pop up a menu in order to take further actions regarding your selection.
- Apply to: Displays the available tracks in which the program can be applied and by selecting one of them, the program will be applied to it.
- Edit: Pops up the Program Definition window from where you can edit the selected program
- Rename: Pops up a new window in which you can set a new name for the program.
- Delete: Deletes the program (i.e. its corresponding file) permanently from your system. This action is not undo-able so use it with caution.
- Show in explorer: Opens O/S Explorer to show the location of this this program.
☛ Right clicking on a program's parent directory will select the directory and pop up a menu in order to take further actions regarding your selection.
- New Program: Pops up the Program Definition window in order to create a new program in the directory that has been selected
in the explorer.
- New Directory: Creates a new directory which will have the selected in the explorer directory as its parent.
- Delete: Deletes the directory and all the programs in it. Be extra careful when using this, because the action is not undo-able
- Show in explorer: Opens O/S Explorer to show this directory's location.
You can apply a program to a track directly from you midi controller by
using Midi Controls Mapping.
You can apply a program to a track by dragging and dropping the program into
the track's window.
A preset is a complete or partial snapshot of the Arranger's state. You can choose to save for example the style which you
have set to the Arranger's along with your right hand's instrument(s) and the current tempo in order to re-use it later with a single click.
It is as such a very powerful and useful feature of giglad as it allows you to pre-make multiple Arranger setups and user them later at your
convenience.
Presets have a standardized file format when saved in your hard drive, the lightweight data-interchange JSON. Hence you can edit these manually by using any text
editor such as Notepad. Generally you will not have to, but in some cases, if giglad fails to read one of your presets, you may be able tweak the file a bit in
order for this to be loadable again.
You can only create a preset if the Arranger module is active. This is quite obvious as it would make no sense trying saving your
Arranger's state while you are for example in the Style Editor. The easiest way to create a new preset
is to click on the Save button which can be found on the Arranger's toolbar. Alternatively, you can select from the menu
File→New→Preset... or Save Preset... directly and if you are a used to keyboard shortcuts your can just press Ctrl+S. Whichever of
these actions you choose to take, the result will be the same: The Preset Definition window will pop up.
In the Preset Definition window you need to choose which attributes will be saved. You can choose to take a full snapshot of the Arranger's
state by selecting all of them or you may wish to select partial attributes to be saved. In any case it is important to understand that only the attributes that you
have choose to save will be reinstated.
- Style (Foundamental):
Saves the current style that has been set to the arranger. The option will be disabled if there is no style currently set to the
Arranger. Note that the preset does not keep a copy of the style's data and only saves the path of the style. A such,
if you edit the style after creating the preset then, by reinstating the preset, the modified style will be loaded. If you move a style into a different place within
your Styles Directory, giglad will try to find it but it may fail. If you rename your style or delete it then the preset gets broken and
you will have to manually edit the JSON file to set the new style's path.
- Style (Mixer):
Saves the style group in mixer. That is the volumes, pans, mutes, pans and effects of the style tracks as these have been modified in the mixer.
- Melody (Foundamental):
Saves the melody tracks. That includes the track names, the selected instruments, effects, the playing ranges, the volumes, e.t.c. If an instrument cannot be found, when trying loading
a preset (this may happen if for example the corresponding plug-in dll has been removed) then the preset will be loaded normally but the name of the instrument will be
appeared in red.
- Melody (Mixer):
This option is disabled as it is linked with the Melody (Foundamental). Checking/Un-checking one will check/uncheck the other. It is only there for consistency and for the user to understand that the melody in the mixer and the
"Melody" tab are linked together.
- Physical (Foundamental):
Saves the physical tracks. That includes the audio input channels, the effects, the volumes, e.t.c.
- Physical (Mixer):
This option is disabled as it is linked with the Physical (Foundamental). Checking/Un-checking one will check/uncheck the other. It is only there for consistency and for the user to understand that the physical in the mixer and the
"Physical" tab are linked together.
- Master (Mixer):
Saves the master of the mixer. That includes the master volume, the master pan, the effects, etc. Mind that this option is off by default. That is because in most cases you will not want the master to be reinstated. If for example you
are playing something and for any reason you have set the volume to -10db you will probably want for this to stay there if you set a different preset. Another common scenario is that you wish to set some effects to your master and you
want them to stay as they are even if you set another preset.
- Tempo:
Saves the selected tempo.
- Transposition:
Saves the selected transposition.
- Key Note:
Saves the key note.
- Split Note:
Saves the note which defines how your current Arranger's Virtual Keyboard has been split the Chords/Melody ranges.
- Octave:
Saves the +/- octave which which has been selected for Arranger's Virtual Keyboard.
You may feel the urge to always save all the attributes mentioned above but in most cases, it will be quite useful to save only some of them.
The presets explorer is available only when the Arranger is the active module.
It displays your presets, as these exist as json files in your O/S, in a tree hierarchy. The root item is the Presets Directory as this can be
defined and changed from the settings. Changing the Presets Directory will cause the tree to re-populated.
Giglad is using the tree hierarchy instead of a linear representation of the presets as it gives great flexibility and allows you to group your presets anyway you wish.
The presets explorer provides some functionality but, at the moment, in no case has the power of your O/S explorer. If for example you wish to copy or move presets around,
you need to do this outside giglad. Mind that the software does not monitor preset changes outside the software itself. If for example you rename a preset from your
O/S or move a preset to a different place, you must manually press the F5 key in the presets explorer window in order for the tree to be updated.
☛ Double left clicking on a preset will cause the preset to be loaded and be set to the Arranger.
☛ Right clicking on a preset will select the preset and pop up a menu in order to take further actions regarding your selection.
- Rename: Pops up a new window in which you can set a new name for the preset.
- Delete: Deletes the preset (i.e. its corresponding file) permanently from your system. This action is not undo-able so use it with caution.
- Show in explorer: Opens O/S Explorer to show the location of this this preset.
☛ Right clicking on a style's parent directory will select the directory and pop up a menu in order to take further actions regarding your selection.
- New Preset: Pops up the Preset Definition window in order to create a new preset in the directory that has been selected
in the explorer.
- New Directory: Creates a new directory which will have the selected in the explorer directory as its parent.
- Delete: Deletes the directory and all the presets in it. Be extra careful when using this, because the action is not undo-able
- Show in explorer: Opens O/S Explorer to show this directory's location.
A song is a list of instructions which can be set to the Arranger in order for this to play by itself. The instructions describe which style will be used
and when, the chords to be played, tempo changes, etc. These instructions are based on a kind of a scripting language;
YAML which is a human-readable data-serialization language. This may sound difficult at start but once you get used of it,
you will acknowledge how fast and easy this approach allows you to create your songs.
You can create a new song from the menu File→New→Song... or in the Songs Explorer by right clicking on the
parent directory where you wish to create your song and then select the corresponding menu command New→Song.... In both cases the Song Definition window
will pop up where you need to define the basic attributes of your song.
- Name:
A unique in its relative path name for your song. Because the name of the song is used to save the corresponding file, only valid file names are allowed.
You can easily rename a song after creating it.
- Relative Path:
The relative path of the song considering the Songs Directory. You may not type directly into the edit box. You
need to click on the button at the right side of the control and select the directory from there. Songs can be moved around after their creation.
- Template:
You can leave it to none or you can select one of the existing templates which will be your starting point in the process of creating the song. Please mind
that if you try validating a template it will fail as you need at the minimum to set the song title and the style/section that will be used.
The templates that come with the installation of the software can be found in the ProgramData giglad's directory (usually C:\ProgramData\giglad\Templates). These
templates are *.yaml files, just like the songs. This simply means that you can easily create your own templates by just creating a *.yaml files and you place them
inside this directory.
Clicking on the OK button will create a song file in you hard drive and navigate you in the Song Editor, from where you can
describe your song.
The songs explorer displays your songs, as these exist as yaml files in your O/S, in a tree hierarchy. The root item is the Songs Directory as this can be
defined and changed from the settings. Changing the Songs Directory will cause the tree to re-populated.
Giglad is using the tree hierarchy instead of a linear representation of the songs as it gives great flexibility and allows you to group your songs anyway you wish.
The songs explorer provides some functionality but, at the moment, in no case has the power of your O/S explorer. If for example you wish to copy or move songs around,
you need to do this outside giglad. Mind that the software does not monitor songs changes outside the software itself. If for example you rename a song from your
O/S or move a song to a different place, you must manually press the F5 key in the songs explorer window in order for the tree to be updated.
☛ Double left clicking on a song will cause the song to be loaded, be set to the Arranger and immediately start playing. When the song
stops playing (by either reaching its end or by clicking on the Stop button) it gets removed from the Arranger. Which means that the Play button button
will not start playing the song from scratch but instead it will start playing the currently selected style.
☛ Right clicking on a song will select the song and pop up a menu in order to take further actions regarding your selection.
- Edit: Causes the song to be loaded and be set to the Song Editor.
At the same time it switches to the Song Editor in order for you to edit the song.
- Rename: Pops up a new window in which you can set a new name for the song (This action does not change the song's title).
- Delete: Deletes the song (i.e. its corresponding file) permanently from your system. This action is not undo-able so use it with caution.
- Show in explorer: Opens O/S Explorer to show this song's location.
☛ Right clicking on a song's parent directory will select the directory and pop up a menu in order to take further actions regarding your selection.
- New Song: Pops up the Song Definition window in order to create a new song in the directory that has been selected
in the explorer.
- New Directory: Creates a new directory which will have the selected in the explorer directory as its parent.
- Delete: Deletes the directory and all the songs in it. Be extra careful when using this because the action is not undo-able
- Show in explorer: Opens O/S Explorer to show this directory's location.
Anything that is played to the Arranger can be recorded. The current file format of the recording is *.wav which can be played by almost any
media player and by giglad itself.
You can create a new recording from the menu File→New→Recording... or in the Recordings Explorer by right clicking on the
parent directory where you wish to create your recording and then select the corresponding menu command New→Recording... or from the menu
Arranger→Start Recording... or by simply pressing Ctrl+R. In all cases the Recording Definition window
will pop up.
- Name:
A unique in its relative path name for your recording. Because the name of the song is used to save the corresponding file, only valid file names are allowed.
You can easily rename a recording after creating it.
- Relative Path:
The relative path of the recording considering the Recordings Directory. You may not type directly into the edit box. You
need to click on the button at the right side of the control and select the directory from there. Recordings can be moved around after their creation.
- Audio Format:
Wav, Ogg-Vorbis, Flac and Aiff audio file formats are supported.
After clicking on "Start Recording", the window will close and the audio output will be recorded.
As the note in the definition window suggests, you need to press Ctrl+R or select Arranger→Stop Recording in order to terminate the recording.
The recordings explorer displays your recordings, as these exist as audio files in your O/S, in a tree hierarchy. The root item is the Recordings Directory as this can be
defined and changed from the settings. Changing the Recordings Directory will cause the tree to re-populated.
Giglad is using the tree hierarchy instead of a linear representation of the recordings as it gives great flexibility and allows you to group your recordings anyway you wish.
The recordings explorer provides some functionality but, at the moment, in no case has the power of your O/S explorer. If for example you wish to copy or move recordings around,
you need to do this outside giglad. Mind that the software does not monitor recordings changes outside the software itself. If for example you rename a recording from your
O/S or move a recording to a different place, you must manually press the F5 key in the recordings explorer window in order for the tree to be updated.
☛ Double left clicking on a recording will cause the Arranger to immediately start playing the recording. When the recording
stops playing (by either reaching its end or by clicking on the Stop button) it gets removed from the Arranger. Which means that the Play button button
will not start playing the recording from scratch but instead it will start playing the currently selected style.
☛ Right clicking on a recording will select the recording and pop up a menu in order to take further actions regarding your selection.
- Rename: Pops up a new window in which you can set a new name for the recording (This action does not change the recording's title).
- Delete: Deletes the recording (i.e. its corresponding file) permanently from your system. This action is not undo-able so use it with caution.
- Show in explorer: Opens O/S Explorer to show this recording's location.
☛ Right clicking on a recording's parent directory will select the directory and pop up a menu in order to take further actions regarding your selection.
- New recording: Pops up the Recording Definition window in order to create a new recording in the directory that has been selected
in the explorer.
- New Directory: Creates a new directory which will have the selected in the explorer directory as its parent.
- Delete: Deletes the directory and all the recordings in it. Be extra careful when using this because the action is not undo-able
- Show in explorer: Opens O/S Explorer to show this directory's location.
You can start playing a recording by dragging and dropping the recording into
the Arranger window.
Chords progressions are considered Arranger's Inputs and they are exclusively placed inside the Arranger window instead of the bottom left panel
where the file explorers persist. They can be used with a foot midi controller in order to switch chords in the Arranger using your foot. This implies that a chord must be detected by a single
note as you can only press one note with your foot using a mid controller of this type. In order to do so, you need to instruct giglad which chord to play when a specific note is "on". This is achieved by
creating a chords progression file.
Before start using this feature, you need to assign the role "Pedal" in one of your midi devices from the settings. You can assign this role to any type of a midi controller; it does not
have to be an actual foot midi controller. When you assign this role, the Arranger knows that should use the midi input from the specified midi controller to switch chords by a single note.
Creating New Chords Progression
You can create a new chords progression from the menu File→New→Chords Progression... or in the Pedal tab of the Arranger by right clicking on the
parent directory where you wish to create your file and then select the corresponding menu command New→Chords Progression.... In both cases the Chords Progression Definition window
will pop up where you need to instruct how the chords will be changed by a single note.
- Name:
A unique in its relative path name for your chords progression. Because the name is used to save the corresponding file, only valid file names are allowed.
You can easily rename a chords progression after creating it.
- Relative Path:
The relative path of the chords progression considering the Chords Progressions Directory. You may not type directly into the edit box. You
need to click on the button at the right side of the control and select the directory from there. Styles can be moved around after their creation.
- Key:
The key note that corresponds to the chords that you will define in the table below. The key can change "in the fly" later for the defined chords to adapt to the new key.
The table is pretty straight forward. You instruct giglad which chord to play for which note. You can do this by double clicking on the corresponding "Chord" column of the note
you wish to assign. For example and as shown in the picture, I have instructed giglad to play Am when I play the note A, Dm when I play the
note D and E(maj) when I play the note E. You can define any chord you like in any note even if it makes no sense at a first glitch. For example I have instructed to play A(maj) when the note is A# because it is convenient
to me. (Unassigned) notes will be ignored meaning that no chord switch will take place if any of these notes go "on".
After having created one or more chords progressions, the time has come to actually use them in order to switch chords in giglad using one note. The pedal tab can be found at the top left of the
Arranger and consists of the following:
- Title: At the top left corner of the window, you can see the selected device with the role "pedal" and the selected chords progression. In the case of our image that would be "APC Key 25" for the
device (which is not actually a foot midi controller) and "minor5thMajor" for the chords progression.
- Chords Progressions Explorer: Explained in detail below.
- Key: The key in which the selected chords progression will use to adapt. In our image, we set the key "A" when we have created the chords progression but here we have changed it on the fly to be C.
All the chords have been transported to match our key.
- Adapt Key: When this option is on, setting another chords progression to the Arranger will cause it to use the Key of this window. Otherwise it will use the originated key
and the Key of this window will change to match the key of the chords progression.
- Chords List: Not editable. It is there to remind you the chords that have been defined in the selected chords progression.
You can set a chords progression to the Arranger by double clicking on the corresponding file in the chords progressions explorer.
The chords progressions explorer displays your chords progressions, as these exist as json files in your O/S, in a tree hierarchy. The root item is the Chords Progressions Directory as this can be
defined and changed from the settings. Changing the Chords Progressions Directory will cause the tree to re-populated.
Giglad is using the tree hierarchy instead of a linear representation of the chords progressions as it gives great flexibility and allows you to group your chords progressions anyway you wish.
The chords progressions explorer provides some functionality but, at the moment, in no case has the power of your O/S explorer. If for example you wish to copy or move chords progressions around,
you need to do this outside giglad. Mind that the software does not monitor chords progressions changes outside the software itself. If for example you rename a recording from your
O/S or move a recording to a different place, you must manually press the F5 key in the chords progressions explorer window in order for the tree to be updated.
<
☛ Double left clicking on a chord progression will cause the selected chords progression to be set to the Arranger.
☛ Right clicking on a chord progression will select the chord progression and pop up a menu in order to take further actions regarding your selection.
- Edit: Pops up the Chords Progression Definition window for editing.
- Rename: Pops up a new window in which you can set a new name for the chords progression.
- Delete: Deletes the chords progression (i.e. the corresponding file) permanently from your system. This action is not undo-able so use it with caution.
- Show in explorer: Opens O/S Explorer to show this chords progression's location.
☛ Right clicking on a chords progression's parent directory will select the directory and pop up a menu in order to take further actions regarding your selection.
- New Chords Progression: Pops up the Chords Progression Definition window in order to create a new chords progression in the directory that has been selected
in the explorer.
- New Directory: Creates a new directory which will have the selected in the explorer directory as its parent.
- Delete: Deletes the directory and all the chords progressions in it. Be extra careful when using this because the action is not undo-able
- Show in explorer: Opens O/S Explorer to show this directory's location.
The output window displays real time information as well as warnings and errors while the software is in use. Giglad dislikes the traditional message boxes (i.e. windows
which display some kind of a message and block the user interface until the user clicks on a button) and tries to avoid them as much as possible. As such, many warnings and
errors are only be reported to the output window. Therefore, it is crucial to always keep an eye on this window as it may gives you a hint or an explanation for
something that does not work as you would expect.
-
Errors are displayed in red and require your immediate attention.
-
Warnings are displayed in yellow and indicate that something goes wrong but you may continue.
-
Info is displayed in white and does not require any action.
In the image above:
☛
The Failed to open audio device ASIO: Studio USB ASIO Driver clearly tells me that giglad has failed to use the audio device which
I have selected from the settings. Without an audio device there will be no clock, there will be no sound coming out.
☛
The Cannot start playing without a style or song has been set was reported when I clicked on the Play button without
having set a style to the Arranger.
☛
The Failed to use virtual instrument from memory pool "DrumKit": It is not included in the plug-ins memory pool was reported when
I loaded a style. The style was loaded but I got a warning which simply tells me that I am using a virtual instrument in my style from the memory pool which cannot be found.
Right clicking on the output window will pop up a menu from where you can:
- Copy the whole or partial output
- Clear the output.
The Arranger is the core of giglad. Here you can play your music live. The interface has been designed to be as simply and friendly to the user as possible and to simulate a physical keyboard arranger. Its elements are described below.
Displays the chord currently played with your midi keyboard controller. No user interaction is available on this element.
You can change the tempo or the transposition by moving the corresponding slider or by pressing the +/- corresponding buttons. Alternative you may wish to use
Midi Controls to change the tempo or transposition by your midi keyboard.
Displays the current tempo, the style's time signature and the current transposition. It also displays the status Playing/Stopped and if Playing
it displays the beats. No user interaction is available on this element.
- The middle button causes the arranger to start playing. A style must be prior set in order to do so and the button gets disabled when the arranger is already playing.
- The far right button causes the arranger to stop playing. The button gets disabled if the arranger is not playing.
- The far left button sets the Arranger in Sync Play mode in which it will start playing the moment a chord
is detected in the midi keyboard and will stop playing when all notes go off in the midi keyboard. It is a tri-state button: The white color states that the Sync Play mode is off.
The red color can only be set when the arranger is stopped. It states that the Sync Play mode is on but the moment the arranger starts, it will be set off.
The green color states that the Sync Play mode is on and it will stay on until explicitly be set off.
You can start/stop the arranger and turn the sync-play on/off directly from your midi keyboard controller by using Midi Controls.
The Spacebar key in you PC keyboard also toggles the Start/Play meaning that if the arranger is stopped and you press the spacebar, the arranger will start playing
and if already playing the spacebar will make it stop.
This is where you can switch to a different style section. The element is populated by the selected style, hence the number of sections and the names can be different
from style to style. You can also switch style sections directly from your midi keyboard controller
by using Midi Controls.
Displays the currently selected style (if any), the song that is currently playing (if any) and the currently preset that has been set to the
Arranger (if any).
No user interaction is available on this element.
The mixer is divided into different groups and the visibility of these groups can be set from the settings.
You can change the volume of your tracks, you can change the pan and you can mute tracks (with the [M] button) or set them as solo (with the [S] button).
You can also add effects to your tracks although but mind that for a style you will probably want to do that on the Style Editor in order for
the effects to be saved with your style.
At the end of each group is the master control of the group.
Hence for example you can increase/decrease the volume of all the style tracks by simply changing the volume of the Style track.
The master track of each group has a purple colour and it is always visible. But to access the other tracks due to space limitations you may have to use the bottom scrollbar.
The mixer changes only affect
the current state of the Arranger. If for example you change the volume of a style track lets say from 0db to 6db the change will not be saved in your
style file. Which means that if you reload the style the corresponding volume will be 0db again. If you wish your changes to the attributes of the track to be permanent
then you must change them via the Style Editor.
This is because you can save the state (which includes the mixer) of the Arranger as a Preset and you can have the same style in different
presets with different track attributes.
A common simple example is to create a style which includes lets say drums instrument. And you wish to use the same style in two different songs but in one of these
songs you wish to have the drums muted. Instead of creating two styles you are creating only one and you create 2 different presets: One with the style
as is and one with the drums track muted.
The Arranger Virtual Keyboard represents your physical midi keyboard controller with the "Main" role. While playing notes on your main midi controller, you will have the
corresponding ones highlighted in the Arranger Virtual Keyboard. If that is not the case then re-visit your settings.
At the top of the Arranger Keyboard a splitter exists which can be moved
by the mouse or by the assigned midi control to define your Chords range and your Melody range.
A note that is played in the Chords range is used to identify the chord that must be played for the activated style. These ranges are also taken under
consideration by the Melody tracks (default by the Left Hand tracks).
There is also also a control which allows you to set +/- the octaves for you melody playing. Most midi keyboard controllers already have this functionality but this
proves to be inconvenient as by changing the octaves in your midi controller directly you will also offset the chords/melody splitter without this being reflected in the user interface.
The Arranger Virtual Keyboard can also be driven by your PC keyboard with key [A]→[C4], [S]→[D4], [D]→[E4] and so on. Obviously this
is not quite convenient. To play properly you need a hardware midi keyboard controller.
Setting the key note is like changing the root chord of your currently playing style. If for example you are playing a style which has a root chord of Cmaj7
and you set the key note to A, then the style will behave as its root chord is Amaj7. Hence, if you are playing a song on Am scale, you will probably want
to have the key set to A. But this not restrictive and sometimes it may even sound better if you have a different Key Note than the scale you are playing.
It depends on the style and the virtual instruments.
The Style Editor provides you with the necessary tools to create your style. The main window's screen is divided in two, where at the top you can see the tracks
as well as the timeline of your style and at the bottom is the Midi Editor where you can view and edit the midi events of each track. It may feels like
the Midi Editor is a different window but in fact it goes along with the Style Editor and it is only visible when the Style Editor
module is active. In cases, it can be quite useful to detach the Midi Editor window while creating a style to avoid constant resizing between the main window
of the Style Editor and the Midi Editor. You can do this from the menu View→Lower Left Panel Attached.
A style is based on the midi protocol; it is a midi file after all. This document will assume that you have no previous experience with midi and will
try to explain things as easy as possible. Nevertheless, it may fails to do so in which case, if you are having a hard time understanding, you can learn more about midi
on the Internet. In fact, it is advised to do so as you will feel more comfortable of what it is that you are doing.
☛
A style is composed by tracks. Each track plays a virtual instrument and all the instruments are mixed in order to produce the final result.
☛
A style has a timeline. The timeline is split into different sections and these are in fact the sections of the style.
In the picture above three tracks are visible (more exist but they do not fit in the window) and the timeline has six measures. Measure 1 defines the Intro section
while Measures 3,4 and 5 define the Verse section. Measure 2 & 6 are also serve a purpose but lets assume for now that they are just ignored from the timeline.
When creating a new style, and if you leave all its definitions as default, your Style Editor window will look like the one below. By default, you get one track,
called Track 1 and one section in the timeline called Main with one Measure; One more measure is added at the end of the timeline which does not belong to the
section. Eventually you will wish to add more tracks, more sections and instruct each track what notes should play and when.
Please refer to the tracks section which describes in detail how you can select an instrument and setup the volume, pan,etc.
The tracks in the Style Editor can be selected. You can select a track by click anywhere inside it (not inside of its controls) or by clicking on its corresponding
timeline. You can also select multiple tracks by holding down the Ctrl key and change multiple attributes simultaneously.
You can add a track by clicking on the Add button which can be found at the end of the tracks and you can remove a track by clicking on the Remove button which can be found
at the top right side of the track you wish to remove.
You can also rearrange your tracks by selecting one or more of them simultaneously and clicking on the Up/Down arrows right next to the cross.
You can switch to the Style's Editor memory pool by using the corresponding tab at the bottom of the top right window. Please refer to the Memory Pool section to understand the purpose of the memory pool and how you can use it.
Here, it should only be used for plug-ins which support multiple channels (e.g. Kontakt) in order to relief your system by creating only one instance of the plug-in and use multiple instruments in your style's tracks. For other type of plug-ins there is no
real advantage to go through the memory pool to select your style instruments.
Style's memory pool is referred as Memory Pool (S) and it is created when the style gets loaded. When the style gets replaced by another style, it's memory pool is destroyed. The information of the Memory Pool (S) is stored within
the file of the style and an advantage of using it instead of the global memory pool is that the whole information is kept in a single file.
Chord Transposition Algorithm (CTA)
The style tracks have an additional tab window called CTA. The attributes on this window describe how the midi events will adapt on each chord you are playing.
As mentioned in previous chapters, a style has a root chord. To make it easier, let's assume that the root chord will be Cmaj7.
Every track plays notes by respecting the root chord. For example the guitar may play C4-E4-G4-B4 while the bass plays C4-G3-C4-G3. It is not compulsory for
the tracks to play only notes that belong to the root chord, but they usually do.
When playing live using your style and you play for example the chord Am, the Arranger's engine needs somehow to know
how to play A3-C4-E4-A4 instead of C4-E4-G4-B4. This is succeeded with the CTA where you need to select for each track which algorithm will be used to
do the conversion.
CTA also takes under consideration the Key Note which is set either to the Arranger
when playing live or to the song. The
following explanations assume C Key Note.
-
CTA: Bypass:
No transposition is applied at all. This algorithm should always be set for percussion (drums) as the notes of the percussion are not affected by the chord
that is playing.
-
CTA: Fixed:
Transposes in such a way so the result notes to be as near as possible to the ones defined in the root chord. For example
C4-E4-G4-B4 for Am chord will be converted to C4-E4-A4-A4.
-
CTA: U-Shift:
Transposes Up each note by maintaining the semitones relationship. For example
C4-E4-G4-B4 for Am chord will be converted to A4-C5-E5-A5.
-
CTA: N-Shift:
Transposes Near each note by maintaining the semitones relationship. For example
C4-E4-G4-B4 for Am chord will be converted to A3-C4-E4-A4 because A3 is nearer C4 than A4.
-
CTA: D-Shift:
Transposes Down each note by maintaining the semitones relationship. For example
C4-E4-G4-B4 for Am chord will be converted to A3-C4-E4-A4.
The X-Shift CTA can be X-Shift [Chord] or X-Shift [Bass]. It is recommended to use [Bass] for your instruments that are playing the bass.
The CTA window has two more options:
-
Root Chord:
You may wish to override the root chord of your style for one or more tracks. If you choose something other than "Inherit Style", the track will use the selected chord as its root chord and will totally ignore
the root chord of the style.
-
Chord Switch:
Describes how the arranger will behave on a chord switch when a note from a different chord is already on.
☛Shift [Attack]: The note will be played again to match the new chord
☛Release: The note will be set off and will only be played again when the midi events instruct to do so.
The Midi Editor is used to describe the midi events that each track will send to the instrument. By the term midi events, we mainly mean notes but it can also mean some control events such as Sustain, Sostenuto and Soft.
- The central grid where the midi events are defined.
- The bottom grid where the velocities of the notes are defined
- A keyboard on the left side which makes it easier to find the notes you wish to put in the central grid.
- A toolbar with available actions such as select, edit, zoom etc to help you editing.
The Midi Editor reflects the selected track. Hence, you need to select at least one track to start editing. Selecting multiple tracks and using the
editor is not advised and it is only needed in certain cases. Most of the time you will wish to select one track and start adding notes in it. Later on this chapter,
we will see how the midi events can be added directly from the midi keyboard controller while the Arranger is playing but for now let's use our PC keyboard
and mouse to better understand the editor.
Understanding the central grid is crucial
and quite straight forward. Each cell, in the left image, represents a quarter midi event and you can see which note event from the
music keyboard on the left or which control event from the corresponding text. Here we have simply instructed for the quarter notes C-E-G-B to be played. The note starts playing at the beginning of the rectangle and
stop playing at its end. The bottom grid displays the velocity of each note, which is the force with which a note is played. Obviously, this is a a very simple example
and in the reality you will wish to describe much more complicated melodies. So let's dive a bit deeper.
By hovering the mouse over the toolbar buttons, you will get a tooltip of what each of this does.
☛
The Select Events (arrow) should be on, when you wish to select events in order to copy, move, delete them and more.
☛
The Create New Events (pencil) should be on, when you wish to add new events.
☛
The Grid Compo Box represents the note values in the grid. 1/4 will display quarter events, 1/8 will display eighth events and so on.
☛
The Zoom (magnifying glass) allows you to zoom the grid in/out.
☛
The Triple Events adjusts the cells accordingly to fit triple events, when it is on.
☛
The Snap(magnet) will cause the events to be added, copied, moved etc to get snapped into the grid in left(event on) and/or right(event off).
☛
The Quantize(Q letter) will pop up a new window where you can apply quantize to the already added events.
- Adding Events:
In order to add an event, the Create New Events button
should be selected (pencil). If you then click inside a cell of the grid, and while the snap button is on, an event will be created with the
value of a grid cell. More frequently, you will wish to press the left mouse button
somewhere inside the grid and start dragging to the right with your mouse. When you release
the left mouse button, the event will have be inserted. Depending on if you have the Snap on/off, the event will fill the grid cells or will
be placed exactly where you clicked.
- Selecting Events:
In order to select an event, the Select Events button should be selected (arrow). If you then click on an event, this will be selected. You can
click on another event, while pressing the Ctrl button at the same time time, to add more events in your selection. Alternatively you can select
multiple events by pressing the left mouse button anywhere inside the grid and outside events and start dragging so that you enclose events inside your window.
By pressing the Ctrl button and clicking on a note in the virtual keyboard at the left will result all the notes in the midi editor of the note that has been clicked to get selected.
- Deleting Events:
To delete an event, first select it and then press the Del key or right click with your mouse and select Delete
from the corresponding command menu. You can delete multiple events at the same time if multiple events are selected.
- Moving Events:
To move an event, press the left mouse button on an event and start dragging. You will see the event moving. By releasing the left mouse button the event
will be placed where you released the button. You can move multiple events at the same time if multiple events are selected. If while moving the Ctrl
key is down, then the events will be copied instead.
- Copying Events:
You can copy events as described exactly above on Moving Events. Alternatively, you can select one or more events and press Ctrl+C or
or right click with your mouse and select Copy from the corresponding command menu. The events will get in the clipboard and you can paste them
by placing the cursor where you wish for them to be copied and press Ctrl+V or
or right click with your mouse and select Paste from the corresponding command menu.
- Changing Existing Events:
By putting the cursor at the edge of an event (left or right), the cursor icon will be changed and imply that you can drag the event in order to change its value.
- Changing Velocities:
When adding a note, this is is added with the velocity that can be seen at the slide bar under the music keyboard (default 100). You can change this before adding the note but
usually you will want to change the velocities later, after placing a few notes. To do so, move your cursor at the top of the rectangle of one of your velocities
(bottom grid) and drag it up or down to change its value. Alternatively, you can select one or more notes and change their velocity from the velocity slide bar.
It should be clear by now that the notes in each style section are played in a loop when the section has been selected in the Arranger. For
example, a 4/4 style with selected the section Main which contains 4 quarter notes C-E-G-B will play C-E-G-B-C-E-G-B-C-E-G-B-C-E-G-B and so on. There is no
restriction on the number of measures that each section can have. The section will repeat itself when all measures of the sections have been played.
At the top of the timeline, in both the Midi Editor and the central window of the Style Editor you can see the
sections and the measures of each section as well as the total sections in your timeline.
☛
Right clicking on a section will pop up a menu from where you can take further actions such as adding a new section, rename a section, delete a section, etc.
-
Insert New Section:
Inserts a new section before the section that has been selected. In the image example, the new section will be added before Verse. A window will pop up
in order to give the basic attributes of your section such as the name, the number of measures and the number of echos.
-
Append New Section:
Inserts a new section after the section that has been selected. In the image example, the new section will be added after Verse. A window will pop up
in order to give the basic attributes of your section such as the name, the number of measures and the number of echos.
-
Rename Section:
Pops up a window where you can enter a new name for your section.
-
Remove Section:
Removes the section from the timeline and deletes all the note events that this contains.
-
Move Section Before:
Displays a list with all the sections but the one selected in order to move the selected one before another existing section. In the image example,
this option is disabled because the selected section is the first one so it cannot go before any other section.
-
Move Section After:
Displays a list with all the sections but the one selected in order to move the selected one after another existing section.
-
Insert Echo Measure:
Adds an echo to the section with a number of measures as requested. Echoes are
explained in detail later in this document. In the image example, this option is disabled because the section already has an echo.
-
Remove Echo:
Removes the echo from the section. Echoes are
explained in detail later in this document.
-
Successor:
Displays a list with all the sections but the one selected in order to select the successor of the selected section. This comes handy to sections which suppose to
act as bridges. For example, let's suppose you have three sections in your style: Verse, Bridge, Chorus. If you set the successor of Bridge to be Chorus then switching
to Bridge while being in the Arranger will cause the bridge section to only be played once (instead of going into loop) and automatically switch to the Chorus section.
You can also set the successor to be "Previous Playing" in which case the Arranger will switch to the section that was previously playing or you can set
the successor to be "Ending" in which case the Arranger will stop playing after the section finishes.
-
Can Switch On:
By default, sections switch on the first beat. On a 4/4 style for example, if you switch section on the second beat, the arranger will play the remaining 2 beats before switching to
the requested section. You may allow a section to switch on "any beat" by selecting the corresponding option. This is quite useful for "bridge" sections.
☛
Right clicking on a measure, regardless if this belongs to a section or not, will pop up a menu from where you can take further actions.
-
Insert Measure(s):
Inserts one or more measures before the section that has been selected. In the image example, the measure(s) will be added before Measure 1.
-
Append Measure(s):
Inserts one or more measures after the section that has been selected. In the image example, the measure(s) will be added after Measure 1.
-
Remove Measure:
Removes the measure from the timeline and deletes all the note events that this contains.
Echoes are an advanced feature of giglad. They may feel hard to understand at the beginning, but once you get familiar with them,
they will allow you to take your style into the next level.
Echo is the part of the timeline between the end of one section and the start of the next. In the image below, Measure 2 is echo.
As the Arranger is playing, when the timeline reaches the end of section Main, it will be moved back again at
the start of section Main. But at the same moment, another timeline continues in order to play the events of the echo. In other words,
the events of a section's echo are "mixed" with the section itself.
Let's understand the benefits of echoes. In the image above, note E (upper event) will be played at the start of the section Main. At the end of the section,
the note will go off, and almost instantly it will go on again as the timeline will go back at the beginning of the section. This may of course be a desired behavior. But
what if you wish the note to keep playing for ever and never goes off? This can be
succeeded by using the echo of the section Main. In the image above again, note C (lower event) will be played at the start of the section Main. Because
the note goes off at section's echo, but before goes off it has been set on again, as the timeline went back to the begging, what will happen is that the note will never go
off and the sound will be constant.
Echoes can also provide a great beneficial usage on a Bridge section, i.e. a section that exists only for the transition from section A to section B. In the image
below, the bridge section will play C-E-G-B and at that time you can switch to a different section which will start playing but the echo of the bridge will continue and play
all the notes C-E-G-B at once. The best practical example of the bridge is the crash cymbal of the drums which usually goes at the beginning of the next section. To achieve
the desired behavior, you can use the bridge's echo end put the crash cymbal at the echo.
The Song Editor is the tool which you will use to create and edit your songs.
A song is based on the human-readable data-serialization language
YAML; hence, you could use any text editor such as Notepad (or even better Notepad++ which also supports YAML syntax)
to create your songs. However, the in house Song Editor provides some additional functionality such as playing specific song segments, formatting chords
and validating not only the YAML syntax but also the song requirements. This additional functionality will be a great asset in the process of creating your song.
If you find it hard to understand the song syntax as explained below, you should search on the internet a bit about the YAML syntax. A song is after
all based on YAML and it just adds a few simple rules to form the song. But the core syntax does not change.
A song consists of the Header which must be unique and the Segments which can be as many as you like. Each of them consists of
a number of mandatory or optional attributes. Lets see and explain the example below
which is one of the simplest songs that can be created.
-
#----------------------------------------------------
# Song header:
Anything after the # character is considered a comment and it is not taken into consideration. You can write anything you want
after a # and it is just for your own convenience. The song will play even if this is omitted or if we write instead "# This is my song header".
-
song:
This declares the song header and it is a mandatory field.
-
tempo:
This is an attribute of the song and it will set the tempo to 100bmp.
-
segments:
Here we describe the segments which we want to be played in our song. We describe our segments by separating them with comma and enclosing them inside
brackets, i.e. [segment1, segment2, segment3, etc]. In this example we have defined a segment below named mySegment and we have instructed
here for this to be played twice.
-
mySegment:
This declares a segment and as we have seen, it is used by the song header. Any name can be used (within YAML restrictions).
-
style:
This is an attribute of the segment and instructs the style and the style section to be used when the segment is about to be played. We describe the style by
the relative in our Styles Directory path of the style, separated with comma with the style section name
inside brackets, i.e. [relative_style_path, style_section_name].
-
chords:
This is obviously the most critical part where we describe the chords to be played. For simplicity, we’ll consider for now a
beat and quarter note to be synonymous. The chords are described again with comma separators inside brackets while the parenthesis states the number of
beats for the chord to be played. Hence, in this example, the chord Am will be played for 3 beats and then the chord E7 will follow and will be
played for 1 beat.
So by taking into consideration all the above, when the song is played the style \8beat\SlowBaland will be used with its section AA as active and tempo 100.
Then the following chords will be played Am (3 beats), E7(1 beat), Am (3 beats), E7(1 beat). Please mind that the segment mySegment contains only two chords buts
its played twice in the song header.
The syntax of a song is Case Sensitive. If you define a segment with a name mySegment and try to use it in the song header as
MySegment you will get an error. If instead of tempo you type Tempo then you will get no error because the tempo attribute is optional. What will
happen is that it will be ignored and eventually the style tempo will be used.
It should be noted here that the segments do not reflect the commonly used parts of the song Intro-Verse-Chorus. Sections must be defined where different instructions need
to be set. For example if the tempo changes you need to create a segment. It is also a good practice to have segments that declare unique chords. If for example there is a
song that its chorus has two chords that change like that Am-E7-Am-E7-Am-E7 it is best to create one segment with the chords Am-E7 and declare it to be played 3 times in the
song header.
At the end of the day, it does not make too much difference and the best practice is the one that suits each user. So as long as you get the expected result and you are
happy with it, it does not matter how you have form your song.
The song header and the segments contain attributes which are specific keywords for the song and provide a single instruction to the Arranger.
In the example above, we have seen some of these attributes e.g. the tempo which instructs the tempo to be set. Most of the attributes can be set to either the
song header or to each segment. If for example the tempo is set at the song header, there is no need to be set to the segments. The song will have the same tempo
as this has been defined in the song header. But, you may wish to have a different tempo in some parts of the song in which case you declare the tempo in the segments.
☛ The following attributes are supported:
-
title
Restricted to the song header and at the moment it does nothing. It can be omitted, but it may have some use in the future.
-
tempo
Sets the tempo of the song or the segment.
It optional and if omitted, the tempo will be set from the tempo of the style. The value should be a number in range 32-288.
-
transposition
Sets the transposition to the song or the segment.
It optional and if omitted, there will be no transposition. The value should be +number for transposition up or -number for transposition down, e.g +2.
-
key
Sets the Key Note to the song or the segment.
It optional and if omitted, the default key note will be used. The value should a note e.g. "A".
-
count
Restricted to the song header and it is optional. The value should be a positive number.
If set, then before the song starts a metronome will count the number that has been set as beats.
-
style
Sets the style to the the song or the segment. It is mandatory to exist in the song header or to the segments. The value is the
relative in the Styles Directory path of the style, separated with comma with the style section name
inside brackets, i.e. [relative_style_path, style_section_name].
-
segments
Restricted to the song header and it is mandatory. Describes the list of segments to be played. The value should be a list with pre-defined segments e.g.
[segment1, segment2, segment3]"
-
chords
Restricted to the segments and it is mandatory. Describes the list of chords to be played. The value should be a list with chords that include their beat value
inside the parenthesis i.e. [Am(4), E(2), G(1), A(1)]. If the chord lasts less than a beat, you may add a fraction instead of a number. For example
an eighth chord would be written as Am(1/8)
Now that the song attributes and the basic syntax have been explained, let's examine and explain in detail a complete and well-known song, the Hotel California
song.
-
Anything after a # character is simply ignored. It is formatted with a green colour and just explains the song parts quickly.
-
We have set the key to B as this is in fact the song key
and it will result the CTA to perform better.
-
We have set the transposition to +2. This way, we will define the chords to Am scale
but in the end the song will be played in +2, i.e. Bm
-
We have set the same tempo to 78bmp. The song has indeed the same tempo.
-
We have set a counter to 4. A metronome will count 4 beats before the song starts playing.
-
We have define 3 segments which we use with the order that must be played in the song header. Mind that YAML does not get affected by new lines,
which gives us the flexibility to place the segments in the song header in different lines in order to make it easier for the eye to read. The intro chords sequence
is the same with the verse chords sequence so we are using the same segment for the intro and the verse part of the song. Additionally, the verse segment actually
defines half verse of the actual song. That is because in the specific song, the chords in the verse part of the song are repeated. As such to play the verse part of
the song, we put the verse segment twice each time.
-
We are using the same style in the song, i.e. \16beat\A.Baland. But we use a different style section for the verse and the chorus, i.e. Verse style section for
the verse segment and Chorus style section for the chorus segment.
Tracks are used in the Arranger to setup the virtual instruments for your right/left hand and in the physical inputs to setup an external audio source (e.g. microphone). They are also used in the
the Style Editor to compose the style. Each track has multiple tabs from where you can access the different functionality of the track. The name of each track is displayed at the top and
can change by clicking on it. At the top right corner, there is a "program" icon button which can be used to save the current state of the track as a Program. Additionally, in the
Style Editor, a "remove" icon button exists next to the "program" icon button which will remove the corresponding track from the style.
(Available for Melody tracks only)
In this window, you can setup further your midi controller with the specific track.
- Select Midi Input Device:
By default, each track will receive input from your main midi keyboard controller (i.e. the midi controller which has been enabled with the role "Main"). But if you have more than one midi controllers which
you have assigned them with the role "Aux" then you can instruct the track to receive input from a different midi controller. This feature allows you for example to have multiple keyboards and have assigned one track
to each one of them which will end up for you to being able to play a different virtual instrument on each of your midi keyboard controllers. Mind that if you select "Main Device" then the track will always receives the
input from the main device which means that if you change your "Main" from settings, the track will adapt. But if you select the name of your device, then the track will always use this device. If the device is not found,
because for example you forgot to turn it on when starting giglad, it will be in red and the track will play nothing.
- Select Midi Input Channel:
By default, this is set to "all" which means that on whatever midi channel the midi device sends the data, the track will receive the data and send them to the corresponding virtual instrument. But you
can optionally filter to only receive midi data from a specific midi channel.
- Select Range:
You can select the range from where the input will be received. By default, the Right Hand tracks have the "Melody" Range set and the Left Hand tracks have the "Chords" range set (The chords and melody
ranges are defined by the splitter on the top of the virtual keyboard). When you play something in your midi
controller, notes that do not belong to the specified range will be ignored. You may also define a custom range. This feature gives great flexibility as you can use one midi controller in order to play different
virtual instruments in each range.
- Select Octave
You can select the octave in which this track will eventually output. If for example your play C1 in your midi keyboard controller and this setting is +1, then you will eventually listen C2.
(Available for Style tracks only)
In this window, you can define the attributes which will transpose the midi note events of the track for each chord you are playing.
The attributes of this window are explained in detail in the Style Editor Chord Transposition Algorithm (CTA) section.
(Available for Melody, Physical and Style tracks)
In this window, you can add one or more VST/VST3 effects in your track.
- Add Effect:
Clicking on the Add button will pop up a menu with the available VST/VST3 effects. The plug-ins are categorized by their manufacturer to save some space.
The list will be empty if no plug-ins are available in giglad. Ensure that you have plug-ins installed in your system and that you have defined the plug-ins search directories
in the settings.
- Remove Effect:
Clicking on the Remove button will remove the selected effect.
- Up/Down Arrow buttons:
Using the Arrow buttons you can change the order of the effects. The effects in giglad are serial processed and as such the order matters.
-
Double left clicking on a plug-in will display its window.
-
Right clicking on a plug-in will pop-up a menu with additional options. Using this menu, you can insert a plug-in in between of existing plug-ins. You can also choose to bypass a specific plug-in in which case
there will be no audio processing.
Use effects with caution as they require additional processing power from your system. You can add effects to the group of the tracks (e.g. Style, Melody, Physical or Master) using the
style_editor for the styles and the mixer for the rest. If you want all your tracks in your style to have reverb for example,
do not place a reverb plug-in in each one of them. Instead, add one instance of this plug-in to the style.
Giglad does not compensate plug-in's latency as it would make it impossible to perform in real time. You will not be able to use VST/VST3 plug-ins which introduce latency
and if you try to add one, you will get the appropriate message.
Bank memories allow you to set a style, a program, a preset, a song or a recording in the Arranger by pressing a single button in your
midi keyboard controller. A very useful feature as it will allow you to play live easier without the need of your mouse and keyboard.
There are 256 banks in total and each bank has 16 memories which means that you have 16*256 = 208896 available memories. You can map each one of the sixteen memories into a midi control and you can also
map the go to next/previous bank via the settings. In order to assign a style, program, preset etc into a memory you need to drag the corresponding file from the
files explorer of giglad into the memory you wish to make the assignment. A new assignment will overwrite the existing one. You can also remove an assigned file by right clicking on the assignment and select
"Clear".
Mind that giglad does not currently monitor changes in the name or the location of a file. If you have assigned a style, a program, a preset,etc, in a memory and the corresponding file gets renamed or moved in a
different location, the memory will be invalid and will not work. Regardless, a memory knows both the absolute and the relative path of the file that has been assigned; meaning that if you move the whole parent directory
(e.g. the styles directory) into a different location and reset it properly, the memories will keep working as expected.
After assign a style, a program, a preset etc you can set the corresponding memory in the arranger by clicking on it or by pressing the corresponding midi control. Applying a style or a preset may require significant time
especially when heavy plug-ins need to be loaded. There is a "magic" functionality in giglad which tries to overcome this issue in cases you are playing live and you need to switch faster. You can pre-load a style or a preset in
memory and apply it later to the arranger which will result a much faster "apply". In order to do this, you must assign the Prepare Button in your Midi Controller. By then holding down the Prepare button
(while you are setting the memory) the
style or preset will be loaded in memory instead of applied in the arranger. So the next time you will apply it as you would normally do, it will be much faster.
Memory pool is an advanced feature of giglad and it can be used to serve two different purposes:
-
To efficiently use plug-ins which can send different instruments to different audio channels:
Some VST/VST3 plug-ins support multiple midi inputs and multiple audio outputs and they
can send different instruments to different audio channels. An example of such a plug-in is Kontakt. In such cases, it is much more efficient in terms
of audio processing to use only one instance of this plug-in in multiple tracks instead of creating a new instance of the plug-in for each track.
-
To reduce the loading time of a style or a preset:
Each time you request to use a virtual instrument plug-in in a track, a non trivial time is needed to load the plug-in in memory. By
placing the plug-in in the memory pool you literally eliminate this time.
It would be absolutely great to eliminate this time in all cases and make the style loading instantly but mind that the more plug-ins you put in the memory pool
the more memory giglad will request from your O/S. It is a bad idea to use memory that
you do not need, so you should only put plug-ins in memory pool which will actually be instantiated sooner or later.
In order to add a plug-in in the memory pool, click on the Add button and select the one of your choice. The plug-in's window
will pop up from where you can change its settings. In order to remove a plug-in from the memory pool select it by single clicking on the row that contains it and press the
Remove button. By double clicking anywhere in the plug-in's row but the "Tag" and the "Condition", the plug-ins window will pop up again to allow you further editing.
After the virtual instrument has been placed in the table you should double click on the Tag cell and give a unique identifier for your
entry. This identifier is crucial and it is used in the tracks to select an instrument from the memory pool but more importantly it is saved in the style file and in the presets.
Wisely set it and do not change it after you have used it in a style or in a preset as the latest will fail to load the instrument. Additionally, any changes you make to the plug-in's state are going to
affect every file that is using it. For example let's assume you have added a synth that sounds like a piano and set the tag as "myTag". You are creating a style that is using this in one of its tracks. Later on
you change the synth and you leave the tag "myTag" but you make it sound like a guitar. If you load your style, the track will play the guitar instead of the piano. This can be good and bad so use it as appropriate.
You can also select for a plug-in to be "Instance always alive" or "Instance alive when needed". When an instance is always alive, it is loaded in the memory when the program starts. In the image above, because I am
using these drums in almost every style, I have set "Instance always alive" to have them always in memory and do not waste time loading them. When an instance is alive when needed it is going to be created when a
style or a melody track requests to use it.
When a plug-in is added, a route entry will be added named as "Main" with the default configuration routing. You may add more routes by clicking on the Add button
and name them as you wish. If a plug-in in the memory pool does not support multiple instruments then its pointless and probably wrong to add more than one route. But for a plug-in that does support
multiple instruments (e.g. Kontakt), this is how you can achieve to use only one instance of this plug-in in multiple tracks. In order to setup this correctly you need first to set up different instruments on different
midi channels and in different audio channels in the plug-in (See for example the Kontakt below). Then you must correspond the instruments of the plug-in with the routes in giglad.
If everything has been setup correctly, you should be able to select the corresponding route from the memory pool in the track as shown below and listen at the correct sounds. Notice that the DrumKit does not have a
sub menu. That is because there is only the Main route available.
Always use your midi input controller or the virtual keyboard displayed in the memory pool when setting up the memory pool and avoid using the keyboard of the plug-in as it will mislead you on what is sent where.
Giglad can send the master audio or the midi events of the melody and style tracks to any application which supports VST3 hosting.
This is achieved via an in house implemented VST3 plug-in called glecho.
Setup the VST3
Glecho.vst3 plug-in comes with giglad installation and can be found at C:\Program Files\deltarray\giglad\VST3. You can either copy the plug-in in the default VST3 path
(i.e. C:\Program Files\Common Files\VST3) or you can instruct your DAW to include this directory in the VST3 directories search. Which ever way you choose,
you should eventually be able to use glecho inside your DAW.
You must then select IPC: Midi if you want giglad to send midi events to the plug-in (and eventually to your DAW) or IPC: Audio (Master) if you want giglad to send its master audio.
If you select IPC: Midi, you also need to select the track from which the midi will be received. The track can be a melody track or a style track. For audio, you should only have one instance of
the plug-in in your DAW. But for midi you need one instance of the plug-in for each of the tracks you are going to send/receive to be placed on your DAW's track. If for example you have a style with 5 tracks,
you need to create 5 tracks in your DAW, add an instance of the glecho plug-in to each one of them and add of course a virtual instrument (plug-in) to this track that will receive the midi data from glecho in order
to produce the audio. See below for a routing example with two tracks.
Select Your Audio Device
The next step is to instruct giglad to send audio or midi to the plug-in. For this, you must go to audio settings
in giglad and select glecho as your audio device. You will notice that you won't be able to select the sample rate and the buffer size of you audio as these attributes
are now inherited and defined by your DAW.
If you are sending midi, you also need to select glecho instead of a virtual instrument for each of the tracks you are going to send. Click on the (Select Instrument) and select glecho in your track as shown below.
Play Time
If everything has been setup appropriately, you should see [Status]: Running in glecho's UI. Additionally, you will see green audio leds when sending audio or small colored rectangles when sending midi which
represent the midi events. If you see nothing, something has not been setup correctly.
Limitations
- Glecho is available on Windows Only.
- Glecho has been tested and worked properly on four different DAW's. It would be impossible to test the behavior of the plug-in with every
DAW that exists in the market. If you have difficulties setting up glecho with your DAW, it is suggested to contact giglad's support.