Keyswitches

Things that make the work with LinuxSampler & Co easier, better, faster, louder and more sexy. Including friends like JACK, ALSA, etc.
Post Reply
User avatar
dahnielson
Moderator
Posts: 632
Joined: Wed Jan 23, 2008 11:25 pm
Location: Linköping / Tranås, Sweden
Contact:

Keyswitches

Post by dahnielson » Thu Jan 31, 2008 8:55 pm

How are keyswitches implemented?

How can I figure out if an instrument has keyswitches (apart from brute force: pressing pressing every key on the keyboard)?

How can I make my own with gigedit?
Anders Dahnielson

Ardour2, Qtractor, Linuxsampler, M-AUDIO Delta 1010, Axiom 61, Korg D12, AKAI S2000, E-MU Proteus 2k, Roland R-5, Roland HP 1300e, Zoom RFX-1000, 4GB RAM x86_64 Intel Pentium Dual 1.80GHz Gentoo Linux

User avatar
cuse
Developer
Posts: 366
Joined: Wed Jan 23, 2008 10:07 pm
Location: Germany

Re: Keyswitches

Post by cuse » Fri Feb 01, 2008 12:44 pm

Keyswitches are simply a consecutive area (I avoid the term "region" here, because it is NOT a region according to our terms) on the keyboard which is used to solely switch to another dimension region (a.k.a "case").

The easiest way to figure out whether some .gig file has an instrument with keyswitching is to do this on the console:

Code: Select all

gigdump your.gig | grep KEYBOARD
Because all instruments that support keyswitching use the so called "keyboard" dimension to do this.

And as you mention it, this is definitely a candidate for a little chapter of the gigedit howto, because its far from being clear how to do it for a newbie. Here's how you can add keyswitching to your own instrument:
  • Define the keyswitching area: Most importantly you first have to define a range on the keyboard which should be the keyswitching area. Usually instrument designers use an area which doesn't have a region defined, that is an area on the keyboard which is not mapped to make any sound, so dedicated only to switch articulations and samples the musician is actually playing at other areas of keyboard. So usually the keyswitching area is defined somewhere at the lower end of the keyboard and the actual samples (regions) are defined at higher areas of the keyboard. You could also make them overlap, but this usually doesn't make much sense.You define the keyswitching are in gigedit by clicking on the "Instruments" tab, right click on the respective instrument in the list view, then select "Properties" from the popup menu and finally you see two parameters in the new window which are called "Dimension key range low" and "Dimension key range high". These are exactly the parameters to define your keyswitching area.
  • Enable your regions for keyswitching: Next thing to do (we assume you already created your regions on the keyboard with samples assigned etc) is to add the "keyboard" dimension to your regions where you want to use keyswitching. In gigedit that dimension is actually already called "Keyswitching". You can do that by right clicking on the region you want to enable keyswitching (just close over the virtual keyboard), then choose "dimensions..." from the popup menu, then click on "Add" then choose "Keyswitching" in the upper combo box and the desired amount of zones / splits for the keyswitching influence in the lower combo box and click on "Ok". Repeat that step for all regions you want to enable keyswitching.
  • Adjust dimension regions as desired: now as you added a new dimension to your region(s), the final step is to define what the keyswitching actually should cause on the respective region. For that select the respective region (by clicking close over the virtual keyboard), select the respective dimension region's you want to edit (by clicking on the dimension zones below the virtual keyboard, probably use one of the "changes apply to:" checkboxes too) and finally adjust the articulation settings and the assigned sample reference as desired. Repeat that for all dimension regions of regions you want to tweak.

User avatar
cuse
Developer
Posts: 366
Joined: Wed Jan 23, 2008 10:07 pm
Location: Germany

Re: Keyswitches

Post by cuse » Sat Feb 02, 2008 9:45 am

I just renamed the misleading names in gigedit CVS (see CVS log).

Hmm... I would like to make this topic sticky until somebody adds a "Keyswitching" chapter to the gigedit docs. Isn't that supported by phpBB? At least I couldn't find anything in the moderator control panel.

User avatar
dahnielson
Moderator
Posts: 632
Joined: Wed Jan 23, 2008 11:25 pm
Location: Linköping / Tranås, Sweden
Contact:

Re: Keyswitches

Post by dahnielson » Sat Feb 02, 2008 10:34 am

cuse wrote:I just renamed the misleading names in gigedit CVS (see CVS log).

Hmm... I would like to make this topic sticky until somebody adds a "Keyswitching" chapter to the gigedit docs. Isn't that supported by phpBB? At least I couldn't find anything in the moderator control panel.
http://www.phpbb.com/support/documentat ... tools_type
http://www.phpbb.com/support/documentat ... ng_special
Anders Dahnielson

Ardour2, Qtractor, Linuxsampler, M-AUDIO Delta 1010, Axiom 61, Korg D12, AKAI S2000, E-MU Proteus 2k, Roland R-5, Roland HP 1300e, Zoom RFX-1000, 4GB RAM x86_64 Intel Pentium Dual 1.80GHz Gentoo Linux

User avatar
cuse
Developer
Posts: 366
Joined: Wed Jan 23, 2008 10:07 pm
Location: Germany

Re: Keyswitches

Post by cuse » Sat Feb 02, 2008 2:33 pm

Thanks!

User avatar
dahnielson
Moderator
Posts: 632
Joined: Wed Jan 23, 2008 11:25 pm
Location: Linköping / Tranås, Sweden
Contact:

Re: Keyswitches

Post by dahnielson » Fri Feb 08, 2008 11:54 pm

Wow. I sat down tonight to do some more serious editing with gigedit and I must say that it's actually fairly simple once you've groked how different regions, dimensions and splits are pieced together. After investigating how some professional gig files was programmed in terms of keyswitches, modwheel switches, dynamic layers and whatnot made the landing after the jump to adding those things myself a lot more softer.
Anders Dahnielson

Ardour2, Qtractor, Linuxsampler, M-AUDIO Delta 1010, Axiom 61, Korg D12, AKAI S2000, E-MU Proteus 2k, Roland R-5, Roland HP 1300e, Zoom RFX-1000, 4GB RAM x86_64 Intel Pentium Dual 1.80GHz Gentoo Linux

User avatar
cuse
Developer
Posts: 366
Joined: Wed Jan 23, 2008 10:07 pm
Location: Germany

Re: Keyswitches

Post by cuse » Sat Feb 09, 2008 9:26 am

Hey, do we have somebody for our orphaned gigedit documentation? ;)

User avatar
dahnielson
Moderator
Posts: 632
Joined: Wed Jan 23, 2008 11:25 pm
Location: Linköping / Tranås, Sweden
Contact:

Re: Keyswitches

Post by dahnielson » Sat Feb 09, 2008 12:10 pm

cuse wrote:Hey, do we have somebody for our orphaned gigedit documentation? ;)
Possibly. I have already written documentation for two other projects, so that's what I usually end up doing with stuff that I like. :D
Anders Dahnielson

Ardour2, Qtractor, Linuxsampler, M-AUDIO Delta 1010, Axiom 61, Korg D12, AKAI S2000, E-MU Proteus 2k, Roland R-5, Roland HP 1300e, Zoom RFX-1000, 4GB RAM x86_64 Intel Pentium Dual 1.80GHz Gentoo Linux

Post Reply