JP3017260B2 - 楽音データ処理装置及び楽音データ処理方法 - Google Patents

楽音データ処理装置及び楽音データ処理方法

Info

Publication number
JP3017260B2
JP3017260B2 JP2229644A JP22964490A JP3017260B2 JP 3017260 B2 JP3017260 B2 JP 3017260B2 JP 2229644 A JP2229644 A JP 2229644A JP 22964490 A JP22964490 A JP 22964490A JP 3017260 B2 JP3017260 B2 JP 3017260B2
Authority
JP
Japan
Prior art keywords
data
tone
velocity
common
musical
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
Application number
JP2229644A
Other languages
English (en)
Other versions
JPH04110895A (ja
Inventor
勉 斉藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kawai Musical Instrument Manufacturing Co Ltd
Original Assignee
Kawai Musical Instrument Manufacturing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Kawai Musical Instrument Manufacturing Co Ltd filed Critical Kawai Musical Instrument Manufacturing Co Ltd
Priority to JP2229644A priority Critical patent/JP3017260B2/ja
Publication of JPH04110895A publication Critical patent/JPH04110895A/ja
Application granted granted Critical
Publication of JP3017260B2 publication Critical patent/JP3017260B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、楽音データ処理方式に関し、特に楽音デー
タのデータ長を短くする点の改良に関する。
[発明の概要] 本発明は、各楽音から、各楽音データに共通する共通
部分データと、共通部分以外の特有部分データとを抽出
し、特有部分データを楽音データと同じ個数分とし、共
通部分データを楽音データより少ない個数分とした。こ
れにより、楽音データのデータ長を短くすることができ
る。
[従来技術] 楽音データには、代表的なものは、第13図に示すよう
に、キーナンバ、ゲートタイム、ベロシティ、ステップ
タイムがある。このうち、キーナンバを例にとると、従
来では、例えば、キーナンバデータのデータ長を7ビッ
トとし、上位3ビットをオクターブデータとし、7つの
オクターブを示すようにし、下位4ビットを音名データ
とし、12個の音名を示すようにして、最高84個の音高を
表わすことができるようになっていた。
[発明が解決しようとする課題] しかしながら、実際の演奏では、かなり高い音や、か
なり低い音は、頻繁には演奏されず、中音域の2〜3オ
クターブの範囲で演奏されることが多く、7ビットのデ
ータ長のキーナンバを常時使うことは無駄が多かった。
また、コード(和音)伴奏では、メロディ演奏に比
べ、押鍵の速さ又は強さには、それほど変化はなく、ベ
ロシティデータに8ビット長も使うことは無駄が多かっ
た。そして、コード演奏では、メロディ演奏に比べ、音
長や演奏タイミングにそれほど細かい表現が必要とされ
ることが少なく、ゲートタイム、ステップタイムの精度
は粗くてもよかった。
さらに、リズム演奏では、メロディ演奏に比べ、パー
カッシブ音であるため、ゲートタイムは一律であり、ゲ
ートタイムデータは不要となる。その反面、メロディ演
奏より高い精度のステップタイムとベロシティが必要と
なる。
このように、第13図に示すデータ形式は、メロディ演
奏に合わせたものであり、他のコード伴奏、リズム演奏
には無駄となったり、不十分となったりする部分があっ
た。
本発明は、上述した課題を解決するためになされたも
のであり、楽音データ個々のデータ長を短くするととも
に、楽音データ群全体としてのデータ長も少なくでき、
しかもメロディ、コード、リズム等のいずれの演奏パー
トのデータ処理においても、無駄なくデータ処理を行う
ことのできる楽音データ処理方式を提供することを目的
としている。
[課題を解決するための手段] 上記目的を達成するために、本発明においては、各楽
音から、各楽音データに共通する共通部分データと、共
通部分以外の特有部分データとを抽出し、特有部分デー
タを楽音データの個数に応じた個数分とし、共通部分デ
ータを楽音データより少ない個数分とした。
[作用] これにより、各楽音データを特有部分データにまで圧
縮できて、個々のデータ長を短くできる。また、共通部
分データは、楽音データの個数より少なくしているか
ら、楽音データ群全体としてのデータ量も少なくするこ
とができる。
[実施例] 以下、本発明を具体化した一実施例を図面を参照して
説明する。
本発明は、第1図(1)(2)(3)に示すように、
特有部分データである発音データ内の各データを圧縮
し、この各データを第1図(4)に示すモードデータに
基づいて伸長し、元のベロシティデータ、キーナンバデ
ータ、ステップタイムデータ、ゲートタイムデータにす
る。このモードデータは、第3図(1)(2)(3)に
示すように、発音データのところどころに記憶されてい
るだけである。
上記データの伸長は、第11図のステップ404、406、40
8、412、415、420で行われ、この後アサインメントメモ
リ8に書き込まれて発音される。また上記データの圧縮
記憶は、キーナンバデータについては第12図のステップ
508〜514で行われ、ベロシティデータについては第12図
のステップ517〜518及び520〜525及び513〜514で行われ
る。
1.全体回路 第2図は、電子楽器の全体回路を示すものである。キ
ーボード1の各キーは、キースキャン回路2によってス
キャンされ、キーオン、キーオフが検出される。この検
出結果は、CPU6によって、楽音発生回路7内のアサイン
メントメモリ8に書き込まれる。アサインメントメモリ
8は、RAM11と一体構成としてもよい。
タブレットスイッチマトリックス3の各スイッチは、
キーボード1の音色、リズム等の選択を行うもので、各
スイッチは、タブレットスキャン回路4によってスキャ
ンされる。このスキャン結果、すなわち選択指令された
音色、リズム等に関するデータは、CPU6によって、楽音
発生回路7に送られる。
なお、上記キーボード1は、電子ギター等の電子弦楽
器、電子吹奏(管)楽器、電子打楽器等で代用してもよ
く、楽音の発音指示ができれば何でもよい。
楽音発生回路7では、送られてきた各種データや、ア
サインメントメモリ8にセットされたデータに応じた楽
音信号が生成され、D/A変換器9を介し、サウンドシス
テム10へ送られて、楽音が生成発音される。ROM12に
は、CPU6が各種処理を行うためのプログラムや、演奏情
報、後述するベロシティリスト、ステップリスト、ゲー
トリスト、コードルートリスト、音色リスト、場合によ
っては楽音波形データやエンベロープ波形データが記憶
されている。RAM11には、演奏情報の他、各種処理デー
タ等の値の変わる変更データが記憶される他、ワーキン
グRAM11aも形成されている。
プログラマブルタイマ5は、プログラマブルカウンタ
等から構成され、入力されたデータに応じた周期のイン
タラプト信号INTをCPU6に出力する。このプログラマブ
ルタイマ5では、設定テンポに応じたカウント、すなわ
ち4分音符の時間長当り、48クロック分のカウントが行
われ、後述するステップタイムデータ、ゲートタイムデ
ータ等のカウントに使用される。
2.演奏情報 第3図は、RAM11及びROM12に記憶されている演奏情報
の記憶フォーマットを示すものである。第3図(1)は
メロディ演奏情報であり、第3図(2)は和音(コー
ド)演奏情報であり、、第3図(3)はリズム演奏情報
である。
演奏情報の中の個々の楽音データは、2バイト構成で
あり各楽音データは、小節データ、モードデータ、音色
データ、発音データ、終了データ等を示している。
このうち、発音データは、第1図(1)〜(3)に示
すように、メロディ、和音、リズムで異なる構成となっ
ている。
2−1.メロディ発音データ 第1図(1)に示すメロディ発音データは、3ビット
のアクセントデータ及び5ビットのノートナンバデー
タ、4ビットのステップデータ及び4ビットのゲートレ
ベルデータからなっている。
アクセントデータは、押鍵の速さ又は強さを示すデー
タである。このデータは、3ビットであるため、「0」
〜「7」の値しかとることができないが、後述するモー
ドデータの中のベロシティリストデータ「00(0)」
「01(1)」「10(2)」「11(3)」に基づいて、よ
り広い範囲の値に拡張変換される。
この拡張は、第4図(1)〜(4)に示すとおりであ
り、この4つのベロシティリストに基づき、「0」〜
「7」のアクセントデータが、「0」〜「64」、「0」
〜「88」、「34」〜「127」、「68」〜「127」の本来の
ベロシティデータにそれぞれ変換合成される。この場
合、第4図(1)〜(4)に示すアクセントデータは
「0」〜「15」であり、アクセントデータは実際には2
倍又は2倍+1される。このベロシティリストのデータ
は、上述のROM12に記憶されている。
ベロシティリストデータ「00(0)」「01(1)」
「10(2)」「11(3)」は、ベロシティデータの変動
の範囲を示す変動率データと同義であり、アクセントデ
ータ「0」〜「15」は、上記変動範囲の中における位置
を示す偏差率データと同義である。
第4図(1)〜(4)に示すベロシティリストは、こ
れ以外のデータ形式でもよい。また、ベロシティリスト
データは、演算式で代用してもよい。例えば、第4図
(1)のベロシティリストであれば、4×(アクセント
データ+1)(但しアクセントデータ=0のときベロシ
ティデータ=0)となり、第4図(3)のベロシティリ
ストであれば、6×(アクセントデータ)+34(但しア
クセントデータ=15のときベロシティデータ=127)と
なる。
ノートナンバデータは、音高を示すデータである。こ
のデータは、5ビットであるため、「0」〜「31」の値
しかとることができないが、後述するモードデータの4
ビットのノートバイアスデータに基づいて、より広い範
囲の値をとることが可能となる。ノートナンバデータ
は、2オクターブ強の範囲のキーナンバを示しており、
ノートバイアスデータは、半オクターブ単位の値を示す
データであり、ノートバイアスデータを6倍してノート
ナンバデータを加算し、本来のキーナンバデータが加算
合成される。
ノートバイアスデータは、「0000」でC0、「0010」で
C1、「0100」でC2、「0110」でC3、「1000」でC4、「10
10」でC5、「1100」でC6、「1110」でC7を示している。
ノートバイアスデータは、ベース演奏では、C2の音高で
十分であり、和音伴奏では、C3の音高で十分であり、メ
ロディ演奏では、メロディ音の音高が、上記ノートナン
バデータのとりうる2オクターブ強の範囲を越えるごと
に、C3、C4、C5…と変えられていく。
このノートバイアスデータは、1オクターブ単位の値
を示すものとしてもよい。ノートバイアスデータは、キ
ーナンバデータの変動範囲に対し、一定の値のデータで
あり、ノートナンバデータは、キーナンバデータからバ
イアスデータを差し引いた偏差データと同義である。
ステップレベルデータは、小節の先頭から発音タイミ
ングまでの時間長を示すデータである。ゲートレベルデ
ータは、楽音の音長(音符長)を示すデータである。こ
れらのデータは、4ビットであるため、「0」〜「15」
の値しかとることができないが、第4図(5)(6)
(7)に示す、ステップリスト、ゲートリストに基づい
て拡張され、本来のステップタイムデータ、ゲートタイ
ムデータに変換合成される。
このステップレベルデータ、ゲートレベルデータにお
いては、上述したベロシティデータ、キーナンバデータ
のように、モードデータの中のデータに基づいて変換範
囲が変えられることはなく、固定的なものである。この
場合、ステップレベルリスト及びゲートレベルリスト
も、ROM12に記憶されている。ステップレベルリスト
は、第4図(5)(6)の2種類記憶されているが、第
4図(5)はメロディ音用であり、第4図(6)は和音
用である。リズム音用のものもROM12に記憶されている
が、図示しない。
なお、このステップタイムデータ、ゲートタイムデー
タにおいても、ベロシティのようにリストを選択できる
ようにしてもよいし、バイアスデータとこれ以外のデー
タに分離してもよい。
2−2.和音発音データ 第1図(2)に示す和音発音データは、4ビットのコ
ードデータ及び4ビットのルートデータ、4ビットステ
ップレベルデータ及びゲートレベルデータからなってい
る。
コードデータに基づき、ROM12内のコードルートリス
トから、各構成音のノートナンバが読み出され、ルート
データに応じて展開される。このコードルートリスト
は、自動伴奏装置等に広く用いられているものである。
上記展開された各構成音のノートナンバは、上述したメ
ロディ発音データのノートナンバと同じデータフォーマ
ットのものであり、上述したようにモードデータの中の
ノートバイアスデータに基づいて、本来のキーナンバデ
ータに加算合成される。むろん、上記コードルートリス
トから直接本来のキーナンバデータを変換してもよい。
ステップレベルデータ及びゲートレベルデータは、上
述したメロディ発音データのものと同じである。
この和音発音データでは、ベロシティデータは記憶さ
れず、発音時には、一定のベロシティデータがCPU6によ
りアサインメントメモリ8に書き込まれる。
2−3.リズム発音データ 第1図(3)に示すリズム発音データは、2ビットの
アクセントデータ及び6ビットのパーカスナンバデー
タ、5ビットのステップレベルデータ及び3ビットのア
クセントデータからなっている。
アクセントデータは、2ビットのものと3ビットのも
のもを合わせて5ビットとされ、より細かく精度の高い
ベロシティデータが変換合成される。このリズム発音デ
ータのベロシティリストデータは、図示しないが、メロ
ディ発音データと同様に、第4図(1)〜(4)のよう
な4つのベロシティリストがROM12に記憶され、5ビッ
トの「0」〜「31」のアクセントデータが変換される。
パーカスナンバデータは、リズム演奏のドラム、ハッ
ト、シンバル等の音色を示すデータである。このリズム
音色音の発音周波数は、モードデータの中のノートバイ
アスデータだけに基いている。例えば、ノートバイアス
データにC3のキーナンバデータを加算したものが、読出
周波数を示すことになる。
ステップレベルデータは、5ビットであるため、より
細かく精度の高いステップタイムデータが合成出力され
る。このリズム発音データのステップリストは図示しな
いが、メロディ発音データ及び和音発音データと同様
に、第4図(5)(6)と同様のステップリストがROM1
2に記憶され、5ビット「0」〜「31」のステップレベ
ルデータが変換される。
このリズム発音データでは、ゲートレベルデータは記
憶されず、発音時には、一定のゲートタイムデータがCP
U6によりアサインメントメモリ8に書き込まれる。
このように楽音データは、2バイト構成であるため、
第13図に示す従来の4バイト構成の半分で済む。
2−4.モードデータ 第1図(4)はモードデータを示すものである。この
モードデータは、上述のアクセントデータの変換合成に
使用されるベロシティリストデータが演奏の途中で変わ
るとき、またはノートナンバデータに加算合成されるノ
ートバイアスデータが演奏の途中で変わるときに、演奏
情報の中に挿入されるものである。このモードデータも
2バイト構成であり、1バイト目は「1111 1101」の識
別コードであり、2バイト目は、2ビットのモードコー
ド、2ビットのベロシティリストデータ、4ビットのノ
ートバイアスデータからなっている。
モードコードは、このモードデータ以降の演奏情報が
メロディ演奏のものか(「00(0)」)、和音演奏のも
のか(「01(1)」)、リズム演奏のものか(「10
(2)」)を示している。ベロシティリストデータは、
ベロシティデータの合成出力にあたり、上述したよう
に、第4図(1)〜(4)に示すような、いずれのリス
トを使用するかを示すものである。ノートバイアスデー
タは、ノートナンバーデータの合成出力にあたり、上述
したように、ノートナンバデータに加算されるデータを
示している。リズム演奏の場合は、このノートバイアス
データが直接、発音周波数を示している。
このモードデータは、発音データのアクセントデータ
の変換合成に使用されるベロシティリストデータまたは
ノートナンバデータに加算合成されるノートバイアスデ
ータに変更がなければ、演奏情報の中に挿入されること
はなく、発音データの個数より少なくて済む。従って、
発音データそれぞれに対し、モードデータを個々記憶し
なくても済み、演奏情報全体としてのデータ量も少なく
できる。
2−5.その他の演奏情報 第1図(5)は演奏終了データを示すものであり、こ
のデータは演奏の終了を示している。この終了データも
2バイト構成であり、1バイト目及び2バイト目は「11
11 1111」の識別コードとなっている。
第1図(6)は小節データを示すものであり、このデ
ータは演奏の中の小節のスタート地点を示している。こ
の小節データも2バイト構成であり、1バイト目が「11
11 1111」の識別コードとなっており、2バイト目が基
準クロック数データとなっている。この基準クロック数
データは、1小節内の基準クロック数を示している。例
えば、4分音符長が48クロック数で、4/4拍子ならば48
×4=192クロック数、3/4拍子ならば48×3=144クロ
ック数となる。
第1図(7)は音色データを示すものであり、このデ
ータは演奏楽音の音色を示している。この音色データも
2バイト構成であり、1バイト目が「1111 1110」の識
別コードとなっており、2バイト目が、音色を示す音色
ナンバデータとなっている。
3.楽音データ例 第5図(1)(2)(3)は、演奏情報として記憶さ
れるメロディ演奏、和音演奏、リズム演奏の例を示すも
のである。これを、演奏情報の形で記憶すると、第3図
(1)(2)(3)に示すようになる。これに対し、従
来の記憶方式では、第14図(1)(2)(3)に示すよ
うになる。
このように、1つの発音データで、従来は4バイト必
要であったのが、2バイトで済むため、第14図の従来の
記憶方式に対し、第3図の本願の記憶方式では、かなり
データ量は少なくなる。なお、本願では、別に2バイト
のモードデータが必要となるが、発音データの個数分ま
では必要とされないので、演奏情報全体のデータ量は少
なくなる。
4.ワーキングRAM11a 第6図はワーキングRAM11aを示すものである。このワ
ーキングRAM11a内には、アドレスポインタ、小節カウン
タ、クロックカウンタ、モードレジスタ、クロックレジ
スタ、トーンナンバレジスタ、ステップタイムレジス
タ、ベロシティレジスタ、発音レジスタが設けられてい
る。
アドレスポインタは、ROM12内の演奏情報の読出アド
レスまたはRAM11内の演奏情報の書込みアドレスがセッ
トされる。
小節カウンタでは、上記読み出された演奏情報又は、
書き込まれた演奏情報の小節数がカウントされる。
クロックカウンタでは、上記プログラマブルタイマ5
からインタラプト信号INTが出力されるごとに+1さ
れ、1小節分のカウントが行われて、後述するクロック
レジスタの値に一致すると、クリアされる。
モードレジスタには、上述のモードデータの2バイト
目のモードコード、ベロシティリストデータ、ノートバ
イアスデータがセットされる。
クロックレジスタには、上述の小節データの2バイト
目の1小節分の基準クロック数データがセットされる。
音色ナンバレジスタには、上述の音色データの2バイ
ト目の音色ナンバデータがセットされる。
ステップタイムレジスタには、発音データのステップ
レベルデータが変換合成されたステップタイムデータが
セットされる。
ベロシティレジスタには、演奏情報の書き込みにあた
り、記憶する入力ベロシティデータがセットされる。
発音レジスタには、演奏情報の書き込みにあたり、記
憶する入力発音データがセットされたり、演奏情報の読
み出しにあたり、再生する読出発音データがセットされ
たりする。
5.アサインメントメモリ8 第7図は、アサインメントメモリ8を示すものであ
る。このアサインメントメモリ8には、楽音発生回路7
に形成される複数チャンネル各々に割り当てられる楽音
データが記憶される。各チャンネルエリアには、オン/
オフデータ及びキーナンバデータ、ゲートタイムデー
タ、ベロシティデータ、音色ナンバデータが記憶され
る。
オン/オフデータは、割り当てられている楽音がキー
オン状態(「1」)か、キーオフ状態(「0」)かを示
している。
キーナンバデータは、割り当てられている楽音のキー
ナンバデータを示しており、このデータは上述の発音デ
ータのノートナンバデータとモードデータのノートバイ
アスデータとから加算合成される。
ベロシティデータは、割り当てられている楽音のキー
オンの速さ又は強さを示しており、このデータは上述の
発音データのアクセントデータとモードデータのベロシ
ティリストデータとから変換合成される。
音色ナンバデータは、割り当てられている楽音の音色
を示しており、このデータは上述の演奏情報の中の音色
データの音色ナンバデータがそのまま使用される。
6.演奏情報再生処理 第8図〜第10図は、演奏情報再生処理のフローチャー
トを示すものである。第8図は再生スタート処理を示
し、この処理は上述のタブレットスイッチマトリックス
3内の再生スタートスイッチのオンによってスタートさ
れ、第9図は再生中のインタラプト処理を示し、第10図
は再生エンド処理を示し、この処理は再生ストップキー
のオフによってスタートされる。
6−1.再生スタート処理 第8図の再生スタート処理は、タブレットスイッチマ
トリックス3内の各スイッチの走査処理及びスイッチイ
ベント処理の中の再生スタートスイッチのオンイベント
処理である。
この処理では、CPU6は、再生スタートスイッチがオン
状態になったことを判別すると(ステップ100)、ワー
キングRAM11a内の小節カウンタ、クロックカウンタをク
リアし、アドレスポインタを設定する(ステップ10
1)。このアドレスポインタには、ROM12またはRAM11内
の演奏情報の中のメロディ、和音、リズムのいずれかの
一曲の先頭アドレスデータがセットされる。
次に、この先頭アドレスから2バイト分のデータを読
み出す。先頭アドレスから2バイト分のデータは、第3
図(1)〜(3)に示すように、小節データであるか
ら、読み出した2バイト分のデータのうち、2バイト目
の1小節分の基準クロック数データをワーキングRAM11a
のクロックレジスタにセットする(ステップ102)。
そして、次の2バイト分のデータを読み出す。小節デ
ータの次の2バイト分のデータは、第3図(1)〜
(3)に示すように、モードデータであるから、読み出
した2バイト分のデータのうち、2バイト目のモードコ
ード、ベロシティリストデータ、ノートバイアスデータ
をワーキングRAM11aのモードレジスタにセットする(ス
テップ103)。
次いで、上記モードコードが「0」または「1」、す
なわち読み出しデータがメロディまたは和音の演奏情報
であれば(ステップ104)、さらに次の2バイト分のデ
ータを読み出す。モードデータの次の2バイト分のデー
タは、第3図(1)(2)に示すように、音色データで
あるから、読み出した2バイト分のデータのうち、2バ
イト目の音色ナンバデータをワーキングRAM11aの音色ナ
ンバレジスタにセットする(ステップ105)。
このステップ105の処理は、リズムの演奏情報につい
ては、音色データがないので、行われない。
さらに、その次の2バイト分のデータを読み出す。こ
のデータは、第3図(1)〜(3)に示すように、発音
データであるから、この発音データを発音レジスタにセ
ットする(ステップ106)。発音データ内のステップレ
ベルデータを、第4図(5)または(6)に示す、ROM1
2内のステップリストに基づき変換合成を行い、ワーキ
ングRAM11a内のステップタイムレジスタにセットする
(ステップ107)。
最後に、プログラマブルタイマ5をイネーブル状態と
して、一定周期ごとにインタラプト信号がCPU6に出力可
能として(ステップ108)、リターンする。この一定周
期は、4分音符の時間長当り、48周期である。
6−2.再生中インタラプト処理 第9図の再生中インタラプト処理は、上記プログラマ
ブルタイマ5からCPU6にインタラプト信号が入力される
ごとに実行される。
この処理では、CPU6は、まずワーキングRAM11aのクロ
ックカウンタを+1し(ステップ200)、クロックカウ
ンタの値がクロックレジスタ内の1小節分の基準クロッ
ク数データまで達していれば(ステップ201)、小節カ
ウンタを+1してクロックカウンタをクリアする(ステ
ップ202)。もし、クロックカウンタの値がクロックレ
ジスタ内の1小節分の基準クロック数データまで達して
いなければ(ステップ201)、クロックカウンタの値が
ステップタイムレジスタ内のステップタイムデータまで
達している場合(ステップ203)、このステップタイム
データに係る発音データに応じた楽音の発音をスタート
させる(ステップ204)。この発音データは、上記ワー
キングRAM11aのアドレスポインタで指定される番地のも
のである。このステップ204の発音処理の詳しい内容は
後述する。
また、上記ステップ203で、クロックカウンタの値が
ステップタイムレジスタ内のステップタイムデータまで
達していない場合、アサインメントメモリ8内のオン/
オフデータが「1」のキーオン状態中のチャンネルエリ
アの各ゲートタイムデータを−1し(ステップ215)、
ゲートタイムデータが「0」になったものについては
(ステップ216)、オン/オフデータを「0」のキーオ
フ状態とし(ステップ217)、リターンする。
一方、CPU6は、次の2バイト分のデータを読み出し
(ステップ205)、このデータが演奏終了データか(ス
テップ206)、小節データか(ステップ207)、音色デー
タか(ステップ209)、モードデータか(ステップ21
1)、発音データか(ステップ213)を判別する。
小節データであれば(ステップ207)、この小節デー
タ内の1小節分の基準クロック数データをワーキングRA
M11aのクロックレジスタにセットし直して(ステップ20
8)、上記ステップ205に戻る。
音色データであれば(ステップ209)、この音色デー
タ内の音色ナンバデータをワーキングRAM11aの音色ナン
バレジスタにセットし直して(ステップ210)。上記ス
テップ205に戻る。
モードデータであれば(ステップ211)、このモード
データ内のモードコード、ベロシティリストデータ、ノ
ートバイアスデータをワーキングRAM11aのモードレジス
タにセットし直して(ステップ212)、上記ステップ205
に戻る。
発音データであれば(ステップ213)、この発音デー
タ内のステップレベルデータをROM12内のステップリス
トに基づき、変換合成を行い、ワーキングRAM11aのステ
ップタイムレジスタにセットし直して(ステップ21
4)、上記ステップ203に戻って、ステップタイムデータ
の判別処理を行う。
結局、ステップ205〜212の演奏情報の2バイト分ずつ
のデータの読み出しは、上記ステップ213、214の発音デ
ータの読み出しまで続けられることになる。
また、上記ステップ206で、読み出したデータが演奏
終了データであれば、上記ステップ215〜217のゲートタ
イムデータのデクリメント処理に進む。
6−3.再生エンド処理 第10図の再生エンド処理は、タブレットスイッチマト
リックス3内の各スイッチの走査処理及びスイッチイベ
ント処理の中の再生ストップスイッチのオンイベント処
理である。
この処理では、CPU6は、再生ストップスイッチがオン
状態になったことを判別すると(ステップ300)、プロ
グラマブルタイマ5を非イネーブル状態として、インタ
ラプト信号の出力をストップさせ(ステップ301)、ア
サインメントメモリ8内の演奏情報の書き込まれている
すべてのチャンネルエリアのオン/オフデータを「0」
のオフ状態として(ステップ302)、リターンする。
7.発音処理(ステップ204) 第11図は、上記ステップ204の発音処理の詳しい内容
を示すフローチャートである。
この処理では、CPU6は、アサインメントメモリ8内の
空チャンネルをサーチする(ステップ400)。この空チ
ャンネルサーチ処理は、スイッチオフチャンネルをまず
サーチし、スイッチオフチャンネルがなければ、最先に
発音開始された楽音に係るチャンネルをサーチするとい
うように、所定の優先順位に従ってサーチされる。
空チャンネルがサーチされると、CPU6は、上記ステッ
プ103で読み出した、ワーキングRAM11aのモードレジス
タのモードコードが「0」(メロディ)か(ステップ40
1)、「1」(和音)か(ステップ402)、「2」(リズ
ム)か(ステップ403)を判別する。
メロディの「0」であれば、第4図(7)に示す、RO
M12内のゲートリストに基づき、ゲートレベルデータを
変換して、本来のゲートタイムを合成する(ステップ40
4)。このゲートレベルデータは、上記ステップ106で読
み出された発音データの中のものであり、このときのワ
ーキングRAM11aのアドレスポインタの内容は、ステップ
106のときと同じである。そして、このゲートタイムデ
ータを上記サーチ空チャンネルエリアに書き込む(ステ
ップ405)。
次いで、CPU6は、上記ステップ103で読み出した、ワ
ーキングRAM11aのモードレジスタのベロシティリストデ
ータに応じた、第4図(1)〜(4)に示す、ROM12の
ベロシティリストに基づき、アクセントデータを変換し
て、本来のベロシティデータを合成する(ステップ40
6)。このアクセントデータも、上記ステップ106で読み
出された発音データの中のものである。そして、このベ
ロシティデータを上記サーチ空チャンネルエリアに書き
込む(ステップ407)。
さらに、CPU6は、上記ステップ103で読み出した、ワ
ーキングRAM11aのモードレジスタのノートバイアスを6
倍して、ノートナンバデータを加算して、本来のキーナ
ンバデータを合成する(ステップ408)。このノートナ
ンバデータも、上記ステップ106で読み出された発音デ
ータの中のものである。そして、このキーナンバデータ
を上記サーチ空チャンネルエリアに書き込んで(ステッ
プ409)、オン/オフデータを「1」のオン状態にする
(ステップ410)。
この後、CPU6は、ワーキングRAM11aの音色ナンバレジ
スタ内の音色ナンバデータを上記サーチ空チャンネルエ
リアに書き込んで(ステップ411)、上記ステップ205に
進む。
こうして、メロディの発音データに基づいて、メロデ
ィ音の発音が開始される。
また、上記ステップ402で、モードコードが和音の
「1」であれば、第4図(7)に示す、ROM12内のゲー
トリストに基づき、ゲートレベルデータを変換して、本
来のゲートタイムを合成する(ステップ412)。このゲ
ートレベルデータは、上記ステップ106で読み出された
発音データの中のものであり、このときのワーキングRA
M11aのアドレスポインタの内容は、ステップ106のとき
と同じである。そして、このゲートタイムデータを上記
サーチ空チャンネルエリアに書き込む(ステップ41
3)。
次いで、CPU6は、ROM12のコードルートリストに基づ
き、上記ステップ106で読み出された発音データの中の
コールドルートデータを、各構成音のノートナンバデー
タに変換する(ステップ414)。そして上記ステップ103
で読み出した、ワーキングRAM11aのモードレジスタのノ
ートバイアスデータを6倍して、上記各構成音のノート
ナンバデータを加算して、本来のキーナンバデータを合
成する(ステップ415)。さらに、このキーナンバデー
タを上記サーチ空チャンネルエリアに書き込んで(ステ
ップ416)、オン/オフデータを「1」のオン状態にす
る(ステップ417)。
この後、CPU6は、あらかじめ定められた一定の値のベ
ロシティデータを上記サーチ空チャンネルエリアに書き
込み(ステップ418)、ワーキングRAM11aの音色レジス
タ内の音色ナンバデータを上記サーチ空チャンネルエリ
アに書き込んで(ステップ419)、上記ステップ205に進
む。
こうして、和音の発音データに基づいて、和音の発音
が開始される。
さらに、上記ステップ403で、モードコードがリズム
の「2」であれば、上記ステップ103で読み出した、ワ
ーキングRAM11aのモードレジスタのベロシティリストデ
ータ(図示せず)に基づき、アクセントデータを変換し
て、本来のベロシティデータを合成する(ステップ42
0)。このアクセントデータも上記ステップ106で読み出
された発音データの中のものである。そして、このベロ
シティデータを上記サーチ空チャンネルエリアに書き込
(ステップ421)。次いで、CPU6は、上記ステップ106で
読み出された発音データの中のパーカスナンバを、上記
サーチ空チャンネルエリアの音色ナンバの番地に書き込
む(ステップ422)。
さらに、CPU6は、あらかじめ定められた一定の値のゲ
ートタイムデータを上記サーチ空チャンネルエリアに書
き込み(ステップ423)、上記ステップ103で読み出し
た、ワーキングRAM11aのモードレジスタのノートバイア
スデータをそのまま、又はこのノートバイアスデータに
C3のキーナンバデータを加算したデータを、キーナンバ
データとして上記サーチ空チャンネルエリアに書き込ん
で(ステップ424)、オン/オフデータを「1」のオン
状態とする(ステップ425)。
こうして、リズムの発音データに基づいて、リズムの
発音が開始される。
8.演奏情報記録処理 第12図は、演奏情報記録処理のフローチャートを示す
ものである。この処理は、タブレットスイッチマトリッ
クス3内の記録スタートスイッチのオンで開始されるイ
ンタラプト処理である。この処理は記録ストップスイッ
チのオンで強制的にリターンされる。
この処理では、CPU6は、ワーキングRAM11aのモードレ
ジスタ及び発音レジスタをクリアし(ステップ500)、
モードレジスタ内のモードコード及びベロシティリスト
データをセットする(ステップ501)。このモードコー
ド及びベロシティリストデータは、タブレットスイッチ
マトリックス3内のスイッチ操作によって入力される。
このスイッチは、メロディ、和音及びリズムの切換スイ
ッチと、ベロシティ1、2、3及び4の切換スイッチで
ある。むろん後述するモード切換スイッチと値スイッチ
とで入力してもよい。
次いで、CPU6は、データ入力があれば(ステップ50
2)、この入力データがキーナンバデータか(ステップ5
03)、ベロシティリストデータか(ステップ504)、ベ
ロシティデータか(ステップ505)、その他のデータか
(ステップ506)を判別する。このデータ入力は、タブ
レットスイッチマトリックス3内のモード切換スイッチ
と値スイッチとで入力される。モード切換スイッチは、
入力するデータを小節、モード、音色、発音、演奏終了
に切り換え、発音データは、さらにキーナンバ、ベロシ
ティ、ステップタイム、ゲートタイムに切り換えられ
る。値スイッチは、入力するデータ値を設定するもの
で、つまみまたはアップスイッチ及びいダウンスイッチ
が用いられる。
なお、キーナンバ、ベロシティのデータ入力にあたっ
ては、キーボード1の各スイッチを用いてもよい。この
データ入力は、1ステップずつデータを入力していくも
のであるが、リアルタイムに入力するようにしてもよ
い。
上記ステップ503で、入力データがキーナンバであれ
ば、このキーナンバを発音レジスタにセットし、キーナ
ンバからモードレジスタ内のノートバイアスデータを差
し引いた値が「0」以上、「28」以下かを判別する(ス
テップ507)。Yesであれば、ノートバイアスデータを変
更する必要がなく、Noであれば、ノートバイアスデータ
を変更する必要がある。モードレジスタ内のノートバイ
アスデータの値は、発音データの書き込みが1つも行わ
れていないときは「0」であるが、すでに1つでも書き
込みが行われていれば、何らかの値となっている。
上記ステップ506で、Noであれば、ノートバイアスデ
ータを変更するため、モードレジスタ内のノートバイア
スデータを「0」とし(ステップ508)、発音レジスタ
内のキーナンバデータが「6」未満すなわち半オクター
ブ分のデータ値未満となるまで(ステップ509)、キー
ナンバデータからこの「6」を差し引き(ステップ51
0)、その都度ノートバイアスデータを+1していく
(ステップ511)。
キーナンバデータが「6」未満になれば、モードレジ
スタのモードコード、ベロシティリストデータ、ノート
バイアスデータを、モードデータとして、RAM11内の演
奏情報エリアに書き込む(ステップ512)。続いて、発
音レジスタ内に、アクセントデータ、ノートナンバデー
タ、ステップレベルデータ、ゲートレベルデータ等のす
べてのデータの書き込みが終了したか否かを判別する
(ステップ513)。すべて書き込んでいれば、発音レジ
スタ内の全データを、発音データとして、RAM11内の演
奏情報エリアに書き込んで(ステップ514)、発音レジ
スタをクリアし(ステップ515)、上記ステップ502に戻
る。この場合、発音レジスタ内のキーナンバデータがノ
ートナンバデータとして記憶される。
こうして、ノートバイアスデータに変更が生じた場合
には、発音データとともにモードデータの書き込みも行
われる。
上記ステップ506で、Yesであれば、ノートバイアスデ
ータを変更する必要がなく、キーナンバデータからノー
トバイアスデータを差し引いた値をノートナンバとして
(ステップ516)、発音レジスタの全データの書き込み
が終了していれば(ステップ513)、発音レジスタ内の
他のデータとともに、RAM11内の演奏情報エリアに書き
込んで(ステップ514)、発音レジスタをクリアし(ス
テップ515)、上記ステップ502に戻る。
上記ステップ514で、メロディ、和音、リズムの切換
スイッチが、和音のときは、同時押鍵のキーナンバか
ら、コードとルートとを判別して、このコードルートデ
ータを書き込むことになる。むろん、各構成音のままで
記憶してもよい。
上記ステップ504で、入力データがベロシティリスト
データであれば、このベロシティリストデータをモード
レジスタに書き込み(ステップ517)、このモードレジ
スタの全データをモードデータとして、RAM11内の演奏
情報エリアに書き込んで(ステップ518)、上記ステッ
プ502に戻る。
こうして、ベロシティリストデータに変更が生じた場
合でも、モードデータの書き込みが行われる。
上記ステップ505で、入力データがベロシティデータ
であれば、このベロシティデータをワーキングRAM11a内
のベロシティレジスタにセットし、発音レジスタ内のア
クセントデータを「0」とし(ステップ520)、ベロシ
ティデータが、ベロシティリストデータの上記アクセン
トデータに応じたベロシティデータを越えなくなるまで
(ステップ521)、ベロシティデータから、このベロシ
ティリストデータの上記アクセントデータに応じたベロ
シティデータを差し引き(ステップ522)、その都度ア
クセントデータを+1していく(ステップ523)。
ベロシティデータが、ベロシティリストデータの上記
アクセントデータに応じたベロシティデータを越えなく
なれば、アクセントデータが「15」以上になっている場
合のみ(ステップ524)、このアクセントデータを「1
5」に戻し(ステップ525)、発音レジスタの全データの
書き込みが終了していれば(ステップ513)、このアク
セントデータを発音レジスタ内の他のデータとともに、
RAM11内の演奏情報エリアに書き込んで(ステップ51
4)、発音レジスタをクリアし(ステップ515)、上記ス
テップ502に戻る。
上記ステップ506で、入力データがその他のデータで
あれば、そのデータのRAM11内の演奏情報エリアへの書
き込み処理を行う。この場合、入力データがステップタ
イムデータやゲートタイムデータのとき、上述のステッ
プ520〜525、513〜515と同様の処理が行われていくこと
になる。
本発明は上記実施例に限定されず、本発明の趣旨を逸
脱しない範囲で種々変更可能である。例えば、本発明の
楽音データ処理方式は、共通部分データとして倍率デー
タとし、特有部分データとして楽音データを倍率データ
で除したものでもよいし、第4図の各リストにつき、共
通部分データをいくつおきに読み出すかを示すデータと
したり、偶数番目のデータと奇数番目のデータのいずれ
を読み出すかを示すデータとしてもよいし、共通部分デ
ータとして演算式データとし、特有部分データとして演
算式データから楽音データを導出する代入データとして
もよい。また、共通部分データであるモードデータは、
特有部分データである発音データに対し、共通する発音
データ群ごとでなく、一定個数おきに挿入してもよい。
このほか、本発明の楽音データ処理方式は、キーナンバ
データ、ベロシティデータ以外の楽音データに適用して
もよい。
[発明の効果] 以上詳述したように、本発明によれば、各楽音から、
各楽音データに共通する共通部分データと、共通部分以
外の特有部分データとを抽出し、特有部分データを楽音
データの個数に応じた個数分とし、共通部分データを楽
音データより少ない個数分とした。従って、各楽音デー
タを特有部分データにまで圧縮できて、個々のデータ長
を短くできる。また、共通部分データは、楽音データの
個数より少なくしているから、楽音データ群全体として
のデータ量も少なくすることがてきる。
【図面の簡単な説明】
第1図乃至第12図は本発明の実施例を示すもので、第1
図は楽音データの記憶フォーマットを示す図であり、第
2図は電子楽器の全体回路図であり、第3図は楽音デー
タ群よりなる演奏情報を示す図であり、第4図はROM12
に記憶される各楽音データを変換合成するためのリスト
を示す図であり、第5図は演奏情報として記憶される演
奏例を示す図であり、第6図はワーキングRAM11aを示す
図であり、第7図はアサインメントメモリ8を示す図で
あり、第8図〜第10図は演奏情報再生処理のフローチャ
ート図であり、第11図は第9図のステップ204の発音処
理のフローチャート図であり、第12図は演奏情報記録処
理のフローチャート図であり、第13図及び第14図は従来
例を示す図である。 1……キーボード、3……タブレットスイッチマトリッ
クス、5……プログラマブルタイマ、6……CPU、11…
…RAM、11a……ワーキングRAM、12……ROM

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】ベロシティデータ、ステップタイムデータ
    などの楽音データ群であって、同じ種類の楽音データ群
    でありしかもデータ内容の異なる楽音データ群それぞれ
    を、ベロシティリスト、モードデータなどの共通部分デ
    ータとアクセントデータ、ステップレベルデータなどの
    特有部分データに分離抽出することによってデータ圧縮
    する楽音データ処理装置において、 上記分離抽出された特有部分データを上記楽音データの
    個数に応じた個数分出力する手段と、 上記分離抽出された共通部分データは、上記楽音データ
    群にわたって共通するものであって、当該共通部分デー
    タを当該楽音データの個数より少ない個数分出力して、
    楽音データ群全体としてデータ圧縮する手段と、 上記同じ種類の楽音データ群を、メロディ、和音、リズ
    ムなどの複数の演奏分野にわたって取り込み、しかも上
    記共通部分データをこの各演奏分野ごとに異なるデータ
    内容とする手段とを備えたことを特徴とする楽音データ
    処理装置。
  2. 【請求項2】上記請求項1で抽出かつ出力された共通部
    分データであって各演奏分野ごとに内容の異なる共通部
    分データに基づいて、上記請求項1で抽出かつ出力され
    た特有部分データを各演奏分野ごとに変換し、これによ
    り、上記共通部分データ及び特有部分データから上記楽
    音データに伸長することを特徴とする楽音データ処理装
    置。
  3. 【請求項3】上記共通部分データ及び特有部分データは
    記憶手段に記憶され、 上記共通部分データは、上記楽音データのそれぞれが属
    する異なる分野を示すデータであり、 上記共通部分データは、上記楽音データの変動範囲に対
    し、一定の値に応じたバイアスデータであり、上記特有
    部分データは、各楽音データからバイアスデータに基づ
    く値を除いた残りの偏差データであり、 または、上記共通部分データは、上記楽音データの変動
    範囲に対し、変動の範囲を示す変動率データであり、上
    記特有部分データは、各楽音データの変動範囲の中の位
    置を示す偏差率データであることを特徴とする請求項1
    または2記載の楽音データ処理装置。
  4. 【請求項4】上記変換は、変換形態の異なる複数の変換
    部を用い、上記共通部分データによって、この複数の変
    換部を選択し、上記特有部分データを、この選択された
    変換部によって変換することを特徴とする請求項2記載
    の楽音データ処理装置。
  5. 【請求項5】ベロシティデータ、ステップタイムデータ
    などの楽音データ群であって、同じ種類の楽音データ群
    でありしかもデータ内容の異なる楽音データ群それぞれ
    を、ベロシティリスト、モードデータなどの共通部分デ
    ータとアクセントデータ、ステップレベルデータなどの
    特有部分データに分離抽出させることによってデータ圧
    縮させる楽音データ処理方法において、 上記分離抽出された特有部分データを上記楽音データの
    個数に応じた個数分出力させ、 上記分離抽出された共通部分データは、上記楽音データ
    群にわたって共通するものであって、当該共通部分デー
    タを当該楽音データの個数より少ない個数分出力させ
    て、楽音データ群全体としてデータ圧縮させ、 上記同じ種類の楽音データ群を、メロディ、和音、リズ
    ムなどの複数の演奏分野にわたって取り込ませ、しかも
    上記共通部分データをこの各演奏分野ごとに異なるデー
    タ内容とさせることを特徴とする楽音データ処理方法。
  6. 【請求項6】上記請求項5で抽出かつ出力された共通部
    分データであって各演奏分野ごとに内容の異なる共通部
    分データに基づいて、上記請求項5で抽出かつ出力され
    た特有部分データを各演奏分野ごとに変換させ、これに
    より、上記共通部分データ及び特有部分データから上記
    楽音データに伸長させることを特徴とする楽音データ処
    理方法。
JP2229644A 1990-08-30 1990-08-30 楽音データ処理装置及び楽音データ処理方法 Expired - Fee Related JP3017260B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2229644A JP3017260B2 (ja) 1990-08-30 1990-08-30 楽音データ処理装置及び楽音データ処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2229644A JP3017260B2 (ja) 1990-08-30 1990-08-30 楽音データ処理装置及び楽音データ処理方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP9230345A Division JP2859870B2 (ja) 1997-08-11 1997-08-11 楽音制御データ圧縮装置、楽音制御データ圧縮方法、楽音制御データ伸長装置及び楽音制御データ伸長方法

Publications (2)

Publication Number Publication Date
JPH04110895A JPH04110895A (ja) 1992-04-13
JP3017260B2 true JP3017260B2 (ja) 2000-03-06

Family

ID=16895432

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2229644A Expired - Fee Related JP3017260B2 (ja) 1990-08-30 1990-08-30 楽音データ処理装置及び楽音データ処理方法

Country Status (1)

Country Link
JP (1) JP3017260B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5736486A (en) * 1980-08-13 1982-02-27 Nippon Gakki Seizo Kk Automatic playing device
JPS5764782A (en) * 1980-10-08 1982-04-20 Nippon Musical Instruments Mfg Automatic performance device
JPS5786890A (en) * 1980-11-19 1982-05-31 Nippon Musical Instruments Mfg Automatic performer

Also Published As

Publication number Publication date
JPH04110895A (ja) 1992-04-13

Similar Documents

Publication Publication Date Title
JPH0631978B2 (ja) 電子楽器の自動伴奏装置
US5262584A (en) Electronic musical instrument with record/playback of phrase tones assigned to specific keys
JPH079586B2 (ja) 電子楽器の自動伴奏装置
US5478967A (en) Automatic performing system for repeating and performing an accompaniment pattern
US5585586A (en) Tempo setting apparatus and parameter setting apparatus for electronic musical instrument
JPH09179559A (ja) 自動伴奏装置及び自動伴奏方法
JP3017260B2 (ja) 楽音データ処理装置及び楽音データ処理方法
JP2859870B2 (ja) 楽音制御データ圧縮装置、楽音制御データ圧縮方法、楽音制御データ伸長装置及び楽音制御データ伸長方法
JP2522337B2 (ja) 自動演奏装置
JP2660462B2 (ja) 自動演奏装置
JP3195111B2 (ja) 自動演奏装置
JP2619237B2 (ja) 電子楽器の自動伴奏装置
JPH04331990A (ja) 音声電子楽器
JP3413842B2 (ja) 自動伴奏装置
JPH04274297A (ja) 自動演奏装置
JPS61292689A (ja) 自動伴奏装置付き電子楽器
JP2660457B2 (ja) 自動演奏装置
JP2866291B2 (ja) 楽譜作成装置
JPH05188961A (ja) 自動伴奏装置
JP3143039B2 (ja) 自動演奏装置
JP3407563B2 (ja) 自動演奏装置及び自動演奏方法
JP3450542B2 (ja) 伴奏パターン作成装置
JPH0736114B2 (ja) 自動伴奏装置
JPH10133661A (ja) 自動演奏装置
JPH05108074A (ja) 電子楽器の自動伴奏装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees