(57)【要約】【課題】  音響信号処理部をプログラムに従って動作可能なプロセッサを用いて構成し、外部のＰＣを用いて編集したミキサ構成に基づいて音響信号を処理できるようにしたディジタルミキサにおいて、ユーザがカスタマイズできるＣコンポーネントについて、パラメータを一括して設定するためのライブラリを持てるようにすると共に、ライブラリの設定データを柔軟にやり取りできるようにすることを目的とする。【解決手段】  Ｃコンポーネントにライブラリを持てるようにする。各Ｃコンポーネントに構成ＩＤを付与し、相互のＣコンポーネントのライブラリの設定データ間に互換性があるＣコンポーネントに対しては同じ構成ＩＤを付与する。ライブラリの設定データは、読み出し元と書き込み先のＣコンポーネントの構成ＩＤが一致していることを条件として読み出し元のライブラリから読み出した設定データを書き込み先へ書き込む。【選択図】  図１
2005252643.tif 000002
【特許請求の範囲】
【請求項１】
プログラムに従って動作可能なプロセッサを用いて音響信号処理部を構成し、所定のミキサ構成に応じたプログラムを前記音響信号処理部で動作させることにより、該ミキサ構成の音響信号処理動作を実現するディジタルミキサの該音響信号処理のためのパラメータセットを設定するパラメータ設定装置であって、
前記ミキサ構成の構成要素として利用するためのカスタムコンポーネントを作成編集する手段と、
作成編集したカスタムコンポーネントを保存する手段と、
前記カスタムコンポーネントのパラメータを一括して設定するための設定データを複数記憶することができるライブラリ記憶手段と
を備えたことを特徴とするパラメータ設定装置。
【請求項２】
プログラムに従って動作可能なプロセッサを用いて音響信号処理部を構成し、構成要素ＩＤとプロパティ情報により特定されるカスタムコンポーネント構成に応じたプログラムを前記音響信号処理部で動作させることにより、該カスタムコンポーネント構成の音響信号処理動作を実現するディジタルミキサの該音響信号処理のためのパラメータセットを設定するパラメータ設定装置であって、
前記カスタムコンポーネント構成で使用するパラメータセットの設定データを複数記憶することのできるライブラリ記憶手段と、
処理対象であるカスタムコンポーネント構成の音響信号処理に用いるパラメータのデータセットであるカスタムコンポーネントシーンデータを記憶するシーン記憶手段と、
前記シーン記憶手段に記憶されたカスタムコンポーネントシーンデータの内容を編集する編集手段と、
前記シーン記憶手段上のカスタムコンポーネントシーンデータに対応するカスタムコンポーネント構成の構成ＩＤと前記ライブラリ記憶手段に記憶されている設定データに対応するカスタムコンポーネント構成の構成ＩＤが一致していることを条件に、前記シーン記憶手段に記憶されているカスタムコンポーネントシーンデータを読み出し、該カスタムコンポーネントシーンデータに応じて前記ライブラリ記憶手段の設定データを書き込むセーブ手段と、
前記シーン記憶手段上のカスタムコンポーネントシーンデータに対応するカスタムコンポーネント構成の構成ＩＤと前記ライブラリ記憶手段に記憶されている設定データに対応するカスタムコンポーネント構成の構成ＩＤが一致していることを条件に、前記ライブラリ記憶手段に記憶されている設定データを読み出し、該設定データに応じて前記シーン記憶手段のカスタムコンポーネントシーンデータを書き込むロード手段と
を備えたことを特徴とするディジタルミキサのパラメータ設定装置。
【請求項３】
プログラムに従って動作可能なプロセッサを用いて音響信号処理部を構成し、構成要素ＩＤとプロパティ情報により特定されるカスタムコンポーネント構成に応じたプログラムを前記音響信号処理部で動作させることにより、該カスタムコンポーネント構成の音響信号処理動作を実現するディジタルミキサの該音響信号処理のためのパラメータセットを設定するパラメータ設定装置であって、
前記カスタムコンポーネント構成で使用するパラメータセットの設定データを複数保持することのできるライブラリを、複数のカスタムコンポーネント構成ごとに、記憶するライブラリ記憶手段と、
異なるカスタムコンポーネント構成であってもそれらの構成要素ＩＤが一致していることを条件として、前記ライブラリ記憶手段に記憶されている第１のカスタムコンポーネント構成のライブラリ中の設定データを、前記第１のカスタムコンポーネント構成とは異なる第２のカスタムコンポーネント構成のライブラリ中の設定データとして、コピーするコピー手段と
を備えたことを特徴とするディジタルミキサのパラメータ設定装置。
【請求項４】
請求項２または３に記載のパラメータ設定装置において、
前記セーブ手段、前記ロード手段、および前記コピー手段は、読み出し元のライブラリの設定データまたはカスタムコンポーネントシーンデータのうち、読み出し元と書き込み先のカスタムコンポーネント構成の共通部分に対応する少なくとも一部をコピーするものであることを特徴とするディジタルミキサのパラメータ設定装置。
【請求項５】
請求項２から４の何れか１つに記載のパラメータ設定装置において、
前記ライブラリに対応するカスタムコンポーネント構成に基づいて、当該カスタムコンポーネント構成に応じたデータ構造を持つ当該ライブラリの設定データのアクセスルーチンを準備する手段と、
前記シーン記憶手段に記憶されているカスタムコンポーネントシーンデータに対応するカスタムコンポーネント構成に基づいて、当該カスタムコンポーネント構成に応じたデータ構造を持つ当該シーン記憶手段上のカスタムコンポーネントシーンデータのアクセスルーチンを準備する手段とを、さらに備え、
前記セーブ手段、前記ロード手段、または前記コピー手段による設定データやカスタムコンポーネントシーンデータのやり取りは、前記アクセスルーチンを利用して行なうことを特徴とするディジタルミキサのパラメータ設定装置。
【請求項６】
請求項２に記載のパラメータ設定装置において、
前記シーン記憶手段に記憶されたカスタムコンポーネントシーンデータを、該カスタムコンポーネントシーンデータに対応するカスタムコンポーネント構成の設定データとして、前記ディジタルミキサに送信する手段を、さらに備えたことを特徴とするディジタルミキサのパラメータ設定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、音響信号を処理するディジタルミキサのパラメータ設定装置に関する。
【背景技術】
【０００２】
従来より、非特許文献１に記載されているようなミキサ構成をカスタムメイドできるディジタルミキサが知られている。これは、音響信号処理部を、プログラムに従って動作可能なプロセッサ（例えば、ディジタル信号処理装置（ＤＳＰ））を用いて構成し、外部のＰＣ（パーソナルコンピュータ）を用いて編集したミキサ構成（信号処理構成）に基づいて音響信号を処理できるようにしたものである。ＰＣ上でのミキサ構成の作成編集は、専用のミキサ制御プログラムにより行なう。すなわち、ＰＣの画面上で信号処理を行なう部品となるコンポーネントを配置し、配置したコンポーネント間を結線でつないで入出力関係を規定して、ミキサ構成を作成編集する。作成したミキサ構成をディジタルミキサに転送して実行することにより、ディジタルミキサはそのミキサ構成の動作を実現する。
【０００３】
上述のコンポーネントとしては、プリセットコンポーネント（以下、Ｐコンポーネントと呼ぶ）とカスタムコンポーネント（以下、Ｃコンポーネントと呼ぶ）がある。Ｐコンポーネントは、ミキサ構成の構成要素の基本的な単位となるコンポーネントである。Ｃコンポーネントは、複数のＰコンポーネントを組合わせて１つのコンポーネントとして取扱うことができるようにしたものである。Ｃコンポーネントは、所定の権限を持つユーザが任意に作成編集できる。
【非特許文献１】「DIGITAL MIXING ENGINE DME32 取扱説明書」、ヤマハ株式会社、２００１年
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、このようなディジタルミキサでは、ミキサ構成の各コンポーネントにおいて各種のパラメータ設定を行なう必要がある。パラメータ設定を容易に行なうため、Ｐコンポーネントに対してはライブラリを備えているものがあった。ライブラリは、ミキサ構成の構成要素としてＰコンポーネントを利用した場合に、当該Ｐコンポーネントに対するパラメータ設定を一括して行なうため、当該Ｐコンポーネントのパラメータセットを複数組準備したものである。ユーザは、ミキサ構成の構成要素のＰコンポーネントに対して、所定の操作でそのＰコンポーネントのライブラリから設定データを読み出して、当該Ｐコンポーネントのパラメータ設定を一括して行なうことができる。
【０００５】
しかし、上述したＣコンポーネントに対してはライブラリを持つことができなかった。従って、Ｃコンポーネントに対して一括してパラメータ設定を行なうことはできず、逆にＣコンポーネントに対してユーザが施したパラメータ設定を保存しておくこともできなかった。
【０００６】
この発明は、音響信号処理部をプログラムに従って動作可能なプロセッサを用いて構成し、外部のＰＣを用いて編集したミキサ構成に基づいて音響信号を処理できるようにしたディジタルミキサにおいて、ユーザがカスタマイズできるＣコンポーネントについて、パラメータを一括して設定するためのライブラリを持てるようにすると共に、ライブラリの設定データを柔軟にやり取りできるようにすることを目的とする。
【課題を解決するための手段】
【０００７】
この目的を達成するため、この発明では、各Ｃコンポーネント対応にライブラリを持てるようにした。また、各Ｃコンポーネントに構成ＩＤを付与するとともに、相互のＣコンポーネントのライブラリの設定データ間に互換性があるＣコンポーネントに対しては同じ構成ＩＤを付与することとした。例えば、ミキサ構成中のＣコンポーネントが編集されたときの編集後のＣコンポーネントには、編集前のＣコンポーネントと同じ構成ＩＤが付与される。また、Ｃコンポーネントに付随するライブラリの設定データは、読み出し元と書き込み先のＣコンポーネントの構成ＩＤが一致していることを条件として読み出し元のライブラリから読み出した設定データを書き込み先へ書き込む。
【発明の効果】
【０００８】
この発明によれば、Ｃコンポーネントに対してもライブラリを持つことができるので、Ｃコンポーネントのパラメータの一括設定が容易に行なえる。ユーザがＣコンポーネントに対して行なったパラメータ設定をライブラリの設定データとして保存しておくこともできる。また、異なるＣコンポーネント間でも構成ＩＤが一致すればＣコンポーネントのライブラリの設定データの互換性があり、設定データをやり取り（ロード、セーブ、コピー）することができる。従って、Ｃコンポーネントの構成を編集した場合に、その編集前のＣコンポーネントで作成したライブラリの設定データを新たなＣコンポーネントに使用することができる。また逆に、新たなＣコンポーネントで作成したライブラリの設定データを、編集前のＣコンポーネントに使用することができる。
【発明を実施するための最良の形態】
【０００９】
以下、図面を用いてこの発明の実施の形態を説明する。
【００１０】
図１は、この発明の一実施形態であるディジタルミキサのエンジンの構成を示す。このエンジン１００は、中央処理装置（ＣＰＵ）１０１、フラッシュメモリ１０２、ＲＡＭ（ランダム・アクセス・メモリ）１０３、ＰＣ入出力インターフェース（Ｉ／Ｏ）１０４、ＭＩＤＩ  Ｉ／Ｏ１０５、その他Ｉ／Ｏ１０６、表示器１０７、操作子１０８、波形Ｉ／Ｏ１０９、信号処理部（ＤＳＰ群）１１０、カスケードＩ／Ｏ１１１、およびシステムバス１２０を備える。
【００１１】
中央処理装置（ＣＰＵ）１０１は、このミキサ全体の動作を制御する処理装置である。フラッシュメモリ１０２は、ＣＰＵ１０１や信号処理部１１０のＤＳＰなどが使用する各種のプログラムやデータを格納した不揮発性メモリである。ＲＡＭ１０３は、ＣＰＵ１０１が実行するプログラムのロード領域やワーク領域に使用する揮発性メモリである。ＰＣ  Ｉ／Ｏ１０４は、外部のパーソナルコンピュータ（以下、ＰＣと言う）１３０を接続するインターフェース（例えば、ＬＡＮ、ＵＳＢ、シリアルＩ／Ｏなど）である。ＭＩＤＩ  Ｉ／Ｏ１０５は、各種ＭＩＤＩ機器を接続するインターフェースである。その他Ｉ／Ｏ１０６は、その他の機器を接続するためのインタフェースである。表示器１０７は、このミキサの外部パネル上に設けられた各種の情報を表示するためのディスプレイである。操作子１０８は、外部パネル上に設けられたユーザが操作するための各種の操作子である。波形Ｉ／Ｏ１０９は、外部機器との間で音響信号をやり取りするためのインターフェースであり、例えば、アナログの音響信号を入力してディジタル信号に変換して信号処理部１１０に渡すＡ／Ｄ（アナログ・ディジタル）変換機能、ディジタルの音響信号を入力して信号処理部１１０に渡すディジタル信号入力機能、および信号処理部１１０から出力されたディジタルの音響信号をアナログの音響信号に変換してサウンドシステムに出力するＤ／Ａ（ディジタル・アナログ）変換機能などを実現する。信号処理部１１０は、幾つかのＤＳＰ（ディジタル・シグナル・プロセッサ）などからなる。これらのＤＳＰは、ＣＰＵ１０１の指示に基づいて各種のマイクロプログラムを実行することにより、波形Ｉ／Ｏ１０９経由で入力した波形信号のミキシング処理、効果付与処理、および音量レベル制御処理などを行ない、処理後の波形信号を波形Ｉ／Ｏ１０９経由で出力する。カスケードＩ／Ｏ１１１は、他のディジタルミキサとカスケード接続するためのインターフェースである。カスケード接続することにより、入出力チャンネル数やＤＳＰ処理力を増やすことができる。
【００１２】
本ディジタルミキサのエンジン１００では、信号処理部１１０で実現するミキサ構成をカスタムメイドすることができる。そのミキサ構成は、ＰＣ１３０上で動作する所定のミキサ制御プログラム１３１によりＰＣ１３０の画面上で作成編集することができる。作成したミキサ構成をコンフィグレーション（ＰＣ上での実体はＣＦデータである）と呼ぶ。ミキサ制御プログラム１３１は、ユーザの画面上での操作指示に応じて、コンフィグレーションをメモリ上にコンフィグ（ＣＦ）データ１３２として生成する。ＣＦデータ１３２は、ＰＣ１３０から書き込み可能な任意の記憶装置にファイルとして保存できる。また、ＰＣ１３０側のメモリまたは記憶装置上のＣＦデータは（コンパイル（後述）した後）エンジン１００に転送できる。エンジン１００は、ＰＣ１３０から転送されたＣＦデータをフラッシュメモリ１０２に格納して保存しておくことができる。所定の操作によりフラッシュメモリ１０２に格納されたＣＦデータをＲＡＭ１０３上のカレントメモリ（後述する）に読み出し、あるいはＰＣ１３０から転送されたＣＦデータを直接カレントメモリに展開し、カレントメモリ上のＣＦデータに基づいてエンジン１００を動作させることにより、当該ＣＦデータで定義されるミキサ構成のミキサが実現する。
【００１３】
なお、ＰＣ１３０によりＣＦデータを作成編集するユーザは、エンドユーザに限らず、業者の場合もある。例えば、ある会場にミキサが設置された場合、その会場に業者が出向いて、そのミキサにＰＣ１３０を接続し、当該ＰＣ１３０からその会場に合わせたミキサ構成のＣＦデータを作成編集し、そのＣＦデータをフラッシュメモリ１０２に格納する。この場合、ミキサはノンプログラマブル（エンドユーザに対してミキサ構成の作成編集を許可せず、エンドユーザは業者が作り込んだミキサ構成を呼び出して利用するだけ）でもよい。エンドユーザは、パネル上の操作子１０８を用いてフラッシュメモリ１０２に格納されたＣＦデータを読み出し、そのＣＦデータで定義されたミキサ構成のミキサとして動作させることができるので、動作時にＰＣ１３０を接続する必要はない。もちろん、ＰＣ１３０を接続し、そのＰＣ１３０からの操作でミキサを制御することは可能である（後述する実行モード）。
【００１４】
図２（ａ）は、ミキサ制御プログラム１３１によりＰＣ１３０上でＣＦデータ１３２を作成編集しているときの画面（コンフィグレーション画面と呼ぶ）例２００を示す。２１１は入力コンポーネント、２１２はＣコンポーネントUser All Mix、２１３はＰコンポーネントMatrix #1、２１４は出力コンポーネントを示す。Ｐコンポーネントは、コンフィグレーションを構成する基本単位部品ブロックであり、例えば、ミキサ、コンプレッサ、エフェクト、クロスオーバなどのオーディオプロセッサや、フェーダ、スイッチ、パン、メータなどの個々のパーツのコンポーネントが用意されている。Ｃ（カスタム）コンポーネントは、ユーザが作成編集したコンポーネントであり、複数のＰコンポーネントあるいはＣコンポーネントから構成される。ユーザは、所定の操作で、選択可能な複数のＰコンポーネントまたはＣコンポーネントから任意にコンポーネントを選択し、図２（ａ）のように画面上に配置することができる。またユーザは、所定の操作により、各コンポーネントの端子間に結線（例えば２２１）を引くことができる。結線を引くことは、コンポーネント間の信号の入出力関係を定義することに相当する。このようにして完成したＣＦデータ１３２は、ハードディスクなどに保存することができ、またコンパイル（ＣＦデータをエンジン１００が解釈できる情報に変換すること）した後、ＰＣ１３０からＰＣ  Ｉ／Ｏ１０４を介してエンジン１００側に転送することができる。メモリカードなどの着脱可能な記憶媒体によりエンジン１００側に読み取らせてもよい。
【００１５】
ミキサ制御プログラム１３１は、操作モードとして編集モードと実行モードを有する。所定の操作により、編集モードと実行モードとを切り換えることができる。編集モードは、ＣＦデータを作成編集するモードである。実行モードは、ＰＣ１３０のミキサ制御プログラム１３１からエンジン１００をリアルタイムに制御するモードである。例えば、コンフィグレーション画面上に表示されたミキサ構成中にフェーダを備えたコンポーネントが存在する場合、実行モードでは、そのフェーダをマウスを用いて操作するとその操作はリアルタイムにエンジン１００に反映される。実行モードでは、コンポーネントの構成と結線は変更できない。実行モードは、ＰＣ１３０側でカレントメモリに呼び出されているコンフィグレーション（コンフィグレーション画面に表示されている）とエンジン１００側でカレントメモリに呼び出されているコンフィグレーションとが一致しているときのみ選択できる。
【００１６】
図２（ｂ）は、Ｐコンポーネントのパラメータ設定画面の例を示す。図２（ａ）のコンフィグレーション画面で任意のＰコンポーネントをダブルクリックすることにより当該Ｐコンポーネントのパラメータ設定画面が開く。パラメータ設定画面により、そのＰコンポーネントの各種のパラメータ項目の値（数値だけでなくオン／オフなども含む）を設定できる。図２（ｂ）では一例として、ＨＰＦ（ハイパスフィルタ）のＰコンポーネントのパラメータ設定画面を図示した。Ｐコンポーネントの種類が異なれば、そのコンポーネントで設定可能なパラメータ項目も異なるので、パラメータ設定画面はＰコンポーネントの種類毎にある。パラメータ設定画面でＰコンポーネントのパラメータ値を変更すると、実行モードのときは、その変更がリアルタイムにエンジン１００に反映され、編集モードのときは、オフライン編集（エンジン１００には反映されず、ＰＣ１３０内のデータのみ変更される）となる。各パラメータ項目の現在設定値をカレント値と呼ぶ。新たにＰコンポーネントを選択してコンフィグレーション画面に配置したときには、そのコンポーネントのカレント値としてデフォルト値が設定されるものとする。
【００１７】
図２（ａ）のコンフィグレーション画面でＣコンポーネントをダブルクリックすることにより当該Ｃコンポーネントの作成編集画面が開く。図３に、図２（ａ）のＣコンポーネント２１２をダブルクリックしたときに表示されるＣコンポーネント作成編集画面の例３００を示す。ユーザは、この画面３００で、図２（ａ）でミキサ構成を作成編集するのと同様にして、Ｃコンポーネントを作成編集することができる。作成編集したＣコンポーネントは、任意に名前をつけて、Ｃコンポーネント（ＰＣ上での実体は後述するＣＣデータである）として保存することができる。保存したＣコンポーネントは、図２（ａ）のコンフィグレーション画面や図３のＣコンポーネント作成編集画面で呼び出して利用できる。Ｃコンポーネントの構成要素として、自分自身以外の他のＣコンポーネントを利用することもできる。図３中、３１１はＣコンポーネントの構成要素として利用している別のＣコンポーネントの例である。これ以降の図は省略するが、Ｃコンポーネント３１１をダブルクリックすることにより、このＣコンポーネントの作成編集画面が表示され任意にカスタマイズすることができる。
【００１８】
図４（ａ）は、ＰＣ１３０のミキサ制御プログラム１３１が使用するＰコンポーネントデータ（ＰＣデータ）の構成を示す。ＰＣデータは、Ｐコンポーネントを規定する定義データであり、ミキサ制御プログラム１３１がアクセスできる任意の記憶手段に予め格納されている。ＰＣデータは、Ｐコンポーネントの種類毎に用意される。ここでは種類がＮpc個あるものとする。１つのＰＣデータは、ＰＣヘッダ、ＰＣ構成情報、ＰＣ処理ルーチン、表示・編集処理ルーチン、およびライブラリからなる。ＰＣヘッダは、ＰコンポーネントＩＤ（PC_ID）およびＰコンポーネントバージョン（PC_Ver）などからなる。PC_IDとPC_Verにより、ＰＣデータを特定することができる。
【００１９】
ＰＣ構成情報は、そのＰコンポーネントがどのようなエレメントから構成されているかを示す情報であり、そのＰコンポーネントのパラメータ設定画面などの表示データを含む。エレメントは、Ｐコンポーネントを構成する部品（例えば、パラメータ設定画面の構成要素）に相当する。具体的には、ＰＣ構成情報は、エレメントの順番（エレメントの有無も含む）や、当該エレメントのパラメータが、単一の値、１次元配列、２次元配列のどのデータ形式であるかの情報を含む。ただし、エレメントのデータ形式が１次元配列や２次元配列である場合、その要素数は含まない。要素数は、ＣＦデータの構成要素としてＰコンポーネントが利用される際に、そのＰＣデータのプロパティで決定されるものである。ＰＣ処理ルーチンは、ＰＣ構成情報に関する各種の処理を行なうためのプログラムである。ミキサ制御プログラム１３１がＣＦデータを処理する際には、コンポーネント毎のＰＣ処理ルーチンを利用する。表示・編集処理ルーチンは、ＣＦデータを作成編集する際に用いるプログラム群である。ライブラリについては、後述する。
【００２０】
図４（ｂ）は、ＰＣ１３０のミキサ制御プログラム１３１が使用するＣコンポーネントデータ（ＣＣデータ）の構成を示す。ＣＣデータは、Ｃコンポーネントを規定する定義データである。１つのＣＣデータは、ＣＣヘッダ、ＰＣ用ＣＡＤデータ、およびライブラリからなる。ＣＣヘッダは、ＣコンポーネントＩＤ（CC_ID）、Ｃコンポーネントバージョン（CC_Ver）、およびシステムバージョン（SYS_Ver）などからなる。CC_IDとCC_Verにより、ＣＣデータを特定することができる。
【００２１】
ＰＣ用ＣＡＤデータは、当該Ｃコンポーネントがどのようなコンポーネントをどのように結線して構成したものかを定義するデータである。ＰＣ用ＣＡＤデータは、当該Ｃコンポーネントの構成要素として使用するＰコンポーネントやＣコンポーネントを指定するデータであるＣデータ、およびそれらのコンポーネント間を結ぶ結線データからなる。Ｃコンポーネントの構成要素として自分以外の他のＣコンポーネントを利用することができるので、ＣＣデータ中のＰＣ用ＣＡＤデータの中に、他のＣＣデータを指定するＣデータを含めることができる。例えば図４（ｂ）のＣＣデータ２のＰＣ用ＣＡＤデータにおいて、ＣデータＤＡとＣデータＤＢはそれぞれＰＣデータＤＡとＰＣデータＤＢを指定するＣデータであるが、ＣデータＤＣはＣＣデータＤＣを指定するＣデータであるものとする。なお、ＰＣ用ＣＡＤデータの構成は、図４（ｃ）で後述するＣＦデータのＰＣ用ＣＡＤデータと同様であるので、これ以上の説明は省略する。特に、Ｃデータがどのようなデータから構成されるかについては、後述のＣＦデータの説明で代替する。
【００２２】
このようなＣコンポーネントデータは、所定の権限を持つユーザが任意に図３のような画面で作成編集できる。従って、図４（ｂ）に示す各ＣＣデータは、それぞれファイルとして所定の記憶装置に記憶することができる。また、図３に示したようなＣコンポーネント作成編集画面を表示して作成編集する場合、作成編集対象のＣＣデータはカレントメモリ上に展開されるものである。Ｃコンポーネントのカレントメモリ上のデータ構成は、図４（ｃ）や図５（ｃ）で後述するＣＦデータのカレントメモリ上の構成と同様であり、ＣＣヘッダおよびＰＣ用ＣＡＤデータなどがカレントメモリ上に展開されて編集されるものである。従って、ＣＣデータのＰＣ用ＣＡＤデータは、Ｃコンポーネント作成編集画面を表示するための表示データを含む。また、Ｃコンポーネントのカレントメモリ上には、作成編集対象のＣＣデータのパラメータ現在値であるカレントのコンポーネントシーンデータを格納する領域が設けられている。カレントコンポーネントシーンデータの構成は、図５（ａ）で後述するＣＣシーンと同様であり、作成編集対象のＣＣデータに対応するＣＣシーンがＰＣシーンに展開されているものである。
【００２３】
図４（ｃ）は、ＰＣ１３０において、ミキサ制御プログラム１３１によって作成され保存されたＣＦデータの構成を示す。各ＣＦデータ１〜Ｎcfは、それぞれ、１つのミキサ構成を規定するＣＦデータである。各ＣＦデータは、それぞれ１ファイルとして任意の記憶装置（例えば、ＰＣ内のハードディスクなど）に格納できる。ここでは、ＣＦファイル１、ＣＦファイル２、…と並べて図示したが、各ファイルは、ＰＣ１３０上のファイルシステムで独立してコピーや移動ができる単位である。「ＣＦファイル」というときは、ハードディスクなどに保存されたＣＦデータを指すものとする。単に、「ＣＦデータ」と言うときは、どのような形態で記憶されているかを問わず、図示した内容のデータからなる１つのミキサ構成を定義するデータを指すものとする。
【００２４】
図４（ｃ）に示すように、１つのＣＦデータは、ＣＦヘッダ、ＰＣ用ＣＡＤデータ、およびＮs個のシーンデータからなる。ＣＦヘッダは、コンフィグＩＤ（CF_ID）、コンフィグバージョン（CF_Ver）、およびシステムバージョン（SYS_Ver）などからなる。ＰＣ用ＣＡＤデータは、当該ＣＦデータのミキサ構成がどのようなコンポーネントをどのように結線して構成したものかを定義するデータであり、図２（ａ）で説明したコンフィグレーション画面を表示するための表示データを含む。ＰＣ用ＣＡＤデータは、そのコンフィグレーションの構成要素として使用するＰコンポーネントやＣコンポーネントを指定するデータであるＣデータ、およびそれらのコンポーネント間を結ぶ結線データからなる。
【００２５】
Ｃデータは、ＰコンポーネントまたはＣコンポーネントを指定するＩＤとバージョン、ユニークＩＤ（U_ID）、およびその他のデータ（例えば、プロパティなど）などからなる。ＩＤとバージョンは、Ｐコンポーネントを指定する場合はＰコンポーネントＩＤ（PC_ID）とＰコンポーネントバージョン（PC_Ver）であり、Ｃコンポーネントを指定する場合はＣコンポーネントＩＤ（CC_ID）とＣコンポーネントバージョン（CC_Ver）である。なお、これらのＩＤは、それがPC_IDがCC_IDかを区別できるように（例えば、PC_IDとして使用する範囲とCC_IDとして使用する範囲を分ける）構成されているものとする。以下、図４（ｃ）のＣＦデータ２のＰＣ用ＣＡＤデータでは、ＣデータＡ〜Ｃの３つはそれぞれＰＣデータＡ〜Ｃを指定し、ＣデータＤはＣＣデータＤを指定しているものとして説明する。従って、このＣＦデータのミキサ構成は３つのＰコンポーネント、１つのＣコンポーネント、および結線データから構成されている。なお、上述のＣデータの構成は、図４（ｂ）で説明したＣＣデータ中のＣＡＤデータのＣデータでも同様である。図４（ｂ）のＣＣデータのＣコンポーネント構成は、２つのＰコンポーネント、１つのＣコンポーネント、および結線データから構成されている。
【００２６】
図４（ｃ）のＣＦデータ中のシーンデータ（図のシーン１、シーン２、…、シーンＮsの１つ１つがシーンデータである）について説明する。シーンとは、１つのコンフィグレーションを構成するすべてのコンポーネントのパラメータ（図２（ｂ）で説明したパラメータ設定画面でその値を設定する）の組であり、そのデータ構成は、ＰＣ用ＣＡＤデータの各ＣデータのＩＤ（PC_IDまたはCC_ID）とバージョン（PC_VerまたはCC_Ver）で指定された図４（ａ）のＰＣデータまたは図４（ｂ）のＣＣデータ、および、同Ｃデータ中のプロパティに基づいて決められている。シーンデータは、１つのシーンを定義するデータ、すなわち当該コンフィグレーションの各コンポーネントが動作する際に使用する具体的なパラメータ値のデータセットである。ＰＣ１３０側で、現在（ＰＣ１３０内の）カレントメモリ上にあるパラメータ設定画面等の各種画面での編集対象となるシーンデータをカレントシーンと呼ぶ。エンジン１００側も同様に、現在（エンジン１００内の）カレントメモリ上にある信号処理部１００における処理で使用中のシーンデータをカレントシーンと呼ぶ。同じミキサ構成でも、場面に応じてそのミキサ構成におけるパラメータを変更したい場合があるので、１つのＣＦデータ中に複数シーン分のシーンデータを含めることができるようになっている。シーンはシーン番号ｎで特定してシーンｎと呼ぶものとし、図中のシーン１、シーン２、…、シーンＮsのｎ＝１，２，…，Ｎsがシーン番号である。シーンｎへのストア（保存）が指示されたとき、カレントシーンがその指定されたシーンｎのシーンデータ記憶領域へ保存され、シーンｎからのリコール（呼出）が指示されたとき、シーンｎのシーンデータ記憶領域から読み出されたシーンデータがカレントシーンへ呼び出される（書き込まれる）。
【００２７】
シーンデータは、各コンポーネントのパラメータ値を示すコンポーネントシーン（Ｐコンポーネントに対応するコンポーネントシーンをＰＣシーンと呼び、Ｃコンポーネントに対応するコンポーネントシーンをＣＣシーンと呼ぶ）の並びからなる。この並びの順序は、ＰＣ用ＣＡＤデータ中のＣデータの並びと対応している。図では、ＣデータＡで指定されるＰコンポーネントであるＰＣデータＡのパラメータがＰＣシーン３Ａ、ＣデータＢで指定されるＰコンポーネントであるＰＣデータＢのパラメータがＰＣシーン３Ｂ、…、ＣデータＤで指定されるＣコンポーネントであるＣＣデータＤのパラメータがＣＣシーン３Ｄである。カレントメモリに記憶されているカレントシーンや各シーンのシーンデータは、上述したようなＰＣ用ＣＡＤデータで規定されるデータ構成を有している。
【００２８】
図５（ａ）は、図４（ｃ）のシーンデータの詳細な構成を示す。図５（ａ）のコンポーネントシーンは図４（ｃ）のコンポーネントシーンに対応する。１つのＰＣシーンは、それに対応する１つのＰコンポーネントを構成する各エレメントに設定するパラメータの並び（エレメントシーン）からなる。エレメントシーンの並びは、そのＰコンポーネントのＰＣ構成情報（図４（ａ））が示すエレメントの並びに対応するものとなっている。例えば図５（ａ）のエレメントシーンＥ３Ｂ１は、ＰＣシーン３ＢのＰコンポーネントを構成する第１番目のエレメントのパラメータを示す。ここではＰＣシーン３Ｂのコンポーネントは４つのエレメントからなるので、エレメントシーンも４つある。各エレメントシーンは、単一の値、１次元配列、または２次元配列の何れかのデータ形式を取る。例えば、エレメントシーンＥ３Ｂ１やＥ３Ｂ４は単一のパラメータ値からなるエレメントシーンである。Ｅ３Ｂ２は、要素数が８の１次元配列からなる。Ｅ３Ｂ３は、２次元配列のデータ形式を持つエレメントシーンである。
【００２９】
１つのエレメントシーンは、そのデータ形式に応じた幾つかのパラメータ値（パラメータシーン）からなる。同種のＰコンポーネントであれば、それらのＰコンポーネントのエレメント構成（順序も含める）は常に同じであり、従って、それらＰコンポーネントに対応するＰＣシーン内のエレメントシーンの並びの順序も同じである。ただし、同種のＰコンポーネントでも設定されたパラメータに応じてエレメントシーンの１次元配列または２次元配列の要素数は変化するので、エレメントシーンのデータ長が変わることはある。エレメントシーンが１次元配列または２次元配列である場合の要素数は、そのエレメントを含むコンポーネントを指定するＣデータのプロパティ（図４（ｃ））に格納されている。
【００３０】
１つのＣＣシーンは、それに対応するＣコンポーネントを構成する各コンポーネントのコンポーネントシーンの並びからなる。その並びは、そのＣコンポーネントのＰＣ用ＣＡＤデータ（図４（ｂ））が示すコンポーネントの並びに対応するものとなっている。例えば図５（ａ）のＣＣシーン３Ｄは、図４（ｃ）のＣデータＤで指定するＣコンポーネントである図４（ｂ）のＣＣデータ２のコンポーネントシーンデータであるが、そのＣＣデータ２はＣデータＤＡで指定するＰＣデータＤＡ、ＣデータＤＢで指定するＰＣデータＤＢ、およびＣデータＤＣで指定するＣＣデータＤＣの並びから構成されている（図４（ｂ））ので、ＣＣシーン３Ｄは、それらに対応してＰＣシーン３ＤＡ、ＰＣシーン３ＤＢ、およびＣＣシーン３ＤＣから構成されていることになる。ＣＣシーン３ＤＣについても同様にして、対応するＣＣデータのＰＣ用ＣＡＤデータで定義されているコンポーネントデータに対応するコンポーネントシーンの並びから構成されている。
【００３１】
結果として、図５（ａ）で示されるコンポーネントシーンの並び（すなわち１つのシーンデータ）は、実際は図５（ｂ）に示すように個別のＰＣシーンの並びである。要するに、この並びの順番は、（１）一番上位のＣＦデータのＰＣ用ＣＡＤデータのＣデータの並びからＰコンポーネントおよびＣコンポーネントの並び順を取得し、（２）その中のＣコンポーネントの部分については、そのＣデータで指定されるＣＣデータのＰＣ用ＣＡＤデータを参照して同様にＰコンポーネントおよびＣコンポーネントの並び順を取得し、（３）さらにその中にＣコンポーネントがある場合は（２）の処理を繰り返す、という処理により決定されるものである。
【００３２】
また、上述したようなＣＣシーンのデータ構成は、対応するＣコンポーネントを規定するＣＣデータのＣＡＤデータ中の各ＣデータのＩＤ（PC_IDまたはCC_ID）とバージョン（PC_VerまたはCC_Ver）で指定されたＰＣデータまたはＣＣデータ、および、同Ｃデータ中のプロパティに基づいて決められている。Ｃコンポーネントがネストする場合、ネストした下位のＣＣシーンの部分のデータ構成は、同様にして決められる。
【００３３】
図５（ｃ）は、ＰＣ１３０のミキサ制御プログラム１３１により処理される対象のＣＦデータのＲＡＭ上での構成を示す。ＰＣ１３０のＲＡＭ上に設けられたカレントメモリには、ＣＦデータの全体（すなわち、ＣＦヘッダとＰＣ用ＣＡＤデータと複数のシーンデータ）を格納する領域、現在設定中のシーンデータであるカレントシーンを格納する領域、およびエンジン用ＣＡＤデータ形成バッファが設けられている。カレントメモリ上のＰＣ用ＣＡＤデータに基づいて、図２（ａ）のようなコンフィグレーション画面が表示される。コンフィグレーション画面上で行なわれた編集は、カレントメモリ上のＰＣ用ＣＡＤデータに反映される。カレントシーンは、表示されているコンフィグレーションの各コンポーネントのパラメータ現在値（カレント値）を表す。パラメータ設定画面によりコンポーネントのパラメータに対して行なわれた編集はカレントシーンに反映される。カレントシーンの構成は、図５（ａ）および（ｂ）で説明したのと同様であり、最下位のＰＣシーンの並びに展開されている。ただし、ミキサ制御プログラム１３１は、４０１〜４０３に示すような階層構造は認識しているものである。エンジン用ＣＡＤデータ形成バッファは、ＣＦデータをコンパイルしたとき、ＰＣ用ＣＡＤデータからエンジン用ＣＡＤデータを生成するバッファである。図３の画面で作成編集されるＣＣデータのＲＡＭ上の構成も同様である。ＣＦヘッダをＣＣヘッダとし、シーン１，２，…とエンジン用ＣＡＤデータ形成バッファを無くせばよい。
【００３４】
次に、ライブラリについて説明する。ライブラリとは、各コンポーネントのパラメータ設定を予め幾つかのパターンで格納したものである。例えば図４（ａ）のＰＣデータ２では、ライブラリとして設定データ１，２，…が格納されている。Ｐコンポーネントをコンフィグレーション画面（図２（ａ））やＣコンポーネント作成編集画面（図３）に呼び出して構成要素として使用するとき、そのＰコンポーネントのＰＣデータのライブラリ中の任意の設定データを読み出して、一括してパラメータ設定することができる。
【００３５】
ライブラリ中の１つの設定データは、そのコンポーネントのパラメータ値のデータセットである点はコンポーネントシーンと同様であるので、その構成も図５（ａ）で説明したコンポーネントシーンと同様のものである。ただし、コンポーネントシーンは１次元または２次元配列のエレメントシーンを含む場合の要素数が既に決定されている（図４（ｃ）のＰＣ用ＣＡＤデータのＣデータのプロパティに要素数が記載されている）ので各パラメータの値そのものだけで構成されているが、ライブラリの各設定データは各パラメータの値に加えて上記要素数のデータを含む。図４（ａ）のＰＣデータのＰＣ構成情報は要素数を含まず、該ＰＣデータがコンフィグレーション画面（図２（ａ））やＣコンポーネント作成編集画面（図３）で構成要素として呼び出されたときに要素数が決まるものである（初期値は例えば設定データ１で規定する要素数とすればよい）。
【００３６】
Ｃコンポーネントについても同様のライブラリが持てる。ただし、Ｃコンポーネントのライブラリの各設定データは、そのＣコンポーネントの構成要素であるＰＣデータやＣＣデータのそれぞれの設定データの並びである。ＣＣデータがネストする場合は、ネストした部分が個別のＰコンポーネントの設定データに展開される。例えば、図４（ｂ）のＣＣデータ２のライブラリの各設定データは、ＣデータＤＡで指定されるＰＣデータＤＡに対応するパラメータセット、ＣデータＤＢで指定されるＰＣデータＤＢに対応するパラメータセット、およびＣデータＤＣで指定されるＣＣデータＤＣに対応するパラメータセットからなり、そのＣＣデータＤＣに対応するパラメータセットの部分は、それに対応するＣコンポーネントを構成する構成要素毎のパラメータセットに展開されている。結果として、Ｃコンポーネントのライブラリの各設定データは、個別のＰコンポーネント対応のパラメータセット（上述したように各パラメータの値と要素数のデータを含む）の並びとなる。このようなＣコンポーネントのライブラリの各設定データのデータ構成は、対応するＣコンポーネントシーンのデータ構成の決定方法と同様の方法で決定される。すなわち、（１）当該ＣＣデータのＣＡＤデータのＣデータの並びからＰコンポーネントおよびＣコンポーネントの並び順を取得し、（２）その中のＣコンポーネントの部分については、そのＣデータで指定されるＣＣデータのＣＡＤデータを参照して同様にＰコンポーネントおよびＣコンポーネントの並び順を取得し、（３）さらにその中にＣコンポーネントがある場合は（２）の処理を繰り返す、という処理により、各コンポーネントの設定データの並び順が決定される。さらに、各コンポーネントの設定データ内部のデータ構成については、例えば図５（ａ）で説明したようにエレメントシーンの１次元配列または２次元配列の要素数が区々であるので、同じコンポーネントでも設定データの構成が異なる場合がある。そこで、各コンポーネントの設定データ内部のデータ構成を決定するために、対応するコンポーネントを規定するＣデータのプロパティを参照するものとする。
【００３７】
以上のように、ＰＣ１３０のミキサ制御プログラム１３１により、図２（ａ）のような画面上の操作で、図４（ａ）および（ｂ）のコンポーネントデータを使用して、図５（ｃ）のカレントメモリ上にＣＦデータを作成編集し、図４（ｃ）のような構成でＣＦファイルとして保存できる。また図３のような画面上の操作で、図４（ａ）および（ｂ）のコンポーネントデータを使用して、図５（ｃ）と同様の構成のＣコンポーネント作成編集用のカレントメモリ上に、図４（ｂ）の構成のＣＣデータを作成編集し、ファイルとして保存することができる。
【００３８】
図２（ａ）および図３の何れの画面でも、表示されているＰコンポーネントについては、ダブルクリックすることにより図２（ｂ）に示すようなパラメータ設定画面が表示され個々のパラメータ設定を行なうことができる。また、ＰコンポーネントおよびＣコンポーネントの何れに対しても、ライブラリから設定データを読み出して一括してパラメータ設定（カレントシーンへのパラメータの書き込みと、ＰＣ用ＣＡＤデータ内のＰＣデータやＣＣデータのプロパティへの書き込み）を行なうこともできる。操作上は、例えば図２（ａ）や図３の画面でＰまたはＣコンポーネントを１つ選択し、所定の操作でそのコンポーネントのライブラリの中から１つの設定データを読み出したり、いったん図２（ｂ）のようなパラメータ設定画面を表示させこの画面上でライブラリから１つの設定データを読み出して、一括してパラメータ設定を行なうなどの方式を採ればよい。ライブラリから設定データを読み出して一括してパラメータ設定を行なうことを、設定データのライブラリからの「ロード」と呼ぶ。逆にカレントメモリ上のパラメータ設定を、ライブラリの設定データとして一括して保存することもできる。これを、設定データのライブラリへの「セーブ」と呼ぶ。
【００３９】
既に説明したように、ＰＣ１３０側で保存したＣＦファイルは、コンパイルした後、エンジン１００に転送してフラッシュメモリ１０２に格納できる。エンジン１００では、表示器１０７に表示された画面を見ながらパネル上の操作子１０８を操作することにより、フラッシュメモリ１０２に格納されたＣＦファイルを指定してＲＡＭ１０３内のカレントメモリにロードできる。エンジン１００は、カレントメモリ上のＣＦデータで定義されるミキサ構成のミキサとして動作する。
【００４０】
図６（ａ）は、エンジン１００内のフラッシュメモリ１０２に格納されるＣＦデータの一部を示す。フラッシュメモリ１０２に格納されるＣＦデータは、図４（ｃ）に示したＰＣ内のＣＦデータの構成とほとんど同じであるので、図６（ａ）は異なる部分のみを示した。すなわち、エンジン１００側では、図４（ｃ）のＰＣ用ＣＡＤデータの部分が、図６（ａ）のエンジン用ＣＡＤデータに置き換わる。エンジン用ＣＡＤデータは、コンフィグレーション画面で示されるようなミキサ構成を表すデータである点はＰＣ用ＣＡＤデータと同じだが、エンジン内では図２（ａ）の画面におけるコンポーネントや配線の表示位置などのデータは不要であるため、またデータ量を少なくするため、表示データを含まずバイナリ形式で表現されている。さらに、エンジン側ではＣコンポーネントの概念はないので、エンジン用ＣＡＤデータは最下層のＰＣデータをそれぞれ指定するＣデータに展開されている。言い替えると、エンジン用ＣＡＤデータは、ＣＣデータを指定するＣデータを含まず、そのようなＣデータはＰＣデータを指定するＣデータまで展開されると言うことである。この展開は、コンパイルにより行なわれる。例えば、図４（ｃ）のＣＦデータ２をコンパイルすると、そのＰＣ用ＣＡＤデータ中のＣデータＤは、それが指定する図４（ｂ）のＣＣデータ２が参照されて、ＣデータＤＡ、ＣデータＤＢ、およびＣデータＤＣに展開される。さらにこの中のＣデータＤＣはＣＣデータを指定しているので、そのＣＣデータについても同様に展開する。これによりＣＦデータ中のＰＣ用ＣＡＤデータはすべてＰＣデータを指定するＣデータに置き換わる。なお、コンパイル後のエンジン用ＣＡＤデータ中の各Ｃデータは、エンジン１００内のフラッシュメモリ１０２に格納されているＰコンポーネントデータを指定するデータとなる。以上のような処理をコンパイル時に行ない、図５（ｃ）のエンジン用ＣＡＤデータ形成バッファにエンジン用ＣＡＤデータを生成する。ＰＣ１３０側では、図４（ｃ）の形式でＣＦファイルを任意の記憶装置に保存しているが、コンパイル後は、図６（ａ）の形式でやはり任意の記憶装置に保存できる。その図６（ａ）の形式のＣＦファイルをＰＣ１３０からエンジン１００に転送してフラッシュメモリ１０２に格納する。なお、フラッシュメモリ１０２上には、所定のファイルシステム（ＰＣ上のファイルシステムに準拠するものである必要はない）が構築されており、ＣＦデータはＣＦファイルの形で複数格納されている。
【００４１】
図６（ｂ）は、エンジン１００上のＣＦデータのＲＡＭ１０３上での構成を示す。ＲＡＭ１０３上のカレントメモリには、ＣＦデータのうち、ＣＦヘッダとエンジン用ＣＡＤデータを格納する領域、現在設定されているシーンデータであるカレントシーンを格納する領域、およびマイクロプログラム形成バッファが設けられている。カレントメモリにエンジン用ＣＡＤデータが読み込まれたときには、自動的に、当該ＣＡＤデータのミキサ構成を実現するマイクロプログラムがマイクロプログラム形成バッファ上に展開され、そのマイクロプログラムが信号処理部１１０に転送される。これにより、信号処理部１１０のＤＳＰ群はカレントメモリ上のＣＡＤデータのミキサ構成の動作を実現する。ここで、フラッシュメモリからの読み出しはＰＣの記憶装置（ハードディスクなど）からに比べて高速なので、複数のシーンデータについてはカレントメモリに読み込まなくてもシーンリコールの速度は遅くならない。また、エンジン用ＣＡＤデータについても必ずしもカレントメモリに読み込まなくても良く、フラッシュメモリ上のデータを直接利用しても良い。
【００４２】
カレントシーンは、カレントメモリに展開されているエンジン用ＣＡＤデータのミキサ構成の各コンポーネントのパラメータのカレント値である。カレントメモリにカレントシーンが読み込まれたとき、あるいはそのカレントシーンが変更されたときには、自動的に、当該カレントシーンが信号処理部１１０に転送される。信号処理部１１０は、転送されたカレントシーンをＤＳＰ群の係数メモリに展開する。信号処理部１１０のＤＳＰ群は当該係数メモリの係数を使用して上記転送されたマイクロプログラムを実行し、これにより信号処理部１１０は、カレントメモリ上のＣＡＤデータのミキサ構成で、かつカレントシーンのパラメータ値での動作を実現する。エンジン１００上のカレントシーンの構成は、図４や図５で説明したのと同様である。
【００４３】
図６（ｃ）は、フラッシュメモリ１０２に予め格納されているＰコンポーネントデータの構成の一部を示す。このＰコンポーネントデータは、図５（ｃ）に示したＰＣ内でのＰコンポーネントデータの構成とほとんど同じであるので、図６（ｃ）は異なる部分のみを示した。すなわち、エンジン１００側では、図５（ｃ）の表示・編集処理ルーチンとライブラリの部分が、図６（ｃ）のＰＣマイクロプログラムに置き換わる。エンジン１００では、図２（ａ）、（ｂ）に示されるコンフィグレーション画面における各コンポーネントの表示や複数操作子を有するパラメータ設定画面の表示はできないので、その表示・編集のための表示・編集ルーチンは不要である。また、エンジン側ではライブラリを使用しないのでライブラリもない。その代わり、エンジン１００では、エンジン用ＣＡＤデータのミキサ構成に応じたマイクロプログラム（マイクロプログラム形成バッファ上に生成）をＤＳＰ群に送る必要があるため、図６（ｃ）のような各コンポーネント対応のＰＣマイクロプログラムが必要である。また図示しないが、ＰＣ処理ルーチンは、エンジン中で各構成情報を処理するための各種のプログラムであるものとする。なお、各コンポーネントの入出力数はパラメータの設定によって変化するが、コンポーネントデータ中のＰＣマイクロプログラムにはそれらの入出力数のバリエーションが全て格納されているものとする。エンジン側にはＣコンポーネントの概念はないので、フラッシュメモリ１０２には、図４（ｂ）のようなＣコンポーネントデータが格納されていない。
【００４４】
本実施形態のシステムの特徴は、ミキサ制御プログラム１３１でＣコンポーネントを利用する場合に、異なるＣコンポーネント間でコンポーネントシーンやライブラリの設定データを相互利用可能としたことにある。具体的には、所定の条件下で、異なるＣＣデータ間でコンポーネントシーンをやり取りしたり、同様に異なるＣＣデータ間でライブラリの設定データをやり取りすることができる。まずＣＣシーンのやり取りに着目すると、図４および図５から、Ｃコンポーネントに対応するＣＣシーンが存在する場所としては、（ａ）ＰＣ１３０の記憶手段に格納された複数のＣＦファイルの中の複数のシーンデータ、（ｂ）ＰＣ１３０のカレントメモリのカレントシーンおよび複数のシーンデータ、の２つあるから、原理的にはＣＣシーンのやり取りは（ａ）および（ｂ）のうちの任意の２つ（同じもの同士を含む）の間で行なわれることになる。ただし、ＰＣ１３０の記憶装置に格納されたＣＦファイルは、そのままではデータのやり取りを行うのに時間がかかるので、データのやり取りを行うのに先立って、やり取りを行うＣＦファイルをＰＣ１３０のＲＡＭ上のコピー用メモリにＣＦデータとして読み出し、そのＲＡＭ上のＣＦデータによってデータのやり取りを行い、やり取りが終了したら再び元の記憶装置ないしフラッシュメモリに書き戻す。本実施形態では、それをＣＦファイルのデータのやり取りと表現する。さらに別のＰＣ上でミキサ制御プログラムが動作している場合、一方のＰＣの支配下にあるＣＦデータのＣＣシーンを、他方のＰＣに移すケースもある。このようなＣＣシーンをやり取りするどのような場面でも、上述の本実施形態の特徴が有効である。Ｃコンポーネントのライブラリの設定データのやり取りについても同様である。Ｃコンポーネントのライブラリの設定データは図４（ｂ）のＣコンポーネントデータ中に存在し、その設定データをカレントメモリに読み出してＣコンポーネントのパラメータ設定を行なったり、逆にカレントメモリのパラメータ設定をＣコンポーネントのライブラリの設定データに書き込むことができるが、この際、異なるＣコンポーネント間でも所定の条件下でそのような設定データのやり取りが可能である。
【００４５】
上記ＣＣシーンのやり取りの典型的な例としては、以下のようなケースがある。
（１）ＰＣ１３０において、１つのＣＦファイル中の１つのシーンデータの１つのＣＣシーンと、カレントシーンの１つのＣＣシーンとを指定して、指定されたＣＦファイル中のＣＣシーンを、指定されたカレントシーンのＣＣシーンに読み込むとき。これはＣＣシーンのリコールである。
（２）ＰＣ１３０において、カレントシーンの１つのＣＣシーンと、１つのＣＦファイルの１つのシーンデータの１つのＣＣシーンを指定して、指定されたカレントシーンのＣＣシーンを、指定されたＣＦファイル中のＣＣシーンに書き出すとき。これはＣＣシーンのストアである。
（３）読み出し元の１つのＣＦファイルないしＣＦデータの１つのシーンの１つのＣＣシーンと、書き込み先の１つのＣＦファイルないしＣＦデータの１つのシーンの１つのＣＣシーンとを指定し、読み出し元として指定されたＣＣシーンの記憶領域から書き込み先として指定されたＣＣシーンの記憶領域へＣＣシーンのコピーを行なうとき。
【００４６】
また、上記Ｃコンポーネントのライブラリの設定データのやり取りの典型的な例としては、以下のようなケースがある。
（１）ＰＣ１３０において、図４（ｂ）の１つのＣＣデータ中のライブラリの１つの設定データと、カレントメモリの１つのＣコンポーネントとを指定して、指定されたライブラリの設定データを、指定されたカレントメモリのＣコンポーネントの設定として読み込むとき。これはライブラリの設定データのロードである。
（２）ＰＣ１３０において、カレントメモリの１つのＣコンポーネントと、図４（ｂ）の１つのＣＣデータ中のライブラリの１つの設定データとを指定して、指定されたカレントメモリのＣコンポーネントの設定を、指定されたＣＣデータ中のライブラリの設定データに書き出すとき。これはライブラリの設定データのセーブである。
（３）読み出し元の１つのＣＣデータ中のライブラリの１つの設定データと、書き込み先の１つのＣＣデータ中のライブラリの１つの設定データとを指定し、読み出し元として指定されたライブラリの設定データの記憶領域から書き込み先として指定されたライブラリの設定データの記憶領域へ設定データのコピーを行なうとき。
【００４７】
なお、リコール、ストア、およびコピーという言葉は一般的にはデータの内容の変更を伴わずにデータをやり取りするものであるが、本実施形態においてＣＣシーンのリコール、ストア、およびコピーというときは、一般的には当該シーンデータの内容が変更されるものである。シーンデータはＣコンポーネントに付随するデータであるので、読み出し元のＣＣシーンに対応するＣコンポーネントの構成と書き込み先のＣＣシーンに対応するＣコンポーネントの構成とが異なる場合、ＣＣシーンの構造も異なることになるからである。ライブラリの設定データに対するロードやセーブの言葉についても同様である。
【００４８】
上述したように、本実施形態においては異なるＣコンポーネント間でコンポーネントシーンやライブラリの設定データをやり取りできるが、これは各ＣコンポーネントにCC_IDが付与されていることによる。すなわち、本発明では、各Ｃコンポーネントに対してそのデータ互換性を示すCC_IDが付与されており、そのCC_IDによってＣＣシーン間のデータ互換性がチェックされる。すなわち、CC_IDが同じであるということは、そのコンポーネントシーン間にデータ互換性があるということを意味する。また、Ｃコンポーネントのライブラリについても、そのライブラリに対応するＣＣデータにはCC_IDが付与されているので、そのCC_IDによってライブラリの設定データをやり取りする際の互換性がチェックできる。
【００４９】
同じCC_IDのＣコンポーネントの間でＣＣシーンがデータ互換できるようにするため、また、同じCC_IDのＣコンポーネントの間でライブラリの設定データがデータ互換できるようにするため、本実施形態では、Ｃコンポーネントの構成要素にU_ID（ユニークＩＤ）を付与するようにした。以下、このことについて説明する。
【００５０】
CC_IDは、ＣＣ（カスタムコンポーネント）データを特定するＩＤである（ファイル形態かカレントメモリ上かを問わない）。CC_Verは、初期値が例えば1.00で、その後ＣＣデータを編集したときにカウントアップされていくバージョンを示す。任意のＣＣデータをカレントメモリ上に開いて編集した後、保存（別ファイル名または上書き保存のどちらでもよい）すると、CC_IDは同じでCC_VerがカウントアップされたCCヘッダが付く。ＰＣ１３０上でＣＣデータを新規作成した場合、当該新規作成したＣＣデータには新たなCC_IDおよび初期値のCC_Verが付けられる。ＰＣ１３０では、次に付ける最新のCC_IDの値を管理しているものとする。なお、CC_IDは、ＣＣデータを作成したＰＣなどの機器のＩＤを含ませることにより、偶然に一致したCC_IDが付与されることを防止する。また、業者が作成編集するＣＣデータに付けるCC_IDと、エンドユーザが作成編集するＣＣデータに付けるCC_IDとで、重ならないように範囲を分けるものとし、業者の管理下にあるＣＣデータの範囲内、あるいは各エンドユーザの管理下にあるＣＣデータの範囲内では、それぞれ上記の方式でCC_IDとCC_Verを付けていくものとする。以上のようにＩＤとバージョンを付けることにより、同じCC_IDを持つ別々のＣＣデータは、そのＣＣデータに至る編集の経過をさかのぼれば同じCC_IDでCC_Verが初期値のＣＣデータに行き着くはずである。同じCC_IDを持つＣＣデータは、同じ「系列」に属すると言うものとする。
【００５１】
PC_ID（ＰコンポーネントＩＤ）は、図４（ａ）で説明した各ＰＣデータを特定するＩＤである。PC_Ver（Ｐコンポーネントバージョン）は、そのＰＣデータのバージョンを示す。ＣＣデータ中のＣＡＤデータの各Ｃデータでは、PC_IDとPC_VerでＰコンポーネントを指定し、CC_IDとCC_VerでＣコンポーネントを指定する。
【００５２】
U_ID（ユニークＩＤ）は、ＣＣデータの構成を順次編集していく際に、その系列内においてそのＣＣデータの構成要素であるＰまたはＣコンポーネントを特定するためのＩＤである。例えば、Ｃコンポーネント作成編集画面上でＣＣデータを新規作成する場合、ＰまたはＣコンポーネントを画面上に読み出して結線していくが、その際、追加したコンポーネントを指定するＣデータをＣＡＤデータに新規追加する毎に新たなU_IDの値がそのＣデータに付けられる。Ｃデータを削除したときは、そのＣデータのU_IDの値は空きとなり、当該ＣＣデータの系列内ではU_IDとして使われることはない。空きのU_IDの値があったとしても、それ以後新規に追加されるＣデータに対しては新たなU_IDの値が付けられる。これにより、ＣＣデータが編集されていきＣデータの追加や削除がなされ、その編集の途中の任意の段階でＣＣデータが保存されたとしても、その系列内において、U_IDの値が一致するＣデータは同じＣデータであると判別できる。なお、ここで「同じＣデータ」というのは「全く同じデータ」を意味しない。U_IDの値が一致したとしても、別々のＣＣデータ内の２つのＣデータということであるから、各ＣＣデータ内でそれぞれパラメータ編集されれば、データとしては異なることがある。ただし、同じ種類のＣデータであって、対応するコンポーネントシーンの構造が同じ（エレメントシーンの配列要素数を除く）であることは保証される。
【００５３】
図７は、ＣＣデータを編集していくときのＩＤやバージョンの付け方およびＣＣシーンデータの構成の例を示す図である。７０１は図３のようなＣコンポーネント作成編集画面で初めに新規作成したＣコンポーネントのＰＣ用ＣＡＤデータを示す。新規作成なので、新たなCC_ID＝XXが付けられ、CC_Ver＝1.00（初期値）になっている。このＣＡＤデータは、イコライザＥＱ７１１およびダイナミックスＤＹＮ７１２の２つのＰコンポーネントから成る。各Ｐコンポーネントを示すブロック内に記載された括弧内の３つの数値は、先頭からPC_ID、PC_Ver、およびU_IDを示す。ＥＱ７１１はU_ID＝１、ＤＹＮ７１２はU_ID＝２である。
【００５４】
７０２は、ＣＣデータ７０１を元にして新たなＰコンポーネントであるクロスオーバーX_OVER７２３を追加し、結線し、その後、別名のＣＣデータとして保存したものである。ＣＣデータ７０２の保存時には、ＣＣデータ７０１と同じCC_ID＝XXが付けられ、バージョンはカウントアップされてCC_Ver＝1.01になっている。追加されたX_OVER７２３はU_ID＝３となる。ここまでで本系列内ではU_ID＝２まで使用しているからである。７０３は、ＣＣデータ７０２を元にしてＥＱ７２１を削除し、その後、別名のＣＣデータとして保存したものである。ＣＣデータ７０３の保存時には、ＣＣデータ７０１，７０２と同じCC_ID＝XXが付けられ、バージョンはカウントアップされてCC_Ver＝1.02になっている。もしＣＣデータ７０３の状態からコンポーネントを追加するとU_ID＝４となる。ここまでで本系列内ではU_ID＝３まで使用しているからである。削除されたU_ID＝１は空きとなるが、以後のこの系列のＣＣデータの編集においてU_ID＝１が使われることはない。
【００５５】
７４１は、ＣＣデータ７０１のＣコンポーネントに対して作成された１つのＣＣシーン（既に、あるＣＦデータのシーンデータに含まれるＣＣシーンとして保存されているものとする）を示す。ＣＣデータ７０１の２つのＰコンポーネントの並びに応じて、ＥＱ７１１に対応するＰＣシーン７５１とＤＹＮ７１２に対応するＰＣシーン７５２が並べられている。
【００５６】
７４２は、ＣＣデータ７０２に対応するＣＣシーンを示す。ＣＣシーン７４２の編集において、ＣＣデータ７０１のＣＣシーン７４１を指定してリコールを指示したとき、ＣＣシーン７４１のＰＣシーン７５１，７５２が、それぞれ、ＣＣシーン７４２のＰＣシーン７６１，７６２にコピーされる。このリコールは、ＣＣデータ７０１とＣＣデータ７０２との間であるので、異Ｃコンポーネント間リコールである。異Ｃコンポーネント間リコールの場合、一般的にはＣコンポーネントの構成が異なるので、その相違に基づきＣＣシーンの構造も異なることになる。従って、例えばＰＣシーン７５１を読み出してきても、そのＰＣシーンを、ＣＣシーン７４２のどこに書き込めばよいかは一般的には分からない。しかし、本実施形態のミキサのシステムでは、ＣＡＤデータが編集され別名で保存されてもCC_IDは同じものが付され、また同じ系列内のＣＣデータであればU_IDによりその構成要素の各コンポーネントの対応が取れる。従って、リコール元とリコール先のＣＣデータのCC_IDが一致していることを確認した後、例えばＣＣシーン７４１から読み出してきたＰＣシーン７５１については、当該ＰＣシーン７５１に対応するＰコンポーネントであるＥＱ７１１のU_IDが１であることを求め、ＣＣデータ７０２からU_IDが１であるＰコンポーネントがＥＱ７２１であることを求め、当該ＥＱ７２１に対応するＰＣシーンの格納位置が７６１であることを求め、その位置７６１にＰＣシーン７５１をコピーする。ＣＣシーン７４１をＣＣシーン７４２にリコールしたとき、ＣＣシーン７４２のＰＣシーン７６３については、リコール元に対応するＰＣシーンが無いのでそのままとする。
【００５７】
ＣＣデータ７０３のＣＣシーン７４３の編集において、ＣＣデータ７０２のＣＣシーン７４２を指定してリコールを指示したときも上記と同様である。ＣＣシーン７４２のＰＣシーン７６２，７６３が、それぞれ、ＣＣシーン７４３のＰＣシーン７７２，７７３にコピーされる。リコールの処理シーケンスは、ＣＣシーン７４２のＰＣシーン７６１についてもコピーしようとするが、このＰＣシーンに対応するＰコンポーネントのU_IDは１であり、一方リコール先のＣＣデータ７０３にはU_ID＝１のコンポーネントは無いので、ＰＣシーン７６１はコピーされない。以上のようにして、異Ｃコンポーネント間リコールが実現される。
【００５８】
図７では、Ｃコンポーネントの構成要素がすべてＰコンポーネントである場合を例としたが、Ｃコンポーネントの構成要素として他のＣコンポーネントを利用する場合（Ｃコンポーネントをネストする場合）も同様である。例えば、ＥＱ７１１をＣコンポーネントに置き換えた場合は、対応するシーンデータをＣＣシーンとすればよい。Ｃコンポーネントに対しても上述のU_IDが（そのＣコンポーネントを指定するＣデータに）付与されて管理されるので、系列内で同じＣコンポーネントであることが確認でき、当該ＣコンポーネントのＣＣシーンについて同じ考え方で処理できる。
【００５９】
また、図７では、ＣＣシーンのやり取りを例としたが、ライブラリの設定データのやり取りについても同様である。Ｃコンポーネントのライブラリの設定データのやり取りの典型的な例として、上述の（１）〜（３）のようなケースがあるが、何れのケースでも、異Ｃコンポーネント間でCC_IDの一致が確認された場合には、ライブラリの設定データがやり取りできる。例えば、７４１がＣＣデータ７０１のライブラリの１つの設定データであるとすると、ＰＣシーン７５１，７５２はそれぞれそれぞれ各Ｐコンポーネント７１１，７１２に対応する設定データと読み替える。７４２をカレントメモリ上のＣＣデータ７０２のＣコンポーネントのカレントシーンとすると、Ｃコンポーネントのライブラリの設定データ７４１をカレントのＣコンポーネント７０２のカレントコンポーネントシーンとしてロードするとき、上記コンポーネントシーンデータのリコールと同様にして、各Ｐコンポーネントの設定データ７５１，７５２とカレントのコンポーネントシーンとの対応が分かるので、ロードすることができる。７４２をＣＣデータ７０２のＣコンポーネントのライブラリの１つの設定データとしたときも同様である。
【００６０】
図８は、エレメントシーンの書き込み処理の例を示す。図７で説明したように、本実施形態のミキサのシステムでは、異Ｃコンポーネント間でも、CC_IDが一致する場合には、それらのＣコンポーネントを構成する各コンポーネントのU_IDによりＰＣシーンやＣＣシーンの対応がとれる。同じU_IDのＰまたはＣコンポーネントは同じPC_IDまたはCC_IDが付与されているので基本的には相互にパラメータの互換性があるのであるが、その２つのコンポーネントでPC_VerやCC_Verが異なっていたり、端子数等のコンポーネント規模を示すプロパティ情報が異なっている場合がある。そのため、例えば図７のＣＣデータ７０１のＰＣシーン７５１をＣＣデータ７０２のＰＣシーン７６１にコピーする場合、その２つのＰＣシーン７５１とＰＣシーン７６１では、その構造、すなわちエレメントシーンの並びの順序と形式（単一値か一次元配列か二次元配列か）については一致するが、その一部のエレメントシーンについて、何れかの一方にだけ存在していたり、配列要素数が異なっている可能性がある。ＰＣシーンの各エレメントの有無は各ＰコンポーネントのＰＣ構成情報により制御され、ＰＣシーンの各エレメントの要素数はＣＡＤデータの対応するＣデータのプロパティ情報により制御される。要素数が変更されている場合、パラメータシーンの書き込みのルールを決めておく必要がある。
【００６１】
図８（ａ）は、エレメントシーンが単一の値から成る場合である。８０１は書き込むデータEx、８０２は書き込み先のデータEoを示す。エレメントシーンの書き込み処理により、８０３に示すように、書き込み先のデータがExに書き替わる。
【００６２】
図８（ｂ）は、エレメントシーンのデータ形式が一次元配列の場合である。８１１は書き込むエレメントシーンのデータを示す。このデータの要素数は４である。書き込み先のエレメントシーン８１２の要素数が６のとき、書き込み処理により、８１３に示すように書き込み先のエレメントシーンの先頭から４番目の要素までが書き込むデータE[1]xからE[4]xに書き替わる。元からあるE[5]oとE[6]oは変化しない。一方、書き込み先のエレメントシーン８１４の要素数が２のときは、８１５に示すように２つの要素が書き替わり、E[3]xとE[4]xは無視される。
【００６３】
図８（ｃ）は、エレメントシーンのデータ形式が二次元配列の場合である。書き込むエレメントシーンのデータ８２１は、行要素数が４、列要素数が３の形式である。書き込み先のエレメントシーン８２２は、行要素数が６、列要素数が２である。書き込み処理により、８２３に示すように、重なる部分のみが書き替えられ、その他は無視される。
【００６４】
以上のように、エレメントシーンが配列であるときは、書き込み元と書き込み先とで、要素の添字が一致する要素は書き替え、書き込み元のみに存在する添字の要素は無視し、書き込み先のみに存在する添字の要素はそのままとされる。
【００６５】
以上をまとめると、まずＣコンポーネントに対応するＣＣシーンのやり取り（リコール、ストア、コピー）の際の処理の基本は以下のようなものである。
（１）呼び出し元のＣＣシーンに対応するＣＣデータを取得し、そのＣＣデータのＣＡＤデータのＣデータの並び順を取得する。その並び順が、呼び出し元のＣＣシーンを構成するコンポーネントシーンの並び順となる。
（２）各コンポーネントシーンのデータ構造は、そのコンポーネントがＰコンポーネントである場合は、そのＰコンポーネントのＰＣデータのＰＣ構成情報、およびそのコンポーネントシーンに対応するＰコンポーネントを指定するＣデータのプロパティを参照して決定する。
（３）ＣＣデータがネストしている場合は、当該ＣＣデータについて同様にして、対応するＣＣシーンのデータ構造を決定する。
【００６６】
以上により、読み出し元のＣＣシーンのデータ構造が取得できる。書き込み先のＣＣシーンについても同様にしてデータ構造を取得する。その後は、図７および図８で説明したように、CC_IDが一致していることを確認し、U_IDが一致するコンポーネントを確認して、対応するコンポーネント同士でコンポーネントシーンをやり取りする。以上のような処理の基本は、Ｃコンポーネントのライブラリの設定データのやり取りでも同様である。本実施形態のミキサ制御プログラムでは、上記処理時（あるいは処理に先立って）には、カレントアクセスルーチン、シーンアクセスルーチン、およびライブラリアクセスルーチンを構築し、これにより上記処理の基本を実現する。各ルーチンについては、図１０〜図１２で詳しく説明する。
【００６７】
図９（ａ）は、コンパイル時の処理の概要を示す。９０１は、コンパイル前のＣＡＤデータを示し、これはカレントメモリ上のＣＦデータのＰＣ用ＣＡＤデータに相当する。コンパイル処理では、ステップ９０２で、ＣＡＤデータ９０１を入力し、当該ＣＡＤデータにＣＣデータが含まれるときには、Ｃコンポーネントデータ９０３（図４（ｂ））を参照してそのＣＣデータ部分をＰＣデータに展開する。ＣＣデータがネストしているときはさらにそのネスト部分も展開する。次にステップ９０４で、不要データ（例えば表示用データなど）を除去しエンジンに転送できる形式とするためパッキングする。以上によりコンパイル済みのＣＡＤデータ９０５が生成される。
【００６８】
図９（ｂ）は、図９（ａ）で説明したコンパイル処理の詳細を示す。ステップ９１１で、コンパイル対象のＣＡＤデータを読み込むなどの準備処理を行なう。次に、ＣＡＤデータに含まれるコンポーネントのコンパイル処理を行なう。まずステップ９１２で、ＣＡＤデータの最初のコンポーネントを準備する。ステップ９１３で、準備したコンポーネントがＣコンポーネントか否か判定する。Ｐコンポーネントの場合は、ステップ９１４で、該Ｐコンポーネントの不要データを除去しパッキングし、ステップ９１７に進む。Ｃコンポーネントの場合は、ステップ９１５で、該ＣコンポーネントのＣＡＤデータを準備する。これは、該Ｃコンポーネントを特定するCC_IDによりＣコンポーネントのデータを探索する処理である。見つからないときは警告表示を行なう。ステップ９１６では、ステップ９１５で読み出したＣＡＤデータに含まれるコンポーネントのコンパイル処理を行なう。これは図９（ｂ）の処理を再帰的に行なうものである。次にステップ９１７で、次のコンポーネントを準備し、ステップ９１８で次のコンポーネントがないときはステップ９１９に進み、結線の不要データを除去しパッキングして処理を終了する。次のコンポーネントがあるときは、ステップ９１８から９１３に戻って処理を継続する。
【００６９】
図１０（ａ）は、ミキサ制御プログラム１３１においてカレントシーンメモリまたはシーンメモリ（ファイルの形式で保存されているシーンデータでもよいし、ＲＡＭ上のワーク領域に読み出したシーンデータでもよい）上のシーンデータをアクセスするための準備処理を示す。この処理は、例えば、Ｃコンポーネントを構成要素として含むミキサ構成が何らかの処理の対象として選択されたときなどに実行される。１００１は、選択されたミキサ構成（ＣＦデータ）のコンパイル前のＣＡＤデータを示す。ステップ１００２で、そのＣＡＤデータ１００１を読み込み、Ｃコンポーネントが含まれていたら、ＣＣデータのＣＡＤデータ（図４（ｂ））１００３を参照して当該Ｃコンポーネントの部分を展開する。展開とは、Ｃコンポーネントをその構成要素のＰコンポーネントに展開するということであり、Ｃコンポーネントがネストしている場合は展開を繰り返し、最終的に最下位のＰコンポーネントの構成を取得する処理である。次にステップ１００４で、ＰＣデータ１００５（図４（ａ））を参照して、カレントアクセスルーチン、シーンアクセスルーチン、およびライブラリアクセスルーチンなどの制御ルーチンを構築する。
【００７０】
シーンデータのデータ構造は、そのシーンデータに対応するミキサ構成を上述したように展開し、各ＰＣデータの構成情報やミキサ構成に含まれるプロパティ情報を参照して決定する。そのように決定したデータ構造に応じたアクセス機能を提供するため、上述の各種ルーチンを構築するものである。構築後は、これらのルーチンを用いて、処理対象のミキサ構成に付随するシーンデータをアクセスできる。シーンデータは、最大の単位は１つのシーンを規定するシーンデータ（すなわち図４（ｃ）のＣＦデータに含まれる１つのシーンデータ）であり、その単位でのシーンデータをアクセスするルーチンが構築されることはもちろん、その下位階層のコンポーネントシーン単位、エレメントシーン単位、およびパラメータ単位の各アクセス機能も提供される。特に、処理対象がＣＣシーンであっても、当該ＣコンポーネントのＣＣシーンのデータ構造を把握し、そのデータ構造に沿ったアクセスルーチンが構築されるので、当該アクセスルーチンを用いることによりＣＣシーンのリコール、ストア、およびコピーを容易に行なうことができる。
【００７１】
図１０（ｂ）は、ミキサエンジンでのカレントシーンメモリまたはシーンメモリの準備処理を示す。１０１１は、処理対象のミキサ構成のコンパイル後のＣＡＤデータを示す。ステップ１０１２で、当該ＣＡＤデータ１０１１を読み込み、Ｐコンポーネントデータ（図６（ｃ））１０１３を参照して、カレントアクセスルーチンやシーンアクセスルーチンなどの制御ルーチンを構築する。エンジン側にはＣコンポーネントの概念がないので、Ｃコンポーネントの展開は不要である。
【００７２】
図１１は、シーンメモリのストア／リコールの概念図である。図の左側のミキサ制御プログラム側では、ストアやリコールの対象となるカレントメモリ上のシーンデータ１１１２をアクセスする機能を提供するカレントアクセスルーチン１１１１、および同様にストアやリコールの対象となるシーンメモリ１１１５上のシーンデータ１１１４にアクセスする機能を提供するシーンアクセスルーチン１１１３が、上記図１０（ａ）の処理により構築されている。これらのルーチン１１１１，１１１３は、ＣＦデータのＣＡＤデータ１１２１、ＣＣデータのＣＡＤデータ１１２２、およびＰＣデータ１１２３に基づいて決定されたデータ構造のシーンデータをアクセスする機能を提供する。発行されたストア命令やリコール命令の指示に応じて、これらのアクセスルーチンを利用してシーンデータをやり取りできる。ここではシーンデータ単位で図示したが、シーンデータ１１１２，１１１４がＣＣシーンであっても同様であり、上述の処理の基本を遵守し図７や図８で説明したデータの読み出しと書き込みが実現できる。
【００７３】
図１１の右側のエンジン側では、ストアやリコールの対象となるカレントメモリ上のシーンデータ１１３２をアクセスする機能を提供するカレントアクセスルーチン１１３１、および同様にストアやリコールの対象となるシーンメモリ１１３５上のシーンデータ１１３４にアクセスする機能を提供するシーンアクセスルーチン１１３３が、上記図１０（ｂ）の処理により構築されている。これらのルーチン１１３１，１１３３は、ＣＦデータのＣＡＤデータ１１４１、およびＰＣデータ１１４３に基づいて決定されたデータ構造のシーンデータをアクセスする機能を提供する。発行されたストア命令やリコール命令の指示に応じて、これらのアクセスルーチンを利用してシーンデータをやり取りできる。
【００７４】
図１２は、Ｃコンポーネントの設定データのライブラリへのセーブ／ライブラリからのロードの概念図である。図の左側のミキサ制御プログラム側では、図１１で説明したのと同様のカレントアクセスルーチン１２１１、およびロードやセーブの対象となるライブラリ１２１６上の設定データ１２１４にアクセスする機能を提供するライブラリアクセスルーチン１２１３が、上記図１０（ａ）の処理により構築されている。カレントアクセスルーチン１２１１は、ＣＦデータのＣＡＤデータ１２２１、ＣＣデータのＣＡＤデータ１２２２、およびＰＣデータ１２２３に基づいて決定されたデータ構造のカレントメモリ１２１５上のＣＣシーン１２１２をアクセスする機能を提供する。ライブラリアクセスルーチン１２１３は、ＣＣデータのＣＡＤデータ１２２２およびＰＣデータ１２２３に基づいて決定されたデータ構造の設定データ１２１４をアクセスする機能を提供する。発行されたロード命令やセーブ命令の指示に応じて、これらのアクセスルーチンを利用して、Ｃコンポーネント単位で設定データをやり取りできる。これにより、上述の処理の基本を遵守し、図７や図８で説明したデータの読み出しと書き込みが実現できる。
【００７５】
図１２の右側のエンジン側では、カレントメモリ１２３２をアクセスする機能を提供するカレントアクセスルーチン１２３１が準備されている。カレントアクセスルーチン１２３１は、ＣＦデータのＣＡＤデータ１２４１やＰＣデータ１２４３に基づいて決定されたデータ構造のカレントメモリ上のＰＣシーンをアクセスする機能を提供する。エンジン側にはライブラリの概念がない。実行モードの場合、ミキサ制御プログラム側でＣコンポーネントの設定データのロードが実行されると、そのＣコンポーネントを構成するＰコンポーネントのそれぞれに対応する設定データのロード命令がエンジン側に送られ、エンジン側ではそれぞれのＰコンポーネントに対応する設定データのカレントメモリへのロードを行なう。１２５１，１２５２，１２５３はそれぞれがＰコンポーネントに対応する設定データであり、カレントアクセスルーチン１２３１により、Ｐコンポーネント単位でカレントメモリ１２３２上の対応するＰＣシーン１２６１，１２６２，１２６３の位置に設定される。
【図面の簡単な説明】
【００７６】
【図１】この発明の一実施形態であるディジタルミキサのエンジンの構成図
【図２】コンフィグレーション画面とパラメータ設定画面の例を示す図
【図３】Ｃコンポーネント作成編集画面の例を示す図
【図４】ＰＣ上の各種データ（その１）の構成図
【図５】ＰＣ上の各種データ（その２）の構成図
【図６】エンジン上のＣＦデータ（一部）などの構成図
【図７】ＣＣデータを編集していくときのＩＤやバージョンの付け方およびシーンデータや設定データの構成の例を示す図
【図８】エレメントシーンの書き込み処理の例を示す図
【図９】コンパイル時処理のフローチャート図
【図１０】準備処理のフローチャート図
【図１１】シーンメモリのストア／リコールの概念図
【図１２】Ｃコンポーネントの設定データのライブラリへのセーブ／ライブラリからのロードの概念図
【符号の説明】
【００７７】
１００…エンジン、１０１…ＣＰＵ、１０２…フラッシュメモリ、１０３…ＲＡＭ、１０４…ＰＣ  Ｉ／Ｏ、１０５…ＭＩＤＩ  Ｉ／Ｏ、１０６…その他Ｉ／Ｏ、１０７…表示器、１０８…操作子、１０９…波形Ｉ／Ｏ、１１０…信号処理部（ＤＳＰ群）、１１１…カスケードＩ／Ｏ、１２０…システムバス、１３０…パーソナルコンピュータ（ＰＣ）、１３１…ミキサ制御プログラム、１３２…コンフィグ（ＣＦ）データ。
【図１】
2005252643.tif 000003
【図２】
2005252643.tif 000004
【図３】
2005252643.tif 000005
【図４】
2005252643.tif 000006
【図５】
2005252643.tif 000007
【図６】
2005252643.tif 000008
【図７】
2005252643.tif 000009
【図８】
2005252643.tif 000010
【図９】
2005252643.tif 000011
【図１０】
2005252643.tif 000012
【図１１】
2005252643.tif 000013
【図１２】
2005252643.tif 000014