(57)【要約】【目的】  ＭＩＤＩのシステムエクスクルーシブデータのフォーマットで受信したパラメータのデータ量が、内部メモリに確保された記憶容量と一致しない場合であっても、受信したパラメータの内容を適切に記憶できるようにする。【構成】  所定のパラメータの値に従って音響信号を処理するミキサエンジン１０において、上記パラメータの種類毎にそのパラメータのデータ量をパラメータテーブルに記憶しておき、ＭＩＤＩ規格のシステムエクスクルーシブデータを受信した場合に、受信したデータから、そこに含まれるパラメータの種類を判別し（Ｓ２）、その種類に従ってパラメータテーブルから取得したデータ量と、実際に受信したパラメータのデータ量とを比較し（Ｓ３〜Ｓ５）、これらが一致しない場合に、受信したデータをパラメータテーブルにから取得したデータ量のデータに変換してから記録するようにした（Ｓ６〜Ｓ９）。【選択図】        図７
2005195652.tif 000002
【特許請求の範囲】
【請求項１】
所定のパラメータの値に従って音響信号を処理する音響信号処理装置であって、
前記パラメータの値を記憶するパラメータ記憶手段と、
前記パラメータの種類毎に該パラメータのデータ量を規定した規定情報を記憶する規定情報記憶手段と、
ＭＩＤＩ規格のシステムエクスクルーシブデータを受信する受信手段と、
該手段が受信したシステムエクスクルーシブデータから、該システムエクスクルーシブデータに含まれるパラメータの種類を判別する判別手段と、
該手段が判別したパラメータの種類に対応するデータ量を、前記規定情報を参照して取得するデータ量取得手段と、
前記受信手段が受信したシステムエクスクルーシブデータ中のパラメータ値のデータ量が、前記データ量取得手段が取得したデータ量と一致しなかった場合に、そのパラメータ値を、前記データ量取得手段が取得したデータ量のデータに変換して前記パラメータ記憶手段に記録する記録手段とを設けたことを特徴とする音響信号処理装置。
【請求項２】
請求項１記載の音響信号処理装置であって、
前記記録手段に、前記変換を複数の変換方式で行う手段を設け、
前記規定情報記憶手段に、前記規定情報として、前記パラメータの種類毎に前記変換を行う場合に前記複数の変換方式のいずれを採用するかを規定する情報も記憶する手段を設け、
前記記録手段が、前記変換を行う場合に、前記判別手段が判別したパラメータの種類に対応する変換方式を前記規定情報を参照して取得し、その取得した変換方式を用いて前記変換を行う手段を有することを特徴とする音響信号処理装置。
【請求項３】
コンピュータを、
音響信号処理に関するパラメータの値を記憶するパラメータ記憶手段と、
前記パラメータの種類毎に該パラメータのデータ量を規定した規定情報を記憶する規定情報記憶手段と、
ＭＩＤＩ規格のシステムエクスクルーシブデータを受信する受信手段と、
該手段が受信したシステムエクスクルーシブデータから、該システムエクスクルーシブデータに含まれるパラメータの種類を判別する判別手段と、
該手段が判別したパラメータの種類に対応するデータ量を、前記規定情報を参照して取得するデータ量取得手段と、
前記受信手段が受信したシステムエクスクルーシブデータ中のパラメータ値のデータ量が、前記データ量取得手段が取得したデータ量と一致しなかった場合に、そのパラメータ値を、前記データ量取得手段が取得したデータ量のデータに変換して前記パラメータ記憶手段に記録する記録手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、所定のパラメータに従って音響信号を処理する音響信号処理装置、特に、ＭＩＤＩ規格のシステムエクスクルーシブデータを受信して処理する機能を有する音響信号処理装置、およびコンピュータにこのような音響信号処理装置を制御させるためのプログラムに関する。
【背景技術】
【０００２】
従来から、音響信号処理に関するデータを記載する形式として、ＭＩＤＩ（Musical Instruments Digital Interface：登録商標）規格が知られている。そして、ＭＩＤＩ規格において、システムエクスクルーシブデータという形式が定義されている。このシステムエクスクルーシブデータという形式は、機器固有のデータを伝えるための形式であり、その内容は、機器のメーカーがある程度自由に定義できるようになっている。この定義の内容としては、例えば非特許文献１に記載のものが挙げられる。
また、ＭＩＤＩ規格のデータを取り扱う装置においては、一般に、パラメータの種類毎に、内部メモリにおける記憶位置（先頭アドレス）と記憶容量（データ量）を固定的に定めることにより、内部メモリの記憶領域を各パラメータに正確かつ効率よく割り当てることが行われていた。このような割り当ての例も、非特許文献１に記載されている。
【０００３】
ところで、このような割り当てを行っている装置において、各パラメータの先頭アドレス及びデータ量は既知であるので、特定のパラメータを書き換えようとする場合、内部メモリにおけるそのパラメータの先頭アドレスから、所定のデータ量分だけのデータを書き換えればよいことになる。
一方で、システムエクスクルーシブデータを受信した装置の側では、指定されたアドレスに書き込むべきデータの容量を把握しており、書き込みを指示されたデータがその容量と合わない場合には、記録を行わないようにしていた。データ量が多すぎて次のパラメータの一部を上書きしてしまったり、逆に少なすぎて前のデータが一部残ってしまったりすることを防止するためである。
【非特許文献１】「ＭＵ１０００  ＭＵ２０００  ＴＯＮＥ  ＧＥＮＥＲＡＴＯＲ  リストブック」，ヤマハ株式会社，１９９９年，ｐ．９１−１２１
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、データの容量が所定値と合わない場合でも、受け付けたデータを無視してしまうことは好ましくない。例えば、上位機種においてパラメータを細かく設定できる等して、対応するパラメータの容量が機種毎に異なる場合があるが、このような場合には、受信したパラメータを記録できることが好ましい。
【０００５】
この発明は、このような問題を解決し、所定のパラメータの値に従って音響信号を処理する音響信号処理装置において、ＭＩＤＩのシステムエクスクルーシブデータのフォーマットで受信したパラメータのデータ量が、内部メモリに確保された記憶容量と一致しない場合であっても、受信したパラメータの内容を適切に記憶できるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
上記の目的を達成するため、所定のパラメータの値に従って音響信号を処理する音響信号処理装置において、上記パラメータの値を記憶するパラメータ記憶手段と、上記パラメータの種類毎にそのパラメータのデータ量を規定した規定情報を記憶する規定情報記憶手段と、ＭＩＤＩ規格のシステムエクスクルーシブデータを受信する受信手段と、その手段が受信したシステムエクスクルーシブデータから、そのシステムエクスクルーシブデータに含まれるパラメータの種類を判別する判別手段と、その手段が判別したパラメータの種類に対応するデータ量を、上記規定情報を参照して取得するデータ量取得手段と、上記受信手段が受信したシステムエクスクルーシブデータ中のパラメータ値のデータ量が、上記データ量取得手段が取得したデータ量と一致しなかった場合に、そのパラメータ値を、上記データ量取得手段が取得したデータ量のデータに変換して上記パラメータ記憶手段に記録する記録手段とを設けたものである。
【０００７】
このような音響信号処理装置において、上記記録手段に、上記変換を複数の変換方式で行う手段を設け、上記規定情報記憶手段に、上記規定情報として、上記パラメータの種類毎に上記変換を行う場合に上記複数の変換方式のいずれを採用するかを規定する情報も記憶する手段を設け、上記記録手段に、上記変換を行う場合に、上記判別手段が判別したパラメータの種類に対応する変換方式を上記規定情報を参照して取得し、その取得した変換方式を用いて上記変換を行う手段を設けるとよい。
【０００８】
また、この発明のプログラムは、コンピュータを、音響信号処理に関するパラメータの値を記憶するパラメータ記憶手段と、上記パラメータの種類毎にそのパラメータのデータ量を規定した規定情報を記憶する規定情報記憶手段と、ＭＩＤＩ規格のシステムエクスクルーシブデータを受信する受信手段と、その手段が受信したシステムエクスクルーシブデータから、そのシステムエクスクルーシブデータに含まれるパラメータの種類を判別する判別手段と、その手段が判別したパラメータの種類に対応するデータ量を、上記規定情報を参照して取得するデータ量取得手段と、上記受信手段が受信したシステムエクスクルーシブデータ中のパラメータ値のデータ量が、上記データ量取得手段が取得したデータ量と一致しなかった場合に、そのパラメータ値を、上記データ量取得手段が取得したデータ量のデータに変換して上記パラメータ記憶手段に記録する記録手段として機能させるためのプログラムである。
【発明の効果】
【０００９】
以上のようなこの発明の音響信号処理システムによれば、所定のパラメータの値に従って音響信号を処理する音響信号処理装置において、ＭＩＤＩのシステムエクスクルーシブデータのフォーマットで受信したパラメータのデータ量が、内部メモリに確保された記憶容量と一致しない場合であっても、受信したパラメータの内容を適切に記憶できるようにすることができる。また、この発明のプログラムによれば、コンピュータに音響信号処理装置を制御させて同様な効果を得ることができる。
【発明を実施するための最良の形態】
【００１０】
以下、この発明を実施するための最良の形態を図面に基づいて具体的に説明する。
まず、図１を用いて、この発明の音響信号処理装置であるミキサエンジンの構成について説明する。図１はそのミキサエンジンの構成を示すブロック図である。
このミキサエンジン１０は、音響信号処理部を、プログラムに従って動作可能なプロセッサを用いて構成すると共に、外部のＰＣ（パーソナルコンピュータ）等のコンピュータを編集装置として機能させ、これを用いて編集した信号処理構成に基づいて音響信号を処理できるようにした音響信号処理装置である。
【００１１】
そして、ＣＰＵ１１，フラッシュメモリ１２，ＲＡＭ１３，表示器１４，操作子１５，ＰＣ入出力部（Ｉ／Ｏ）１６，ＭＩＤＩＩ／Ｏ１７，その他Ｉ／Ｏ１８，波形Ｉ／Ｏ１９，信号処理部（ＤＳＰ）２０，カスケードＩ／Ｏ２１を備え、これらがＣＰＵバス２２によって接続されている。そして、ＰＣ３０から受信した信号処理構成に従って、ＤＳＰ２０を制御するためのマイクロプログラムを生成し、そのマイクロプログラムに従ってＤＳＰ２０を動作させ、入力する音響信号に対して種々の信号処理を施して出力する機能を有する。
【００１２】
ＣＰＵ１１は、ミキサエンジン１０の動作を統括制御する制御手段であり、フラッシュメモリ１２に記憶された所定のプログラムを実行することにより、各Ｉ／Ｏ１６〜１９，２１における通信や表示器１４における表示を制御したり、操作子１５の操作を検出してその操作に従ってパラメータの値を変更したり、ＰＣ３０から受信した信号処理構成の情報からＤＳＰ２０を動作させるためのマイクロプログラムを生成してＤＳＰ２０に設定したりといった処理を行う。
フラッシュメモリ１２は、ＣＰＵ１１が実行する制御プログラムや後述するアサインテーブル及びパラメータテーブル等を記憶する書き換え可能な不揮発性記憶手段である。
【００１３】
ＲＡＭ１３は、一時的に記憶すべきデータを記憶したり、ＣＰＵ１１のワークメモリとして使用したりする記憶手段である。
表示器１４は、液晶ディスプレイ（ＬＣＤ）等によって構成される表示手段である。そして、ミキサエンジン１０の現在の状態を示す画面や、信号処理に係るパラメータの参照，変更，保存等を行うための画面等を表示する。
操作子１５は、キー、スイッチ、ロータリーエンコーダ等によって構成され、ユーザがミキサエンジン１０を直接操作してパラメータの編集等を行うための操作子である。
【００１４】
ＰＣＩ／Ｏ１６は、ＰＣ３０と通信を行うためのインタフェースであり、例えばＵＳＢ（Universal Serial Bus）方式のインタフェースとしたり、イーサネット（登録商標）による通信を行うためのインタフェースとすることができる。
ＭＩＤＩＩ／Ｏ１７は、システムエクスクルーシブデータを始め、ＭＩＤＩ規格に従ったデータを授受するためのインタフェースであり、例えば、ＭＩＤＩに対応した電子楽器あるいはＭＩＤＩデータを出力するアプリケーションプログラムを備えたコンピュータ等と通信を行うために用いる。
【００１５】
波形Ｉ／Ｏ１９は、ＤＳＰ２０で処理すべき音響信号の入力を受け付け、また処理後の音響信号を出力するためのインタフェースである。そして、この波形Ｉ／Ｏ１９には、１枚で４チャンネルのアナログ入力が可能なＡ／Ｄ変換ボード，１枚で４チャンネルのアナログ出力が可能なＤ／Ａ変換ボード，１枚で８チャンネルのデジタル入出力が可能なデジタル入出力ボードを適宜組み合わせて複数枚装着可能であり、実際にはこれらのボードを介して信号の入出力を行う。
【００１６】
カスケードＩ／Ｏ２１は、ミキサエンジン１０を複数カスケード接続して使用する際に、他のミキサエンジンとの間で、音響信号や、ＰＣ３０からのデータ及びコマンド等の授受を行うためのインタフェースである。なお、ミキサエンジン１０を複数カスケード接続して使用する場合には、複数のミキサエンジン１０を協同的に動作させて一連の音響信号処理を行わせることが可能である。そして、ＰＣ３０ではこのような音響信号処理を編集し、ＰＣ３０に直接接続されたミキサエンジン１０を介して他のミキサエンジン１０にも編集結果を転送して、各ミキサエンジン１０を編集した信号処理構成に従って動作させることができる。
【００１７】
その他Ｉ／Ｏ１８は、上記以外の機器を接続し入出力を行うためのインタフェースであり、例えば外部のディスプレイ、マウス、文字入力用のキーボード、操作パネル等を接続するためのインタフェースが用意される。
ＤＳＰ２０は、信号処理回路を含み、波形Ｉ／Ｏ１９から入力する音響信号に対し、設定されているマイクロプログラム及び音響信号の処理パラメータを定めるカレントデータに従った信号処理を施す信号処理部である。このカレントデータは、ＲＡＭ１３あるいはＤＳＰ２０自身に備えるメモリに記憶しており、カレントデータを記憶する記憶手段がパラメータ記憶手段に該当する。
【００１８】
このようなミキサエンジン１０は、ＰＣＩ／Ｏ１６，ＭＩＤＩＩ／Ｏ１７あるいはカスケードＩ／Ｏ２１を介して受信したＭＩＤＩ規格のシステムエクスクルーシブデータに従って、ＤＳＰ２０に設定されているカレントデータ中のパラメータの値を変更することができる。この場合、システムエクスクルーシブデータを受信したＩ／Ｏ及びＣＰＵ１１が受信手段に該当する。また、カスケードＩ／Ｏ２１を介してカスケード接続された他のミキサエンジンにシステムエクスクルーシブデータを送信し、これに従ってパラメータの値を変更させることもできる。
【００１９】
次に、このシステムエクスクルーシブデータ（以後「エクスクルーシブデータ」という）及び、このデータに従ったパラメータ変更の処理について説明する。
まず、図２に、エクスクルーシブデータの構成を示す。エクスクルーシブデータは、この図に示すように、大まかに分けると、「識別データ」、「先頭アドレス」、「パラメータの値」の各データからなる。そして、ミキサエンジン１０においては、従来の装置におけるエクスクルーシブデータの形式をそのまま使用しているが、各データの意味合いを従来とは異なるものとしている。
【００２０】
すなわち、図２に示したデータのうち、「先頭アドレス」のデータは、従来の装置においては内部メモリの書き込みアドレスそのものを示すデータであったが、ミキサエンジン１０においては、これを間接的にパラメータの種類を表わすデータとして用いている。また、「パラメータの値」は、従来の装置においては書き込みアドレスに書き込むべきデータであったが、ミキサエンジン１０においては、パラメータの種類に応じて定められる書き込みアドレスに書き込むべきパラメータ値を示すデータである。「識別データ」については、エクスクルーシブデータを作成した装置の会社ＩＤ、デバイスナンバ、モデルＩＤ等の情報を示すデータであり、この点は従来と変わらない。
【００２１】
なお、これら以外にも、ステータスバイトやエンドオブエクスクルーシブを示すデータ等があるが、これらのデータの意味は従来と同様であり、これらの図示は省略している。
また、ミキサエンジン１０は、以上のようなエクスクルーシブデータの内容を解釈するため、以下のようなアサインテーブル及びパラメータテーブルを、フラッシュメモリ１２のような記憶手段に記憶している。
【００２２】
まず、図３にアサインテーブルの例を示す。
このアサインテーブルは、図２に示した「先頭アドレス」と、パラメータのＩＤとの対応関係を示すテーブルである。ただし、「先頭アドレス」のデータは、このミキサエンジン１０においては、上述のように間接的にパラメータの種類を表わすデータであるので、パラメータのデータ量は考慮せず、各パラメータに連続した数字を割り当てる。なお、アサインテーブルをテーブル形式とせず、「先頭アドレス」の示すアドレスに、直接パラメータのＩＤを書き込むことも考えられる。
すなわち、アサインテーブルは、エクスクルーシブデータに含まれる「先頭アドレス」のデータからそのエクスクルーシブデータに含まれるパラメータの種類を判別するために用いるテーブルであり、この要求が満たされれば、どのような形式でもよい。
【００２３】
このようなアサインテーブルは、エクスクルーシブデータの送信側の装置と共有し、送信側の装置において、パラメータのＩＤと対応する「先頭アドレス」をエクスクルーシブデータに記載して送信するようにするとよい。あるいは、送信側の装置が従来のように「先頭アドレス」にアドレスそのものを記載していると認識している場合には、送信側の装置で規定されている従来の先頭アドレスとパラメータの種類との対応関係と一致するように、アドレスとパラメータＩＤとの対応関係をアサインテーブルに記載するようにするとよい。後者の場合には、送信側の装置がアサインテーブルを記憶している必要はない。
なお、信号処理構成によっては、同じ機能の構成要素が複数含まれ、それに伴って同じ名称のパラメータを複数使用する場合が考えられる。しかし、このような場合でも、それらの構成要素がユニークＩＤ等によって区別される場合には、パラメータについても区別し、別々のＩＤを付すようにする。
【００２４】
次に、図４にパラメータテーブルの例を示す。
このパラメータテーブルは、各パラメータについて、図３に示した「パラメータのＩＤ」と、そのパラメータのデータ量、記録アドレス、および変換方式との対応関係を示す規定情報を記録したテーブルである。そして、このパラメータテーブルを記憶させる記憶手段が、規定情報記憶手段に該当する。
また、上記の各データうち、「データ量」は、そのパラメータの値が何バイトのデータであるかを示すデータである。「記録アドレス」は、内部メモリ中でそのパラメータのデータを記憶させるべき位置の先頭アドレスを示すデータである。「変換方式」は、受信したシステムエクスクルーシブデータ中の「パラメータの値」のバイト数がデータ量の項目に示されたバイト数と一致しなかった場合に行うデータ変換の変換方式を指定するデータである。なお、ミキサエンジン１０は複数の変換方式に対応しており、「＃１」は相対的な変換に該当し、「＃２」は絶対的な変換に該当する。
【００２５】
次に、これらのデータ変換方式について説明する。
図５に、相対的な変換についての説明図を示す。
相対的な変換は、パラメータ値の数字がパラメータ値の取り得る範囲のうちどの位置のものかということ、すなわちパラメータの相対値に意味がある場合に適用する変換方式である。従って、データのバイト数を変える場合でも、パラメータの相対値を維持するように変換を行う。このような変換は、例えばマスターチューンやマスターボリュームに適用することが考えられる。
【００２６】
ＭＩＤＩ規格のデータにおいて、各バイトの最上位ビットは、そのバイトがステータスバイトであるかデータバイトであるかを示すフラグであるので、各バイトにはそれ以外の７ビットにデータを記載することができる。従って、２バイトのデータであれば、０から２１４−１までの２１４種類の値を表現することができる。また１バイトのデータでは２７種類、４バイトのデータでは２２８種類の値を表現することができる。
【００２７】
そして、例えばあるパラメータが、図５に示すように２バイトで表現できる値のほぼ中央に当たる２１３の値を取っていた場合を考える。この場合、相対的変換によってこのパラメータのバイト数を増加させて４バイトにするとすると、その値は、４バイトで表現できる値のほぼ中央に当たる２２７にすればよい。具体的な処理としては、もとの２バイト分のデータに、オールゼロの下位バイトを、バイト数の増加分である２バイト付加すればよい。
【００２８】
逆に、相対的変換によってこのパラメータのバイト数を減少させて１バイトにするとすると、その値は、１バイトで表現できる値のほぼ中央に当たる２６にすればよい。具体的な処理としては、もとの２バイト分のデータのうち下位バイトをバイト数の減少分である１バイト削除し、残りの上位バイトのみのデータとすればよい。また、削除したバイトのうち最上位のデータビットの値が１である場合に、残すバイトのうちの最下位バイトに１を加え、四捨五入のような丸め込みを行うとよい。
このような処理により、パラメータの相対値を維持した変換が実現される。
【００２９】
次に、図６に絶対的な変換についての説明図を示す。
絶対的な変換は、パラメータの数字そのもの、すなわちパラメータの絶対値に意味がある場合に適用する変換方式である。従って、データのバイト数を変える場合でも、パラメータの示す数値を維持するように変換を行う。このような変換は、例えば、エフェクトの種類番号に適用することが考えられる。
絶対的変換の例としては、例えばある２バイトのパラメータが、「４」（２進数では「１００」）という値を取っている場合を考える。そして、絶対的変換によってこのパラメータのバイト数を増加させて４バイトにした場合でも、値は「４」のままである。従ってこの場合には、もとの２バイト分のデータに、オールゼロの上位バイトを、バイト数の増加分である２バイト付加すればよい。
【００３０】
逆に、絶対的変換によってこのパラメータのバイト数を減少させて１バイトにした場合でも、その値は「４」のままである。従って、もとの２バイト分のデータのうち上位バイトをバイト数の減少分である１バイト削除し、残りの下位バイトのみのデータとすればよい。なお、削除するバイトのデータが０でない場合、残りの下位バイトのみではもとの値を表現することができない。このような場合には、例えば、変換後のデータをオール１にし、最大値を示すようにすることが考えられる。
このような処理により、パラメータの数値を維持した変換が実現される。
なお、以上の相対的変換及び絶対的変換を、図５又は図６に示したバイト数以外のデータにも同様に適用できることは、もちろんである。
【００３１】
次に、ミキサエンジン１０がエクスクルーシブデータを受信した場合に上述した各テーブルを利用して行う処理について説明する。この処理を、図７に示す。
ミキサエンジン１０は、いずれかのＩ／Ｏからエクスクルーシブデータを受信すると、ＣＰＵ１１が所要の制御プログラムを実行することにより、図７のフローチャートに示す処理を開始する。
そして、まずステップＳ１で、エクスクルーシブデータの「識別データ」を参照し、そのエクスクルーシブデータが、適切な装置が作成したデータか否か判断する。そして、適切な装置が作成したものであれば、ステップＳ２以下の処理に進むが、そうでなければそのまま終了する。データの作成元が、少なくともアサインテーブルの内容を認識していない場合には、以下の処理を正常に行うことができないためである。
【００３２】
次のステップＳ２では、受信したエクスクルーシブデータ中の「先頭アドレス」の情報をもとに、図３に示したアサインテーブルを参照してそのエクスクルーシブデータに記載されたパラメータの種類を判別する。具体的には、パラメータＩＤを読み出す。この処理においては、ＣＰＵ１１が判別手段として機能する。
次に、ステップＳ３及びＳ４で、受信したエクスクルーシブデータ中のパラメータのデータ量を確認すると共に、パラメータテーブルを参照して、ステップＳ２で判別したパラメータの種類に対応する「データ量」の値を取得する。このうちステップＳ４の処理においては、ＣＰＵ１１はデータ量取得手段として機能する。ここで、「パラメータの種類」とは、例えばステップＳ２で読み出したパラメータＩＤよって示されるものである。以下も同様とする。
【００３３】
そして、ステップＳ５で、ステップＳ３及びＳ４で得たデータ量を比較し、一致しなければ、ステップＳ６以下に進む。そして、ステップＳ６及びＳ７で、パラメータテーブルを参照してパラメータの種類に対応する変換方式を取得し、その変換方式で受信したエクスクルーシブデータ中のパラメータのデータ量を変換して、ミキサエンジン１０における記憶に適したデータ量にする。そして、ステップＳ８及びＳ９で、パラメータテーブルを参照してパラメータの種類に対応する記録アドレスを取得し、そのアドレスに変換後のパラメータの値を書き込んで処理を終了する。
一方、ステップＳ５で一致した場合には、ステップＳ１０及びＳ１１で、パラメータテーブルを参照してパラメータの種類に対応する記録アドレスを取得し、そのアドレスに受信したエクスクルーシブデータ中のパラメータの値を書き込んで処理を終了する。
以上のステップＳ５乃至Ｓ１１の処理において、ＣＰＵ１１が記録手段として機能する。
【００３４】
以上の処理を行うことにより、ミキサエンジン１０は、エクスクルーシブデータを受信した場合に、そのエクスクルーシブデータに記載されているパラメータを、適切な記録アドレスに記録することができる。また、受信したデータのデータ量が、内部メモリに確保された記憶容量と一致しない場合でも、適切なデータ量のデータに変換した上で記録することができる。さらに、パラメータの記録アドレスやデータ量を変更した場合でも、パラメータテーブルを編集することにより、容易にこの変更に対応可能であり、この変更内容を、エクスクルーシブデータの送信元に認識させる必要はない。従って、パラメータ記憶領域の構成変更に柔軟に対応することができる。
なお、アサインテーブルの内容を変更することにより、パラメータの種類を変更することもできるが、この場合には、エクスクルーシブデータの送信元にも変更内容を認識させる必要がある。
【００３５】
例えば、ミキサエンジン１０において、ＰＣ３０から新たな信号処理構成を受信する等して、ＤＳＰ２０における信号処理内容を新たな信号処理構成に従った内容に切り換える場合には、パラメータの種類や個数が変化し、それに伴って、メモリ中のパラメータ記憶領域の構成も変更することになる。
この場合、図８のフローチャートに示すような処理を行って、アサインテーブル及びパラメータテーブルの内容を、切り換え後の信号処理構成に対応するものに変更するようにしている。この処理は、ＣＰＵ１１がＤＳＰ２０における信号処理構成の変更指示を受け付けた場合に開始するものであり、その際に、新たな信号処理構成においてエクスクルーシブデータを利用した通信を行う各パラメータについて、「先頭アドレス」，「パラメータＩＤ」，「データ量」，「記憶アドレス」及び「変換方式」の情報を取得し、その内容に従ってアサインテーブル及びパラメータテーブルの内容を変更するものである。この変更は、既存のテーブルの一部変更でもよいし、新規にテーブルを作成することによって行ってもよい。
このようにすれば、エクスクルーシブデータを受信した場合に新たな信号処理構成に対応した記憶アドレス及びデータ長でパラメータを記憶することができる。
【００３６】
また、信号処理構成の変更時以外にも、ユーザがパラメータの追加やデータ量変更等を指示した場合には、図９に示したような処理を行い、受けた指示に応じて各テーブルの内容を変更するようにするとよい。この処理は、ＣＰＵ１１がパラメータの追加やデータ量変更等の指示を受け付けた場合に開始するものであり、その際に、追加や変更する各パラメータについて、「先頭アドレス」，「パラメータＩＤ」，「データ量」，「記憶アドレス」及び「変換方式」の情報を取得あるいは設定し、その内容に従ってアサインテーブル及びパラメータテーブルの内容を変更するものである。この変更も、既存のテーブルの一部変更でもよいし、新規にテーブルを作成することによって行ってもよい。
このようにすれば、ユーザの希望に応じてパラメータ構成を変更する場合でも、エクスクルーシブデータを受信した場合にユーザが設定した構成に従ってデータを記憶することができる。
【００３７】
なお、これらの変更の結果、装置毎にパラメータテーブルの内容が異なることになってもよい。このようにしても、エクスクルーシブデータを受信した装置は、各々自身のパラメータテーブルを参照し、自身における適当な記憶アドレス及びデータ量で、エクスクルーシブデータに含まれるパラメータを記憶させることができる。即ち、装置毎にパラメータ記憶領域の構成が異なる場合でも、共通のエクスクルーシブデータを使用して通信を行うことができる。
【００３８】
一方、アサインテーブルの変更内容は、ミキサエンジン１０とアサインテーブルを共有する全ての装置に通知（送信）することが好ましい。各装置間でアサインテーブルの内容を完全に同一にすることは必須ではないが、少なくとも通信しようとするパラメータに関する部分については同一とする必要があるためである。
このような通知は、図１に示したようなシステム内で通信するのみであれば、ＰＣ３０のみに対して行えばよいし、他のミキサエンジンとも接続して協同的に動作する場合には、ＰＣ３０に加えてそのミキサエンジンに行えばよい。そして、これらの相手は、通常通信する相手である。従って、限られたシステムの内部でのみ通信する場合には、通知が必要な点は特に問題とならない。
【００３９】
しかし、ある機種の全ての装置等、不特定多数の装置との通信を前提とする場合もある。ミキサエンジン１０がＭＩＤＩ対応の電子楽器からのエクスクルーシブデータを受信して処理できるようにすることも考えられるが、例えばこのような場合が該当する。このような場合には、それら全ての装置にアサインテーブルの内容を通知することは、極めて困難である。従って、このような場合には、アサインテーブルの変更は許可しないことが好ましい。
【００４０】
そして、このような場合には、考えられる限りのパラメータの種類を予めアサインテーブルに記載しておくことが好ましい。パラメータテーブルの内容はミキサエンジン１０側で自由に変更して問題ないのであるから、このようにしておけば、アサインテーブルを変換しなくてもパラメータの種類の追加に幅広く対応できるようになる。一方で、アサインテーブルには、「先頭アドレス」と「パラメータＩＤ」の情報しか登録しないので、多数のパラメータを登録したとしても、容量は比較的小さいもので済む。
また、ミキサエンジン１０側に複数のアサインテーブルを記憶しておき、エクスクルーシブデータの送信元の機種等に応じて使用するアサインテーブルを選択するようにすることも考えられる。このようにすれば、通信相手の機種に応じたきめ細かな対応が可能になる。
【００４１】
ところで、以上説明してきた実施形態においては、パラメータテーブルにおいて、パラメータの変換方式について変換方式自体を記載する例について説明した。しかし、各パラメータの値が相対的な値か絶対的な値かを記載しておき、その内容に従って変換方式を選択するようにすることも考えられる。
また、変換方式も、上述したものに限られることはない。例えば、データの値毎に変換前のバイト数での状態と変換後のバイト数での状態とを対応付けたテーブルを記憶させておき、そのテーブルを参照してデータのバイト数を変換する方式も考えられる。これ以外の方式を採用することも当然可能であり、選択可能な変換方式の数にも、特に制限はない。
また、変換後のデータのバイト数や変換方法を示すデータをエクスクルーシブデータに記載しておき、この内容に従って変換を行うようにしてもよい。
【００４２】
また、アサインテーブルとパラメータテーブルを別々に設けることも必須ではない。アサインテーブルの内容は、少なくとも通信に使用する部分はエクスクルーシブデータの送信元が認識している必要があり、パラメータテーブルの内容は、ミキサエンジン１０側で自由に変更してよくまた比較的頻繁に変更されるという特性の差から、変更時の取扱いを簡単にするため、これらを分けたものである。しかし、これらを１つのテーブルにまとめることも可能である。
【００４３】
さらにまた、以上説明した実施形態では、この発明を、いわゆるプログラマブルミキサに適用した例について説明したが、この発明がこれに限られないことは言うまでもない。この発明は、デジタルミキサ、シンセサイザ、音源装置、電子楽器、音響信号処理用のアプリケーションを備えたコンピュータ等、ＭＩＤＩ規格のデータを取り扱うことの可能な任意の音響信号処理装置に適用することができる。パラメータ記憶領域の構成が固定的な装置であっても問題ない。
エクスクルーシブデータの送信側の装置についても、同様にＭＩＤＩ規格のデータを取り扱うことの可能な任意の音響信号処理装置とすることができる。
【００４４】
さらに、上述したこの発明のプログラムは、予めミキサエンジン１０のフラッシュメモリ１２等に記憶させておくほか、ＣＤ−ＲＯＭあるいはフレキシブルディスク等の不揮発性記録媒体（メモリ）に記録して提供し、そのメモリからこのプログラムをミキサエンジン１０のＲＡＭ１３に読み出させてＣＰＵ１１に実行させたり、プログラムを記録した記録媒体を備える外部機器あるいはプログラムをＨＤＤ等の記憶手段に記憶した外部機器からダウンロードして実行させたりしても、同様の効果を得ることができる。
【産業上の利用可能性】
【００４５】
以上の説明から明らかなように、この発明の音響信号処理装置又はプログラムによれば、所定のパラメータの値に従って音響信号を処理する音響信号処理装置において、ＭＩＤＩのシステムエクスクルーシブデータのフォーマットで受信したパラメータのデータ量が、内部メモリに確保された記憶容量と一致しない場合であっても、受信したパラメータの内容を適切に記憶できるようにすることができる。従って、通信の自由度が高い音響信号処理装置を提供することができる。
【図面の簡単な説明】
【００４６】
【図１】この発明の音響信号処理装置の実施形態であるミキサエンジンの構成を示すブロック図である。
【図２】ＭＩＤＩ規格のエクスクルーシブデータの構成を示す図である。
【図３】図１に示したミキサエンジンが記憶するアサインテーブルの構成を示す図である。
【図４】同じくパラメータテーブルの構成を示す図である。
【図５】同じくミキサエンジンが行う相対的なパラメータ値変換について説明するための図である。
【図６】同じく絶対的なパラメータ値変換について説明するための図である。
【図７】図１に示したミキサエンジンがエクスクルーシブデータを受信した場合に実行する処理を示すフローチャートである。
【図８】同じく、信号処理構成を切り換えた場合の処理を示すフローチャートである。
【図９】同じく、テーブル内容変更の指示を受けた場合の処理を示すフローチャートである。
【符号の説明】
【００４７】
１０…ミキサエンジン、１１…ＣＰＵ、１２…フラッシュメモリ、１３…ＲＡＭ、１４…表示器、１５…操作子、１６…ＰＣＩ／Ｏ、１７…ＭＩＤＩＩ／Ｏ、１８…その他Ｉ／Ｏ、１９…波形Ｉ／Ｏ、２０…ＤＳＰ、２１…カスケードＩ／Ｏ、２２…ＣＰＵバス、３０…ＰＣ
【図１】
2005195652.tif 000003
【図２】
2005195652.tif 000004
【図３】
2005195652.tif 000005
【図４】
2005195652.tif 000006
【図５】
2005195652.tif 000007
【図６】
2005195652.tif 000008
【図７】
2005195652.tif 000009
【図８】
2005195652.tif 000010
【図９】
2005195652.tif 000011