(57)【要約】【目的】  操作性の高い音響信号処理システムを構成できるようにする。【構成】  コンピュータに編集プログラムを実行させて、処理内容をプログラム可能な信号処理部を有するミキサエンジンにおける信号処理の構成を編集する編集装置として機能させ、また、信号処理の構成を編集するための表示画面上において、その信号処理の構成要素及び各構成要素間の結線の指定を受け付け、表示画面の表示内容をその指定に従って変更する機能と、編集された上記信号処理の構成の情報を、指定された構成要素及び結線の情報を含む第１の構成データとして記憶する機能と、編集された信号処理の構成に含まれる各構成要素及び結線と対応する処理に、上記ミキサエンジンの信号処理部におけるリソースを割り当て、上記構成要素及び結線の情報に加えてその割り当ての情報も含む第２の構成データを生成する機能と、その第２の構成データを上記ミキサエンジンに送信する機能も実現させる。【選択図】        図１
2005234801.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを、処理内容をプログラム可能な信号処理部を有する音響信号処理装置における、それぞれ入力端子又は出力端子を有する複数の構成要素と、該構成要素の出力端子と入力端子との間を結ぶ結線とからなる信号処理の構成を編集する編集装置として機能させるためのプログラムであって、
前記コンピュータを、
前記信号処理の構成を編集するための表示画面を表示手段に表示させる手段と、
前記表示画面上において、前記構成要素及び各構成要素間の結線の指定を受け付け、該表示画面の表示内容をその指定に従って変更する手段と、
編集された前記信号処理の構成の情報を、該構成に含まれる構成要素及び結線の情報を含む第１の構成データとして記憶する記憶手段と、
編集された前記信号処理の構成に含まれる各構成要素及び結線と対応する処理に、前記音響信号処理装置の信号処理部におけるリソースを割り当て、前記構成要素及び結線の情報に加えてその割り当ての情報も含む第２の構成データを生成するコンパイル手段と、
該手段が前記第２の構成データを生成した場合にこれを前記音響信号処理装置に送信する送信手段として機能させるためのプログラムを含むことを特徴とするプログラム。
【請求項２】
請求項１記載のプログラムであって、
前記コンパイル手段を、前記信号処理の構成中の構成要素又は結線が変更された場合に自動的に新たな構成に基づいた第２の構成データの生成を行う手段としたことを特徴とするプログラム。
【請求項３】
請求項２記載のプログラムであって、前記コンパイル手段を、前記第２の構成データの生成を行う場合に、前回第２の構成データの生成を行った時点から前記構成要素、結線又は割り当ての情報を変更する必要がある部分について第２の構成データを生成する手段としたことを特徴とするプログラム。
【請求項４】
当該音響信号処理装置における信号処理の構成を編集する編集装置と通信可能であり、該編集装置から受信した、それぞれ入力端子又は出力端子を有する複数の構成要素と、該構成要素の出力端子と入力端子との間を結ぶ結線とからなる信号処理の構成に従って信号処理を行う音響信号処理装置であって、
入力する信号に対して信号処理を施し、処理後の信号を出力する信号処理手段と、
前記編集装置から、編集された信号処理の構成に含まれる各構成要素及び該構成要素間の結線の情報と、その構成要素及び結線と対応する処理に対する前記信号処理手段のリソースの割り当て情報とを含む、前記信号処理の構成データを受信する手段と、
該手段が受信した構成データを記憶する第１の記憶手段と、
前記編集装置において信号処理の編集に使用する各構成要素に対応する信号処理を前記信号処理手段に行わせるためのプログラムを記憶する第２の記憶手段と、
前記第１の記憶手段に記憶している構成データに基づき、前記第２の記憶手段に記憶しているプログラムを利用して、前記音響信号処理手段に前記構成データに係る信号処理を行わせるためのプログラムを形成するプログラム形成手段と、
該手段が生成したプログラムに基づいて前記信号処理手段における信号処理を制御する制御手段とを設けたことを特徴とする音響信号処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、コンピュータを音響信号処理装置における信号処理の構成を編集する編集装置として機能させるためのプログラム及び、編集装置から受信した信号処理の構成に従って信号処理を行う音響信号処理装置に関する。
【背景技術】
【０００２】
従来から、音響信号処理部を、プログラムに従って動作可能なプロセッサを用いて構成すると共に、外部のＰＣ（パーソナルコンピュータ）等のコンピュータを編集装置として機能させ、これを用いて編集した信号処理構成に基づいて音響信号を処理できるようにした音響信号処理装置が知られている。このような音響信号処理装置を本願では、ミキサエンジンと呼ぶ。ミキサエンジンは、ＰＣにより編集された信号処理構成を内部に記憶し、その記憶している信号処理構成に基づいて単独で音響信号の処理を行うことができる。また、このミキサエンジンは、上記の編集装置と併せて音響信号処理システムを構成する。
【０００３】
また、編集装置上における上記信号処理構成の編集については、編集時に信号処理の構成要素となるコンポーネント及びその入出力間の結線状態をディスプレイにグラフィカルに表示させ、視覚的に信号処理の構成が把握し易い状態で編集作業を行うことができるようにすることが行われている。そして、ユーザは、所望の処理コンポーネントを配置し、配置したコンポーネント間の結線を設定することにより、信号処理構成を編集することができる。
このような音響信号処理システム及びコンピュータを編集装置として機能させるためのアプリケーションソフトについては、例えば非特許文献１に記載されている。
【非特許文献１】「ＤＩＧＩＴＡＬ  ＭＩＸＩＮＧ  ＥＮＧＩＮＥ  ＤＭＥ３２  取扱説明書」，ヤマハ株式会社，２００１年，ｐ．２３−６６
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、このような音響信号処理システムを動作させる場合に、従来、ミキサエンジンの音響信号処理部の動作を制御するためのプログラムは、編集装置における信号処理構成の編集内容に基づいて編集装置側で作成し、これをミキサエンジンに転送するようにしていた。しかし、生成されるプログラムのサイズは数十キロバイトから数百キロバイト程度あるため、編集装置からミキサエンジンへの転送にはかなりの時間がかかっていた。
従って、編集装置側で編集結果に基づく信号処理の実行を指示したとしても、音響信号処理部にその信号処理を行わせるためのプログラムをミキサエンジンに転送し、ミキサエンジン側でその処理を開始させるまでに、指示後十数秒から数十秒程度の遅れが生じてしまうため、操作性が悪いという問題があった。そして、この遅れを短縮し、音響信号処理システムの操作性を向上させたいという要求があった。
【０００５】
また、従来の音響信号処理システムでは、音響信号処理部の動作を制御するためのプログラムの生成及びミキサエンジンへの転送は、ユーザが指示した場合のみ行うようにしていた。そして、この指示は、信号処理構成の編集画面において、所定のキーを押下すること等によって行うことができるようにしていた。
しかしながら、このような方式の場合には、ユーザがプログラムの生成及び転送の指示を行うまでは、編集装置における編集がミキサエンジンにおける信号処理に反映されない。従って、信号処理構成を変更した場合でも、その度にプログラムの生成及び転送の指示を行わなければ、変更後の処理構成に従った処理の出力の内容を確認することができないため、操作性が悪いという問題もあった。上記の音響信号処理システムにおいては、信号処理構成を少しずつ変更しながら出力の内容を確認したいというような要求もあり、このような場合に信号処理構成を変更する度にプログラムの生成及び転送の指示のためのキーを押下するのは、特に煩わしいものであった。
【０００６】
この発明は、このような問題を解決し、処理内容をプログラム可能な信号処理部を有する音響信号処理装置と、その音響信号処理装置における信号処理の構成を編集する編集装置とによる音響信号処理システムを構成する場合に、操作性の高いシステムを構成できるようにすることを目的とする。
【課題を解決するための手段】
【０００７】
上記の目的を達成するため、この発明は、コンピュータを、処理内容をプログラム可能な信号処理部を有する音響信号処理装置における、それぞれ入力端子又は出力端子を有する複数の構成要素と、その構成要素の出力端子と入力端子との間を結ぶ結線とからなる信号処理の構成を編集する編集装置として機能させるためのプログラムにおいて、上記コンピュータを、上記信号処理の構成を編集するための表示画面を表示手段に表示させる手段と、上記表示画面上において、上記構成要素及び各構成要素間の結線の指定を受け付け、その表示画面の表示内容をその指定に従って変更する手段と、編集された上記信号処理の構成の情報を、その構成に含まれる構成要素及び結線の情報を含む第１の構成データとして記憶する記憶手段と、編集された上記信号処理の構成に含まれる各構成要素及び結線と対応する処理に、上記音響信号処理装置の信号処理部におけるリソースを割り当て、上記構成要素及び結線の情報に加えてその割り当ての情報も含む第２の構成データを生成するコンパイル手段と、その手段が上記第２の構成データを生成した場合にこれを上記音響信号処理装置に送信する送信手段として機能させるためのプログラムを含むようにしたものである。
【０００８】
このようなプログラムにおいて、上記コンパイル手段を、上記信号処理の構成中の構成要素又は結線が変更された場合に自動的に新たな構成に基づいた第２の構成データの生成を行う手段とするとよい。
さらに、上記コンパイル手段を、上記第２の構成データの生成を行う場合に、前回第２の構成データの生成を行った時点から上記構成要素、結線又は割り当ての情報を変更する必要がある部分について第２の構成データを生成する手段とするとよい。
【０００９】
また、この発明の音響信号処理装置は、その音響信号処理装置における信号処理の構成を編集する編集装置と通信可能であり、その編集装置から受信した、それぞれ入力端子又は出力端子を有する複数の構成要素と、その構成要素の出力端子と入力端子との間を結ぶ結線とからなる信号処理の構成に従って信号処理を行う音響信号処理装置であって、入力する信号に対して信号処理を施し、処理後の信号を出力する信号処理手段と、上記編集装置から、編集された信号処理の構成に含まれる各構成要素及びその構成要素間の結線の情報と、その構成要素及び結線と対応する処理に対する上記信号処理手段のリソースの割り当て情報とを含む、上記信号処理の構成データを受信する手段と、その手段が受信した構成データを記憶する第１の記憶手段と、上記編集装置において信号処理の編集に使用する各構成要素に対応する信号処理を上記信号処理手段に行わせるためのプログラムを記憶する第２の記憶手段と、上記第１の記憶手段に記憶している構成データに基づき、上記第２の記憶手段に記憶しているプログラムを利用して、上記音響信号処理手段に上記構成データに係る信号処理を行わせるためのプログラムを形成するプログラム形成手段と、その手段が生成したプログラムに基づいて上記信号処理手段における信号処理を制御する制御手段とを設けたものである。
【発明の効果】
【００１０】
以上のようなこの発明のプログラムによれば、コンピュータを編集装置として機能させ、この発明の音響信号処理装置と組み合わせて用いることにより、処理内容をプログラム可能な信号処理部を有する音響信号処理装置と、その音響信号処理装置における信号処理の構成を編集する編集装置とによる音響信号処理システムを構成する場合に、操作性の高いシステムを構成できるようにすることができる。
【発明を実施するための最良の形態】
【００１１】
以下、この発明を実施するための最良の形態を図面に基づいて具体的に説明する。
〔第１の実施形態：図１乃至図１３〕
まず、図１を用いて、編集装置として機能するＰＣとこの発明の音響信号処理装置の実施形態であるミキサエンジンとによって構成した音響信号処理システムの第１の実施形態であるミキサシステムの構成について説明する。図１はそのミキサシステムの構成を示すブロック図である。
【００１２】
図１に示すように、このミキサシステムは、ミキサエンジン１０とＰＣ３０とによって構成される。ＰＣ３０は、ハードウェアとしては、ＣＰＵ，ＲＯＭ，ＲＡＭ等及び表示手段としてディスプレイを有する公知のＰＣであり、ＷｉｎｄｏｗｓＸＰ（登録商標）などのオペレーティングシステム（ＯＳ）が動作するＰＣを用いることができるが、そのＯＳ上のアプリケーションプログラムとして、この発明のプログラムの実施形態である編集プログラムを実行させることにより、ミキサエンジン１０における信号処理の構成を編集し、その編集結果をミキサエンジン１０に転送し、編集した信号処理構成に従って動作させる編集装置として機能させることができる。そして、以下に説明するＰＣ３０の動作や機能は、特に断らない限り、この編集プログラムの実行により実現されるものとする。
【００１３】
一方、ミキサエンジン１０は、ＣＰＵ１１，フラッシュメモリ１２，ＲＡＭ１３，表示器１４，操作子１５，ＰＣ入出力部（Ｉ／Ｏ）１６，ＭＩＤＩ（Musical Instruments Digital Interface：登録商標）Ｉ／Ｏ１７，その他Ｉ／Ｏ１８，波形Ｉ／Ｏ１９，信号処理部（ＤＳＰ）２０，カスケードＩ／Ｏ２６を備え、これらがＣＰＵバス２７によって接続されている。そして、ＰＣ３０から受信した信号処理構成に従って、ＤＳＰ２０を制御するためのマイクロプログラムを生成し、そのマイクロプログラムに従ってＤＳＰ２０を動作させ、入力する音響信号に対して種々の信号処理を施して出力する機能を有する。
【００１４】
ＣＰＵ１１は、ミキサエンジン１０の動作を統括制御する制御手段であり、フラッシュメモリ１２に記憶された所定のプログラムを実行することにより、各Ｉ／Ｏ１６〜１９，２６における通信や表示器１４における表示を制御したり、操作子１５の操作を検出してその操作に従ってパラメータの値を変更したり、ＰＣ３０から受信した信号処理構成の情報からＤＳＰ２０を動作させるためのマイクロプログラムを生成してＤＳＰ２０に設定したりといった処理を行う。
フラッシュメモリ１２は、ＣＰＵ１１が実行する制御プログラムや後述するプリセットコンポーネントデータ等を記憶する書き換え可能な不揮発性記憶手段である。
【００１５】
ＲＡＭ１３は、ＰＣ３０から受信した信号処理構成の情報を所要の形式に変換した後述するコンフィグデータやカレントデータを始めとする種々のデータを記憶させたり、ＣＰＵ１１のワークメモリとして使用したりする記憶手段である。
表示器１４は、液晶ディスプレイ（ＬＣＤ）等によって構成される表示手段である。そして、ミキサエンジン１０の現在の状態を示す画面、コンフィグデータに含まれる設定データであるシーンの参照，変更，保存等を行うための画面等を表示する。
操作子１５は、キー、スイッチ、ロータリーエンコーダ等によって構成され、ユーザがミキサエンジン１０を直接操作してシーンの編集等を行うための操作子である。
【００１６】
ＰＣＩ／Ｏ１６は、ＰＣ３０を接続し通信を行うためのインタフェースであり、例えばＵＳＢ（Universal Serial Bus）方式、ＲＳ−２３２Ｃ方式、ＩＥＥＥ（Institute of Electrical and Electronic Engineers）１３９４方式、Ｅｔｈｅｒｎｅｔ（登録商標）方式などのインタフェースによる通信を行うことができる。
ＭＩＤＩＩ／Ｏ１７は、ＭＩＤＩ規格に従ったデータを授受するためのインタフェースであり、例えば、ＭＩＤＩに対応した電子楽器あるいはＭＩＤＩデータを出力するアプリケーションプログラムを備えたコンピュータ等と通信を行うために用いる。
【００１７】
波形Ｉ／Ｏ１９は、ＤＳＰ２０で処理すべき音響信号の入力を受け付け、また処理後の音響信号を出力するためのインタフェースである。そして、この波形Ｉ／Ｏ１９には、１枚で４チャンネルのアナログ入力が可能なＡ／Ｄ変換ボード，１枚で４チャンネルのアナログ出力が可能なＤ／Ａ変換ボード，１枚で８チャンネルのデジタル入出力が可能なデジタル入出力ボードを適宜組み合わせて複数枚装着可能であり、実際にはこれらのボードを介して信号の入出力を行う。また、ミキサエンジン１０には、ＤＳＰ２０における処理対象の音響信号をモニタするためのモニタ用音声出力端子として、モニタ用アナログ信号出力１９ａを設けているが、モニタ用アナログ信号出力１９ａへの信号出力も、この波形Ｉ／Ｏ１９を介して行う。そして、この際には、波形Ｉ／Ｏ１９は取り込んだ信号をＤ／Ａ変換してから出力する。なお、モニタ用アナログ信号出力１９ａとしては、具体的には例えばヘッドホン端子が考えられる。
【００１８】
カスケードＩ／Ｏ２６は、ミキサエンジン１０を複数カスケード接続して使用する際に、他のミキサエンジンとの間で、音響信号や、ＰＣ３０からのデータ及びコマンド等の授受を行うためのインタフェースである。なお、ミキサエンジン１０を複数カスケード接続して使用する場合には、複数のミキサエンジン１０を協同的に動作させて一連の音響信号処理を行わせることが可能である。そして、ＰＣ３０ではこのような音響信号処理を編集し、ＰＣ３０に直接接続されたミキサエンジン１０を介して他のミキサエンジン１０にも編集結果を転送して、各ミキサエンジン１０を編集した信号処理構成に従って動作させることができる。
【００１９】
その他Ｉ／Ｏ１８は、上記以外の機器を接続し入出力を行うためのインタフェースであり、例えば外部のディスプレイ、マウス、文字入力用のキーボード、操作パネル等を接続するためのインタフェースが用意される。
ＤＳＰ２０は、信号処理回路を含み、波形Ｉ／Ｏ１９から入力する音響信号に対し、設定されているマイクロプログラム及びその処理パラメータを定めるカレントデータに従った信号処理を施す信号処理部である。
【００２０】
また、このＤＳＰ２０及びその周辺の構成は、より詳細には図２に示すものである。
まず、ＤＳＰ２０は、１つのプロセッサによって構成してもよいし、複数のプロセッサを接続して構成してもよいが、ここでは図２に示すように第１乃至第４の４つの信号処理プロセッサ２１乃至２４を接続して構成している。そして、これらの各信号処理プロセッサ及び波形Ｉ／Ｏ１９とカスケードＩ／Ｏ２６とを波形バス２５に接続し、処理対象の信号はこの波形バス２５を介して転送するようにしている。
【００２１】
また、波形バス２５は時分割で２４ビットの信号を１２８チャンネル（ｃｈ）伝送可能であり、各ｃｈは波形バス２５に接続されているいずれかの信号処理プロセッサ又はＩ／Ｏの出力から他の信号処理プロセッサ又はＩ／Ｏの入力へと信号を伝える信号伝送路として機能する。すなわち、ｃｈを出力側と入力側に割り当て、各信号処理プロセッサ及びＩ／Ｏの出力が出力先として割り当てられたｃｈに信号を出力し、各信号処理プロセッサ及びＩ／Ｏの入力が入力元として割り当てられたｃｈから信号を取り込むことにより、信号を伝送することができるようにしている。
そして、ＰＣ３０で編集した信号処理構成の各コンポーネントに対応する処理をどの信号処理プロセッサで実行し、各信号処理プロセッサ及びＩ／Ｏ間でのデータの転送にそのｃｈを使うかといった、ＤＳＰ２０における信号処理リソースの割り当ては、ＰＣ３０側で行い、その割り当ての情報をＤＳＰ２０に転送するようにしている。
【００２２】
次に、ＰＣ３０における信号処理構成の編集方式について説明する。図３は、ＰＣ３０のディスプレイに表示させる信号処理構成の編集画面の例を示す図である。
ユーザがＰＣ３０に上記の編集プログラムを実行させると、ＰＣ３０はディスプレイに図３に示すようなＣＡＤ（Computer Aided Design）画面４０を表示させ、ユーザからの編集指示を受け付ける。そして、この画面においては、編集中の信号処理構成を、その構成要素であるDynamicFilter，AutoMixer2，Mixer402等のコンポーネント（Ａ）と、コンポーネントの出力端子（Ｂ）と入力端子（Ｃ）とを結ぶ結線（Ｄ）とによってグラフィカルに表示している。なお、コンポーネントの左側に示した端子が入力端子、右側に示した端子が出力端子である。そして、ミキサエンジン１０への入力を示すコンポーネントは出力端子のみを有し、ミキサエンジン１０からの出力を示すコンポーネントは入力端子のみを有し、それ以外のコンポーネントは全て入力端子と出力端子の両方を有する。
【００２３】
ユーザは、この画面において、「Component」メニューの操作で表示されるコンポーネントリストの中から信号処理構成に加えたいコンポーネントを選択して画面上に配置し、配置された複数のコンポーネントの任意の出力端子と任意の入力端子との間の結線を指定することにより、信号処理構成を編集することができる。この場合、もちろんＣＡＤ画面４０の表示内容は編集操作に従って変化させることになる。
また、コンパイルキー４１を設け、このコンパイルキー４１が押下された場合に、その時点での信号処理構成の内容をコンフィグレーション（コンフィグ）として保存すると共に、その時点での信号処理構成の内容あるいは前回転送時からの変更分を示す情報を生成し（この処理を「コンパイル」と呼ぶ）、これをミキサエンジン１０に転送して記憶させることもできる。なお、「コンパイル」は、上記の内容に限らず、ＰＣ３０において信号処理構成（ＰＣ用ＣＡＤデータ）ないしコンフィグレーション（コンフィグデータ）からミキサエンジン１０を制御するためのデータを生成する処理一般を示すものとする。
【００２４】
また、信号処理構成に含まれる各コンポーネントについて、そのコンポーネントが信号処理構成に新規に配置されコンパイルされた段階で、その動作パラメータ（例えばミキサであれば各入力のレベル等）を記憶するための記憶領域がカレントデータを記憶するカレントシーン内に用意されると共にその動作パラメータとして所定の初期値が与えられる。
そして、その後ユーザが各コンポーネントについて設けたパラメータ制御パネルを操作することにより、そのパラメータ記憶領域に記憶された動作パラメータを編集することができる。また、ここで編集した結果のカレントシーンに記憶されたパラメータは、コンフィグレーション内のシーンメモリにそのコンフィグレーションに関する設定データであるシーンとして複数記憶しておき、コンフィグレーションに従ってミキサエンジン１０に信号処理を行わせる際にカレントシーンに任意に呼び出すことができる。
【００２５】
さらに、ユーザは、ミキサエンジン１０とＰＣ３０の動作モードとして非オンラインモードとオンラインモードのいずれかを設定可能である。非オンラインモードでは、ミキサエンジン１０とＰＣ３０とは互いに独立して動作し、オンラインモードでは相互にカレントメモリの動作パラメータ等の同期を取りながら動作を行う。ミキサエンジン１０の信号処理構成とＰＣ３０の信号処理構成が一致する場合にのみオンラインモードへの移行が可能であり、オンラインモードでは、カレントシーンのデータがミキサエンジン１０とＰＣ３０とで同じになるよう制御（同期化）される。
【００２６】
また、オンラインモードへ移行するときに、ユーザは、ミキサエンジン１０側のカレントシーンとＰＣ３０側のカレントシーンのいずれを同期化後のカレントシーンとして使用するかを選択することができ、さらに、シーンメモリの記憶内容についても同期化するよう指示することができる。
オンラインモードへの移行後は、ＰＣ３０側で行われた操作が直ちにミキサエンジン１０の動作に反映され、逆にミキサエンジン１０の操作子１５で行われた操作が直ちにＰＣ３０の動作に反映され、双方のカレントシーンの内容が同一になるよう制御される。なお、上述した「コンパイル」の実行時に自動的にオンラインモードへ移行し、ＰＣ３０側で信号処理構成が変更された時に自動的に非オンラインモードへ移行するようにしてもよい。
【００２７】
次に、以上のようなミキサシステムにおいて用いる、この発明に関連するデータの構成について説明する。
まず、図４にＰＣ３０側で使用するデータの構成を示す。
この図に示すように、ＰＣ３０のＯＳ上で上記の編集プログラムを実行すると、ＰＣ３０はその編集プログラムによって規定されるメモリ空間にプリセットコンポーネントデータとコンフィグデータとを記憶させる。
このうち、プリセットコンポーネントデータは、信号処理を編集する際に用いることができるコンポーネントのデータのセットであり、ユーザがカスタマイズできるようにしてもよいが、基本的にはメーカーが供給するものである。そして、データセット全体としてのバージョン管理を行うためのプリセットコンポーネントセットバージョンのデータと、そのデータセットを構成する複数のコンポーネントの各種類毎に用意されたＰＣ用プリセットコンポーネントデータとを含む。
【００２８】
各ＰＣ用プリセットコンポーネントデータは、コンポーネントの性質や機能を示す情報であり、コンポーネントを識別するためのプリセットコンポーネントヘッダ、コンポーネントの入力や出力およびコンポーネントが扱うデータや動作パラメータの構成を示す構成情報、ユーザの数値入力操作に応じて上述したカレントないしシーンメモリの各シーンにおける各コンポーネントの個別の動作パラメータの値を変更する処理を行うためのパラメータ処理ルーチン、同シーンにおける各コンポーネントの動作パラメータを表示用のテキストデータや特性グラフに変換するための表示・編集用処理ルーチンとを含む。
そして、プリセットコンポーネントヘッダには、プリセットコンポーネントの種類を示すプリセットコンポーネントＩＤ及びそのバージョンを示すプリセットコンポーネントバージョンの情報を含み、これらによってプリセットコンポーネントを特定することができる。
【００２９】
また、上記の構成情報には、コンポーネントの入出力の構成を示す入出力構成情報やコンポーネントが扱うデータやパラメータの構成を示すデータ構成情報の他、編集画面にコンポーネント自身を表示する際の色や形状及びそのコンポーネントの動作パラメータを編集するためにディスプレイに表示する制御パネルのデザインや制御パネル上のつまみや特性グラフの配置を示すＰＣ用表示データ等も含む。
【００３０】
一方、コンフィグデータは、ユーザが編集した信号処理構成を示すデータであり、ユーザが編集結果の保存を選択した場合、その時点での信号処理構成及び設定値等が１つのＰＣ用コンフィグデータとして保存される。そして、各ＰＣ用コンフィグデータは、コンフィグデータを識別するためのコンフィグヘッダ、編集された信号処理構成の内容を示すＰＣ用ＣＡＤデータ、および上述した設定データであるシーンを含む。
このうち、コンフィグヘッダには、コンフィグデータを新規に保存する場合にユニークにつけるコンフィグＩＤ、コンフィグデータを改変した場合に変更してバージョンを示すコンフィグバージョン、コンフィグデータを作成した編集プログラムのバージョンを示すシステムバージョンの情報等を含む。
【００３１】
また、ＰＣ用ＣＡＤデータには、編集された信号処理構成に含まれる各コンポーネントについてのコンポーネントデータと、それらのコンポーネント間の結線状態を示す結線データとが含まれる。なお、信号処理構成に同じ種類のプリセットコンポーネントが複数含まれる場合には、それら各々に対して別々のコンポーネントデータを用意する。
そして、各コンポーネントデータは、そのコンポーネントがどのプリセットコンポーネントに該当するかを示すコンポーネントＩＤ、同じくどのバージョンのプリセットコンポーネントに該当するかを示すコンポーネントバージョン、そのコンポーネントが含まれる信号処理構成においてそのコンポーネントにユニークに付したＩＤであるユニークＩＤ、そのコンポーネントの入力端子や出力端子の数の情報等を含むプロパティデータ、およびＰＣ３０側の編集画面で該当するコンポーネントが配置されている位置等を示すＰＣ用表示データを含む。
【００３２】
また、結線データには、編集された信号処理構成に含まれる複数の結線の各結線について、どのコンポーネントのどの出力端子からどのコンポーネントのどの入力端子へ結線が行われているかを示す接続データ、およびＰＣ３０側の編集画面におけるその結線の形状や配置を示すＰＣ用表示データを含む。
【００３３】
また、シーンメモリの各シーンは、信号処理構成の各コンポーネントに関するパラメータであるコンポーネントシーンの集合体であり、各コンポーネントシーンにおけるデータの形式や配列は、ＰＣ用ＣＡＤデータに含まれるそのコンポーネントのコンポーネントＩＤとコンポーネントバージョンで特定されるプリセットコンポーネントの、ＰＣ用プリセットコンポーネントデータ中のデータ構成情報によって定義される。
以上がＰＣ３０側で使用する主なデータであり、これらのデータは、ＨＤＤ（ハードディスクドライブ）等の不揮発性記憶手段に記憶させておき、必要な時にＲＡＭに読み出して使用するようにしてもよい。
【００３４】
また、以上のデータ以外にも、ＰＣ３０においては、現在有効なコンフィグにおける現在有効な設定データであるカレントシーンも記憶している。そして、カレントシーンのデータは、上述したシーンメモリの各シーンと同一構成であり、制御パネル等により信号処理構成の１つのコンポーネントの制御パラメータを編集する際には、このカレントシーンのそのコンポーネントの制御パラメータを変更して編集を行い、その結果をシーンメモリに１つのシーンとして保存することができる。
さらに、ＰＣ３０には、上述した「コンパイル」の処理後にミキサエンジンにコンポーネントや結線の情報を伝えるための変更コマンドを生成するためのバッファも用意している。この変更コマンドに付いては後に詳述する。
【００３５】
次に、図５にミキサエンジン１０側で使用するデータの構成を示す。
この図に示すように、ミキサエンジン１０側でも、主要なデータとして、プリセットコンポーネントデータとコンフィグデータとを記憶させている。ただし、プリセットコンポーネントデータはフラッシュメモリ１２に、コンフィグデータはＲＡＭ１３に記憶させ、その構成内容はＰＣ３０側とは若干異なる。そこで、ＰＣ３０側に記憶させるデータとの相違点を中心に説明する。
【００３６】
図５に示すように、ミキサエンジン１０側のプリセットコンポーネントデータは、エンジン用プリセットコンポーネントデータを含む。そして、このエンジン用プリセットコンポーネントデータは、まず、表示・編集用ルーチンの一部に代えて、ＤＳＰ２０を動作させてそのコンポーネント係る信号処理を実現させるためのマイクロプログラムを含む点でＰＣ用のものと異なる。また、構成情報にＰＣ用表示データを含まない点でも、ＰＣ用のものと異なる。なお、このマイクロプログラムを記憶するフラッシュメモリ１２が第２の記憶手段に該当する。
【００３７】
すなわち、ミキサエンジン１０側では、信号処理構成の編集や動作パラメータの特性グラフの表示は行わないため、ＰＣ用の構成情報に含まれていたＰＣ用表示データやＰＣ用の表示・編集用ルーチンの一部は不要なのである。なお、ミキサエンジン１０側でも、表示器１４にパラメータの設定値を表示させ、操作子１５によって編集できるようになっており、そのため、ＰＣ用の表示・編集用ルーチンのうちの動作パラメータの値を表示用のテキストデータに変換するためのルーチンが必要となるが、このルーチンはパラメータ処理ルーチンに含まれている。
これ以外の点は、ＰＣ３０側のプリセットコンポーネントデータと同様であり、ＩＤやバージョンについては、ＰＣ３０側の対応するセットやコンポーネントと同じものを用い、対応関係が認識できるようにしている。
【００３８】
次に、コンフィグデータについては、エンジン用コンフィグデータは、ＰＣ用ＣＡＤデータに代えてエンジン用ＣＡＤデータを含む点がＰＣ３０用のものと異なる。そして、このエンジン用ＣＡＤデータは、形式としては、ＰＣ用ＣＡＤデータから、上述したコンポーネントや結線のＰＣ用表示データのような、ミキサエンジン１０側では使用しないデータを削除し、さらにデータ間の不使用部分を詰めてパッキングしたものである。しかし、このようなエンジン用ＣＡＤデータは、ＰＣ３０側から転送されてきた変更コマンドをもとに、ミキサエンジン１０側で生成するものである。
【００３９】
これ以外の点は、ＰＣ３０側のコンフィグデータと同様であり、ＩＤやバージョンについては、やはりＰＣ３０側の対応するコンフィグやコンポーネントと同じものを用い、対応関係が認識できるようにしている。
なお、ミキサエンジン１０は、ＰＣ３０において編集された信号処理構成に基づいて音響信号を処理するものである。そのため、ＣＰＵ１１は、ＰＣ３０から受け取った変更コマンドに基づいてエンジン用ＣＡＤデータを生成し、そのエンジン用ＣＡＤデータに基づいてＤＳＰ２０に実行させるマイクロプログラムを形成するようになっており、そのための作業領域としてマイクロプログラム形成バッファを用意している。
【００４０】
マイクロプログラムの形成処理では、まず、エンジン用ＣＡＤデータに含まれる各コンポーネントのコンポーネントＩＤとコンポーネントバージョンにより特定されるプリセットコンポーネントデータから上述したマイクロプログラムを順次読み出す。そして、変更コマンドに記載されたリソース割り当て情報、すなわち、各コンポーネントに係る信号処理をどの信号処理プロセッサで実行するか、その際、その信号処理プロセッサのどの記憶レジスタやメモリを使用するか、他のコンポーネントとの結線のためにどの入出力レジスタを使用するか等を示す情報に基づいてそのマイクロプログラムを加工し、マイクロプログラム形成バッファに書き込む。
【００４１】
また、コンポーネント間でデータを受け渡す際の読み出しアドレスや書き込みアドレスは、やはり変更コマンドに記載された、同じ信号処理プロセッサに割り当てられたコンポーネント間を結線するための通信用の記憶レジスタやメモリ、および、異なる信号処理プロセッサに割り当てられたコンポーネントを結線するための波形バス２５における伝送用のｃｈ等の割り当て情報に基づいて設定し、各コンポーネントの入出力端子に対応した入出力レジスタの間のデータの受け渡しプログラムをマイクロプログラム形成バッファに書き込むことによりＤＳＰ２０に与えるマイクロプログラムが完成する。
【００４２】
ここで、リソースの割り当てに基づいてマイクロプログラムを加工しているのは、ミキサエンジン１０に備えたＤＳＰ２０のアーキテクチャに対応させたものであり、別のアーキテクチャであれば、マイクロプログラム自体を加工する代わりに、例えば、割り当てたリソースに応じたパラメータをＤＳＰ２０に設定するようにすべき場合もある。
【００４３】
次に、ＰＣ３０において信号処理構成の編集操作を行った場合の動作について説明する。
上述したように、ＰＣ３０においては、ユーザは、ディスプレイに表示されたＣＡＤ画面４０上で、信号処理構成におけるコンポーネントや結線の追加、削除及び変更を指示することができる。
例えば、図３のＣＡＤ画面４０に示した信号処理構成を、図６のＣＡＤ画面４０′に示した信号処理構成に変更しようとする場合、以下のような指示を順次行うことにより変更を行うことができる。すなわち、まず図３に示した結線Ｅの削除を指示し、続いて図６に示したコンポーネントＦの追加を指示し、さらに結線Ｇ，Ｈ，Ｉの追加を指示すればよい。
【００４４】
そして、ユーザがこの指示を行った後、コンパイルキー４１を押下すると、ＰＣ３０は、編集中の信号処理構成に係るＰＣ用コンフィグデータ中のＰＣ用ＣＡＤデータを変更してその時点での信号処理構成の内容を記憶し、このＰＣ用ＣＡＤデータが、第１の構成データに該当する。また、ＰＣ用ＣＡＤデータを旧データと置き換えずに、メモリの別の位置に変更後のデータを記憶するようにするとよい。
また、コンパイルキー４１が押下されると、ＰＣ３０は、編集中の信号処理構成の各コンポーネントに係る処理を、ミキサエンジンのＤＳＰ２０を構成する各信号処理プロセッサ２１〜２４に割り当てると共に、各結線に係る処理を、同じく波形バス２５の転送ｃｈや各信号処理プロセッサ２１〜２４の転送レジスタに割り当てる。そして、コンポーネント及び結線について、前回コンパイル時から変化した部分を抽出し、その部分の変更をミキサエンジンに通知する。
【００４５】
この時、編集中の信号処理構成が新規に編集されたものであったり、信号処理構成全体を転送するモードが選択されていたりした場合には、変更部分だけでなく信号処理構成全体をミキサエンジンに通知するものとする。
これらの通知には、表１に示す各コマンドを使用し、これらのコマンドの内容が第２の構成データに該当するが、詳細は詳述する。
【００４６】
【表１】
2005234801.tif 000003
【００４７】
一方、上記のコマンドを受け付けたミキサエンジン１０は、変更を指示された信号処理構成に係るコンフィグデータを受信したコマンドに従って変更すると共に、ＤＳＰ２０を動作させるためのマイクロプログラムを再構成し、ＤＳＰ２０における信号処理に反映させる。この場合において、コンポーネントに変化がなく、結線のみが変更された場合には、結線部分を再構成するのみでよい。具体的には、波形バス２５によるデータ転送に使用する書き込みレジスタや読み出しレジスタを変更する等である。
また、コンポーネントに変化があった場合には、各シーンのデータ形式を変更する必要があるので、この変更を行い、変更前のコンフィグデータに含まれていたシーンのデータを、変更後のコンフィグデータに引き継ぐことも行う。
【００４８】
次に、以上のような動作を実現するための具体的な処理について説明する。以下の処理について、ＰＣ３０側の処理はＰＣ３０のＣＰＵが編集プログラムを実行することによって行うものであり、ミキサエンジン１０側の処理はミキサエンジン１０のＣＰＵ１１が所要の制御プログラムを実行することによって行うものである。
まず、図７に、ＰＣ３０が編集プログラムの動作中に常に実行しているメイン処理のフローチャートを示す。
【００４９】
ＰＣ３０のＣＰＵは、ユーザによって編集プログラムの実行が指示されると、図７のフローチャートに示す処理を開始する。そして、この処理によって、ミキサエンジン１０において行う信号処理の構成を編集する機能が実現される。
この処理においては、まずステップＳ１で図２に示したような信号処理構成編集用のＣＡＤ画面４０を表示し、その後ステップＳ２乃至Ｓ９で、編集操作、コンパイルキー４１の押下、処理構成の保存や呼出の指示、その他の動作指示を受け付けてその指示に従った処理を行う。そして、編集プログラムの終了指示があると、ステップＳ１０からステップＳ１１に進み、ＣＡＤ画面４０を消去して処理を終了する。
【００５０】
このように、編集プログラムは、ＣＰＵに、ＯＳからユーザからの操作を始めとする種々のイベントを受け取り、それに応じた動作を行うことにより、ミキサエンジン１０において行う信号処理の構成の編集を始めとする種々の機能を実現させるためのものである。しかし、これらの機能を実現するための処理について逐一説明すると説明が煩雑になるため、以下、ユーザがコンパイルキー４１を押下した際に実行される処理のみについて説明し、他の処理に関する説明は省略する。
【００５１】
図７に示したように、ＰＣ３０のＣＰＵは、コンパイルキー４１が押下された場合、まずその時点で編集中の信号処理構成の内容を、対応するＰＣ用コンフィグデータ中のＰＣ用ＣＡＤデータとしてメモリに記憶させる（Ｓ５）。このとき、もとのＰＣ用ＣＡＤデータの内容は、残しておくとよい。
そしてその後、ミキサエンジンに対する信号処理構成通知処理を行うが（Ｓ６）この処理は、上述したように信号処理構成が前回コンパイル時から変化した部分をミキサエンジン１０に通知する動作を行う処理であり、この処理においては、図８のフローチャートに示す処理を実行する。
【００５２】
そしてこの処理においては、まず編集中の信号処理構成に係るＰＣ用ＣＡＤデータに含まれる各コンポーネント及び各結線に、ミキサエンジン１０のＤＳＰ２０におけるリソース（各信号処理プロセッサ２１〜２４の処理能力、処理を行う信号処理プロセッサの記憶レジスタやメモリ、及び、信号処理プロセッサ間の通信を行う波形バス２５の転送ｃｈ等）を割り当てる（Ｓ２１）。そして、各コンポーネント及び結線の情報を示す、表１に示したコマンドを生成してミキサエンジン１０に送信する（Ｓ２２）。
【００５３】
ここで送信するコマンドが第２の構成データであり、これらのコマンドにパラメータとして付すＤＳＰリソース情報及び結線リソース情報が、それぞれパラメータ及び結線に対するリソースの割り当てを示す情報である。また、コンポーネントＩＤ，コンポーネントバージョン，ユニークＩＤ，プロパティ情報（存在するコンポーネントのみ）は、ＰＣ用ＣＡＤデータ中のコンポーネントデータに含まれるものと同じデータであり、出力側コンポーネントのユニークＩＤ，出力端子番号，入力側コンポーネントのユニークＩＤ，入力端子番号は、同じく結線データに含まれるものと同じデータである。
これらのステップＳ２１及びＳ２２の処理において、ＰＣ３０のＣＰＵがコンパイル手段及び送信手段として機能する。
【００５４】
ここで、ステップＳ２２の処理を、図９により詳細に示す。
すなわち、この処理においては、まずミキサエンジン１０に転送開始コマンドを送信して、ミキサエンジン１０との間で処理対象としているコンフィグデータのＩＤ及びバージョンが一致していることを確認する（Ｓ１０１，１０２）。そして、これが一致していない場合には、転送ＮＧの応答が帰ってくるので、ステップＳ１０８でエラー処理を行って図７の処理に戻る。
一方、一致していれば、転送ＯＫの応答が帰ってくるので（Ｓ１０３）、ステップＳ１０４以降に進んで転送を開始する。
【００５５】
転送については、転送モードが全部転送であれば、まずミキサエンジン１０に現在のコンフィグデータのオールクリアを指示するクリアコマンドを送信し（Ｓ１０５）、その後、変更コマンドとして、信号処理構成に含まれる各コンポーネント及び結線について、これらの追加を指示するコンポーネント追加コマンドと結線追加コマンドを送信し（Ｓ１０６）、全ての変更コマンドの送信が終了したら、転送終了コマンドを送信してその旨をミキサエンジン１０に伝える（Ｓ１０７）。
部分転送の場合には、クリアコマンドは送信せず、ステップＳ１０６で前回コンパイル時からの変更点を示す変更コマンドを送信する。すなわち、コンポーネントや結線が削除されていれば、コンポーネント削除コマンドや結線削除コマンドを送信し、追加されていればコンポーネント追加コマンドや結線追加コマンドを送信してそのことを示す。
【００５６】
ここで、コンポーネントや結線自体に変更がなくても、信号処理プロセッサや転送レジスタへの割り当てが変更されていた場合には、その変更を通知する。そしてこの場合、コンポーネント追加コマンド及び結線追加コマンドを送信するようにし、ミキサエンジン１０側では、ＩＤ等から判断して既に存在するコンポーネントや結線について追加コマンドを受け取った場合には、リソースの割り当て変更の指示であると解釈する。
例えば、あるコンポーネントについてそのコンポーネントに係る信号処理を実行する信号処理プロセッサを別の信号処理プロセッサに変更したい場合や、ある結線についてその結線を実現する記憶レジスタないしメモリを別の記憶レジスタないしメモリに変更したい場合などである。
【００５７】
また、コンポーネントには、入出力数の異なる同種のコンポーネント（例えば「Mixer」）のデータを１つのプリセットコンポーネントデータに含め、プロパティによって入出力数を選択できるようにしたものもある。このような場合、プロパティの変更による入出力数の変更に対応するコンポーネントの差替えは、コンポーネント変更コマンドによってプロパティの変更を指示して行うことができる。そして、コンポーネントを一旦削除してから新たに追加する場合には、ユニークＩＤを新たに付けることになるが、差替えの場合にはユニークＩＤを変えないようにしている。
【００５８】
以上のＳ１０７までの処理が終了すると、図８のステップＳ２３の処理に進む。そして、前回コンパイル時からコンポーネントに変化がなければそのまま図７の処理に戻るが（Ｓ２３）、コンポーネントに変化があれば、シーンのデータ形式を変換する処理を行う（Ｓ２４，Ｓ２５）。
そして、この際には、図１０に示すようにメモリ上に新しいワーク領域を用意し、ＰＣ用ＣＡＤデータに基づいて現在の処理構成に係るパラメータを記憶するためのカレントシーン及び各シーンのデータ形式を定めてその記憶領域を設ける。そして、図１１に示すように、カレントシーン及び処理対象としているコンフィグデータ中の各シーンの内容を、元のワーク領域から新しいワーク領域にコピーする。そのとき、元のワーク領域と新しいワーク領域とではシーンのデータ構成が異なるので、コピーは異構成間コピーとなる。
【００５９】
なお、カレントシーンはコンパイル後直ちに使用されるため、カレントシーンの新しい記憶領域へのコピーは直ちに行う必要があるが、各シーンのコピーに関しては直ちに行わずに後で行うようにしてもよい。例えば、カレントシーンのコピー後に各シーンのコピーをバックグラウンド処理として行うようにしたり、あるいは、その各シーンのデータが使用される時点（例えばシーンリコールされる時点）で新しい記憶領域にコピーするようにしてもよい。
【００６０】
この異構成間コピーの具体例を図１２に示す。
まず、図１２（ａ）に示すようにコンポーネントが削除された場合には、単に削除されたコンポーネントに係るコンポーネントシーンをコピーしなければよい。
また、（ｂ）に示すようにコンポーネントが変更された場合には、変更元のコンポーネントに係るコンポーネントシーンに代えて、変更後のコンポーネントに係るコンポーネントシーンを設ける。そして、ここにはコピーすべきデータがないので、所定の初期値を設定する。なお、この場合でも変更前後のデータの対応関係がわかる場合、すなわち変更前後のコンポーネントが同種であり相互にパラメータ互換性がある場合等には、コピー可能な部分のみコピーを行うようにしてもよい。
（ｃ）に示すようにコンポーネントが追加された場合には、シーンの末尾に追加されたコンポーネントに係るコンポーネントシーンを設け、やはり所定の初期値を設定する。なお、リソース割り当ての変更に伴ってコンポーネント追加コマンドを送信した場合には、実際にコンポーネントが追加されたわけではないので、コンポーネントシーンを追加することはない。
【００６１】
以上のような処理を行うことにより、信号処理構成の編集により、カレントシーンや各シーンのデータ構成を変更する必要が生じた場合でも、変更がない部分については編集前のパラメータを保持できる。従って、新たにパラメータを設定する操作を行う必要がないため、操作性を向上させることができる。また、新たにワーク領域を用意してコピーを行っているので、アンドゥー処理も可能である。
図８のステップＳ２５の処理が完了すると、図７の処理に戻る。
以上でＰＣ３０側の処理の説明を終了する。
【００６２】
次に、図１３に、ミキサエンジン１０がＰＣ３０から表１に示した転送開始コマンドを受信した場合に実行する処理のフローチャートを示す。
この処理においては、まず、受信した転送開始コマンドに付されたパラメータを参照し、変更の場合には処理対象とするコンフィグデータを記憶しているか否か、新規の場合には新たなコンフィグデータを記憶する容量があるか否か等に基づいて、変更コマンドの転送を受け付けることかできる状態か否かの応答を返す（Ｓ３１）。そして、受け付けることができる状態であれば（Ｓ３２）、ＤＳＰ２０に信号処理を中断させると共に、ＰＣ３０から上述した変更コマンドを受信してこれを記憶する（Ｓ３３）。ここでは、変更コマンドが構成データに該当し、これを記憶するメモリ（例えばＲＡＭ１３）が第１の記憶手段に該当する。
【００６３】
そして、転送終了コマンドを受信すると、ステップＳ３４で対象とするコンフィグデータを新たなワーク領域にコピーし、そのコピー先において、エンジン用ＣＡＤデータに含まれるコンポーネントデータ及び結線データを、受信した変更コマンドに従って変更する。なお、ここで元のデータを残しておくのは、アンドゥー操作を可能にするためであるが、これは必須ではない。また、図示は省略したが、記憶した変更コマンドにエラーがないことを確認してからこの処理を行い、エラーがあった場合にはその旨をＰＣ３０に通知するものとする。
【００６４】
その後、コンポーネントに追加、削除等の変更があったか否か判断し（Ｓ３５）、あれば、ステップＳ３６及びＳ３７で、図８のステップＳ２４及びＳ２５の場合と同様に、カレントシーン及び、エンジン用ＣＡＤデータに含まれる各シーンのパラメータを、新しいワーク領域に異構成間コピーする。
そして、ステップＳ３４での変更後のエンジン用ＣＡＤデータに基づいて、ＤＳＰ２０に変更後の処理構成に係る信号処理を行わせるためのマイクロプログラムを形成し、変更後のエンジン用コンフィグデータの一部として記憶すると共に、ＤＳＰに設定する（Ｓ３８）。マイクロプログラムの形成手順は、図５を用いて上述した通りであるが、形成後のプログラムは、次に形成を行うまでマイクロプログラム形成バッファに残しておくものとする。
その後、ＤＳＰ２０に新たなマイクロプログラムと新たなカレントデータとを用いた信号処理を開始させ、処理を終了する。
【００６５】
また、ステップＳ３５でコンポーネントについてリソース割り当てのみの変更があった場合には、シーンデータを変更する必要はないがマイクロプログラムは再形成する必要があるので、直接ステップＳ３８に進み、以下の処理を行う。
ステップＳ３５でコンポーネントについての変更がなかった場合には、マイクロプログラム全体を再形成しなくても、結線に係る処理を変更するのみでＤＳＰ２０に変更後の処理構成に係る信号処理を行わせるためのマイクロプログラムを形成できるので、このような改変を行い、改変後のマイクロプログラムをステップＳ３８の場合と同様に記憶及び設定する。その後、ステップＳ４０の処理を行って終了する。
なお、ステップＳ３２で受け付けることができない状態であった場合には、そのまま処理を終了する。
以上がミキサエンジン１０側で実行する処理である。
【００６６】
以上の処理において、ステップＳ３８及びＳ３９ではＣＰＵ１１がプログラム形成手段として機能する。また、ここではＤＳＰ２０にマイクロプログラムを設定し、自身で信号処理を制御するようにしているので、ＤＳＰ２０が制御手段に該当するが、ＣＰＵ１１がこの制御を行うようにしてもよい。
【００６７】
このミキサシステムでは、以上のような構成とし、また以上のような処理を行うことにより、ＤＳＰ２０の制御に使用するマイクロプログラムの形成を、ミキサエンジン１０側で行うようにした。そして、このことにより、信号処理構成の編集内容をミキサエンジン１０における信号処理に反映させる際にＰＣ３０からミキサエンジン１０に転送するデータの量を低減できるため、転送に要する時間を短縮し、信号処理構成の編集内容をミキサエンジン１０における信号処理に反映させる際のレスポンス速度を改善し、ミキサシステムの操作性を向上させることができる。
【００６８】
また、部分転送を採用することにより、転送するデータ量をさらに低減できると共に、前回転送時から結線のみしか変化がない場合、ミキサエンジン１０側において、ＤＳＰ２０に変更後の構成に係る信号処理を行わせるためのマイクロプログラムを、変更前のマイクロプログラムを利用して大幅に簡略化した処理で生成できるので、さらにレスポンス速度を向上させることができる。
さらに、処理負荷の比較的大きい、コンポーネントや結線に関するリソースの割り当て処理を、高速な処理が可能なＰＣ３０側のＣＰＵで行うようにしたことにより、全体としての処理の高速化を図ることができる。
【００６９】
〔第２の実施形態：図１４乃至１６〕
次に、この発明の編集装置の実施形態であるＰＣとこの発明の音響信号処理装置の実施形態であるミキサエンジンとによって構成した音響信号処理装置の第２の実施形態であるミキサシステムについて説明する。なお、このミキサシステムは、ハードウェア構成は第１の実施形態のミキサシステムと全く同一であり、ＰＣ３０及びミキサエンジン１０において実行する処理が異なるのみである。
そして、このミキサシステムは、ＰＣ３０のディスプレイに表示するＣＡＤ画面にコンパイルキーを設けず、ユーザがＣＡＤ画面において操作を行って信号処理構成を変更する度に、自動的にその変更内容をミキサエンジン１０側に通知し、ＤＳＰ２０における信号処理内容に反映させるようにした点が特徴である。そこで、このミキサシステムについての説明は、この点を中心に行う。
【００７０】
まず、図１４に、このミキサシステムを構成するＰＣ３０が、編集プログラムの動作中に常に実行している処理のフローチャートを示す。
ＰＣ３０のＣＰＵは、ユーザによって編集プログラムの実行が指示されると、その編集プログラムを実行して図１４のフローチャートに示すメイン処理を開始する。そして、この処理によって、ミキサエンジン１０において行う信号処理の構成を編集する機能が実現される。
【００７１】
この処理は、第１の実施形態で図７を用いて説明した処理と対応するものであり、ステップＳ５１乃至Ｓ５２及びＳ５５乃至Ｓ６０の処理は、それぞれ図７のステップＳ１乃至Ｓ２及びＳ７乃至Ｓ１２と同様な処理である。しかし、ステップＳ５３において信号処理構成の内容をＰＣ用ＣＡＤデータとしてメモリに記憶させる（Ｓ５３）と共に、その後直ちにステップＳ５２で検知した操作に係る信号処理構成の変更内容をミキサエンジンに通知する（Ｓ５４）ようにした点が、第１の実施形態の場合と異なる。
この点について、ステップＳ５３及びＳ５４で実行する処理の詳細を、図１５及び図１６に示す。図１５は、ステップＳ５２で結線を変更する操作があった場合の処理、図１６は同じくコンポーネントを変更する操作があった場合の処理を示すフローチャートである。
【００７２】
これらの処理において、まず、結線を変更する操作があった場合には、図１５のステップＳ７１及びＳ７２で、編集中の信号処理構成に係るＰＣ用コンフィグデータ中のＰＣ用ＣＡＤデータを変更すると共に、それに合わせてＣＡＤ画面４０の表示を更新する。そしてこのとき、アンドゥー操作を可能とするために、変更前のＰＣ用コンフィグデータを新たなワーク領域にコピーし、そのコピー先のデータ中のＰＣ用ＣＡＤデータを変更するようにする。
【００７３】
その後、ステップＳ７３乃至Ｓ７５で、ＰＣ用ＣＡＤデータ中の各コンポーネント及び結線に、ミキサエンジン１０のＤＳＰ２０におけるリソースを割り当て、ステップＳ７１で変更された結線について、結線の追加、削除、変更（元の結線を削除して新たな結線を追加）に応じて、表１に示した変更コマンドを生成してミキサエンジンに送信する。ステップＳ７３でリソースの割り当てが変更されたコンポーネントや結線があった場合は、これらについての変更コマンドも同様に送信する。ステップＳ７４のネゴシエーション処理は、図９のステップＳ１０１乃至Ｓ１０３と同様な処理である。また、変更コマンドは、必要なものを全て生成してから送信しても、１つ生成する毎に送信してもよい。
以上の処理が完了すると、もとの処理に戻る。
【００７４】
また、コンポーネントを変更する操作があった場合には、図１６のステップＳ８１及びＳ８２で、図１５のステップＳ７１及びＳ７２の場合と同様に、ＰＣ用ＣＡＤデータの変更と、それに合わせてＣＡＤ画面４０の表示の更新を行う。
その後、ステップＳ８３乃至Ｓ８５で、ステップＳ７３乃至Ｓ７５の場合と同様に、各コンポーネント及び結線に、ＤＳＰ２０のリソースを割り当て、ステップＳ８１で変更されたコンポーネントについて、コンポーネントの追加、削除、変更（プロパティの変更による入出力数等の変更）等に応じて、表１に示した変更コマンドを生成してミキサエンジンに送信する。
【００７５】
そして、ステップＳ８６及びＳ８７で、図８のステップＳ２４及びＳ２５の場合と同様に、シーンのデータ形式を変換する処理を行う。ただし、ここではシーンのデータ形式は、ステップＳ８１での変更後のＰＣ用ＣＡＤデータに基づいて行う。
なお、ステップＳ８７の処理のうち、カレントシーンの新たな記憶領域へのコピーは直ちに行い、各シーンのコピーはバックグラウンド処理で行うようにするとよい。また、続けてコンポーネントの変更操作が行われた場合には、途中段階の各シーンのコピーを省いて、既存の各シーンから最終的な信号処理構成に対応した記憶領域の各シーンへの直接的なコピーだけを行うようにするとよい。
以上の処理が完了すると、もとの処理に戻る。
以上でＰＣ３０側の処理の説明を終了する。
また、ミキサエンジン１０側の処理については、上述した第１の実施形態の場合と同様なものである。
【００７６】
なお、この実施形態では、ＰＣ１０側において、ステップＳ５２で編集操作が検出される毎にステップＳ５４でその変更内容をエンジンに伝え、かつ新たなカレントシーンへのコピーを行う例について説明した。しかし、それでは編集操作が複数連続して行われた場合に無駄な処理が増えてレスポンスが悪くなる場合があるので、連続して編集操作が検出されている間はエンジンへの伝達やカレントシーンの更新を行わないようにしてもよい。その場合、例えば、編集操作が行われた後所定時間（数秒程度）新たな編集操作が行われていないのを検出した時点で、それまでの一連の編集操作に基づくＰＣ用ＣＡＤデータの変更内容をミキサエンジン１０に伝達すると共に、新たなカレントシーンへのコピーを行うようにすることが考えられる。
【００７７】
このミキサシステムでは、以上のような構成とし、また以上のような処理を行うことにより、第１の実施形態で説明した効果を実現できることに加え、ユーザがＣＡＤ画面上で信号処理構成の変更を指示する度に、その変更をＤＳＰ２０における信号処理に自動的に反映させることができる。そしてこの際に、コンパイルキーの押下のような特別の操作が必要ないので、操作性を向上させることができる。また、編集した信号処理の結果を逐一耳で確認しながら編集を行うことができるので、信号処理構成の編集を容易に行うことができる。
【００７８】
また、信号処理構成が変更された部分のみをミキサエンジン１０側に伝えるようにしたことにより、転送するデータ量は極めて少なくすることができる。また、編集操作は、通常は結線を変更するものである場合が多く、この場合には、ミキサエンジン１０側において、ＤＳＰ２０に変更後の構成に係る信号処理を行わせるためのマイクロプログラムを、変更前のマイクロプログラムを利用して大幅に簡略化した処理で生成できる。従って、変更指示毎にその内容を信号処理に反映させるようにした場合でも、このことにより操作性が低下しない程度の高速なレスポンス速度を得ることができる。
【００７９】
なお、ここで説明したように自動でコンパイルを行うモードと、第１の実施形態の場合の様に手動でコンパイルを行うモードとを、ユーザが任意に切りかえることができるようにするとよい。また、前回コンパイル時からの変化分のみに係る変更コマンドのみをミキサエンジン１０に送信するようにすることは必須ではなく、全てのコンポーネントに係るコマンドを送信するようにしてもよい。その場合であっても、従来のようにＰＣ側でマイクロプログラムを生成してエンジンに転送する場合と比較すると、圧倒的に少量のデータをＰＣ３０からミキサエンジン１０の転送するだけでよいので、実用的に問題のないレスポンスが得られる。
【００８０】
以上でこの発明の実施形態の説明を終了するが、この発明は以上の実施形態に限定されるものではない。
例えば、各実施形態において、コンパイルの処理で、全部転送か部分転送かに関わらず、ＰＣ３０が編集されたＰＣ用ＣＡＤデータから変更コマンドを生成してミキサエンジン１０に転送し、ミキサエンジン１０が受け取った変更コマンドに基づいてエンジン用ＣＡＤデータを生成する例について説明したが、全部転送の場合には、ＰＣ３０側でエンジン用ＣＡＤデータを生成し、エンジンはそれを受け取るだけにするような構成も可能である。前者の構成には、ミキサエンジン１０における処理を全部転送か部分転送かで区別する必要がなく、ミキサエンジン１０側の処理を簡潔化できるという効果があり、後者の構成には、全部転送の場合に行われるエンジン用ＣＡＤデータ全体の生成を、ミキサエンジン１０より高速な処理が可能なＰＣ３０に任せることにより処理時間を短縮できるという効果がある。
【００８１】
また、ミキサシステムの構成は図１に示したものに限られることはなく、編集装置として、ＰＣ３０ではなく専用の編集装置あるいは制御装置を用いてもよい。音響信号処理装置も、１台とは限らず、複数台を編集装置に同時に接続するようにしてもよい。
さらに、この発明のプログラムを実行するコンピュータは、ＰＣに限られることはなく、１台のミキサエンジンを、時と場合によって異なるコンピュータに接続して制御するようにしてもよい。
【００８２】
さらに、上述したこの発明のプログラムは、予めＰＣ３０のＨＤＤ等に記憶させておくほか、ＣＤ−ＲＯＭあるいはフレキシブルディスク等の不揮発性記録媒体（メモリ）に記録して提供し、そのメモリからこのプログラムをＰＣ３０のＲＡＭに読み出させてＣＰＵに実行させたり、プログラムを記録した記録媒体を備える外部機器あるいはプログラムをＨＤＤ等の記憶手段に記憶した外部機器からダウンロードして実行させたりしても、同様の効果を得ることができる。
【産業上の利用可能性】
【００８３】
以上の説明から明らかなように、この発明のプログラム又は音響信号処理装置によれば、処理内容をプログラム可能な信号処理部を有する音響信号処理装置と、その音響信号処理装置における信号処理の構成を編集する編集装置とによる音響信号処理システムを構成する場合に、操作性の高いシステムを構成できるようにすることができる。
【図面の簡単な説明】
【００８４】
【図１】編集装置として機能するＰＣとこの発明の音響信号処理装置の実施形態であるミキサエンジンとによって構成した音響信号処理システムの第１の実施形態であるミキサシステムの構成を示すブロック図である。
【図２】図１に示したＤＳＰ及びその周辺の構成をより詳細に示す図である。
【図３】図１に示したＰＣのディスプレイに表示させる信号処理構成の編集画面の例を示す図である。
【図４】この発明に関連するデータのうち、ＰＣ側で使用するデータの構成を示す図である。
【図５】同じくミキサエンジン側で使用するデータの構成を示す図である。
【図６】図３に示した編集画面において編集を行った後の表示例を示す図である。
【図７】図１に示したＰＣにおける、編集プログラム実行中のメイン処理を示すフローチャートである。
【図８】図７に示した信号処理構成通知処理を示すフローチャートである。
【図９】図８のステップＳ２２の処理を詳細に示すフローチャートである。
【図１０】図１に示したＰＣのメモリ上に設けるワーク領域について説明するための図である。
【図１１】コンポーネントに変更があった場合のカレントシーン及び各シーンの取扱いについて説明するための図である。
【図１２】図１１に示した異構成間コピーの例を示す図である。
【図１３】図１に示したミキサエンジンが転送開始コマンドを受信した場合に実行する処理を示すフローチャートである。
【図１４】第２の実施形態におけるＰＣが実行する、編集プログラム実行中のメイン処理を示すフローチャートである。
【図１５】図１４のステップＳ５２で結線を変更する操作があった場合に、同図のステップＳ５３及びＳ５４で実行する処理の詳細を示すフローチャートである。
【図１６】図１４のステップＳ５２でコンポーネントを変更する操作があった場合に、同図のステップＳ５３及びＳ５４で実行する処理の詳細を示すフローチャートである。
【符号の説明】
【００８５】
１０…ミキサエンジン、１１…ＣＰＵ、１２…フラッシュメモリ、１３…ＲＡＭ、１４…表示器、１５…操作子、１６…ＰＣＩ／Ｏ、１７…ＭＩＤＩＩ／Ｏ、１８…その他Ｉ／Ｏ、１９…波形Ｉ／Ｏ、１９ａ…モニタ用アナログ信号出力、２０…ＤＳＰ、２１〜２４…第１〜第４の信号処理プロセッサ、２５…波形バス、２６…カスケードＩ／Ｏ、２７…ＣＰＵバス、３０…ＰＣ、４０…ＣＡＤ画面、４１…コンパイルキー、Ａ，Ｆ…コンポーネント、Ｂ…出力端子、Ｃ…入力端子、Ｄ，Ｅ，Ｇ，Ｈ，Ｉ…結線
【図１】
2005234801.tif 000004
【図２】
2005234801.tif 000005
【図３】
2005234801.tif 000006
【図４】
2005234801.tif 000007
【図５】
2005234801.tif 000008
【図６】
2005234801.tif 000009
【図７】
2005234801.tif 000010
【図８】
2005234801.tif 000011
【図９】
2005234801.tif 000012
【図１０】
2005234801.tif 000013
【図１１】
2005234801.tif 000014
【図１２】
2005234801.tif 000015
【図１３】
2005234801.tif 000016
【図１４】
2005234801.tif 000017
【図１５】
2005234801.tif 000018
【図１６】
2005234801.tif 000019