(58)【調査した分野】(Int.Cl.,DB名)
処理内容をプログラム可能な第1の音響信号処理部を有する音響信号処理装置に実行させる音響信号処理内容を、それぞれ入力端子又は出力端子を有する複数の信号処理コンポーネントと、該信号処理コンポーネントの出力端子と入力端子との間を結ぶ結線とに基づいて規定し、該信号処理コンポーネント及び結線からなる音響信号処理の構成を規定するコンフィグデータを、グラフィック表示の表示画面において受け付けた指示に従って編集する第1の編集手段を備えた編集装置であって、
前記表示画面に配置可能な信号処理コンポーネントを規定するデータとして、前記第1の音響信号処理部に実行させる音響信号処理内容を示す内部コンポーネントを規定するデータに加え、前記第1の音響信号処理部とは異なる第2の音響信号処理部に実行させる音響信号処理内容を示すプラグインコンポーネントを規定するデータを記憶する第1の記憶手段を備え、
前記第1の編集手段が編集する音響信号処理の構成には、前記第1の音響信号処理部への音響信号の入力を示す入力コンポーネントと、前記第1の音響信号処理部からの音響信号の出力を示す出力コンポーネントとが含まれ、
さらに、
ユーザの指示に応じて、前記音響信号処理の構成に前記プラグインコンポーネントを追加するプラグインコンポーネント追加手段と、
前記プラグインコンポーネント追加手段によるプラグインコンポーネントの追加があった場合に、該追加されたプラグインコンポーネントが有する入力端子の数だけ前記出力コンポーネントの入力端子を予約し、該追加されたプラグインコンポーネントが有する出力端子の数だけ前記入力コンポーネントの出力端子を予約し、それぞれ前記表示画面上で結線を接続できない状態とする端子予約手段と、
前記表示画面上の前記入力コンポーネント又は出力コンポーネントのうち前記端子予約手段が予約した端子を、該端子が使用不可である旨を示す態様で表示する表示制御手段とを備えたことを特徴とする編集装置。
【発明を実施するための形態】
【0017】
以下、この発明を実施するための形態を図面に基づいて具体的に説明する。
まず、
図1に、この発明を適用するミキサシステムの構成を示す。
図1(a)に示すミキサシステム1は、音響信号処理装置であるミキサエンジン10と、PC20とを備える。
【0018】
PC20は、ハードウェアとしては、CPU,ROM,RAM等及び表示手段としてディスプレイを有する公知のPCであり、WindowsXP(登録商標)などのオペレーティングシステム(OS)が動作するPCを用いることができる。そして、そのOS上のアプリケーションプログラムとして、ミキサエンジン10に実行させる音響信号処理の構成を編集するための編集アプリケーションプログラム(以下単に「編集プログラム」という)を実行させることにより、編集装置として機能させることができる。
【0019】
また、音響信号処理機能を実現するためのプラグインアプリケーションプログラム(以下単に「プラグイン」という)を実行させることにより、ミキサエンジン10と連携して音響信号処理を行う音響信号処理装置として機能させることができる。このプラグインとしては、例えばVST(Virtual Studio Technology)規格に従ったプラグインが考えられる。
【0020】
また、ミキサエンジン10とPC20とは、PC20において編集した信号処理構成のデータや、信号処理に使用するパラメータのデータ、PC20が受け付けた操作イベントのデータ等、音響信号以外のデータを転送するためのUSB(Universal Serial Bus)やイーサネット(登録商標)等による伝送経路40により接続される。
【0021】
また、ミキサエンジン10とPC20とは、オーディオI/F30を介して、各々音響信号である複数チャンネル(ch)のデジタル波形データを送受信可能としている。
ミキサエンジン10とオーディオI/F30との間の信号伝送は、一方の出力端子と他方の入力端子とをオーディオケーブルにより接続し、ケーブル毎に一方通行で行う。また、オーディオI/F30とPC20との間は、USB、イーサネット、IEEE(Institute of Electrical and Electronics Engineers)1394等によるデータ伝送が可能なように接続され、このデータ伝送経路により、複数ch分の音響信号を時分割で双方向に伝送する。
【0022】
なお、(b)に示すように、オーディオI/F30はPC20に内蔵されていても構わない。また、ミキサエンジン10がこのような時分割のデータ伝送による出力に対応していれば、オーディオI/F30を設けず、PC20と直接波形データを送受信するようにしてもよい。この場合、伝送経路40と波形データの伝送経路とを区別することは必要ない。
【0023】
次に、
図2に、ミキサエンジン10のハードウェア構成を示す。
図2に示すように、ミキサエンジン10は、CPU101,ROM102,RAM103,表示I/F104,検出I/F105,通信I/F106,DSP(Digital Signal Processor)110,エフェクタ111を備え、これらが通信バス115によって接続されている。また、表示I/F104には表示部107が、検出I/F105には操作子108が、通信I/F106には通信入出力部(I/O)109がそれぞれ接続されている。さらに、AD変換部112,DA変換部113,DD変換部114も備え、これらは音声バス116によりDSP110及びエフェクタ111と接続されている。
そして、PC20から受信した信号処理構成のデータに従って、DSP110を制御するためのマイクロプログラムを生成し、そのマイクロプログラムに従ってDSP110を動作させ、入力する音響信号に対して種々の信号処理を施して出力する機能を有する。
【0024】
CPU101は、ミキサエンジン10の動作を統括制御する制御手段であり、ROM102に記憶された所定のプログラムを実行することにより、各I/F104〜106を介した表示部107の表示、操作子108における操作の検出、通信I/O109による通信等を制御したり、DSP110における信号処理を制御したりといった処理を行う。
ROM102は、CPU101が実行する制御プログラム等を記憶する書き換え可能な不揮発性記憶手段である。フラッシュメモリ等を用いることできる。
【0025】
RAM103は、PC20から受信した信号処理構成のデータを始めとする種々のデータを記憶させたり、CPU101のワークメモリとして使用したりする記憶手段である。
表示I/F104は、表示部107を通信バス115に接続してCPU101からの指示に従ってその表示内容を制御するためのインタフェースである。表示部107は、液晶ディスプレイ(LCD)等によって構成される表示手段である。そして、ミキサエンジン10の現在の状態を示す画面、信号処理に用いるパラメータの参照,変更,保存等を行うための画面等を表示する。
【0026】
検出I/F105は、操作子108を通信バス115に接続してCPU101からの指示に従ってその操作内容を検出するためのインタフェースである。操作子108は、キー、スイッチ、ロータリーエンコーダ等によって構成され、ユーザがミキサエンジン10を直接操作してパラメータの編集等を行うための操作子である。
【0027】
通信I/F106は、通信I/O109を通信バス115に接続してCPU101からの指示に従って通信I/O109を通したデータ送受信を制御するためのインタフェースである。通信I/O109は、
図1(a)に示した伝送経路40を介した通信を行うための入出力部である。
【0028】
DSP110は、信号処理回路を含み、入力する音響信号に対し、設定されているマイクロプログラム及びその処理パラメータに従った信号処理を施す信号処理手段である。エフェクタ111は、入力する音響信号に対し、リバーブやコーラスを始めとする種々のエフェクト付与を行って出力する機能を有する。これらのDSP110とエフェクタ111が、第1の音響信号処理部であり、PC20は、DSP110だけでなくエフェクタ111を用いた信号処理の構成も、プラグインと無関係に、ミキサエンジン10に実行させる音響信号処理の構成として編集することができる。
【0029】
AD変換部112は、複数の入力端子から入力するアナログ音響信号をそれぞれデジタル波形データに変換して音声バス116に供給する信号入力手段である。DA変換部113は、音声バス116から取得した複数chのデジタル波形データをそれぞれアナログ音響信号に変換して、該波形データと対応付けられた出力端子から出力する信号出力手段である。DD変換部114は、デジタル波形データのフォーマットを変換する機能を有し、外部から入力するデジタル波形データは、音声バス116での伝送に適した形式に、音声バス116から取得したデジタル波形データは、外部への出力に適した形式に変換してデジタル波形データの入出力を行う信号入出力手段である。
【0030】
また、音声バス116は、時分割でデジタル波形データを複数ch伝送可能であり、各chは音声バス116に接続されているいずれかのプロセッサ(エフェクタを含む)又は変換部の出力から他のプロセッサ又は変換部の入力へと信号を伝える信号伝送路として機能する。
【0031】
次に、PC20における信号処理構成の編集方式について説明する。
図3は、PC20のディスプレイに表示させる信号処理構成の編集画面の例を示す図である。
ユーザがPC20に上記の編集プログラムを実行させると、PC20はディスプレイに
図3に示すようなコンフィグ編集画面200を表示させ、ユーザからの編集指示を受け付ける。そして、コンフィグ編集画面200は、CAD(Computer Aided Design)画面210を含み、CAD画面210においては、編集中の信号処理構成を、その構成要素であるSlot
Input, GEQ#1,Delay#1,Slot Output等のコンポーネント(A)と、コンポーネントの出力端子(B)と入力端子(C)とを結ぶ結線(D)とによってグラフィカルに表示している。
【0032】
なお、コンポーネントの左側に示した端子が入力端子、右側に示した端子が出力端子である。そして、外部からミキサエンジン10への入力を示す入力コンポーネントSlot Inputは出力端子のみを有し、ミキサエンジン10から外部への出力を示す出力コンポーネントSlot Outputは入力端子のみを有し、それ以外のコンポーネントは全て入力端子と出力端子の両方を有する。
【0033】
ユーザは、この画面において、マウス等のポインティングデバイスを用いて不図示のポインタを移動させ、クリックやドラッグ等して、コンポーネント選択画面220にツリー表示されたコンポーネントの中から信号処理構成に加えたいコンポーネントを選択して画面上に配置し、配置された複数のコンポーネントの任意の出力端子と任意の入力端子との間の結線を設定することにより、信号処理構成を編集することができる。
【0034】
なお、コンポーネントとしては、ミキサエンジン10に実行させる信号処理を示す内部コンポーネントと、後述するようにPC20(ミキサエンジン10からみれば外部の装置)がプラグインの機能により実行する信号処理を示すプラグインコンポーネントとが用意される。
図3の例では、符号221で示すのがプラグインコンポーネントであり、他は全て内部コンポーネントである。
そして、編集した結果は、不図示のメニューから「保存」を実行指示することによりコンフィグレーション(コンフィグ)として保存することができ、さらに「コンパイル」を実行指示することによりコンフィグデータの一部のデータ形式をミキサエンジン用のデータ形式に変換した上でミキサエンジン10に転送して記憶させることもできる。
【0035】
また、信号処理構成に含まれる各内部コンポーネントについて、そのコンポーネントが信号処理構成に新規に配置されコンパイルされた段階で、そのコンポーネントに係る信号処理に用いる動作パラメータ(例えばミキサであれば各入力のレベル等)を記憶するための記憶領域が用意されると共にその動作パラメータとして所定の初期値が与えられる。
【0036】
そして、その後ユーザが各内部コンポーネントについて設けたパラメータ制御パネルを操作することにより、そのパラメータ記憶領域に記憶された動作パラメータを編集することができる。また、ここで編集した結果のパラメータは、コンフィグレーション内のライブラリに複数セット記憶しておき、コンフィグレーションに従ってミキサエンジン10に信号処理を行わせる際に任意に呼び出して信号処理に反映させることができる。
【0037】
プラグインコンポーネントについては、動作パラメータの管理はプラグインの機能により行うため、編集プログラムが管理することはない。プラグインコンポーネントの動作パラメータを編集したい場合、プラグインを呼び出して実行し、プラグインが提供するパラメータ制御パネルを用いて編集することができる。
【0038】
次に、以上のような編集装置としてのPC20が用いる、この発明に関連するデータの構成について説明する。
図4及び
図5に、編集装置としてのPC20が使用するデータの構成を示す。
PC20は、OS上で上記の編集プログラムを実行すると、その編集プログラムによって規定されるメモリ空間に、
図4及び
図5に示す各データを記憶させる。
【0039】
このうち、
図4(a)に示すプリセットコンポーネントデータは、信号処理を編集する際に用いることができるコンポーネントのデータのセットである。このデータは、
図3のコンポーネント選択画面220に列挙するコンポーネントの候補を規定するデータであり、上述のように、内部コンポーネントを規定するデータ(PC用プリセットコンポーネントデータ#1〜#Npc)と、プラグインコンポーネントを規定するデータ(プラグインコンポーネントデータ#1〜#Npn)とがある。どちらも、データ1つで1種類のコンポーネントを規定するものである。
【0040】
これらのうち、PC用プリセットコンポーネントデータについては、ユーザがカスタマイズできるようにしてもよいが、基本的にはメーカーが供給するものである。そして、データセット全体としてのバージョン管理を行うためのプリセットコンポーネントセットバージョンのデータを含む。
【0041】
各PC用プリセットコンポーネントデータは、コンポーネントの性質や機能を示す情報であり、コンポーネントを識別するためのプリセットコンポーネントヘッダ、コンポーネントの入力や出力およびコンポーネントが扱うデータや動作パラメータの構成を示す構成情報、ユーザの数値入力操作に応じて上述した各コンポーネントの個別の動作パラメータの値を変更する処理を行うためのパラメータ処理ルーチン、各コンポーネントの動作パラメータを表示用のテキストデータや特性グラフに変換するための表示・編集用処理ルーチンとを含む。
【0042】
そして、プリセットコンポーネントヘッダには、プリセットコンポーネントの種類を示すプリセットコンポーネントID及びそのバージョンを示すプリセットコンポーネントバージョンの情報を含み、これらによってプリセットコンポーネントを特定することができる。
【0043】
また、上記の構成情報には、コンポーネントの入出力の構成を示す入出力構成情報やコンポーネントが扱うデータやパラメータの構成を示すデータ構成情報の他、編集画面にコンポーネント自身を表示する際の色や形状及びそのコンポーネントの動作パラメータを編集するためにディスプレイに表示する制御パネルのデザインや制御パネル上のつまみや特性グラフの配置を示すPC用表示データ等も含む。
【0044】
一方、各プラグインコンポーネントデータは、プラグインが提供する信号処理機能とミキサエンジン10が提供する信号処理機能とを連結するためのインタフェースを規定するデータと、プラグインコンポーネントそのものをCAD画面210に表示させるためのデータとにより構成される。
【0045】
まず、コンポーネントIDは、各プラグインコンポーネントデータを相互に区別するための識別情報である。また、構成情報としては、入出力端子数及びPC用表示データが含まれる。入出力端子数は、プラグインコンポーネントが外部(ここではミキサエンジン10)から処理対象の音響信号の入力を受け付けるための入力端子数及び、プラグインコンポーネントが処理後の音響信号を外部へ出力するための出力端子数である。
【0046】
プラグインコンポーネントの信号処理機能をミキサエンジン10の信号処理機能と連携させるためには、ミキサエンジン10からPC20へ、プラグインに処理させるべき音響信号を転送する必要があるので、プラグインコンポーネントがCAD画面210に配置された場合、この入力端子数の情報に基づき、ミキサエンジン10から各入力端子へ入力すべき音響信号を出力するための出力端子を予約する。より具体的には、その出力端子と対応する出力コンポーネントの入力端子を予約する。このことにより、信号処理構成の編集段階において、ミキサエンジン10からPC20へプラグインに処理させるべき音響信号の伝送路を確保することができる。
【0047】
同様に、プラグインが処理した音響信号をミキサエンジン10へ戻すためには、プラグインコンポーネントの出力端子数の情報に基づき、各出力端子から出力される音響信号をミキサエンジン10へ入力するための入力端子を、すなわちその入力端子と対応する入力コンポーネントの出力端子を予約する。このことにより、同様に、プラグインでの処理後、後段の処理を行うべき音響信号をPC20からミキサエンジン10へ戻すための伝送路を確保することができる。
また、PC用表示データについては、PC用プリセットコンポーネントデータの場合と概ね同様であるが、パラメータ編集のための制御パネルは、プラグインが提供するため、不要である。
【0048】
また、プラグイン呼び出しコマンドは、プラグインコンポーネントが示す信号処理機能を提供するプラグインを呼び出すためのコマンドである。プラグインを呼び出す用途としては、プラグインコンポーネントが示す信号処理で用いるパラメータの編集や、プラグインの機能が許す場合(プラグインが、CAD画面210を用いた信号処理構成の編集と同様な編集機能を提供している場合)には、プラグインコンポーネントが示す信号処理の構成自体の編集が考えられる。また、編集した信号処理構成に係る信号処理を実行する際に、実際にプラグインに信号処理を実行させることも考えられる。プラグイン呼び出しコマンドとしては、これらの用途に十分なだけの数と種類のコマンドのデータを用意しておく。
【0049】
以上のようなプラグインコンポーネントデータは、編集プログラムの提供者が、利用される可能性のあるプラグインを想定して予め用意しておくこともできる。しかし、編集プログラムの機能により、随時PC20にインストールされているプラグインを検出して、又はユーザからのプラグインの指定に応じて、自動的に生成できるようにすることが好ましい。各プラグインに、当該プラグインが提供する可能性のある入出力端子数の情報や、当該プラグインの必要な機能を呼び出すためのコマンドの情報を、プラグインの規格において定義されている所定の照会コマンド等に応じて提供する機能を設けておけば、編集プログラムは、この機能を利用して各プラグインから必要な情報を収集し、プラグインコンポーネントを自動的に生成することができる。
【0050】
一方、
図5に示すゾーンデータは、管理データと、1又は複数のPC用コンフィグデータと、その他のデータを含む。ユーザは、このゾーンデータ全体を1つのファイルとしてハードディスクに記憶するよう指示したり、逆に、ハードディスクからRAMへ読み出すよう指示することができる。
このようなゾーンデータのうち、管理データは、ゾーンデータ中に含まれるコンフィグデータの数を示すコンフィグ数等の情報を含む。
【0051】
またコンフィグデータは、ユーザが編集した信号処理構成の内容を示すデータであり、ユーザが編集結果の保存を選択した場合、その時点での信号処理構成の内容が1つのPC用コンフィグデータとして保存される。そして、各PC用コンフィグデータは、コンフィグ管理データと、PC用CADデータとライブラリとを有する。
【0052】
これらの各データのうち、コンフィグ管理データは、コンフィグデータを新規に保存する場合にユニークにつけるコンフィグID、ライブラリ中のプリセット動作データの数を示す動作データ数等の情報を含む。
また、各PC用CADデータは、編集された信号処理構成の内容を示す構成データである。そして、CAD管理データと、編集された信号処理構成に含まれる各コンポーネントについてのコンポーネントデータと、それらのコンポーネント間の結線状態を示す結線データとを含む。なお、コンポーネントデータは、該当するコンポーネントが内部コンポーネントかプラグインコンポーネントかによらず用意し、編集された信号処理構成に同じ種類のコンポーネントが複数含まれる場合には、それら各々に対して別々のコンポーネントデータを用意する。
【0053】
また、CAD管理データは、PC用CADデータ中のコンポーネントデータ及び結線の数を示す、コンポーネント数及び結線数のデータを含む。
そして、各コンポーネントデータは、そのコンポーネントがどのプリセットコンポーネント又はプラグインコンポーネントに該当するかを示すコンポーネントID、そのコンポーネントが含まれるコンフィグにおいてそのコンポーネントにユニークに付したIDであるユニークID、そのコンポーネントの入力端子や出力端子の数の情報等を含むプロパティデータ、およびCAD画面210で該当するコンポーネントが配置されている位置等を示すPC用表示データを含む。なお、コンポーネントデータに、プリセットコンポーネントを特定するための情報として、コンポーネントバージョンの情報も含めるようにしてもよい。
【0054】
また、結線データには、編集された信号処理構成に含まれる複数の結線のそれぞれについて、どのコンポーネントのどの出力端子からどのコンポーネントのどの入力端子へ結線が行われているかを示す接続データ、およびPC20側の編集画面におけるその結線の形状や配置を示すPC用表示データを含む。ただし、少なくともプラグインコンポーネントが関わる結線については、接続データとして、実際の音響信号の伝送経路を規定する処理用接続データと、CAD画面210における結線の接続状態を規定する表示用接続データの2つを設けている。これは、プラグインコンポーネントが関わる結線については、後述のように、CAD画面210上でユーザが指示した結線と、それに応じて実際に行う信号処理における伝送経路とが異なるためである。
【0055】
一方、ライブラリは、対応するPC用CADデータが示す音響信号処理をミキサエンジンに実行させる際に使用するパラメータの値のセットであるプリセット動作データの集合である。プリセット動作データの数は任意であり、0でもよい。
各プリセット動作データは、ミキサエンジン10で実行する処理の各コンポーネントに対応するパラメータの値の集合であるコンポーネントパラメータを含む。そして、この各コンポーネントパラメータにおけるデータの形式や配列は、PC用CADデータに含まれるそのコンポーネントのコンポーネントIDで特定されるプリセットコンポーネントの、PC用プリセットコンポーネントデータ中のデータ構成情報と、PC用CADデータに含まれるそのコンポーネントのプロパティデータとによって定義される。なお、プラグインコンポーネントと対応する信号処理で用いるパラメータは、このプリセット動作データには含まれない。
【0056】
また、PC20は、
図4(b)に示すように、現在有効なコンフィグにおける現在有効なパラメータの値を示すカレントデータも記憶している。そして、コントロール画面やユーザ制御画面上の操作子等により信号処理構成中のコンポーネントに関するパラメータの値を設定する際には、カレントデータ中でそのパラメータの値を変更する。そしてその結果は、現在有効なコンフィグと対応するプリセット動作データとして保存することができる。
【0057】
また、PC20には、
図4(c)に示すように、上述した「コンパイル」の処理でコンフィグデータをミキサエンジン10に転送する際に、PC用CADデータからミキサエンジン10での処理に適した形式のエンジン転送用CADデータを形成するためのバッファも用意している。なお、各ミキサエンジンに転送するためのエンジン転送用CADデータは、PC用CADデータから、上述したコンポーネントや結線のPC用表示データのような、ミキサエンジン10側では使用しないデータを削除し、さらにデータ間の不使用部分を詰めてパッキングすることにより形成される。
【0058】
次に、以上説明してきたPC20の編集プログラムの機能によるプラグインコンポーネントを用いた信号処理構成の編集及びその際にPC20が実行する処理について、具体例を用いてより詳細に説明する。
図6は、ここで説明に用いる信号処理構成の具体例を示す機能ブロック図である。
ここでは、
図6に示すように、マイク等の音源51からミキサエンジン10へAD変換部112を介して入力する音響信号に対し、ミキサエンジン10側でDSP110により実現されるイコライザ52と、PC20側でプラグインにより実現されるイコライザ53によりそれぞれ周波数特性調整を行い、これらの調整後の音響信号をミキサエンジン10側でDSP110により実現されるミキサ54によりミキシングして、ミキサエンジン10のDA変換部113による出力55からアンプ等へ出力する信号処理の構成を、上述したコンフィグ編集画面200により編集することを考える。
【0059】
ここで、イコライザ53以外の構成要素は、全てミキサエンジン10側の信号処理であるから、その構成は、
図3を用いて説明したように、コンポーネント選択画面220から適当なコンポーネント(ここではイコライザGEQ#1及びミキサMixer#1)を選択してCAD画面210に配置し、端子間の結線を設定することにより、編集することができる。
【0060】
図7に、ここまでの編集を行った状態のコンフィグ編集画面200の例を示す。
次に、イコライザ53と対応する信号処理を編集中の信号処理構成に加えるべく、プラグインコンポーネントをCAD画面210に配置する。ここでは、イコライザ53の機能を提供するプラグインと対応する1入力1出力のプラグインコンポーネントは、符号221で示す位置に予め用意されているとする(このプラグインコンポーネントを示すプラグインコンポーネントデータを、
図4に示したプリセットコンポーネントデータに入れておけばよい)。
この状態でユーザがプラグインコンポーネント221を選択し、CAD画面210への追加を指示すると、コンフィグ編集画面200は
図8に示す状態となる。
【0061】
まず、CAD画面210においては、追加指示に係るプラグインコンポーネント211が配置される。そしてこのとき、PC20は、配置したプラグインコンポーネント211の入力端子に音響信号を供給するために必要な信号伝送経路を確保するため、出力コンポーネント214の入力端子215を、この伝送経路で用いるために予約し、その入力端子が使用できない旨の表示を行う。図ではこれを×印で示しているが、グレーアウト等で表示しても構わないことはもちろんである。
【0062】
またPC20は、同様に、配置したプラグインコンポーネント211の出力端子から出力される音響信号をミキサエンジン10に入力するために必要な信号伝送経路を確保するため、入力コンポーネント212の出力端子213を、この伝送経路で用いるために予約し、その出力端子が使用できない旨の表示を行う。
【0063】
また、この例では、プラグインコンポーネントをCAD画面210に最初に配置した段階では、プラグインが実行する信号処理の構成は、入力及び出力の端子数以外は何も設定されていない。
そこで、PC20は、
図4(a)に示したプラグインコンポーネントデータに含まれるプラグイン呼び出しコマンドを実行することにより、プラグインプログラムを起動し、プラグインが実行する信号処理の構成を編集するためのプラグイン編集画面230及びプラグイン用コンポーネント選択画面240を、コンフィグ編集画面200上に表示させる。プラグイン編集画面230には、初期状態では、プラグインコンポーネント211と対応する1端子の入力コンポーネント231と1端子の出力コンポーネント232のみが配置された状態である。
【0064】
なお、プラグイン編集画面230を初めて表示させる時点あるいはその他の任意の時点で、編集プログラムのプロセスがプラグインのプロセスに適当なコマンドを送信し、予約済の出力コンポーネント214の端子215(と対応するDA変換部113の出力端子)から出力される音響信号をプラグインの入力コンポーネント231に入力し(その結果入力コンポーネント231の出力端子から出力され)、かつ、プラグインの出力コンポーネント232の入力端子に入力されてプラグインから出力される音響信号を、予約済の入力コンポーネント212の端子213(と対応するAD変換部112の入力端子)に入力することを設定させるようにするとよい。
【0065】
ただし、ミキサエンジン10とオーディオI/F30との間が、端子毎にケーブルで接続される場合、ミキサエンジン10の何番目の端子がオーディオI/F30の何番目の端子と接続されるかには、編集プログラムは関知できない。そこで、当初は所定のテンプレートに従った接続を前提に設定を行っておき、その後ユーザが任意に設定を変更できるようにすることが好ましい。
【0066】
ユーザは、以上の画面において、プラグイン用コンポーネント選択画面240から選択したコンポーネントをプラグイン編集画面230上に配置すると共に、端子間の結線を設定することにより、CAD画面210における信号処理構成の編集(ただしプラグインコンポーネントに関する編集の部分を除く)と同様に、プラグインが実行する信号処理の構成を編集することができる。
【0067】
ここでは、
図9に示すように、イコライザ53と対応する信号処理を実行させるためのイコライザコンポーネント233を配置し、入力コンポーネント231及び出力コンポーネント232との間に結線234,235を設定すればよい。
合わせて、ユーザは、CAD画面210における信号処理構成のどの部分の音響信号をプラグインに供給し、プラグインによる処理結果の音響信号をどの部分に入力するのかを設定するために、CAD画面210において、プラグインコンポーネント211に接続する結線を設定する。
【0068】
図9の例では、入力コンポーネント212の一番上の出力端子が、音源51からの信号が供給される端子であるとし、この出力端子からプラグインコンポーネント211の入力端子への結線216を設定する。また、プラグインコンポーネント211による処理後の音響信号をミキサコンポーネント218に入力すべく、プラグインコンポーネント211の出力端子からミキサコンポーネント218の入力端子への結線217を設定する。
【0069】
これらの結線216及び217は、CAD画面210上では、ユーザが設定した通りの経路を接続するように表示される。しかし、
図5の説明で述べた通り、実際の信号伝送経路はこれとは異なる。
プラグインコンポーネント211が示す部分においては、実際には
図10に符号211で示すような信号伝送が行われる。すなわち、CAD画面210上でプラグインコンポーネント211に入力するように表示される音響信号は、実際には出力コンポーネント214に入力されてPC20に伝送され、PC20側でプラグインの入力コンポーネント231、イコライザコンポーネント233、出力コンポーネント232で処理されてミキサエンジン10側の入力コンポーネント212に戻される。そして、CAD画面210上でプラグインコンポーネント211から出力されるように表示される音響信号は、入力コンポーネント212の出力端子から出力されることになる。
【0070】
そこで、PC20は、結線216及び217と対応する結線データとして、表示用接続データに加えて実際の信号伝送経路を示す処理用接続データも作成し、コンパイルの際には、処理用接続データに従った信号処理を行うよう、DSP110に実行させるマイクロプログラムを生成する。
【0071】
なお、処理用接続データに基づいてミキサエンジン10側で実行する信号処理の構成を表示するとすると、CAD画面210の表示は、
図11に示すようになる(プラグインコンポーネント211と対応するミキサエンジン10側の処理は信号伝送のみである)。しかし、ユーザがコンフィグ編集画面200上で行う必要がある編集操作は、
図9の状態で終了である。
【0072】
以上の編集を行った後でユーザがコンパイルを指示した場合、PC20は、編集したPC用CADデータを、エンジン転送用CADデータに変換した上でミキサエンジン10に転送して記憶させる。このとき、プラグインには、プラグイン編集画面230で編集した信号処理構成を示すデータを所定の領域に保存させると共に、ミキサエンジン10からプラグインと共にその信号処理構成のデータを呼び出すためのコマンド、パス、ファイル名等のリンク情報を編集プログラムのプロセスに通知させ、このリンク情報を、プラグインコンポーネント211のコンポーネントデータに追加しておくとよい。
【0073】
このようにすれば、以後は編集プログラムが関与しなくてもミキサエンジン10が独自にプラグインを呼び出してその機能を含む信号処理を実行することが可能である。また、信号処理構成を後日修正したい場合には、プラグイン側の信号処理構成についてもコンパイル時点の構成を出発点に編集を行うことができる。
この実施形態のPC20においては、以上のような編集機能を設けたことにより、ユーザは、プラグインコンポーネントをあたかもミキサエンジン10側の信号処理を示す内部コンポーネントであるかのように認識して信号処理構成を編集することができるので、信号伝送経路が直感的に分かりやすい状態で編集することができる。
【0074】
この場合において、プラグインコンポーネントをCAD画面210に配置した時点でプラグインコンポーネントの利用に係る信号伝送に必要なミキサエンジン10側の入出力端子を予約するようにしているため、その後の編集によって、プラグインコンポーネントの利用に係る信号伝送ができなくなってしまうような事態を防止できる。
また、結線のデータとして、表示用と処理用の2つのデータを用意したことにより、CAD画面210上の結線の表示を、実際の信号伝送とは異なる直感的にわかりやすいものとすることが可能となっている。ただし、処理用の結線データについては、常に保持してなくても、コンパイル時に表示用の結線データに基づき作成するようにすることも考えられる。
【0075】
プラグインコンポーネントを利用しなくても、
図11に示す信号処理構成をCAD画面210上で編集しつつ、これと独立に、プラグインの提供する編集機能を用いてプラグインに実行させる信号処理構成を編集し、さらに、ミキサエンジン10とプラグインとの間の音響信号の受け渡しに関する設定も適切に行えば、
図9と同様な信号処理構成を編集することも可能ではある。しかし、この手法では、設定の操作は、
図7乃至
図9を用いて説明したものと比べ、かなりわかりづらいものとなる。
【0076】
次に、PC20のCPUが
図7乃至
図9を用いて説明した編集手順において編集プログラムを実行することにより行う処理のいくつかを説明する。
まず
図12に、新規のプラグインコンポーネントをCAD画面210に配置する指示がなされた場合の処理を示す。
PC20のCPUは、この指示を検出すると
図12に示す処理を開始し、まず、編集中のコンフィグについてのPC用CADデータに、配置を指示されたプラグインコンポーネントのコンポーネントデータを追加する(S11)。その後、追加したコンポーネントデータに基づきプラグインコンポーネントをCAD画面210上に表示する(S12)。
【0077】
そして、追加したプラグインコンポーネントの各出力端子と対応付けて、入力コンポーネント212の出力端子を予約する(S13)。また、追加したプラグインコンポーネントの各入力端子と対応付けて、出力コンポーネント214の入力端子を予約する(S14)。その後、ステップS13及びS14で予約した端子の表示を、使用できない旨を示す態様に変更して処理を終了する。
以上により、
図8を用いて説明した、プラグインコンポーネントの配置時の動作を実現できる。
【0078】
次に
図13に、プラグインコンポーネントの入力端子に接続する結線の追加が指示された場合の処理を示す。
PC20のCPUは、この指示を検出すると
図13に示す処理を開始し、まず編集中のコンフィグについてのPC用CADデータに結線データを追加する(S21)。そして、追加した結線データ中の表示用接続データとして、追加指示に係る接続相手のコンポーネントの出力端子とプラグインコンポーネントの入力端子との接続を設定する(S22)。
【0079】
また、追加した結線データ中の処理用接続データとして、追加指示に係る接続相手のコンポーネントの出力端子と、追加指示に係るプラグインコンポーネントの入力端子と対応付けて予約した出力コンポーネント214の入力端子との接続を設定する(S23)。その後、ステップS22で設定した表示用接続データに基づき、追加指示に係る結線を表示して(S24)処理を終了する。なお、ステップS24の処理には、結線の折り曲げ位置等を決定してそれを示すPC用表示データを作成する処理も含む。
【0080】
次に
図14に、プラグインコンポーネントの出力端子に接続する結線の追加が指示された場合の処理を示す。
この処理は、概ね
図13に示す処理と同様である。ただし、ステップS32においては、プラグインコンポーネントの出力端子と、追加指示に係る接続相手のコンポーネントの入力端子との接続を設定する。また、ステップS33においては、追加指示に係るプラグインコンポーネントの出力端子と対応付けて予約した入力コンポーネント212の出力端子と、追加指示に係る接続相手のコンポーネントの入力端子との接続を設定する。
以上の
図13及び
図14の処理により、
図9を用いて説明した結線216及び217の追加時の動作を実現できる。
【0081】
以上で実施形態の説明を終了するが、装置の具体的な構成、データ形式、画面の表示内容、処理の具体的な手順等は、以上の実施形態に限定されるものではない。
例えば、プラグインコンポーネントデータとして、プラグインにおいて編集済みの信号処理構成と対応するものを用意するようにすることが考えられる。
この場合、例えば、プラグイン側に、新たに信号処理構成を編集して保存した場合に、その信号処理構成と対応するプラグインコンポーネントデータを作成するよう、編集プログラムに要求する機能、あるいは編集プログラムを起動してプラグインコンポーネントデータを作成させる機能を設けることも考えられる。
【0082】
図15に、プラグインを用いて編集したプラグインの信号処理構成の保存に応じてプラグインコンポーネントデータを生成する場合の、プラグイン及び編集プログラムによる(それを実行するCPUの)処理を示す。
まず、ユーザがプラグインの信号処理構成の保存を指示すると、CPUは、プラグイン側の処理として、編集した信号処理構成を示すデータを所定のフォルダに格納する(S41)。その後、自身のプラグイン名(識別情報)と、格納したデータのファイル名と、編集した信号処理構成において外部に対する信号入出力を行う端子数のデータを作成し(S42)、そのデータを所定の編集プログラム(
図7等を用いて説明した編集機能を実現するためのプログラム、以下特に断らない限り同じ)のプロセスに通知する(S43)。
【0083】
以上のプラグインの動作は、プラグインが編集プログラムから呼び出されて起動された場合でも、編集プログラムとは独立に起動された場合でも行うことができる。ステップS43において編集プログラムが起動されていない場合、これを起動する処理を加えてもよい。
【0084】
一方、編集プログラム側では、ステップS43の通知を受けると、これに応じて、プリセットコンポーネントデータ中にプラグインコンポーネントデータを追加する(S51)。そして、通知された端子数に基づき、プラグインコンポーネントの入出力端子数を設定する(S52)。また、通知されたプラグイン名とファイル名に基づき、プラグインコンポーネントのPC用表示データを設定する(S53)。コンポーネントをCAD画面210に表示する際のキャプションの設定等である。また、通知されたプラグイン名とファイル名に基づき、プラグイン及び格納された信号処理構成を呼び出すためのコマンドを設定して(S54)、処理を終了する。
【0085】
以上により、プラグインがステップS41で格納した信号処理構成と対応するプラグインコンポーネントを、編集プログラム側に追加することができる。この処理により追加されたプラグインコンポーネントは、
図7等に示したコンポーネント選択画面220において任意に選択してCAD画面210に配置可能である。
このとき、上述した実施形態におけるような、信号処理構成が未編集の状態と対応するプラグインコンポーネントと混在していてもよい。
【0086】
プラグインにより実行する信号処理の構成は、
図9に示したような単純なものばかりではなく、
図16に示すような複雑なものの場合もある。このような場合、プラグインコンポーネントを配置する度に一から編集するより、配置時点から編集済のデータを利用できた方が、編集が楽であると考えられる。また、プラグイン自体、標準的な信号処理構成のデータが最初から付属した状態で提供されることも考えられる。このような場合、プラグインから編集プログラムにアクセスして、または編集プログラムからプラグインのデータにアクセスして、付属している信号処理構成と対応するプラグインコンポーネントを自動で追加できるようにするとよい。
【0087】
なお、以上のような編集済の信号処理構成と対応するプラグインコンポーネントを用いる場合も、CAD画面210への配置時点であるいはユーザの指示に応じて、
図9の場合と同様、プラグインコンポーネントと対応する信号処理構成を表示するようにするとよい。
このようにした例を
図17に示す。
この表示は、単にユーザの参考に供するためだけでもよいし、この画面において信号処理構成の編集操作を受け付けてもよい。後者の場合、変更後の信号処理構成は、プラグインコンポーネントと対応付けられている信号処理構成とは別に保存するようにするとよい。
なお、
図17の例においては、
図16の信号処理構成が2入力2出力であることに対応して、プラグインコンポーネント250も2入力2出力であり、入力コンポーネントと出力コンポーネントの端子も2つずつ予約している。
【0088】
また、以上とは別の変形として、プラグインの提供する信号処理構成の表示機能や編集機能が、編集プログラムの提供する機能と同一又は類似のものである必要はない。
例えば、プラグインの提供する信号処理構成が、常に
図18に示すようにコンポーネントをシリアルに接続したものに限られる場合、その信号処理構成を、
図19に示すような、ラック形式で表示することも考えられる。この表示は、入力する信号に対し、上側の欄に記載のコンポーネントから順に信号処理を適用することを示す。
【0089】
また、さらに別の変形として、編集プログラムを実行する装置と、プラグインを実行する装置とが共通である必要はない。また、装置Aで実行されるプラグインAと装置Bで実行されるプラグインBとを利用する、というように、ミキサエンジン10が、他の2台以上の装置と連携して音響信号処理を行うような場合にも、本発明は適用可能である。
逆に、ミキサエンジン10内に、DSP110やエフェクタ111とは別に、編集プログラムにより信号処理構成を直接は編集できない音響信号処理部を備える場合、その音響信号処理部が上述したプラグインと同様な機能を備えていれば、これをプラグインとみなして本発明を適用することも可能である。
【0090】
また、編集装置として、PC20ではなく専用の編集装置あるいは制御装置を用いてもよい。音響信号処理装置も、1台とは限らず、複数台を編集装置に同時に接続するようにしてもよい。また、1台のミキサエンジンを、時と場合によって異なるコンピュータに接続して制御するようにしてもよい。
【0091】
さらに、上述したこの発明のプログラムは、予めPC20のHDD等に記憶させておくほか、CD−ROMあるいはフレキシブルディスク等の不揮発性記録媒体(メモリ)に記録して提供し、そのメモリからこのプログラムをPC20のRAMに読み出させてCPUに実行させたり、プログラムを記録した記録媒体を備える外部機器あるいはプログラムをHDD等の記憶手段に記憶した外部機器からダウンロードして実行させたりしても、同様の効果を得ることができる。
また、以上説明してきた実施例及び変形例の内容は、矛盾しない範囲で適宜に組み合わせて適用することができる。