Purple Hearts hpmusic
Main Menu
Home
Downloads
News
Tips&Tricks
Songs
Articles
Good Links
Contact
Impressum
Who's Online
We have 65 guests online
Search
Cakewalk, Voices und Instrument-Definitionen PDF Print
Saturday, 06 November 2004
Woher kennen Cakewalk und PSRUTI die Namen der Voices, Drum-Noten und Controller?

Einführung

In dem vorliegenden Artikel wird erläutert, wie wir am PC mit Hilfe der Sequenzer-Software Cakewalk die Voices von MIDI-Dateien durch XG- oder die internen Panel-Voices unserer PSR-Keyboards ersetzen können. Im ersten Teil erhalten Sie grundlegende Informationen über MIDI-Voices; GM-, XG-, Panel- und Perkussion-Voices. Basiskenntnis über den Umgang mit Cakewalk müssen wir voraussetzen. Wir werden lernen, wie man einem MIDI-Song andere Voices zuordnet. Dabei werden wir eine Instrumenten-Definition in Cakewalk benutzen, die genau auf unser Keyboard zugeschnitten ist. Mit der Verwendung einer solchen Datei werden wir schnell die Voices unseres Instruments finden. Ich werde erläutern, wie wir eine Instrumenten-Definition in Cakewalk einbinden können. Zum Abschluss wird die Struktur einer solchen Datei beschrieben. Instrumenten Definitionen sind gleichermaßen in meinem Programm PSRUTI einsetzbar - siehe Downloads -> PSRUTI.
Wir werden lernen, wie man sich eine Instrumenten-Definition erstellen kann. Wir benötigen dazu nur ein einfaches Textwerkzeug (Editor, Wordpad) und die Voice-Liste des Keyboards, die im Anhang unseres Handbuchs enthalten ist.

Aus den Beschreibungen der anderen YAMAHA-Keyboards PSR-540, PSR-640, PSR-740, PSR-8000, PSR-9000 und 9000Pro, Tyros und andere kann man erkennen, dass bei allen Keyboards die Voices intern gleich organisiert sind. In meinem Artikel "PSR Voices" beziehe ich mich hauptsächlich auf das PSR-8000; die meisten Aussagen sind aber auch für die anderen Keyboards richtig. Einige Informationen, die für das Verstehen des vorliegenden Artikels vorausgesetzt werden müssen, werden hier wiederholt.

GM, XG, Panel und Perkussion

Alle MIDI-Dateien, die von den YAMAHA-Keyboards erzeugt oder dafür programmiert werden, haben das Format "Extended General MIDI" oder kurz XG. XG wurde 1994 von YAMAHA als Erweiterung von "General MIDI", kurz GM, eingeführt. GM wurde schon 1991 definiert durch ein "MIDI Standardisierungskomitee", in dem die wichtigsten Hersteller vertreten waren. GM kennt genau 128 Melodie-Voices und ein Drum-Kit mit weniger als 128 verschiedenen Drum-Sounds. Die YAMAHA-Erweiterung XG kennt hingegen wesentlich mehr Melodie-Voices und eine Reihe verschiedener Drum-Kits und dazu noch sog. SFX-Kits (Geräusche).

XG arbeitet mit sogenannten Voice-Banks. Darunter versteht man Gruppen von bis zu 128 verschiedenen Voices. Eine Voice-Bank wird mit zwei Zahlenangaben ausgewählt: das "Most Significant Byte" (höherwertige Byte) MSB und das "Less Significant Byte" (niederwertige Byte) LSB. Eine einer Voice-Bank zugeordnete Voice wird über eine Voice-Nummer zwischen 0 und 127 identifiziert. Alle Melodie-Voices von XG sind in Voice-Banks enthalten, für die MSB = 0 ist und LSB zwischen 0 und 101 liegt. Man beachte aber, dass nicht zu jedem Paar MSB/LSB auch eine Voice-Bank gehört und dass auch nicht jede Voice-Nummer mit einer Voice belegt ist. XG hat 480 Melodie-Voices, die in insgesamt 43 Banks angeordnet sind.

Die Panel-Voices unserer Keyboards sind modell-spezifische Erweiterungen der XG-Voices. Sie sind ebenfalls in Voice-Banks organisiert, die aber LSB-Werte zwischen 112 und 126 besitzen. Die PSR's kennen zwischen 215 (PSR-540) und 342 (9000Pro) Panel-Voices. Gleichadressierte Panel-Voices sind auf den verschiedenen PSR's gleich oder zumindest ähnlich: Wir erhalten vergleichbare Sounds auf den verschiedenen Keyboards, die aber möglicherweise qualitativ unterschiedlich sind. Die Basis-Voice-Bank für Panel-Voices ist die Bank LSB=112 (MSB=0). Alle PSR-Keyboards, die ich untersucht habe, haben hier die gleichen Voices (mit minimalen Ausnahmen); die modellspezifischen Unterschiede liegen in den Voice-Banks mit höheren LSB-Werten. Beim Anspielen einer nicht vorhandenen Voice ist das Keyboard jedoch nicht stumm, sondern es wird dafür die Voice mit der gleichen Voice-Nummer aus der XG-Bank LSB=0 genommen. Die Sounds sind hier zwar nicht gleich, aber sehr ähnlich.

Ein Beispiel dazu. Die Voice-Nummer 39 adressiert die Voice "Syn Bass2" in XG-Bank LSB=0, "Mellow Syn Bass1" in 6, "Seq Bass" in 12, "Clk Syn Bass" in 18, "Syn Bass2 Dk" in 19, "Smooth Bass2" in 32, "Modulr Bass" in 40, "DX Bass" in 41, "XWire Bass" in 64, "Analog Bass" in Panel-bank 112, "Dance Bass" in 113, "Snap Bass" in 114, "Touch Bass" in 115 und "Dry Syn Bass" in 116 - alle Voices haben Bass-Sounds mit mehr oder weniger ähnlichen Klangfarben. Bei Nichtexistenz einer Voice erhält man also statt dessen einen anderen Sound aus derselben Klangfamilie.

Die MIDI-Spezifikation lässt es nicht zu, dass mehr als 16 verschiedene Voices zum selben Zeitpunkt angespielt werden können. Anders ausgedrückt: in den MIDI-Synthesizern und damit auch in den Keyboards sind genau 16 MIDI-Kanäle implementiert. Jeder Kanal kann unabhängig von den anderen mit einer eigenen Voice verknüpft sein. Diese Zuordnung geschieht bei XG mit den drei Events "Bank Select MSB" (Controller-Event 0), "Bank Select LSB" (Controller-Event 32) und mit dem "Program-Change"-Event, das die Voice-Nummer spezifiziert.

Das herstellerübergreifende Format General MIDI (GM) kennt nur 128 Voices, die aber nicht in Voice-Banks organisiert sind. Aus diesem Grunde ist bei GM zum Einstellen einer Voice nur das "Program-Change"-Event erforderlich. Auch mit unseren XG-Keyboards können wir GM-Dateien abspielen. Werden keine "Voice-Bank"-Events gesendet, wählen die Keyboard-Synthesizer die entsprechende Voice aus der XG-Bank 0.

Nun einige Worte über Perkussion-Voices.

Perkussion-Voices (Drum- und SFX-Voices) unterscheiden sich von den Melodie-Voices dadurch, dass hier nicht die Tonhöhe mit den gespielten Noten verändert wird, sondern dass mit jeder Taste ein anderes (Schlagzeug-)Instrument ertönt. Aus diesem Grunde wird eine Perkussion-Voice auch Drum- oder SFX-Kit genannt. General MIDI (GM) kennt nur ein Drum-Kit; dieses ist von vorneherein dem MIDI-Kanal 10 zugeordnet und kann nur dort gespielt werden. Die Voices auf anderen MIDI-Kanälen sind immer Melodie-Voices. Unter XG hat man die Auswahl zwischen mehreren Drum-Kits, die zumeist in der Voice-Bank MSB=127/LSB=0 organisiert sind.

Es ist mit XG theoretisch möglich, jedem der 16 MIDI-Kanäle ein Drum-Kit zuzuordnen. Nimmt man auf dem Keyboard ein MIDI mit automatischer Begleitung auf, so werden hier im allgemeinen die zwei MIDI-Kanäle 9 (Rhy1) und 10 (Rhy2) mit Drum-Kits belegt. Wenn wir jedoch eine derartige MIDI-Datei über eine übliche GM-Soundkarte abspielen, so ertönt beim Kanal 9 eine Melodie-Voice - meistens ein Piano - mit harten, fehlerhaften Notenwerten.

Mit den sogenannten SFX-Kits werden unterschiedliche Geräusche wie zum Beispiel Telefon-Klingel (Phone Call) oder Schrittgeräusche (Foot Steps) erzeugt. Die beiden Kits SFX1 und SFX2 belegen zwei Voice-Nummern in der Voice-Bank MSB=126/LSB=0. Wie bei den Drum-Kits erhalten wir mit jeder Keyboard-Note unterschiedliche Geräusche.

Das Auswählen von Voices mit Cakewalk

Im letzten Abschnitt wurde erläutert, dass zur Anwahl einer Voice drei Events für jeden MIDI-Kanal benötigt werden: ein Bank-Select MSB, ein Bank-Select LSB und ein Program-Change.

Cakewalk erleichtert uns die Festlegung von Voices für die MIDI-Kanäle. Cakewalk benutzt nicht die beiden Zahlenangaben MSB und LSB zur Festlegung einer Voice-Bank, sondern führt eine einzige Banknummer ein, die sich aus MSB und LSB mit der Formel Banknummer = 128*MSB+LSB errechnet. Bei XG- und Panel-Melodie-Voices ist wegen MSB=0 diese Banknummer mit dem LSB-Wert identisch. Die Perkussion-Voice-Bank MSB=127/LSB=0 hat die Banknummer 128*127+0=16256, die SFX-Bank MSB=126/LSB=0 hat analog die Banknummer 16128.

Wir benutzen die Spur-Ansicht von Cakewalk. Durch Doppelklick auf ein beliebiges Bank-Element erhalten wir das Unterfenster Spureigenschaften. Wir tragen die Bank-Auswahlmethode "Normal" und anschließend in das Feld Bank eine der obigen Banknummern ein. Cakewalk setzt dann in die MIDI-Datei dafür die beiden zugehörigen Bank-Select-Events ein.

Jetzt zur Auswahl einer Voice mit Cakewalk.

Im Anhang der Keyboard-Handbücher finden wir Listen mit allen verfügbaren Voices mit den zugehörigen Werten von MSB, LSB und Voice-Nummer. Die dort angegebene Voice-Nummer führt häufig zu Verwirrungen: in Cakewalk zum Beispiel zählen die Voice-Nummern von 0 bis 127, in den PSR-Handbüchern jedoch gelegentlich von 1 bis 128. Das Grand Piano der Bank 112 hat im PSR-8000-Handbuch die Voicenummer 1, in Cakewalk hingegen 0.

Warum verwenden wir Instrument-Definitions-Dateien in Cakewalk oder PSRUTI?

Mit einer solchen, speziell auf unser Keyboard spezialisierten Datei ist es nicht mehr nötig, sich die Werte von MSB, LSB und die Voice-Nummer für die von uns einzutragende Voice aus dem Handbuch herauszusuchen. Die Instrument-Definitions-Dateien enthalten alle Informationen der Keyboard-Voice-Listen, damit können wir direkt die Namen der Voices anstatt Nummern eintragen. Mehr noch. Bei Drum-Kits sind sogar die von Notenwerten abhängigen Drum-Namen sichtbar und wir können die Controller-, PRN- und NRPN-Events an ihren Namen identifizieren. Laden wir eine fremde MIDI-Datei mit Cakewalk, können wir sofort erkennen, ob das Keyboard die verwendete Voice besitzt.

Instrument-Definitions-Dateien haben die Dateierweiterung .ins. Mit der Installation von Cakewalk auf dem PC haben wir schon eine Reihe von .ins-Dateien bekommen: Für GM und XG, Roland GS und Synthesizer-Modelle verschiedener Hersteller. Die meisten wurden von den Cakewalk-Benutzern erstellt. Bis vor kurzem wurden von der Fa. Klemm (Cakewalk) keine .ins-Dateien für die YAMAHA-Keyboards bereitgestellt. Eine Datei yamaha_kbds.ins einige Yamaha Keyboards ab PSR-8000 wird auf dieser Homepage kostenfrei zur Verfügung gestellt - siehe Downloads -> CW Ins-Files. Jørgen Sørensen stellt auf seiner Homepage .ins-Dateien für die Modelle PSR-540, PSR-630, PSR-640 und PSR-740 zum Download bereit - siehe "Good Links".

Wie installiert man eine Instrument-Definitions-Datei in Cakewalk?

Wir kopieren die vorgesehene .ins-Datei in das Cakewalk-Verzeichnis und importieren die Instrumenten-Definition mit Extras - Instrumente - Definieren - Importieren. Anschliessend verbinden wir unter Extras - Instrumente alle 16 Kanäle mit der neuen Instrumenten-Definition - siehe Cakewalk Benutzerhandbuch, Abschnitt Instrumenten-Definitionen.

Wie können wir uns selbst eine eigene Instrumenten-Definitions-Datei erzeugen?

Eine ausführliche Beschreibung finden Sie in dem PDF-Dokument "Das Format von Cakewalk Instrumentendefinitionsdateien" unter Articles - German.

Ende