(57)【特許請求の範囲】
【請求項１】
楽音波形データの各ポイントのうち、連続した隣り合う各ポイントの大きさを直交座標の各座標軸におけるそれぞれの座標値として記憶する手段と、
この記憶された座標値を、座標軸を回転させた座標軸上の座標値に変換する手段と、
この変換された座標値を記憶する手段とを備えたことを特徴とする楽音波形データ記憶装置。
【請求項２】
楽音波形データ記憶装置に対して、ＣＰＵが、
楽音波形データの各ポイントのうち、連続した隣り合う各ポイントの大きさを直交座標の各座標軸におけるそれぞれの座標値として記憶させ、
この記憶された座標値を、座標軸を回転させた座標軸上の座標値に変換し、この変換した座標値を記憶させることを特徴とする楽音波形データ記憶方法。
【請求項３】
請求項１記載の楽音波形データ記憶装置によって変換記憶された楽音波形データを読み出す手段と、
この読み出された楽音波形データを元の回転前の座標軸上の値に逆変換し、この値を元の楽音波形データの連続した隣り合う各ポイントの大きさとして出力する手段とを備えたことを特徴とする楽音波形データ再生装置。
【請求項４】
楽音波形データ再生装置に対して、ＣＰＵが、
請求項２記載の楽音波形データ記憶方法によって変換記憶された楽音波形データを読み出しさせ、
この読み出された楽音波形データを元の回転前の座標軸上の値に逆変換し、この値を元の楽音波形データの連続した隣り合う各ポイントの大きさとして出力させることを特徴とする楽音波形データ再生方法。
【請求項５】
上記座標軸は２次元直交座標であり、座標軸の回転角度は４５度であり、
上記隣り合うポイントは楽音波形データの連続した隣り合う２個のポイントであり、これら２個の隣り合うポイントの楽音波形データが合成されて記憶され、さらに分離されて再生され、
この合成または分離される連続した隣り合うポイントは２個ごとに組み合わされて合成または分離され、この組み合わされる複数のポイントは第ｎ番目、第ｎ＋１番目（ｎ＝０、２、４、６、…、または  ｎ＝１、３、５、７、…）の２個ずつの各ポイントがそれぞれ組み合わされ、
上記楽音波形データの基本波長に比べて上記各ポイント間隔は十分に小さく、
上記連続した隣り合うポイントから変換された座標値は２つの値からなり、この２つの値は１つの番地にまとめて記憶されることを特徴とする請求項１記載の楽音波形データ記憶装置または請求項３記載の楽音波形データ再生装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、楽音波形データ記憶装置及び楽音波形データ再生装置に関し、特に隣り合うポイントの大きさを座標値として座標上に表して、この座標の座標軸を回転させた座標軸上の値に当該座標値を変換して記憶したり、これを再生する装置及び方法に関する。
【０００２】
【従来技術】
従来の楽音波形データを記憶する装置ではサンプリング回路が用いられ、入力された楽音波形データがサンプリングされ、サンプリングされた各ポイントの大きさがアナログ−デジタル変換され順次波形記憶回路に書き込まれる。
【０００３】
また従来の楽音波形データを再生する装置ではこの記憶された楽音波形データが音高に応じた速度で読み出され、デジタル−アナログ変換されて、平滑化回路をへて楽音として再生出力される。
【０００４】
【発明が解決しようとする課題】
しかしながら、このような楽音波形データ記憶装置及び再生装置では、楽音波形データの各サンプルポイントの大きさがそのまま記憶されているので、記憶容量が膨大となり、メモリ容量が非常に大きくなっていた。
【０００５】
本発明は、上述した課題を解決するためになされたものであり、本発明の目的は、楽音波形データを圧縮して記憶し、楽音波形データの記憶容量を少なくすることにある。
【０００６】
【課題を解決するための手段】
上記目的を達成するために、本発明は、楽音波形データの各ポイントのうち、隣り合うポイントの大きさを座標値として座標上に表して、この座標の座標軸を回転させた座標軸上の値に当該座標値を変換させ、この変換された座標値を記憶するようにした。またこの変換記憶された楽音波形データを読み出して元の回転前の座標軸上の値に逆変換し、この値を元の楽音波形データの隣り合うポイントの大きさのとして出力するようにした。これにより、楽音波形データを圧縮して記憶することができるし、圧縮記憶した楽音波形データを元の楽音波形データに再生することができる。
【０００７】
【発明の実施の形態】
１．全体回路
図１は楽音波形データ圧縮記憶装置及び楽音波形データ伸長再生装置を有する楽音生成制御装置または電子楽器の全体回路を示す。演奏情報発生部１からは演奏情報（楽音発生情報）が発生される。この演奏情報（楽音発生情報）は、楽音を発生させるための情報である。この演奏情報発生部１は、マニュアル操作によって演奏される発音指示装置、自動演奏装置、種々のスイッチまたはインターフェイスである。
【０００８】
上記演奏情報（楽音発生情報）は、音楽的ファクタ（因子）情報であり、音高（音域）情報（音高決定因子）、発音時間情報、演奏分野情報などである。発音時間情報は楽音の発音開始からの経過時間を示す。演奏分野情報は、演奏パート情報、楽音パート情報、楽器パート情報等を示し、例えばメロディ、伴奏、コード、ベース、リズム等、または上鍵盤、下鍵盤及び足鍵盤等に対応している。
【０００９】
上記音高情報はキーナンバデータＫＮとして取り込まれる。このキーナンバデータＫＮはオクターブデータ（音域データ）と音名データとからなる。演奏分野情報は、パートナンバデータＰＮとして取り込まれ、このパートナンバデータＰＮは各演奏エリアを識別するデータであって、発音操作された楽音がどの演奏エリアからのものかによって設定される。
【００１０】
発音指示装置は、キーボード楽器、弦楽器、吹奏楽器、打楽器、コンピュータのキーボード等である。自動演奏装置は、記憶された演奏情報を自動的に再生するものである。インターフェイスは、ＭＩＤＩ（ミュージカルインスツルメントデジタルインターフェイス）等、接続された装置からの演奏情報を受け取ったり、送り出したりする装置である。
【００１１】
さらに、この演奏情報発生部１には各種スイッチが設けられ、この各種スイッチは音色タブレット、エフェクトスイッチ、リズムスイッチ、ペダル、ホイール、レバー、ダイヤル、ハンドル、タッチスイッチ等であって楽器用のものである。この各種スイッチより、楽音制御情報が発生され、この楽音制御情報は発生された楽音を制御する情報であって音楽的ファクタ（因子）情報であり、音色情報（音色決定因子）、タッチ情報（発音指示操作の速さ／強さ）、発音数情報、共鳴度情報、エフェクト情報、リズム情報、音像（ステレオ）情報、クオンタイズ情報、変調情報、テンポ情報、音量情報、エンベロープ情報等である。
【００１２】
これら音楽的ファクタ情報も上記演奏情報（楽音情報）に合体され、上記各種スイッチより入力されるほか、上記自動演奏情報に合体されたり、上記インターフェイスで送受される演奏情報に合体される。なお、上記タッチスイッチは上記発音指示装置の１つ１つに対応して設けられており、タッチの速さと強さを示すイニシャルタッチデータとアフタタッチデータとが発生される。
【００１３】
上記音色情報は、鍵盤楽器（ピアノ等）、管楽器（フルート等）、弦楽器（バイオリン等）、打楽器（ドラム等）の楽器（発音媒体／発音手段）の種類等に対応しており、トーンナンバデータとして取り込まれる。上記エンベロープ情報は、エンベロープタイム、エンベロープレベル、エンベロープスピード、エンベロープフェーズなどである。
【００１４】
このような音楽的ファクタ情報は、コントローラ２へ送られ、後述の各種信号、データ、パラメータの切り換えが行われ、楽音の内容が決定される。上記演奏情報（楽音発生情報）及び楽音制御情報はコントローラ２で処理され、各種データが音響出力部５へ送られ、楽音信号が発生される。コントローラ２はＣＰＵ、ＲＯＭ及びＲＡＭなどからなっている。
【００１５】
プログラム／データ記憶部３（内部記憶媒体／手段）はＲＯＭまたは書き込み可能なＲＡＭ、フラッシュメモリまたはＥＥＰＲＯＭ等の記憶装置からなり、光ディスクまたは磁気ディスク等の情報記憶部４（外部記憶媒体／手段）に記憶されるコンピュータのプログラムが書き写され記憶される（インストール／転送される）。またプログラム／データ記憶部３には外部の電子楽器またはコンピュータから上記ＭＩＤＩ装置または送受信装置を介して送信されるプログラムも記憶される（インストール／転送される）。このプログラムの記憶媒体は通信媒体も含む。
【００１６】
このインストール（転送／複写）は、情報記憶部３が本楽音生成装置にセットされたとき、または本楽音生成装置の電源が投入されたとき自動的に実行され、または操作者による操作によってインストールされる。上記プログラムは、コントローラ２が各種処理を行うための後述するフローチャートに応じたプログラムである。
【００１７】
なお、本装置に予め別のオペレーティングシステム、システムプログラム（ＯＳ）、その他のプログラムが記憶され、上記プログラムはこれらのＯＳ、その他のプログラムとともに実行されてもよい。このプログラムは本装置（コンピュータ本体）にインストールされ実行されたときに、別のプログラムとともにまたは単独で請求項（クレーム）に記載された処理・機能を実行させることができればよい。
【００１８】
また、このプログラムの一部又は全部が本装置以外の１つ以上の別装置に記憶されて実行され、本装置と別装置との間には通信手段を介して、これから処理するデータ／既に処理されたデータ／プログラムが送受され、本装置及び別装置の全体として、本発明が実行されてもよい。
【００１９】
このプログラム／データ記憶部３には、上述した音楽的ファクタ情報、上述した各種データ及びその他の各種データも記憶される。この各種データには時分割処理に必要なデータや時分割チャンネルへの割当のためデータ等も含まれる。
【００２０】
音響出力部５では、アサインメントメモリ４０に書き込まれた各データに応じた楽音信号が並行して発生され発音出力される。この音響出力部５は時分割処理によって複数の楽音信号が同時に生成されポリフォニックに発音される。この音響出力部５では、共鳴付加、残響付加及び音像形成（ステレオ制御）が行われる。
【００２１】
タイミング発生部６からは、楽音生成制御装置又は電子楽器の全回路の同期を取るためのタイミングコントロール信号が各回路に出力される。このタイミングコントロール信号は、各周期のクロック信号のほか、これらのクロック信号を論理積または論理和した信号、時分割処理のチャンネル分割時間の周期を持つ信号、チャンネルナンバデータＣＨＮｏ、タイムカウントデータＴＩなどを含む。このタイムカウントデータＴＩは、絶対時間つまり時間の経過を示し、このタイムカウントデータＴＩのオーバフローリセットから次のオーバフローリセットまでの周期は、各楽音のうち最も長い発音時間より長く、場合によって数倍に設定される。
【００２２】
楽音波形入力部７からは外部から楽音波形データが入力され、この楽音波形データの各ポイントのうち、隣り合うポイントの大きさを座標値として座標上に表して、この座標の座標軸を回転させた座標軸上の値に当該座標値が合成かつ圧縮されて変換される。この変換された座標値は順番に上記プログラム／データ記憶部３に書き込まれて記憶される。
【００２３】
楽音波形再生部８によって、上記プログラム／データ記憶部３に書き込まれて記憶された楽音波形データが読み出され、この読み出された楽音波形データが元の回転前の座標軸上の値に逆変換され、この値が元の楽音波形データの隣り合うポイントの大きさのとして分離かつ伸長されて再生出力される。この再生出力された楽音波形データは上記音響出力部５へ順次送られて発音出力される。
【００２４】
２．楽音波形入力部７
図２は上記楽音波形入力部７を示す。マイク１０から入力された音響信号はアンプ１１で増幅されサンプリング／ホールド回路１２でサンプリングされ、Ａ−Ｄ変換器１３でアナログ−デジタル変換される、このサンプリング／デジタル変換された偶数番目（０番目も含む）の各ポイントの音響データＸ２はセレクタ１４を介してインバータ群１７でプラス／マイナス反転され、またはそのままセレクタ１８を介して加算器１６へ送られる。
【００２５】
またこのサンプリング／デジタル変換された奇数番目の各ポイントの音響データＸ１はセレクタ１４を介してラッチ１５にストアされ上記加算器１６で、上記偶数番目の各ポイントの音響データが加算または減算され、乗算器１９で数値（１／ＳＱＲ２）が乗算され、セレクタ２０を介してラッチ２１またはラッチ２２にストアされる。この（１／ＳＱＲ２）の「ＳＱＲ２」は「２」の平方根（ルート）を表す。
【００２６】
上記ラッチ２１には上記偶数番目の各ポイントの音響データＸ２が加算された場合の楽音波形データＹ１＝（１／ＳＱＲ２）×（Ｘ１＋Ｘ２）がストアされ、ラッチ２２には上記偶数番目の各ポイントの音響データＸ２が減算された場合の楽音波形データＹ２＝（１／ＳＱＲ２）×（Ｘ１−Ｘ２）がストアされる。
【００２７】
これらラッチ２１及びラッチ２２からの楽音波形データＹ１＝（１／ＳＱＲ２）×（Ｘ１＋Ｘ２）及びＹ２＝（１／ＳＱＲ２）×（Ｘ１−Ｘ２）は楽音波形メモリ２３の同じ番地にパラレルに順次書き込まれる。この楽音波形メモリ２３は上記プログラム／データ記憶部３の中に設けられている。
【００２８】
上記サンプリング／ホールド回路１２にはクロック信号がサンプリング信号Ｓφとして供給される。このサンプリング信号Ｓφの２倍の周波数のクロック信号２Ｓφがアドレスカウンタ２４に供給され、楽音波形メモリ２３の書き込みアドレスデータがインクリメントされる。
【００２９】
このアドレスカウンタ２４の最下位の１ビットデータが上記セレクタ１８及び２０にセレクト信号として送られる。このアドレスカウンタ２４の最下位の１つ上の１ビットデータが上記セレクタ１４にセレクト信号として送られる。これら最下位の２ビットデータはアンドゲート２５を介して読み出し／書き込み信号Ｒ／Ｗとして上記楽音波形メモリ２３に供給される。このアドレスカウンタ２４の最下位の２ビットデータを除いた上位データが書き込みアドレスデータとして上記楽音波形メモリ２３の供給される。
【００３０】
３．圧縮記憶のタイムチャート
図３は上記楽音波形入力部７の各データ及び信号のタイムチャートを示す。奇数番目の各ポイントの音響データＸ１と偶数番目の各ポイントの音響データＸ２とは交互に取り込まれる。これに対応して、上記セレクタ１４はこれら奇数番目の各ポイントの音響データＸ１と偶数番目の各ポイントの音響データＸ２とを交互に選択出力する。
【００３１】
セレクタ１８は偶数番目の各ポイントの音響データＸ２が取り込まれている間のみ、−Ｘ２とＸ２とを交互に選択出力する。セレクタ２０は偶数番目の各ポイントの音響データＸ２が取り込まれている間のみ、楽音波形データＹ１＝（１／ＳＱＲ２）×（Ｘ１＋Ｘ２）とＹ２＝（１／ＳＱＲ２）×（Ｘ１−Ｘ２）とを交互に選択出力する。
【００３２】
楽音波形メモリ２３の読み出し／書き込み信号Ｒ／Ｗは、偶数番目の各ポイントの音響データＸ２が取り込まれている間の後半、つまり楽音波形データＹ１＝（１／ＳＱＲ２）×（Ｘ１＋Ｘ２）とＹ２＝（１／ＳＱＲ２）×（Ｘ１−Ｘ２）とがともにラッチ２１及び２２にストアされたときに、書き込み状態となる。
【００３３】
上述のようにして合成かつ圧縮される隣り合う音響データは第０番目と第１番目のポイント、第２番目と第３番目のポイント、第４番目と第５番目のポイント、第６番目と第７番目のポイント、……の組み合わせである。しかし、第１番目と第２番目のポイント、第３番目と第４番目のポイント、第５番目と第６番目のポイント、第７番目と第８番目のポイント、……の組み合わせが合成かつ圧縮されてもよい。この場合第０番目のポイントは単独で記憶される。
【００３４】
このように、この合成圧縮される隣り合うポイントは複数ごとに組み合わされて合成圧縮される。この組み合わされる複数のポイントは第ｎ番目、第ｎ＋１番目、第ｎ＋２番目、…（ｎ＝０、１、２、３、…）であって、同じｎの値に応じた第ｎ番目、第ｎ＋１番目、第ｎ＋２番目、…が組み合わされる。
【００３５】
４．座標上での圧縮変換
図４は上記楽音波形データの圧縮記憶及び伸長再生が座標軸の回転に対応していることを表している。図４（Ａ）の２次元直交座標軸Ｘ１−Ｘ２は、入力された音響データの各サンプリングポイントにつき、隣り合う偶数番目Ｘ２と奇数番目Ｘ１の２つのポイントのレベルの大きさを座標値として座標上に表した。そうすると、隣り合う２つのポイントのレベルの大きさは互いにほぼ正比例の関係にある。
【００３６】
これは、あるポイントの波形レベルが大きいと隣の波形レベルも大きいことを示し、あるポイントの波形レベルが小さいと隣の波形レベルも小さいことを示す。なお、入力される音響信号の基本周波数に比べてサンプリング周波数が小さければ、つまり入力される楽音波形データの基本波長に比べて上記各サンプリングポイントの間隔があまり小さくなければ、隣り合う２つのポイントのレベルの大きさにおける上記正比例関係はばらつく。
【００３７】
一方、入力される音響信号の基本周波数に比べてサンプリング周波数が大きければ、つまり入力される楽音波形データの基本波長に比べて上記各ポイント間隔が十分に小さければ、例えば８倍（１：８）、１０数倍（１：１６）、２０数倍（１：２４）、３０数倍（１：３２）、４０数倍（１：４８）、５０数倍（１：５６）または６０数倍（１：６４）を越えていけば、隣り合う２つのポイントのレベルの大きさにおける上記正比例関係は次第に明確になる。
【００３８】
図４（Ｂ）は、この図４（Ａ）の２次元直交座標軸Ｘ１−Ｘ２を４５度回転させたものである。この回転された２次元直交座標軸Ｙ１−Ｙ２上の値は、元の（Ｘ１、Ｘ２）から、上述のＹ１＝（１／ＳＱＲ２）×（Ｘ１＋Ｘ２）とＹ２＝（１／ＳＱＲ２）×（Ｘ１−Ｘ２）との演算変換によって求められる。
【００３９】
この回転された座標軸Ｙ１−Ｙ２上での隣り合う２つのポイントを表す各座標点の座標値は、Ｙ１軸方向ではＸ１軸方向に比べて取りうる値範囲が多少増加しているが、Ｙ２軸方向ではＸ２軸方向に比べて取りうる値範囲が極端に減少している。これらを差し引いて相殺して総合すると、全体として各座標値のデータ量を少なくしてデータ圧縮を行うことができる。
【００４０】
この回転された座標軸を元の状態に回転復帰すれば、元の圧縮前の楽音波形データＸ１及びＸ２を再生することができる。この場合、後述するようにＸ１＝（１／ＳＱＲ２）×（Ｙ１＋Ｙ２）とＸ２＝（１／ＳＱＲ２）×（Ｙ１−Ｙ２）との演算変換によって元の楽音波形データが求められる。
【００４１】
５．データ圧縮例
図５、図６及び図７は上述の座標軸回転による楽音波形データの圧縮及び伸長の実験結果を示す。図５は上述のデータ圧縮記憶及びデータ伸長再生を行う対象である音響データ（楽音波形データ）の例を示す。この音響データのレベルは最大でほぼ「２００００」を少々越えている。
【００４２】
図６は、図５の音響データの各サンプリングポイントにつき、隣り合う偶数番目と奇数番目の２つのポイントのレベルの大きさを座標値として２次元直交座標軸上に表した。そうすると、隣り合う２つのポイントのレベルの大きさは互いにほぼ正比例の関係にあることがわかる。
【００４３】
この変換前の最大座標値（取り得る値の範囲）はプラス／マイナスともにほぼ「２００００」を少々越えている。したがって、各サンプリングポイント（座標値）を表すのに、だいたい「２００００」＋「２００００」＝「４００００」のデータ量が必要となる。
【００４４】
図７は、図６の座標軸を４５度回転させたものである。そうすると、縦軸の最大座標値（取り得る値の範囲）はプラス／マイナスともにほぼ「３００００」を少々越えるところまで増加している。しかし、横軸の最大座標値（取り得る値の範囲）はプラス／マイナスともに「２０００」から「３０００」ぐらいまで減少している。したがって、座標変換後の各サンプリングポイント（座標値）を表すのに、だいたい「３００００」＋「３０００」＝「３３０００」のデータ量で済む。
【００４５】
そうすると、データ圧縮変換前に比べてデータ圧縮変換後は、相殺差し引きで「４００００」−「３３０００」＝「７０００」のデータ圧縮が達成されている。この回転された座標軸を元の状態に回転復帰すれば、元の圧縮前の楽音波形データＸ１及びＸ２を再生することができる。
【００４６】
これを各データのビット数で考えると、回転前の座標値のビット数がそれぞれ「１０ビット＋１０ビット＝２０ビット」であれば、回転後の座標値のビット数は「１６ビット＋２ビット＝１８ビット」に圧縮できる。
【００４７】
６．楽音波形再生部８
図８は上記楽音波形再生部８を示す。上記楽音波形メモリ２３から読み出された圧縮楽音波形データ（Ｙ１、Ｙ２）のうち、下位の圧縮楽音波形データＹ２はインバータ群３１でプラス／マイナス反転され、またはそのままセレクタ３２を介して加算器３３へ送られる。
【００４８】
また楽音波形メモリ２３から読み出された圧縮楽音波形データ（Ｙ１、Ｙ２）のうち、上位の圧縮楽音波形データＹ１は上記加算器３３で、上記下位の圧縮楽音波形データＹ２が加算または減算され、乗算器３４で数値（１／ＳＱＲ２）が乗算され、上記音響出力部５へ送られ発音出力される。この（１／ＳＱＲ２）の「ＳＱＲ２」は「２」の平方根（ルート）を表す。
【００４９】
上記音響出力部５には先に偶数番目（０番目を含む）のポイントの伸長楽音波形データＸ２＝（１／ＳＱＲ２）×（Ｙ１−Ｙ２）が出力され、次いで奇数番目のポイントの伸長楽音波形データＸ１＝（１／ＳＱＲ２）×（Ｙ１＋Ｙ２）が出力され、これら偶数番目の伸長楽音波形データＸ２と奇数番目の伸長楽音波形データＸ１とが交互に出力される。
【００５０】
アサインメントメモリ４０からの周波数ナンバデータＦＮは累算部３５で累算され、この累算値の上位データ（整数データ）が読み出しアドレスデータとして上記楽音波形メモリ２３に供給される。この累算値の下位データ（小数データ）の最上位ビットデータは、上記セレクタ３２に選択切替信号として送られる。
【００５１】
上記アサインメントメモリ４０には上記チャンネルナンバデータＣＨＮｏが読み出しアドレスデータとして供給され、各チャンネルに割り当てられた周波数ナンバデータＦＮが時分割に読み出される。上記累算部３５にはシフトレジスタが設けられ、このシフトレジスタは上記時分割チャンネル数に応じた段数を有し、各段には各チャンネルの累算周波数ナンバデータが記憶されて順次シフトされ、アサインメントメモリ４０からの各チャンネルの周波数ナンバデータＦＮが加算器で順次加算され、これにより各チャンネルの周波数ナンバデータＦＮが順次累算される。
【００５２】
７．伸長再生のタイムチャート
図９は上記楽音波形再生部８の各データ及び信号のタイムチャートを示す。２つの圧縮楽音波形データ（Ｙ１、Ｙ２）は周波数ナンバ累算値の上位整数データによって同時に読み出される。そして、セレクタ３２は周波数ナンバ累算値の下位小数データの最上位ビットデータによって−Ｙ２とＹ２とを交互に選択出力する。これにより乗算器３４は伸長楽音波形データＸ１＝（１／ＳＱＲ２）×（Ｙ１＋Ｙ２）とＸ２＝（１／ＳＱＲ２）×（Ｙ１−Ｙ２）とを交互に順次出力する。
【００５３】
上述のようにして分離かつ伸長される隣り合う音響データは第０番目と第１番目のポイント、第２番目と第３番目のポイント、第４番目と第５番目のポイント、第６番目と第７番目のポイント、……の組み合わせである。しかし、第１番目と第２番目のポイント、第３番目と第４番目のポイント、第５番目と第６番目のポイント、第７番目と第８番目のポイント、……の組み合わせが分離かつ伸長されてもよい。この場合第０番目のポイントは単独で再生される。
【００５４】
このように、この再生伸長される隣り合うポイントは複数ごとに組み合わされて再生伸長される。この組み合わされる複数のポイントは第ｎ番目、第ｎ＋１番目、第ｎ＋２番目、…（ｎ＝０、１、２、３、…）であって、同じｎの値に応じた第ｎ番目、第ｎ＋１番目、第ｎ＋２番目、…が組み合わされる。
【００５５】
８．３つの波形ポイントの合成圧縮記憶
図１０は楽音波形データの３つの波形ポイントの合成圧縮の記憶処理のフローチャートを示す。想定される座標軸もＸ１、Ｘ２、Ｘ３の３つであり、回転座標軸もＹ１、Ｙ２、Ｙ３の３つである。回転角度は「θ１」と「θ２」の２段階で示される。まずＹ１軸がＸ１軸に対してＸ２軸方向へ角度「θ１」だけ回転し、さらに「θ１」回転したＹ１軸がＸ３軸方向へ角度「θ１」だけ回転する。
【００５６】
図１０のフローチャートは電源投入または圧縮記憶のモード設定によって開始される。まず回転角度「θ１」及び「θ２」が取り込まれる（ステップ０１）。この回転角度「θ１」及び「θ２」はオペレータによって予め入力されたり固定されていたりし、圧縮に最も有利な回転角度が選択される。
【００５７】
次いで、読み出しアドレスＲＡと書き込みアドレスＷＡが「０」にリセットされる（ステップ０２）。この読み出しアドレスＲＡは図５に示すような楽音波形データがサンプリング記憶されたサンプリングメモリ（図示せず）のアドレスである。書き込みアドレスＷＡは圧縮データが記憶される楽音波形メモリ２３のアドレスである。
【００５８】
そして、サンプリング記憶された楽音波形データＸ１、Ｘ２、Ｘ３が読み出され（ステップ０３）、圧縮楽音波形データＹ１、Ｙ２、Ｙ３が求められる（ステップ０４、０５、０６）。演算式はＹ１＝ｃｏｓθ１・ｃｏｓθ２・Ｘ１＋ｓｉｎθ１・ｃｏｓθ２・Ｘ２＋ｓｉｎθ２・Ｘ３、Ｙ２＝ｓｉｎθ１・Ｘ１−ｃｏｓθ１・Ｘ２、Ｙ３＝ｃｏｓθ１・ｓｉｎθ２・Ｘ１＋ｓｉｎθ１・ｓｉｎθ２・Ｘ２−ｃｏｓθ２・Ｘ３となる。
【００５９】
次いで、上記楽音波形メモリ２３の１つの番地に、圧縮楽音波形データＹ１、Ｙ２、Ｙ３が書き込まれる（ステップ０７）。さらに、読み出しアドレスＲＡと書き込みアドレスＷＡが＋１され（ステップ０８）、以上の処理が上記サンプリングメモリのエンドアドレスの読み出しまで繰り返される（ステップ０９）。
【００６０】
なお、合成圧縮されるポイントの数は「２」または「３」を越えてもよい。この「２」の場合、ステップ０４〜０６で処理される演算はＹ１＝（１／ＳＱＲ２）×（Ｘ１＋Ｘ２）及びＹ２＝（１／ＳＱＲ２）×（Ｘ１−Ｘ２）となる。また「３」の場合、図２の楽音波形入力部７のラッチ２１及び２２の出力端に、同図のラッチ１５及びインバータ群１７からラッチ２１及びラッチ２２までの回路が付加される。
【００６１】
９．３つの波形ポイントの分離伸長再生
図１１は上記圧縮記憶された楽音波形データの分離伸長の再生処理のフローチャートを示す。図１１のフローチャートは電源投入、発音処理または伸長再生のモード設定によって開始される。まず回転角度「θ１」及び「θ２」が取り込まれる（ステップ２１）。この回転角度「θ１」及び「θ２」はオペレータによって予め入力されたり固定されていたりし、上記ステップ０１の圧縮時に設定された回転角度が使用される。
【００６２】
次いで、上記累算部３５の読み出しアドレスＲＡが「０」にリセットされる（ステップ２２）。これにより、アサインメントメモリ４０から周波数ナンバデータＦＮが累算部３５に送り込まれて順次累算され、設定音高に応じた速度で圧縮記憶された楽音波形データが読み出される。
【００６３】
そして、圧縮記憶された楽音波形データＹ１、Ｙ２、Ｙ３が読み出され（ステップ２３）、伸長楽音波形データＸ１、Ｘ２、Ｘ３が求められる（ステップ２４、２５、２６）。演算式はＸ１＝ｃｏｓθ１・ｃｏｓθ２・Ｙ１＋ｓｉｎθ１・ｃｏｓθ２・Ｙ２＋ｓｉｎθ２・Ｙ３、Ｘ２＝ｓｉｎθ１・Ｙ１−ｃｏｓθ１・Ｙ２、Ｘ３＝ｃｏｓθ１・ｓｉｎθ２・Ｙ１＋ｓｉｎθ１・ｓｉｎθ２・Ｙ２−ｃｏｓθ２・Ｙ３となる。
【００６４】
この読み出された楽音波形データＹ１、Ｙ２、Ｙ３は上記音響出力部５へ順次送られて発音される（ステップ２７）。以上の処理が累算部３５の読み出しアドレスＲＡの整数部分が＋１されるごとに繰り返される。なお、分離伸長されるポイントの数は「２」または「３」を越えてもよい。この「２」の場合、ステップ２４〜２６で処理される演算はＸ１＝（１／ＳＱＲ２）×（Ｙ１＋Ｙ２）及びＸ２＝（１／ＳＱＲ２）×（Ｙ１−Ｙ２）となる。この「３」の場合、図８の楽音波形再生部８の乗算器３４の出力端に、同図のインバータ群１７、セレクタ３２、加算器３３及び乗算器３４までの回路が付加される。
【００６５】
本発明は上記実施例に限定されず、本発明の趣旨を逸脱しない範囲で種々変更可能である。例えば、圧縮記憶されたり伸長再生される楽音波形データとしては、楽音の波形データのほか、エンベロープ波形データ、フィルタ制御波形データ、周波数成分制御波形データ、周波数変調波形データ、振幅変調波形データ、単独波形または波形合成の重み付け波形データ、音高（周波数）を変化させる波形データ、音色を変化させる波形データ、タッチを変化させる波形データ、楽音のレベルを変化させる波形データ、フィルタのカットオフ周波数を変化させる波形データ、残響特性（共鳴特性または共振特性）を変化させる波形データ、フォルマントの位置（周波数値）または大きさ（レベル）を変化させる波形データ、インパルス応答信号の読み出し速度または繰り返し周期を変化させる波形データなどでもよい。
【００６６】
上記サンプリング／ホールド回路１２及びＡ−Ｄ変換器１３からのサンプリング音響信号は、いったんメモリに記憶され、その後上記楽音波形入力部７を経て楽音波形メモリ２３に圧縮記憶されてもよい。
【００６７】
上記圧縮記憶及び伸長再生つまり演算変換される楽音波形データは隣合う２つのポイントの波形データであったが、２つを越えるポイントの波形データが演算変換されてもよい。この場合、座標軸は２つを越えて、３次元、４次元、……の座標となり、ｎ次元の座標が回転変換される。このとき、各回転座標軸は元の各座標軸から等間隔に位置する。さらに、隣り合う３つ（４つ、５つ、…）のポイントから変換された座標値は３つ（４つ、５つ、…）の値からなり、この３つ（４つ、５つ、…）の値は１つの番地にまとめて記憶される。
【００６８】
上記座標軸の回転角度は４５度であったが、楽音波形データの状態によっては、３０度、６０度、その他の角度も可能である。例えば、楽音波形データが上端（先端）ほど尖ったノコギリ波または三角波のとき、座標の回転角度が３０度または６０度であれば、データ圧縮が有効となる。一般的には、上記座標軸の回転角度が「θ」であれば、合成圧縮式及び分離伸長式（マトリクス演算式）は以下の通りになる。
【００６９】
0003684078.tif 000002
上記回転角度θが３０度であれば、上記合成圧縮式及び分離伸長式（マトリクス演算式）は以下の通りになる。これに応じて上記楽音波形入力部７及び楽音波形再生部８に「×√３」の乗算器と「×１／２」の乗算器が設けられる。
【００７０】
0003684078.tif 000003
また上記回転角度θが６０度であれば、上記合成圧縮式及び分離伸長式（マトリクス演算式）は以下の通りになる。これに応じて上記楽音波形入力部７及び楽音波形再生部８に「×√３」の乗算器と「×１／２」の乗算器が設けられる。
【００７１】
0003684078.tif 000004
また、上記合成圧縮時に乗算器１９で「１／ＳＱＲ２」を乗算する代わりに、シフタを用いて下位へ１ビットシフトして、「１／２」倍したデータを楽音波形メモリ２３に書き込んでもよい。これにより、楽音波形再生部８の乗算器３４が省略され、伸長再生時の演算処理が加減算のみとなり、演算処理が簡易になる。
【００７２】
さらに、上記マトリクス式において、３つのポイントが合成圧縮または分離伸長される時の演算式は、上記図１０及び図１１のフローチャートのステップ０４〜０６及びステップ２４〜２６に示される。
本件出願当初の特許請求の範囲は以下の通りであった。
［１］楽音波形データの各ポイントのうち、隣り合うポイントの大きさを座標値として座標上に表して、この座標の座標軸を回転させた座標軸上の値に当該座標値を変換する手段と、  この変換された座標値を記憶する手段とを備えたことを特徴とする楽音波形データ記憶装置。
［２］楽音波形データの各ポイントのうち、隣り合うポイントの大きさを座標値として座標上に表して、この座標の座標軸を回転させた座標軸上の値に当該座標値を変換させ、
この変換された座標値を記憶させることを特徴とする楽音波形データ記憶方法。
［３］請求項１記載の楽音波形データ記憶装置によって変換記憶された楽音波形データを読み出す手段と、  この読み出された楽音波形データを元の回転前の座標軸上の値に逆変換し、この値を元の楽音波形データの隣り合うポイントの大きさのとして出力する手段とを備えたことを特徴とする楽音波形データ再生装置。
［４］請求項２記載の楽音波形データ記憶方法によって変換記憶された楽音波形データを読み出しさせ、  この読み出された楽音波形データを元の回転前の座標軸上の値に逆変換し、この値を元の楽音波形データの隣り合うポイントの大きさのとして出力させることを特徴とする楽音波形データ再生方法。
［５］上記座標軸は２次元直交座標であり、座標軸の回転角度は４５度であり、  上記隣り合うポイントは楽音波形データの隣り合う２つのポイントであり、これら２つの隣り合うポイントの楽音波形データが合成かつ圧縮されて記憶され、さらに分離かつ伸長されて再生され、  この合成圧縮または分離伸長される隣り合うポイントは複数ごとに組み合わされて合成圧縮または分離伸長され、この組み合わされる複数のポイントは第ｎ番目、第ｎ＋１番目、第ｎ＋２番目、…（ｎ＝０、１、２、３、…）であって、同じｎの値に応じた第ｎ番目、第ｎ＋１番目、第ｎ＋２番目、…が組み合わされ、  上記楽音波形データの基本波長に比べて上記各ポイント間隔は十分に小さく、  上記隣り合うポイントから変換された座標値は２つの値からなり、この２つの値は１つの番地にまとめて記憶されることを特徴とする請求項１記載の楽音波形データ記憶装置または請求項３記載の楽音波形データ再生装置。
【００７３】
【発明の効果】
以上詳述したように、本発明では、楽音波形データの各ポイントのうち、隣り合うポイントの大きさを座標値として座標上に表して、この座標の座標軸を回転させた座標軸上の値に当該座標値を変換させ、この変換された座標値を記憶するようにした。またこの変換記憶された楽音波形データを読み出して元の回転前の座標軸上の値に逆変換し、この値を元の楽音波形データの隣り合うポイントの大きさのとして出力するようにした。したがって、楽音波形データを圧縮して記憶することができるし、圧縮記憶した楽音波形データを元の楽音波形データに再生することができるなどの効果を奏する。
【図面の簡単な説明】
【図１】楽音波形データ圧縮記憶装置及び楽音波形データ伸長再生装置を有する楽音生成制御装置または電子楽器の全体回路を示す。
【図２】楽音波形入力部７を示す。
【図３】楽音波形入力部７の各データ及び信号のタイムチャートを示す。
【図４】座標軸の回転による楽音波形データの圧縮記憶及び伸長再生の原理を示す。
【図５】データ圧縮記憶及びデータ伸長再生を行う対象である音響データ（楽音波形データ）の例を示す。
【図６】図５の音響データの各サンプリングポイントにつき、隣り合う偶数番目と奇数番目の２つのポイントのレベルの大きさを座標値として２次元直交座標軸上に表した状態を示す。
【図７】図６の座標軸を４５度回転させた状態を示す。
【図８】楽音波形再生部８を示す。
【図９】楽音波形再生部８の各データ及び信号のタイムチャートを示す。
【図１０】楽音波形データの３つのポイントの合成圧縮の記憶処理のフローチャートを示す。
【図１１】楽音波形データの３つのポイントの分離伸長の再生処理のフローチャートを示す。
【符号の説明】
１…演奏情報発生部、２…コントローラ（ＣＰＵ）、３…プログラム／データ記憶部、４…情報記憶部、５…音響出力部、６…タイミング発生部、７…楽音波形入力部、８…楽音波形再生部、１０…マイク、１１…アンプ、１２…サンプリング／ホルード回路、１３…Ａ−Ｄ変換器、１４、１８、２０、３２…セレクタ、１５、２１、２２…ラッチ、１６、３３…加算器、１７、３１…インバータ群、１９、３４…乗算器、２３…楽音波形メモリ、２４…アドレスカウンタ、２５…アンドゲート、３５…累算部、４０…アサインメントメモリ。
【図１】
0003684078.tif 000005
【図２】
0003684078.tif 000006
【図３】
0003684078.tif 000007
【図４】
0003684078.tif 000008
【図５】
0003684078.tif 000009
【図６】
0003684078.tif 000010
【図７】
0003684078.tif 000011
【図８】
0003684078.tif 000012
【図９】
0003684078.tif 000013
【図１０】
0003684078.tif 000014
【図１１】
0003684078.tif 000015