Keyboard per Midi transponieren

  • Ersteller seppi0815
  • Erstellt am
S
seppi0815
Registrierter Benutzer
Zuletzt hier
22.07.21
Registriert
16.01.12
Beiträge
17
Kekse
0
Hi Musiker,

wir haben in unserer Band einen flinken und fehlerfesten Keyboarder - allerdings nur in Tonart C :D
Da wir einen Teil unseres Band-Rigs per Midi automatisiert haben (bisher einfache Program-Changes bei den Effektgeräten),
besteht die Überlegung, passend zu Setlist die Keyboards per Midi zu transponieren.

Da ich erst in 2 Wochen wieder an die Keyboards komme und das Ganze gerne in der Setlist
vorbereiten würde, brauche ich Eure Hilfe.

Wie kann ich die Keyboards per Midi transponieren?

Ich dachte an folgende Sequenz...
Code:
[FONT=Arial][SIZE=2][FONT=Arial][SIZE=2] B0 65 00 64 02 06 40 65 7F 64 7F
/*
B0 = Control Change Channel 1
65 00 = Set Control No. 65H = 00 RPN-MSB
64 02 = Set Control No. 64H = 02 RPN-LSB
06 40 = Set Value 40H = A440 Data Entry MSB
65 7F = Set Control No. 65H = 7F RPN-MSB Null-Function
64 7F = Set Control No. 64H = 7F RPN-MSB Null-Function
*/
[/SIZE][/FONT][/SIZE][/FONT]
Damit transponiere ich aber nur Kanal 1 und wahrscheinlich nur das was über Kanal 1 an Noten reinkommt.
Ich möchte aber das gesammte Keyboard transponieren, damit unser Keyboarder nicht selbst transponieren muss (vergißt er nämlich manchmal).

Selbige Problematik betrifft das Umschalten auf einen anderen Keyboard-Sound.
Wie kann ich per Midi umschalten, damit der Keyboarder mit dem passenden Sound spielt?

Danke im Voraus für Eure Hilfe.

Gruß
seppi

Keyboards: Yamaha PSR-1500 und Roland XP-50
 
Eigenschaft
 
In jedem Keyboard gibt es üblicherweise mehrere Stellen, wo transponiert werden kann. Dein Vorhaben klingt so, als wolltest du die Transposition auf der höchsten Ebene, also das gesamte Instrument betreffen ändern. Das wird meist "Master Transpose" genannt und ist manchmal nicht von außen steuerbar (Diskussion aus 2011).

Beim PSR-1500 gibt es schon 3 Transpositionsmöglichkeiten, wie auf S.212 der deutschen Bedienungsanleitung steht: Keyboard/Song/Master.

Das Transponieren wird idealerweise mit der Soundauswahl zusammen erledigt: auf einer Workstation kann man für jeden Sound individuelle Transpositionen speichern. Wenn also per MSB/LSB/Program-Change-Befehl ein Sound (Performance/Patch/Voice/was auch immer) ausgewählt wird, ist dann automatisch die richtige Transposition für alle Zonen eingestellt.

Beim XP-50 könnte das so klappen, indem du einzelne Performances programmierst. Auf dem PSR-1500 könnte man die Transpositionen in den Registration Memories speichern. Beides müsste man aber von Hand aufrufen.

Es könnte durchaus sein, dass Master Transpose mit Sysex-Befehlen bei beiden Geräten von aussen gesteuert werden kann. Die müsste man aber rausfinden und dazu intensiv die Bedienungsanleitungen studieren.

Harald
 
Danke für Deine Antwort.

Mir geht es um die Einstellungen, die der Keyboarder für den jeweils nächsten Song vornimmt.
Sound (Programm) einstellen und Transponieren.
Das soll möglichst automatisch per Midi gehen um Fehler zu vermeiden und die Pausen zwischen den Songs zu verkürzen (Live-Einsatz).

Werde mir mal beide Handbücher - vor allem die Midi Implementation - zu Gemüte führen.
Bzgl. Program-Changes ist das dann wohl ein ähnliches Problem, oder? :rolleyes:

seppi
 
Hab mir das jetzt mal für den Roland XP-50 angesehen.

Wenn ich das richtig sehe, dann kann ich über SysEx den Transpose Switch, Transpose Value und Octave Shift setzen.

Das Ganze dürfte dann in etwa so aussehen...
Code:
Das wäre jetzt die Einstellung für Tonart D + 1 Oktave höher
[TABLE="width: 516"]
[TR]
[TD][B]Transpose switch[/B][/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]F0[/TD]
[TD]SysEx[/TD]
[TD][/TD]
[/TR]
[TR]
[TD]41[/TD]
[TD]Roland[/TD]
[TD][/TD]
[/TR]
[TR]
[TD]10-1F[/TD]
[TD]Device ID[/TD]
[TD]????????[/TD]
[/TR]
[TR]
[TD]6A[/TD]
[TD]XP-50[/TD]
[TD][/TD]
[/TR]
[TR]
[TD]12[/TD]
[TD]Command DT1[/TD]
[TD]Data Set 1[/TD]
[/TR]
[TR]
[TD]0[/TD]
[TD]Address MSB[/TD]
[TD][/TD]
[/TR]
[TR]
[TD]0[/TD]
[TD]Address[/TD]
[TD][/TD]
[/TR]
[TR]
[TD]0[/TD]
[TD]Address[/TD]
[TD][/TD]
[/TR]
[TR]
[TD]2B[/TD]
[TD]Address LSB[/TD]
[TD][/TD]
[/TR]
[TR]
[TD]1[/TD]
[TD]Data[/TD]
[TD]Transpose switch on[/TD]
[/TR]
[TR]
[TD]54[/TD]
[TD]Checksum[/TD]
[TD][/TD]
[/TR]
[TR]
[TD]F7[/TD]
[TD]EOX[/TD]
[TD]End of SysEx[/TD]
[/TR]
[/TABLE]
[TABLE="width: 604"]
[TR]
[TD][B]Transpose Value[/B][/TD]
[TD][/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]F0[/TD]
[TD]SysEx[/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]41[/TD]
[TD]Roland[/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]10-1F[/TD]
[TD]Device ID[/TD]
[TD]????????[/TD]
[TD][/TD]
[/TR]
[TR]
[TD]6A[/TD]
[TD]XP-50[/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]12[/TD]
[TD]Command DT1[/TD]
[TD]Data Set 1[/TD]
[TD][/TD]
[/TR]
[TR]
[TD]0[/TD]
[TD]Address MSB[/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]0[/TD]
[TD]Address[/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]0[/TD]
[TD]Address[/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]2C[/TD]
[TD]Address LSB[/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]7[/TD]
[TD]Data[/TD]
[TD]Transpose 0-11 =[/TD]
[TD]-5 to +6[/TD]
[/TR]
[TR]
[TD]4D[/TD]
[TD]Checksum[/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]F7[/TD]
[TD]EOX[/TD]
[TD]End of SysEx[/TD]
[TD][/TD]
[/TR]
[/TABLE]
[TABLE="width: 604"]
[TR]
[TD][B]Octave Shift[/B][/TD]
[TD][/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]F0[/TD]
[TD]SysEx[/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]41[/TD]
[TD]Roland[/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]10-1F[/TD]
[TD]Device ID[/TD]
[TD]????????[/TD]
[TD][/TD]
[/TR]
[TR]
[TD]6A[/TD]
[TD]XP-50[/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]12[/TD]
[TD]Command DT1[/TD]
[TD]Data Set 1[/TD]
[TD][/TD]
[/TR]
[TR]
[TD]0[/TD]
[TD]Address MSB[/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]0[/TD]
[TD]Address[/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]0[/TD]
[TD]Address[/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]2D[/TD]
[TD]Address LSB[/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]4[/TD]
[TD]Data[/TD]
[TD]Octave 0-6 =[/TD]
[TD]-3 to +3[/TD]
[/TR]
[TR]
[TD]4F[/TD]
[TD]Checksum[/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]F7[/TD]
[TD]EOX[/TD]
[TD]End of SysEx[/TD]
[TD][/TD]
[/TR]
[/TABLE]

Kann mir das bitte jemand bestätigen?
Außerdem ist mir Device-ID noch unklar. Was soll das sein?

Danke im Voraus.

Gruß
seppi
 
Ich habe keinen XP-50, nur einen JV-1080. Die beiden sind aber eng verwandt. Beim JV kann man die Device-ID (Gerätekennung) im Menü einstellen. Die gibt's nur für den Fall, dass du mehrere baugleiche Instrumente verwendest, aber nur eines davon Sysex-Daten empfangen soll.

Dein Aufwand und Einsatz in allen Ehren, aber eher sollte euer Keyboarder alle Tonarten beherrschen lernen.

Harald
 
  • Gefällt mir
Reaktionen: 4 Benutzer
Dein Aufwand und Einsatz in allen Ehren, aber eher sollte euer Keyboarder alle Tonarten beherrschen lernen.

Harald

Das wäre wünschenswert, aber da wird wohl auf die Schnelle nichts draus für die nächsten Gigs.

Das Midi Thema interessiert mich aber auch insgesammt. Habe vor Jahren unter Cubase SX in Verbindung
mit einer Yamaha DB50XG schon einiges am Midi programmiert - XG-Standard und auch SysEx.
Es juckt mich also auch so, das Ganze zum Laufen zu bekommen.

Werde demnächst die SysEx Sequenz mal testen und dann hier berichten.

Nochmal zu den Program-Changes...
Gibt es hier evtl. auch eine Sequenz, mit der man das Keyboard insgesammt auf das gewünschte Programm umstellen kann?
Also so als würde der Keyboarder seinen gewünschten Sound selbst einstellen.
Ein Program-Change auf Channel Ebene bringt wahrscheinlich nicht den gewünschten Effekt.

Bin dankbar für jeden Hinweis.

Gruß
seppi
 
Werde demnächst die SysEx Sequenz mal testen und dann hier berichten.

Ja, schreib mal, das Ergebnis würde mich auch interessieren.

Ich hab hier das Praxisbuch "Roland JV/XP" von Udo Weyers, da steht drin, dass der XP-50 die Keyboardversion des JV-1080 ist. Von daher kann ich auch Präziseres zur Device-ID sagen: im System-Menü gehe ich mit der Pfeiltaste abwärts zum Screen "SYS-EXC MIDI". Der erste Parameter ist "Unit#" und entspricht der Device-ID.

Nochmal zu den Program-Changes...
Gibt es hier evtl. auch eine Sequenz, mit der man das Keyboard insgesammt auf das gewünschte Programm umstellen kann?
Also so als würde der Keyboarder seinen gewünschten Sound selbst einstellen.
Ein Program-Change auf Channel Ebene bringt wahrscheinlich nicht den gewünschten Effekt.

Hmm...das ist eigentlich wesentlich simpler als alle Sysex-Geschichten, sowas solltest du optimalerweise als Basis kennen, bevor du dich an so spezielle Dinge setzt...also: ein Program-Change-Befehl (="PC") wechselt das aktuelle Patch oder die aktuelle Performance innerhalb der gewählten Bank. Die Bank selbst kannst du mit CC#0-(=Bank Select MSB) und CC#32-(=Bank Select LSB-)Befehlen wechseln. Daher sieht ein vollständiger Programmwechselbefehl so aus: CC#0/CC#32/PC. Für die User-Bank gilt beispielsweise MSB=80, LSB=0. Für die GM-Bank gilt MSB=81, LSB=3. Die Werte für alle Bänke stehen im Handbuch. Danach kommt der PC-Wert, der im Display 1-basiert gezählt wird, in MIDI aber 0-basiert.

Moduswechsel (Patch->Performance oder umgekehrt) sind auch möglich, aber nur per Sysex. Sie kosten auch Zeit, daher sollte man IMHO von sowas absehen und alle live benötigten Sounds im Performance-Modus programmieren.

Man muss ein wenig aufpassen mit dem MIDI-Kanal: im Performance-Modus kann man die gesamte Performance wechseln, wenn man den Programmwechselbefehl auf dem Control Channel sendet. Wenn man auf einem anderen Kanal sendet, wechselt man die Patches innerhalb der Performance.

Übrigens...gerade noch eingefallen: mein JV überträgt (bei TX SYX: ON) auch alle von Hand eingestellten Menüoptionen per Sysex. Installier dir doch mal MIDIOX, schalt den MasterTune-Parameter von Hand um und beobachte mal in MIDIOX, was da an Sysex ankommt. Das geht auch in Cubase SX, aber MIDIOX ist sowieso für alle MIDI-Operationen prädestiniert ;).

Harald
 
  • Gefällt mir
Reaktionen: 4 Benutzer
Guten Morgen Harald,

Danke für Deine ausführliche Antwort.

Mein Problem liegt in der Unwissenheit bzgl. des Verhaltens eines Keyboards.
Ich bin Gitarrist und habe bisher in Verbindung mit Cubase SX ausnahmeslos PC-Soundkarten programmiert.
Ich weiß also nicht, wie sich die Klaviatur des Keyboards verhält.

Daher sieht ein vollständiger Programmwechselbefehl so aus: CC#0/CC#32/PC.

Vollkommen klar, nur die PC's sind ja Midikanal bezogen.
Ich sende z.B.
Channel 1 -> CC#0/CC#32/PC -> E-Piano
Channel 2 -> CC#0/CC#32/PC -> Strings
Channel 3 -> CC#0/CC#32/PC -> Flute

Wenn ich jetzt auf den verschieden Kanälen Noten über MIDI sende, werden die dem jeweiligen Kanal
zugeordneten Sounds gespielt (das Keyboard verhält sich dann wie eine PC-Soundkarte).

Wenn ich aber auf der Klaviatur des Keyboards z.B. "C" drücke, welcher Sound erklingt dann?
Wahrscheinlich keiner von den 3en.

Deshalb meine Frage nach einer speziellen Befehlssequenz.
Gibt es nicht sowas wie einen "Master-Program-Change" der die Klaviatur auf den gewüschten Sound einstellt?

Gruß
seppi

Edit:
Danke für den Hinweis das Ganze mal umgekehrt zu versuchen um zu sehen, was jeweils vom Keyboard kommt - MIDIOX ist eine gute Idee - werd ich mal testen.
 
Zuletzt bearbeitet:
Wenn ich aber auf der Klaviatur des Keyboards z.B. "C" drücke, welcher Sound erklingt dann?
Wahrscheinlich keiner von den 3en..

Hallo Seppi !

der Sound der erklingt, ist der auf welchen Kanal die Tastatur geroutet ist. Im Normalfall ist das (Beim PSR) der Kanal 1. Beom XP-50 kommt es darauf an
was in der verwendeten Performance eingestellt ist.

Gruß

bluebox
 
Hallo Seppi !

der Sound der erklingt, ist der auf welchen Kanal die Tastatur geroutet ist. Im Normalfall ist das (Beim PSR) der Kanal 1. Beom XP-50 kommt es darauf an
was in der verwendeten Performance eingestellt ist.

Gruß

bluebox

Hmm... wenn das so ist, dann braucht es ja nicht mal SysEx.
Dann reicht ein einfacher Program-Change und Transpose auf Kanal 1.
Danke Dir.
 
So...

wollte nun mal (wie angekündigt) nach ein paar Tests meine ersten Erfahrungen posten.
Der PSR1500 gestaltet sich schwieriger, habe mir also erstmal den Roland XP-50 vorgenommen.

Die Sequenz...
Transpose Value
F0
SysEx
41
Roland
10
Device ID
6A
XP-50
12
Command DT1
Data Set 1
00
Address MSB
00
Address
00
Address
2C
Address LSB
07
Data
Transpose 0-11 =
-5 to +6
4D
Checksum
F7
EOX
End of SysEx

...funktioniert einwandfrei (Data=07 transponiert auf D; Data=05=C).
Checksum anpassen nicht vergessen - wie, steht im Handbuch.
Transpose switch ist nicht notwendig.

Bank + Program-Changes funktionieren ganz normal mit CC#0/CC#32/PC über den im XP-50 eingestellten Midi-Rx-Channel.
Die User-Bank konnte ich allerdings nicht ansteuern.

------------------------------------------------------------------------

Hab nochmal ein paar Fragen bzgl. "Midi-Thru".
Ich dachte immer, über die Thru-Buchse werden alle Daten zum nächsten Gerät durchgeschleust, so dass auf dem gesammten Midi-Bus (auch am letzten Device) alle Daten vorhanden sind.

Habe folgenden Aufbau...
iPad (App Setlist Maker) Midi Out -> Digitech VGS2120 -> Lexicon MX400 -> Digitech Vocalist II

Ist folgendes Verhalten bzgl. Program-Changes normal?
1. Beim VGS2120 muss ich Midi Merge auf On stellen, sonst erhalten die nachfolgenden Devices keine Program-Changes.
2. Wenn beim Songwechsel das Programm des MX400 gleich bleibt, muss ich trotzdem einen Program-Change an ihn senden, da ansonsten der Vocalist seinen Program-Change nicht bekommt.

Würde sich hier evtl. eine Midi Thru Box anbieten?

Danke und Gruß
seppi
 
Midi Thru leitet immer nur die eingehenden Daten (d.h. die, welche an Midi In ankommen) weiter, NICHT die, die über Midi Out rausgehen.

Es sei denn, ein Gerät hat eine Midi Merge-Funktion, wie anscheinend dein VGS2110.

Ansonsten brauchst du, wenn du die Midi-Ausgabe von mehreren Geräten gleichzeitig an mehrere Geräte schicken willst, du einen Midi Merger mit so vielen Eingängen, wie du Geräte hast, die Midi-Daten produzieren. Vorsicht wenn die Ausgänge des Mergers wieder an den Midi In der Geräte geht, deren Midi Out an den Merger geht. Das führt, wenn man nicht genau bei der Verteilung der Daten auf die Midi-Kanäle achtet, sehr leicht zu (unerwünschten) Midi Loops.

Das lässt sich dann am komfortabelsten mit einem Midi Router umgehen, bei dem man frei konfigurieren kann, welche Daten von welchem Eingängen zu welchen Ausgängen gehen. Solche Midi Router gibt es entweder in Hardware (z.B. das nicht mehr gebaute Miditemp PMM-8(E)) oder als Software auf einem Computer mit Multiport Midi Interface.

Chris
 

Ähnliche Themen


Unser weiteres Online-Angebot:
Bassic.de · Deejayforum.de · Sequencer.de · Clavio.de · Guitarworld.de · Recording.de

Musiker-Board Logo
Zurück
Oben