JP3467941B2 - マルチポートmidiメッセージ変換装置および方法 - Google Patents
マルチポートmidiメッセージ変換装置および方法Info
- Publication number
- JP3467941B2 JP3467941B2 JP33296895A JP33296895A JP3467941B2 JP 3467941 B2 JP3467941 B2 JP 3467941B2 JP 33296895 A JP33296895 A JP 33296895A JP 33296895 A JP33296895 A JP 33296895A JP 3467941 B2 JP3467941 B2 JP 3467941B2
- Authority
- JP
- Japan
- Prior art keywords
- midi
- message
- input
- correspondence table
- terminal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
- Time-Division Multiplex Systems (AREA)
Description
MIDIメッセージをシングルポートのMIDI機器で
処理するマルチポートMIDIメッセージ変換装置およ
びマルチポートMIDIメッセージ変換方法に関する。
に16チャンネルのMIDIチャンネルを設定すること
ができる。しかし、近年の音源装置などのMIDI機器
には32チャンネルや64チャンネルを用いてデータ伝
送を行うものが実用化されている。このような機器でも
データフォーマットはMIDI規格に準拠したものを用
いていた。したがって、このようなMIDI機器は2ま
たは4系統のMIDI入出力ポート(マルチポート)を
備え、1〜32または1〜64のチャンネルを各系統の
1〜16チャンネルに分割して他のMIDI機器に伝送
するようになっていた。
複数のMIDI機器に対して、それぞれ別系統でMID
Iメッセージを伝送したい場合も同様であった。
を記録するためには通常マルチポート対応のMIDIシ
ーケンサが必要である。
IケーブルをMIDI機器間で引き回すことは煩雑であ
りその接続が面倒であった。また、マルチポート対応の
MIDIシーケンサはシングルポートのMIDIシーケ
ンサに比べて大がかりであり高価であった。
それぞれ多くのMIDIチャンネルを使用していること
があり、各系統で同一のMIDIチャンネルが使用され
ている場合があるため、これを単純にマージして1系統
で送受信することは、チャンネルのバッティングを招く
ため不可能であった。
セージをシングルポートのMIDIメッセージとして伝
送・記録することのできるマルチポートMIDIメッセ
ージ変換装置およびマルチポートMIDIメッセージ変
換方法を提供することを目的とする。
明は、複数のMIDI入力端子と、1つのMIDI出力
端子と、MIDIチャンネルと前記複数のMIDI入力
端子とを対応させる対応テーブルと、 いずれかのMI
DI入力端子からMIDIメッセージが入力されたと
き、入力されたMIDIメッセージの受信チャンネルと
入力されたMIDI入力端子が前記対応テーブルの内容
と一致している場合には、該MIDIメッセージをその
まま前記MIDI出力端子から出力し、不一致の場合に
は、前記入力されたMIDIメッセージの受信チャンネ
ルと入力されたMIDI入力端子とを対応させるように
前記対応テーブルを更新し、この更新したチャンネル/
端子の対応を指定する指定メッセージを前記MIDI出
力端子から出力したのち、前記MIDIメッセージを前
記MIDI出力端子から出力する制御部であって、前記
不一致の場合であって、入力されたMIDIメッセージ
のチャンネル/端子の対応が、低頻度に発生する対応で
あった場合には、前記対応テーブルを更新することな
く、このMIDIメッセージのMIDI出力端子を指定
する一時指定メッセージを出力する制御部と、を備えた
送信側マルチポートMIDIメッセージ変換装置、およ
び、1つのMIDI入力端子と、複数のMIDI出力端
子と、MIDIチャンネルと前記複数のMIDI出力端
子とを対応させる対応テーブルと、前記MIDI入力端
子からMIDIメッセージが入力されたとき、入力され
たMIDIメッセージの受信チャンネルに基づいて前記
対応テーブルを検索して検索されたMIDI出力端子か
ら該MIDIメッセージを出力し、前記MIDI入力端
子から前記指定メッセージが入力されたとき、この内容
でMIDIチャンネルとMIDI出力端子を対応づける
べく前記対応テーブルを更新する制御部であって、 前記
MIDI入力端子から一時指定メッセージが入力された
ときは、前記対応テーブルを更新することなく、その直
後に入力されるMIDIメッセージをこの一時指定メッ
セージが指定するMIDI出力端子から出力する制御部
と、を備えた受信側マルチポートMIDIメッセージ変
換装置、からなることを特徴とする。
DI入力端子と、1つのMIDI出力端子と、MIDI
チャンネルと前記複数のMIDI入力端子とを対応させ
る対応テーブルと、いずれかのMIDI入力端子からM
IDIメッセージが入力されたとき、入力されたMID
Iメッセージの受信チャンネルと入力されたMIDI入
力端子が前記対応テーブルの内容と一致している場合に
は、該MIDIメッセージをそのまま前記MIDI出力
端子から出力し、不一致の場合には、前記入力されたM
IDIメッセージの受信チャンネルと入力されたMID
I入力端子とを対応させるように前記対応テーブルを更
新し、この更新したチャンネル/端子の対応を指定する
指定メッセージを前記MIDI出力端子から出力したの
ち、前記MIDIメッセージを前記MIDI出力端子か
ら出力する制御部であって、前記不一致の場合であっ
て、入力されたMIDIメッセージのチャンネル/端子
の対応が、低頻度に発生する対応であった場合には、前
記対応テーブルを更新することなく、このMIDIメッ
セージのMIDI出力端子を指定する一時指定メッセー
ジを出力する制御部と、を備えたことを特徴とする。
DI入力端子と、複数のMIDI出力端子と、MIDI
チャンネルと前記複数のMIDI出力端子とを対応させ
る対応テーブルと、前記MIDI入力端子からMIDI
メッセージが入力されたとき、入力されたMIDIメッ
セージの受信チャンネルに基づいて前記対応テーブルを
検索して検索されたMIDI出力端子から該MIDIメ
ッセージを出力し、特定のMIDIチャンネルと特定の
MIDI出力端子の対応を指定する指定メッセージが入
力されたとき、この内容で前記対応テーブルを更新する
制御部であって、前記MIDI入力端子から一時的にM
IDI出力端子を指定する一時指定メッセージが入力さ
れたときは、前記対応テーブルを更新することなく、そ
の直後に入力されるMIDIメッセージをこの一時指定
メッセージが指定するMIDI出力端子から出力する制
御部と、を備えたことを特徴とする。
いて、MIDIチャンネルと複数のMIDI入力端子と
の対応関係を対応テーブルに記憶し、いずれかのMID
I入力端子からMIDIメッセージが入力されたとき、
入力されたMIDIメッセージの受信チャンネルと入力
されたMIDI入力端子が前記対応テーブルの内容と一
致している場合には、該MIDIメッセージをそのまま
前記MIDI出力端子から出力し、不一致の場合には、
前記入力されたMIDIメッセージの受信チャンネルと
入力されたMIDI入力端子の対応で前記対応テーブル
を更新し、このチャンネル/端子の対応を指定する指定
メッセージを出力したのち、前記MIDIメッセージを
出力するとともに、前記不一致の場合であって、入力さ
れたMIDIメッセージのチャンネル/端子の対応が、
低頻度に発生する対応であった場合には、前記対応テー
ブルを更新することなく、このMIDIメッセージのM
IDI出力端子を指定する一時指定メッセージを出力
し、受信側において、MIDIのチャンネルと複数のM
IDI出力端子との対応関係を対応テーブルに記憶し、
前記MIDI入力端子からMIDIメッセージが入力さ
れたとき、入力されたMIDIメッセージの受信チャン
ネルに基づいて前記対応テーブルを検索して検索された
MIDI出力端子から該MIDIメッセージを出力し、
前記指定メッセージが入力されたとき、この内容でMI
DIチャンネルとMIDI出力端子を対応づけるべく前
記対応テーブルを更新するとともに、前記MIDI入力
端子から前記一時指定メッセージが入力されたときは、
前記対応テーブルを更新することなくその直後に入力さ
れるMIDIメッセージをこの一時指定メッセージが指
定するMIDI出力端子から出力することを特徴とす
る。
ャンネルと複数のMIDI入力端子との対応関係を対応
テーブルに記憶し、いずれかのMIDI入力端子からM
IDIメッセージが入力されたとき、入力されたMID
Iメッセージの受信チャンネルと入力されたMIDI入
力端子が前記対応テーブルの内容と一致している場合に
は、該MIDIメッセージをそのまま前記MIDI出力
端子から出力し、不一致の場合には、前記入力されたM
IDIメッセージの受信チャンネルと入力されたMID
I入力端子の対応で前記対応テーブルを更新し、この対
応を指定する指定メッセージを出力したのち、前記MI
DIメッセージを出力するとともに、前記不一致の場合
であって、入力されたMIDIメッセージのチャンネル
/端子の対応が、低頻度に発生する対応であった場合に
は、前記対応テーブルを更新することなく、このMID
IメッセージのMIDI出力端子を指定する一時指定メ
ッセージを出力することを特徴とする。
チャンネルと複数のMIDI出力端子との対応関係を対
応テーブルに記憶し、前記MIDI入力端子からMID
Iメッセージが入力されたとき、入力されたMIDIメ
ッセージの受信チャンネルに基づいて前記対応テーブル
を検索して検索されたMIDI出力端子から該MIDI
メッセージを出力し、特定のMIDIチャンネルと特定
のMIDI出力端子の対応を指定する指定メッセージが
入力されたとき、この内容でMIDIチャンネルとMI
DI出力端子を対応づけるべく前記対応テーブルを更新
するとともに、前記MIDI入力端子から前記一時指定
メッセージが入力されたときは、前記対応テーブルを更
新することなくその直後に入力されるMIDIメッセー
ジをこの一時指定メッセージが指定するMIDI出力端
子から出力することを特徴とする。
(チャンネルメッセージ)を16チャンネルに振り分け
て送受することができる。すなわちチャンネルメッセー
ジには該メッセージを受信すべきMIDIチャンネル
(受信チャンネル)としてチャンネル1〜チャンネル1
6を指定する0〜15の数値が付されている。
どれかからMIDIメッセージが入力されたとき、その
MIDI入力端子とMIDIメッセージの受信チャンネ
ルとの対応関係を対応テーブルに記憶し、この受信チャ
ンネルと入力端子との対応関係を指定する指定メッセー
ジを先に出力したのち、該MIDIメッセージを出力す
る。これにより、このMIDIメッセージを受信する側
では、MIDIメッセージの受信チャンネルに基づいて
そのメッセージの入力端子が分かるため該MIDI入力
端子に対応するMIDI出力端子にこのMIDIメッセ
ージを出力すればよいことになり、シングルポート(1
系統)のMIDI伝送でマルチポート(複数系統)のM
IDIメッセージを混同することなく伝送することがで
きる。また、これを記録・再生する場合でも、シングル
ポートのシーケンサを用いることができる。
ンネルが複数のMIDIポートで使用されない限り、す
なわち、同じ受信チャンネルを指定するMIDIメッセ
ージが複数のMIDI入力端子から入力されない限り、
一度指定メッセージを出力すれば、以後指定メッセージ
なしでその受信チャンネルのMIDIメッセージを出力
することができ、複数のMIDI入力端子で適当にMI
DI受信チャンネルを割り振ることによりデータ量の増
加を最小限にしてマルチポートのMIDIメッセージを
シングルポートのMIDIメッセージにまとめる(マー
ジする)ことができる。
ルとMIDI出力端子の対応関係を指定する指定メッセ
ージ(これは請求項1の指定メッセージに対応する。)
が入力されたとき、これを対応テーブルに書き込み、M
IDIメッセージ(チャンネルメッセージ)が入力され
たとき、このMIDIメッセージから受信チャンネルを
参照し、対応するMIDI出力端子からこのMIDIメ
ッセージを出力する。これにより、シングルポートのM
IDIメッセージを混同することなくマルチポートに振
り分けて出力することができる。MIDIメッセージや
指定メッセージは、請求項2のマルチポートMIDIメ
ッセージ変換装置から入力されてもよく、請求項2,請
求項5の装置・方法で変換(マージ)されたMIDIメ
ッセージを記録したシングルポートシーケンサから読み
出して入力してもよい。
ジと同様のフォーマットで、すなわち、MIDIメッセ
ージとして構成することができ、このようにすることに
より、インプリメント・伝送の画一化を図ることができ
る。
エンコーダおよびデコーダを含むカラオケシステムを示
す図である。このカラオケシステムでは、カラオケ装置
本体1に外づけ機器として音源装置7,アンプ8,照明
装置9が接続されている。カラオケ装置本体1は、カラ
オケ演奏音発生のためのMIDIメッセージを読み出す
楽音シーケンサ3,エコーなどの効果を制御するための
MIDIメッセージを読み出す効果シーケンサ4,カラ
オケ曲に同期した照明制御をするためのMIDIメッセ
ージを読み出すための照明シーケンサ5が設けられてい
る。楽音シーケンサ3は32トラックのシーケンスデー
タを出力するため、2系統のMIDI出力ポートを有し
ている。また、照明制御などは必ずしもMIDIメッセ
ージを用いて行う必要はないが、カラオケの楽曲ファイ
ルのインプリメントを画一化するため全てのシーケンス
データはMIDIフォーマットで記載されている。これ
ら楽音シーケンサ3,効果シーケンサ4,照明シーケン
サ5のMIDI出力ポートはエンコーダ2に接続されて
いる。エンコーダ2はこれらの機器から入力されたMI
DIメッセージをシングルポート(1系統)のメッセー
ジにマージして出力する。このシングルポートのMID
Iメッセージは、1本のMIDIケーブルによってカラ
オケ装置本体1の外部に取り出される。
る。デコーダ6は、シングルポートのMIDIメッセー
ジを音源装置7,アンプ8,照明装置9に振り分けて出
力する。この振り分けは、楽音シーケンサ3から送られ
てきたMIDIメッセージを音源装置7に出力し、効果
シーケンサ4から送られてきたMIDIメッセージをア
ンプ8に出力し、照明シーケンサ5から送られてきたM
IDIメッセージを照明装置9に出力するように行われ
る。
入力ポート(MIDI入力端子)11−1〜11−4
(図2参照)を備えており、デコーダ6は4系統のMI
DI出力ポート(MIDI出力端子)27−1〜27−
4(図3参照)を備えている。このうち、楽音シーケン
サ3はMIDI入力ポート11−1,11−2に接続さ
れ、効果シーケンサ4はMIDI入力ポート11−3に
接続され、照明シーケンサ5はMIDI入力ポート11
−4に接続されている。そして、音源装置7はMIDI
出力ポート27−1,27−2に接続され、アンプ8は
MIDI出力ポート27−3に接続され、照明装置9は
MIDI出力ポート27−4に接続されている。エンコ
ーダ2は上記4系統のMIDI入力ポートから入力され
たMIDIメッセージをマージし、デコーダ6はマージ
されたMIDIメッセージをそれぞれ対応する番号の出
力ポートに振り分ける。すなわち、MIDI入力ポート
11−1から入力されたMIDIメッセージをMIDI
出力ポート27−1に出力し、MIDI入力ポート11
−2から入力されたMIDIメッセージをMIDI出力
ポート27−2に出力し、MIDI入力ポート11−3
から入力されたMIDIメッセージをMIDI出力ポー
ト27−3に出力し、MIDI入力ポート11−4から
入力されたMIDIメッセージをMIDI出力ポート2
7−4に出力する。
れる受信チャンネルに基づいて行われる。ここで、MI
DIメッセージについて説明する。
る図である。MIDIメッセージのうち全てのMIDI
機器に汎用的に規定されているチャンネルメッセージは
2または3バイトからなっており、第1バイトがステー
タスバイトである。ステータスとはこのMIDIメッセ
ージが何を指定するメッセージであるかを示すコードで
あり、例えば、9nはノートオンメッセージである旨を
示しており、Bnはコントロールチェンジメッセージで
ある旨を示している。このステータスバイトに含まれる
nがこのメッセージの受信チャンネルを示している。n
=0H 〜FH (15)の値をとり、それぞれMIDIの
1〜16チャンネルを示している。MIDI機器はいず
れかのMIDIチャンネルのメッセージを選択的に受信
することもでき、全てのMIDIチャンネルのメッセー
ジを受信することもできる。そして、第2バイトおよび
第3バイトがそのチャンネルメッセージの実質的内容な
示すバイトである。
ッセージの場合には、第2バイトがコントローラの種類
を表している。たとえば、01:モジュレーションホイ
ール、02:ブレスコントローラ、04:フットコント
ローラ、96(60H ):データインクリメントスイッ
チ、97(61H ):データデクリメントスイッチなど
である。そして、第3バイトがそのコントローラの操作
値を示している。
種類を指定する値として0〜127を使用することがで
きるが、コントローラの種類は数種類〜十数種類程度で
あるため、大部分の値、特に100以上(HEXコード
で表現すると64H 以上)の値は使用されていない。そ
こで、上記エンコーダ2,デコーダ6はこの実際のコン
トローラに割り当てられていない第2バイトを有するコ
ントロールチェンジメッセージをMIDIポートとMI
DIチャンネルの対応を指定するメッセージとして用い
ている。ここでは120(78H )をこの対応を指定す
るメッセージとして用いている。すなわち、Bn,7
8,ppというメッセージは、nチャンネルを受信チャ
ンネルとするメッセージはppのMIDIポートから入
出力されるものである旨を示している。エンコーダ2は
マージしたMIDIメッセージにこの指定メッセージを
付して送信することにより、デコーダ6において、MI
DIメッセージを正しく振り分けることができる。ま
た、一度発生した指定メッセージをエンコーダ2,デコ
ーダ6の双方で記憶しておくことにより、ある受信チャ
ンネルを指定するMIDIメッセージが一つのMIDI
ポートのみから入力された場合には、重ねて指定メッセ
ージを送信しなくてもこのMIDIメッセージを正しく
振り分けることができ、データ伝送量を少なくすること
ができる。
る。前記MIDI入力ポート11はインタフェース12
に接続されている。インタフェース12はエンコード制
御部13に接続されている。インタフェース12はMI
DI入力ポート11−1〜11−4から入力されるMI
DIメッセージをエンコード制御部13に伝達するとと
もに、同時にそのMIDIメッセージが入力されたポー
ト番号(1〜4)をエンコード制御部13に伝達する。
エンコード制御部13はマイクロコンピュータで構成さ
れており、対応テーブル14および1つの出力バッファ
15を接続している。対応テーブル14(P)はRAM
で構成されており、MIDI受信チャンネルnとMID
I入力ポート番号P(n)=ppとを対応させて記憶す
る。出力バッファ15には1つのMIDI出力ポート1
6が接続されている。
ートのように動作する。まず入力ポートからMIDIメ
ッセージが入力されるまで待機している(s1)。MI
DIメッセージが入力されると、このMIDIメッセー
ジがチャンネルメッセージであるかシステムエクスクル
ーシブメッセージであるかを判定する。この判定は第1
バイトのステータスで容易に判定することができる。チ
ャンネルメッセージであれば上述したように8n,9
n,An,Bn,Cn,Dn,Enで始まり、システム
エクスクルーシブメッセージであれば,F0で始まる。
番号をレジスタppに取り込み、受信チャンネルをレジ
スタnに取り込む(s3)。そして対応テーブルPに記
憶されている受信チャンネルnに対応するポートP
(n)がppであるか否かを判断する(s4)。P
(n)≠ppであればP(n)の内容をppに書き換
え、ポート指定メッセージ(Bn,78,pp)を出力
バッファ15に出力したのち(s6)、入力されたチャ
ンネルメッセージを出力バッファ15に出力する(s
7)。一方、P(n)=ppであれば、そのままこのチ
ャンネルメッセージを出力バッファ15に出力する(s
7)。
複数のMIDI入力ポートからMIDIメッセージが入
力されたとすると、エンコーダ2は、同図(B)に示す
ようにこれをマージして出力する。この場合において、
,,,,の前にはポート指定メッセージa,
b,c,d,eが付されているが、のメッセージは
のメッセージと同じポート同じチャンネルであるため、
指定メッセージが付されていない。また、のMIDI
メッセージについても同様である。一方、でMIDI
ポート1に対してMIDIチャンネル1が対応している
が、でMIDIポート4からMIDIチャンネル1を
指定するメッセージが入力されたため、ここでMIDI
チャンネル1をポート4に対応を書き換えるポート指定
メッセージcが生成され、さらに、で再度MIDIポ
ート1からMIDIチャンネル1を指定するメッセージ
が入力されたため、MIDIチャンネル1をポート1に
対応を書き換えるポート指定メッセージeが生成されて
いる。このように、あるMIDIチャンネルを指定する
MIDIメッセージが同じMIDI入力ポートから連続
して入力された場合には、ポート指定メッセージが生成
されないが、通常のMIDIチャンネルは、出来るかぎ
りバッティングしないように割当設定されるため、MI
DIメッセージの入力がスタートして一旦対応づけれら
たのちは、書き換えのためのポート指定メッセージはそ
れほど頻繁に生成されないと考えられる。
メッセージであれば、このままこのメッセージを出力バ
ッファ15に出力する(s7)。システムエクスクルー
シブメッセージはデバイスIDで受信すべきデバイスが
指定されているため、全てのMIDI機器に出力しても
そのうち必要なもののみがこれを受信するためである。
る。1つのMIDI入力ポート21は入力バッファ22
を介してデコード制御部23に接続されている。デコー
ド制御部23はデコードを制御するものであり、対応テ
ーブル24およびマルチプレクサ25を接続している。
マルチプレクサ25は4つの出力バッファ26−1〜2
6−4を接続しており、これら出力バッファ26−1〜
26−4は4つのMIDI出力ポート27−1〜27−
4に接続されている。
トで示すデコード処理動作を実行する。MIDI入力ポ
ート21からMIDIメッセージが入力されるまで待機
する(s11)。MIDIメッセージが入力されると、
これがチャンネルメッセージであるか否かを判断する
(s12)。チャンネルメッセージの場合には、ポート
指定メッセージ、すなわち、Bn,78,ppの形式の
メッセージであるかを判断する(s13)。ポート指定
メッセージの場合には、ppをこのメッセージに記載さ
れている受信チャンネルnに対応する出力ポートP
(n)として対応テーブル24に書き込む。もし既にP
(n)にポート番号が書き込まれている場合には、これ
をこの新たなppに書き換える(s15)。また、ポー
ト指定メッセージ以外のチャンネルメッセージの場合に
は、対応テーブル24から受信チャンネルnに対応する
ポート番号すなわちppを読み出し(s16)、このp
pを出力先としてマルチプレクサ25に指定したのち
(s17)、入力されたMIDIメッセージを出力する
(s18)。一方、チャンネルメッセージでなくシステ
ムエクスクルーシブメッセージであった場合にはマルチ
プレクサ25に対して全ての出力ポートを指定したのち
(s19)、入力されたシステムエクスクルーシブメッ
セージを出力する(s18)。システムエクスクルーシ
ブメッセージは、各MIDI機器のデバイスIDをバッ
ティングしないように設定しておくことにより、全ての
MIDI機器に出力された場合でも所定の機器のみに受
信させることができる。
れを適用した例であり、エンコーダとデコーダが同時に
動作する例であるが、エンコーダでマージしたMIDI
メッセージを一旦シーケンサに記録し、後に、これを読
み出してデコードするようにしてもよい。また、自動演
奏でないリアルタイムの演奏にこのエンコーダ,デコー
ダを適用してもよい。図8にこの適用例を示す。4台の
電子楽器30(30−1〜30−4)はエンコーダ31
に接続されている。エンコーダはこれら4台の電子楽器
30から入力されるMIDIメッセージをマージしてシ
ーケンサ32に記録する。演奏時にはここまでの処理が
行われる。こののち、シーケンサ32からMIDIメッ
セージを読み出すとき、このMIDIメッセージをデコ
ーダ33に入力する。デコーダ33はこのMIDIメッ
セージを4台の音源装置34(34−1〜34−4)に
振り分けて出力する。これにより、音源装置34−1〜
34−4はそれぞれ電子楽器30−1〜30−4の演奏
音を生成出力する。
ンサ33としてシングルポートのシーケンサを適用する
ことができる。
78,ppとしたが、コントローラナンバ(78)はコ
ントローラに割り当てられていない番号に変更可能であ
り、この設定変更は専用のNRPメッセージや本体スイ
ッチなどで行うようにすればよい。ただし、エンコード
側とデコード側で同じ番号を用いるようにすることが条
件である。
ートとチャンネルの対応関係は、次に異なるポート指定
メッセージが生成されるまで維持されるが、システムに
よってはデータ密度が高いポートと稀に1メッセージし
か伝送されないポートが同一チャンネルを使用する場合
がある。このように場合、稀にしか使用されないポート
に設定変更したのち再度密度の高いポートに設定変更す
るためのポート指定メッセージを生成することは面倒で
あるため、1メッセージのみのポート指定メッセージを
別に設け(例えば、通常のポート指定メッセージ「B
n,78,pp」に対して「Bn,79,pp」な
ど)、デコーダがこのメッセージを受信した場合には、
続いて送られてくるチャンネルメッセージに対してポー
トを切り換えたのち、即座に元のポートに戻すようにす
れば元のポートに指定を戻すメッセージを省略すること
ができる。この設定もNRPメッセージや本体スイッチ
等で指定するようにすることができる。
る場合にはステータスバイトを省略して送信するランニ
ングステータスでMIDIメッセージが入力される場合
があるが、この場合には、エンコーダはステータスバイ
トが省略されたMIDIメッセージにステータスバイト
を付加して出力するものとする。そうでなければ、受信
チャンネルが表示されていないためどのポートから出力
すればよいかがわからなくなるためである。デコーダ側
で再度ランニングステータスに書き換えるか否かは自由
である。
IDI機器から入力されるMIDIメッセージをマージ
するコンバータとして使用され、デコーダはマージされ
たMIDIメッセージを複数のMIDI機器に振り分け
て出力するコンバータとして使用されているが、エンコ
ーダを複数のMIDIファイルを1つのMIDIファイ
ルにまとめるソフトコンバータとして使用し、デコーダ
を1つのMIDIファイルを複数のMIDIファイルに
分割するソフトコンバータとして使用してもよい。
ルチポートシーケンサに内蔵し、マルチポートで入力さ
れたMIDIメッセージを1つのMIDIファイルにマ
ージして記録し、記録したMIDIファイルを読み出す
ときマルチポートに振り分けて出力するようにしてもよ
い。
DIファイルを作成するためにエンコーダのみを用いた
システムを構成してもよく、また、事前にエンコード・
マージされたMIDIファイルを読み出すためにデコー
ドのみを使用したシステムを構成してもよい。
のハード装置として構成してもよく、コンピュータシス
テム上でアプリケーションプログラムとして動作させて
もよい。たとえば、上記カラオケ装置1の場合には、3
つのシーケンサとエンコーダが1つのCPUによって並
行して実行されるようにしてもよい。
独の装置としたが専用アンプにこの機能を内蔵させても
よい。
ケ装置1からデコーダ6に対して一方通行でデータが流
れるようになっているが、リターン用のMIDI接続を
してもよい。さらに、MIDI入力/出力ポートの数は
4に限定されるものではない。
ポートのMIDIメッセージをそのMIDIメッセージ
のポートを指定するメッセージとともに1系統で伝送す
ることにより、受信側では、MIDIメッセージの受信
チャンネルに基づいてそのメッセージの入力端子が分か
るため、シングルポート(1系統)のMIDI伝送でマ
ルチポート(複数系統)のMIDIメッセージを混同す
ることなく伝送することができる。また、これを記録・
再生する場合でも、シングルポートのシーケンサを用い
ることができる。これにより、配線の簡略化、省コスト
化を実現することができる。したがって、それまで使用
していたシングルポートのMIDI機器をそのまま利用
しつつマルチポートに対応することが可能になる。ま
た、MIDIファイルの移動も1つのMIDIファイル
にまとめて行うことができるため、移動を容易にするこ
とができる。
ートが対応づけられるため、通常考えられるMIDI機
器の設定では指定メッセージの発生頻度はそれほど高く
なく、データ量の増大や処理の遅れも殆ど生じない。
コーダを備えたカラオケシステムを示す図
ジの例を示す図
ジの例を示す図
ス記録・再生システムに適用した例を示す図
サ、4…効果シーケンサ、5…照明シーケンサ、6…デ
コーダ、7…音源装置、8…アンプ、9…照明装置、1
1…MIDI入力ポート、12…インタフェース、13
…エンコード処理部、14…対応テーブル、15…出力
バッファ、16…MIDI出力ポート、21…MIDI
入力ポート、22…入力バッファ、23…デコード処理
部、24…対応テーブル、25…マルチプレクサ、26
…出力バッファ、27…MIDI出力ポート、30…電
子楽器、31…エンコーダ、32…シーケンサ、33…
デコーダ、34…音源装置
Claims (6)
- 【請求項1】 複数のMIDI入力端子と、1つのMI
DI出力端子と、MIDIチャンネルと前記複数のMI
DI入力端子とを対応させる対応テーブルと、 いずれかのMIDI入力端子からMIDIメッセージが
入力されたとき、入力されたMIDIメッセージの受信
チャンネルと入力されたMIDI入力端子が前記対応テ
ーブルの内容と一致している場合には、該MIDIメッ
セージをそのまま前記MIDI出力端子から出力し、不
一致の場合には、前記入力されたMIDIメッセージの
受信チャンネルと入力されたMIDI入力端子とを対応
させるように前記対応テーブルを更新し、この更新した
チャンネル/端子の対応を指定する指定メッセージを前
記MIDI出力端子から出力したのち、前記MIDIメ
ッセージを前記MIDI出力端子から出力する制御部で
あって、前記不一致の場合であって、入力されたMIDIメッセ
ージのチャンネル/端子の対応が、低頻度に発生する対
応であった場合には、前記対応テーブルを更新すること
なく、このMIDIメッセージのMIDI出力端子を指
定する一時指定メッセージを出力する制御部と 、 を備えた送信側マルチポートMIDIメッセージ変換装
置、および、 1つのMIDI入力端子と、複数のMIDI出力端子
と、MIDIチャンネルと前記複数のMIDI出力端子
とを対応させる対応テーブルと、 前記MIDI入力端子からMIDIメッセージが入力さ
れたとき、入力されたMIDIメッセージの受信チャン
ネルに基づいて前記対応テーブルを検索して検索された
MIDI出力端子から該MIDIメッセージを出力し、
前記MIDI入力端子から前記指定メッセージが入力さ
れたとき、この内容でMIDIチャンネルとMIDI出
力端子を対応づけるべく前記対応テーブルを更新する制
御部であって、 前記MIDI入力端子から一時指定メッセージが入力さ
れたときは、前記対応テーブルを更新することなく、そ
の直後に入力されるMIDIメッセージをこの一時指定
メッセージが指定するMIDI出力端子から出力する制
御部と 、 を備えた受信側マルチポートMIDIメッセージ変換装
置、 からなるマルチMIDIメッセージ変換装置。 - 【請求項2】 複数のMIDI入力端子と、1つのMI
DI出力端子と、 MIDIチャンネルと前記複数のMIDI入力端子とを
対応させる対応テーブルと、 いずれかのMIDI入力端子からMIDIメッセージが
入力されたとき、入力されたMIDIメッセージの受信
チャンネルと入力されたMIDI入力端子が前記対応テ
ーブルの内容と一致している場合には、該MIDIメッ
セージをそのまま前記MIDI出力端子から出力し、不
一致の場合には、前記入力されたMIDIメッセージの
受信チャンネルと入力されたMIDI入力端子とを対応
させるように前記対応テーブルを更新し、この更新した
チャンネル/端子の対応を指定する指定メッセージを前
記MIDI出力端子から出力したのち、前記MIDIメ
ッセージを前記MIDI出力端子から出力する制御部で
あって、前記不一致の場合であって、入力されたMIDIメッセ
ージのチャンネル/端子の対応が、低頻度に発生する対
応であった場合には、前記対応テーブルを更新すること
なく、このMIDIメッセージのMIDI出力端子を指
定する一時指定メッセージを出力する制御部と 、 を備えたことを特徴とするマルチポートMIDIメッセ
ージ変換装置。 - 【請求項3】 1つのMIDI入力端子と、複数のMI
DI出力端子と、 MIDIチャンネルと前記複数のMIDI出力端子とを
対応させる対応テーブルと、 前記MIDI入力端子からMIDIメッセージが入力さ
れたとき、入力されたMIDIメッセージの受信チャン
ネルに基づいて前記対応テーブルを検索して検索された
MIDI出力端子から該MIDIメッセージを出力し、
特定のMIDIチャンネルと特定のMIDI出力端子の
対応を指定する指定メッセージが入力されたとき、この
内容で前記対応テーブルを更新する制御部であって、 前記MIDI入力端子から一時的にMIDI出力端子を
指定する一時指定メッセージが入力されたときは、前記
対応テーブルを更新することなく、その直後に入力され
るMIDIメッセージをこの一時指定メッセージが指定
するMIDI出力端子から出力する制御部と 、 を備えたことを特徴とするマルチポートMIDIメッセ
ージ変換装置。 - 【請求項4】 送信側において、MIDIチャンネルと
複数のMIDI入力端子との対応関係を対応テーブルに
記憶し、いずれかのMIDI入力端子からMIDIメッ
セージが入力されたとき、入力されたMIDIメッセー
ジの受信チャンネルと入力されたMIDI入力端子が前
記対応テーブルの内容と一致している場合には、該MI
DIメッセージをそのまま前記MIDI出力端子から出
力し、不一致の場合には、前記入力されたMIDIメッ
セージの受信チャンネルと入力されたMIDI入力端子
の対応で前記対応テーブルを更新し、このチャンネル/
端子の対応を指定する指定メッセージを出力したのち、
前記MIDIメッセージを出力するとともに、前記不一
致の場合であって、入力されたMIDIメッセージのチ
ャンネル/端子の対応が、低頻度に発生する対応であっ
た場合には、前記対応テーブルを更新することなく、こ
のMIDIメッセージのMIDI出力端子を指定する一
時指定メッセージを出力し、 受信側において、MIDIのチャンネルと複数のMID
I出力端子との対応関係を対応テーブルに記憶し、前記
MIDI入力端子からMIDIメッセージが入力された
とき、入力されたMIDIメッセージの受信チャンネル
に基づいて前記対応テーブルを検索して検索されたMI
DI出力端子から該MIDIメッセージを出力し、前記
指定メッセージが入力されたとき、この内容でMIDI
チャンネルとMIDI出力端子を対応づけるべく前記対
応テーブルを更新するとともに、前記MIDI入力端子
から前記一時指定メッセージが入力されたときは、前記
対応テーブルを更新することなくその直後に入力される
MIDIメッセージをこの一時指定メッセージが指定す
るMIDI出力端子から出力することを特徴とするマル
チポートMIDIメッセージ変換方法。 - 【請求項5】 MIDIチャンネルと複数のMIDI入
力端子との対応関係を対応テーブルに記憶し、いずれか
のMIDI入力端子からMIDIメッセージが入力され
たとき、入力されたMIDIメッセージの受信チャンネ
ルと入力されたMIDI入力端子が前記対応テーブルの
内容と一致している場合には、該MIDIメッセージを
そのまま前記MIDI出力端子から出力し、不一致の場
合には、前記入力されたMIDIメッセージの受信チャ
ンネルと入力されたMIDI入力端子の対応で前記対応
テーブルを更新し、この対応を指定する指定メッセージ
を出力したのち、前記MIDIメッセージを出力すると
ともに、前記不一致の場合であって、入力されたMID
Iメッセージのチャンネル/端子の対応が、低頻度に発
生する対応であった場合には、前記対応テーブルを更新
することなく、このMIDIメッセージのMIDI出力
端子を指定する一時指定メッセージを出力することを特
徴とするマルチポートMIDIメッセージ変換方法。 - 【請求項6】 MIDIのチャンネルと複数のMIDI
出力端子との対応関係を対応テーブルに記憶し、前記M
IDI入力端子からMIDIメッセージが入力されたと
き、入力されたMIDIメッセージの受信チャンネルに
基づいて前記対応テーブルを検索して検索されたMID
I出力端子から該MIDIメッセージを出力し、特定の
MIDIチャンネルと特定のMIDI出力端子の対応を
指定する指定メッセージが入力されたとき、この内容で
MIDIチャンネルとMIDI出力端子を対応づけるべ
く前記対応テーブルを更新するとともに、前記MIDI
入力端子から前記一時指定メッセージが入力されたとき
は、前記対応テーブルを更新することなくその直後に入
力されるMIDIメッセージをこの一時指定メッセージ
が指定するMIDI出力端子から出力することを特徴と
するマルチポートMIDIメッセージ変換方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33296895A JP3467941B2 (ja) | 1995-12-21 | 1995-12-21 | マルチポートmidiメッセージ変換装置および方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33296895A JP3467941B2 (ja) | 1995-12-21 | 1995-12-21 | マルチポートmidiメッセージ変換装置および方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09172421A JPH09172421A (ja) | 1997-06-30 |
JP3467941B2 true JP3467941B2 (ja) | 2003-11-17 |
Family
ID=18260839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP33296895A Expired - Fee Related JP3467941B2 (ja) | 1995-12-21 | 1995-12-21 | マルチポートmidiメッセージ変換装置および方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3467941B2 (ja) |
-
1995
- 1995-12-21 JP JP33296895A patent/JP3467941B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH09172421A (ja) | 1997-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3061906B2 (ja) | Midiデータファイルの処理システム及び方法 | |
JP2692768B2 (ja) | ディジタル・オーディオ及びmidi合成音楽を同時に出力する方法及び装置 | |
US20030196540A1 (en) | Multiplexing system for digital signals formatted on different standards, method used therein, demultiplexing system, method used therein computer programs for the methods and information storage media for storing the computer programs | |
US20010045155A1 (en) | Method of compressing a midi file | |
US6782299B1 (en) | Method and apparatus for digital signal processing, method and apparatus for generating control data, and medium for recording program | |
JPH05188947A (ja) | 演奏情報インターフェース | |
US6274799B1 (en) | Method of mapping waveforms to timbres in generation of musical forms | |
US6627807B2 (en) | Communications apparatus for tone generator setting information | |
JP3467941B2 (ja) | マルチポートmidiメッセージ変換装置および方法 | |
US6069311A (en) | Electronic musical instrument having mother board communicable with plug-in board | |
JP2001005459A (ja) | 楽音合成装置及び方法 | |
JP2000181448A (ja) | 送信装置および送信方法、受信装置および受信方法、並びに提供媒体 | |
JP2709965B2 (ja) | Bgm再生に用いる音楽伝送再生システム | |
JP2661493B2 (ja) | データ記憶装置およびデータ選択通信方法 | |
JP3339372B2 (ja) | 楽音発生装置および楽音発生方法を実現するためのプログラムを格納した記憶媒体 | |
JP2002023740A (ja) | 音楽データ処理装置 | |
JP2998576B2 (ja) | データ処理装置 | |
JPH10207475A (ja) | カラオケ装置 | |
JP3211646B2 (ja) | 演奏情報記録方法及びその演奏情報の再生装置 | |
JPH02192259A (ja) | デジタル音楽情報の出力装置 | |
JPH10190636A (ja) | データ転送方法、データ受信装置、及びデータ送信装置 | |
JPH0887271A (ja) | 演奏情報圧縮方法及び演奏情報伸張方法 | |
JPH0199089A (ja) | キースプリット機能付電子楽器 | |
JPH103293A (ja) | 演奏情報通信システム | |
JPH10164544A (ja) | データ集中管理型音・動画再生システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070905 Year of fee payment: 4 |
|
R370 | Written measure of declining of transfer procedure |
Free format text: JAPANESE INTERMEDIATE CODE: R370 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070905 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080905 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090905 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100905 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100905 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110905 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120905 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130905 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |