JP4211639B2 - 編集装置の制御方法 - Google Patents

編集装置の制御方法 Download PDF

Info

Publication number
JP4211639B2
JP4211639B2 JP2004053988A JP2004053988A JP4211639B2 JP 4211639 B2 JP4211639 B2 JP 4211639B2 JP 2004053988 A JP2004053988 A JP 2004053988A JP 2004053988 A JP2004053988 A JP 2004053988A JP 4211639 B2 JP4211639 B2 JP 4211639B2
Authority
JP
Japan
Prior art keywords
signal processing
component
data
configuration
engine
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004053988A
Other languages
English (en)
Other versions
JP2005244774A (ja
Inventor
真 廣井
正敏 花城
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP2004053988A priority Critical patent/JP4211639B2/ja
Priority to US11/065,798 priority patent/US8976982B2/en
Publication of JP2005244774A publication Critical patent/JP2005244774A/ja
Application granted granted Critical
Publication of JP4211639B2 publication Critical patent/JP4211639B2/ja
Priority to US12/490,866 priority patent/US7978864B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Circuit For Audible Band Transducer (AREA)
  • Electrophonic Musical Instruments (AREA)

Description

この発明は、処理内容をプログラム可能な音響信号処理部を有する音響信号処理装置における音響信号処理の構成を、ユーザから受け付けた指示に従って編集する編集装置の制御方法に関する。
従来から、音響信号処理部を、プログラムに従って動作可能なプロセッサを用いて構成すると共に、外部のPC(パーソナルコンピュータ)等のコンピュータにアプリケーションソフトを実行させて編集装置として機能させ、これを用いて編集した信号処理構成に基づいて音響信号を処理できるようにした音響信号処理装置が知られている。このような音響信号処理装置を本願では、ミキサエンジンと呼ぶ。ミキサエンジンは、PCにより編集された信号処理構成を内部に記憶し、その記憶している信号処理構成に基づいて単独で音響信号の処理を行うことができる。
また、編集装置上における上記信号処理構成の編集は、編集時に信号処理の構成要素となるコンポーネント及びその入出力間の結線状態をディスプレイの編集画面にグラフィカルに表示させ、視覚的に信号処理の構成が把握し易い状態で編集作業を行うことができるようにすることが行われている。そして、ユーザは、所望の処理コンポーネントを配置し、配置したコンポーネント間の結線を設定することにより、信号処理構成を編集することができる。
このようなミキサエンジン及びアプリケーションソフトについては、例えば非特許文献1に記載されている。
「DIGITAL MIXING ENGINE DME32 取扱説明書」,ヤマハ株式会社,2001年,p.23−66
しかしながら、このような編集装置を用いて信号処理構成を編集する場合、既に配置されているコンポーネントを他のコンポーネントに差し替えようとした場合に、面倒な操作が必要になるという問題があった。
例えば、4入力ミキサのコンポーネントを配置していたが、入力が5必要であるので6入力ミキサに変更したい場合や、8入力ミキサのコンポーネントを配置していたが、3入力しか使用していないので、信号処理部(DSP)のリソース使用量を低減するため4入力ミキサに変更したい場合には、従来のシステムでは以下の(1)〜(3)のような操作が必要であった。
(1)編集画面から元のコンポーネントを削除する。その際、削除したコンポーネントに接続されていた結線は、切れた状態になる。結線自体が画面から消えてしまうタイプと、結線が切れた状態で画面上に残るタイプがある。
(2)メニューから新しいコンポーネントを選択して編集画面に配置する。
(3)切れてしまった結線を再び接続し直す。
そして、これらの操作の中で、結線の再接続が、特に面倒であった。
また、従来は、元のコンポーネントを一旦削除して新たなコンポーネントを追加するという操作手順であったので、元のコンポーネントについて設定してあったパラメータも、コンポーネントと共に削除されてしまい、新たなコンポーネントについて再度設定し直さなければならなかった。この点も、操作性を低下させる原因となっていた。
この発明は、このような問題を解決し、編集装置によって音響信号処理装置における信号処理の内容を編集し、音響信号処理装置にその編集内容に従った信号処理を行わせる音響信号処理システムを構成する場合において、信号処理の構成要素の差し替えを行う場合の操作性を向上させることを目的とする。
上記の目的を達成するため、この発明の編集装置の制御方法は、処理内容をプログラム可能な音響信号処理部を有する音響信号処理装置に実行させる音響信号処理内容を、それぞれ入力端子又は出力端子を有する複数の信号処理コンポーネントと、その信号処理コンポーネントの出力端子と入力端子との間を結ぶ結線とに基づいて規定し、その信号処理コンポーネント及び結線からなる音響信号処理の構成を、グラフィック表示の表示画面において受け付けた指示に従って編集する編集装置の制御方法において、上記編集装置に、複数の上記信号処理コンポーネントを定義する定義データであって、その複数の信号処理コンポーネントのうち少なくとも一部の信号処理コンポーネントを、その信号処理コンポーネントが有する端子の数及び/又はその信号処理コンポーネントに係る信号処理に使用するパラメータの数が異なる複数のバリエーションを有するものとして定義する定義データを記憶させると共に、上記信号処理コンポーネントの各バリエーションについて、異なるバリエーションが有する端子及びパラメータの間の対応関係を記憶させ、上記信号処理構成の編集に際して、ユーザから、編集中の信号処理構成に含まれる信号処理コンポーネントについて、別のバリエーションへの変更の指示を受け付ける手順と、その手順で変更の指示を受け付けた場合に、その指示に係る信号処理コンポーネントを、指示に従って別のバリエーションの信号処理コンポーネントに置き換える手順と、記憶している上記対応関係に基づいて、上記置き換え前の元の信号処理コンポーネントの端子に接続されていた結線のうち、上記置き換え後の信号処理コンポーネントにその接続されていた端子と対応する端子が存在するものを、その置き換え後の信号処理コンポーネントの、上記対応する端子に接続する第1の引継手順と、記憶している上記対応関係に基づいて、上記元の信号処理コンポーネントに係る信号処理に使用していたパラメータのうち、上記置き換え後の信号処理コンポーネントに係る信号処理に使用するパラメータ中に対応するパラメータが存在するものについて上記元の信号処理コンポーネントに係る信号処理に使用していたパラメータの値を、上記置き換え後の信号処理コンポーネントに係る信号処理に使用する上記対応するパラメータの値として記憶する第2の引継手順とを実行させるようにしたものである。
このような編集装置の制御方法において、上記第2の引継手順に、上記置き換え後の信号処理コンポーネントに係る信号処理に使用するパラメータの値を記憶するための記憶領域を確保する手順と、上記元の信号処理コンポーネントに係る信号処理に使用していたパラメータのうち、上記置き換え後の信号処理コンポーネントに係る信号処理に使用するパラメータ中に対応するパラメータが存在するものについて上記元の信号処理コンポーネントに係る信号処理に使用していたパラメータの値を、上記記憶領域のうち上記対応するパラメータの値を記憶する領域に書き込む書込手順と、上記記憶領域に値を記憶すべきパラメータのうち、上記書込手順において書き込みがなされていないパラメータについて、そのパラメータの値を記憶するための記憶領域に所定の初期値を書き込む手順とを設けるとよい。
以上のようなこの発明の編集装置の制御方法によれば、編集装置によって音響信号処理装置における信号処理の内容を編集し、音響信号処理装置にその編集内容に従った信号処理を行わせる音響信号処理システムを構成する場合において、信号処理の構成要素の差し替えを行う場合の操作性を向上させることができる。
以下、この発明を実施するための最良の形態を図面に基づいて具体的に説明する。
〔実施形態におけるミキサシステムの基本構成の説明:図1,図2〕
まず、図1を用いて、編集装置であるPCと、音響信号処理装置であるミキサエンジンとによって構成した、この発明の音響信号処理システムの実施形態であるミキサシステムの構成について説明する。図1はそのミキサシステムの構成を示すブロック図である。
図1に示すように、このミキサシステムは、ミキサエンジン10とPC30とによって構成される。PC30は、ハードウェアとしては、CPU,ROM,RAM等及び表示手段としてディスプレイを有する公知のPCであり、WindowsXP(登録商標)などのオペレーティングシステム(OS)が動作するPCを用いることができるが、そのOS上のアプリケーションプログラムとして所要の編集プログラムを実行させることにより、ミキサエンジン10における信号処理の構成を編集し、その編集結果をミキサエンジン10に転送し、編集した信号処理構成に従って動作させる編集装置として機能させることができる。そして、以下に説明するPC30の動作や機能は、特に断らない限り、この編集プログラムの実行により実現されるものとする。
一方、ミキサエンジン10は、CPU11,フラッシュメモリ12,RAM13,表示器14,操作子15,PC入出力部(I/O)16,MIDI(Musical Instruments Digital Interface:登録商標)I/O17,その他I/O18,波形I/O19,信号処理部(DSP)20,カスケードI/O21を備え、これらがシステムバス22によって接続されている。そして、PC30から受信した信号処理構成に従って、DSP20を制御するためのマイクロプログラムを生成し、そのマイクロプログラムに従ってDSP20を動作させ、入力する音響信号に対して種々の信号処理を施して出力する機能を有する。
CPU11は、ミキサエンジン10の動作を統括制御する制御手段であり、フラッシュメモリ12に記憶された所定のプログラムを実行することにより、各I/O16〜19における通信や表示器14における表示を制御したり、操作子15の操作を検出してその操作に従ってパラメータの値を変更したり、PC30から受信した信号処理構成の情報からDSP20を動作させるためのマイクロプログラムを生成してDSP20に設定したりといった処理を行う。
フラッシュメモリ12は、CPU11が実行する制御プログラムや後述するプリセットコンポーネントデータ及び解除キー等を記憶する書き換え可能な不揮発性記憶手段である。
RAM13は、PC30から受信した信号処理構成の情報を所要の形式に変換した後述するコンフィグデータやカレントデータを始めとする種々のデータを記憶させたり、CPU11のワークメモリとして使用したりする記憶手段である。そして、ミキサエンジン10を単独で使用できるように、RAM13のコンフィグデータ記憶領域は電源バックアップされている。
表示器14は、液晶ディスプレイ(LCD)等によって構成される表示手段である。そして、ミキサエンジン10の現在の状態を示す画面、コンフィグデータに含まれる設定データであるシーンの参照,変更,保存等を行うための画面等を表示する。
操作子15は、キー、スイッチ、ロータリーエンコーダ等によって構成され、ユーザがミキサエンジン10を直接操作してシーンの編集等を行うための操作子である。
PCI/O16は、PC30を接続し通信を行うためのインタフェースであり、例えばUSB(Universal Serial Bus)方式、RS232C方式、IEEE(Institute of Electrical and Electronic Engineers)1394方式、Ethernet(登録商標)方式などのインタフェースによる通信を行うことができる。
MIDII/O17は、MIDI規格に従ったデータを授受するためのインタフェースであり、例えば、MIDIに対応した電子楽器あるいはMIDIデータを出力するアプリケーションプログラムを備えたコンピュータ等と通信を行うために用いる。
波形I/O19は、DSP20で処理すべき音響信号の入力を受け付け、また処理後の音響信号を出力するためのインタフェースである。そして、この波形I/O19には、1枚で4チャンネルのアナログ入力が可能なA/D変換ボード,1枚で4チャンネルのアナログ出力が可能なD/A変換ボード,1枚で8チャンネルのデジタル入出力が可能なデジタル入出力ボードを適宜組み合わせて複数枚装着可能であり、実際にはこれらのボードを介して信号の入出力を行う。
その他I/O18は、上記以外の機器を接続し入出力を行うためのインタフェースであり、例えば外部のディスプレイ、マウス、文字入力用のキーボード、操作パネル等を接続するためのインタフェースが用意される。
DSP20は、波形I/O19から入力する音響信号に対し、設定されているマイクロプログラム及びその処理パラメータを定めるカレントシーンの内容に従った信号処理を施すモジュールである。このDSP20は、1つのプロセッサによって構成してもよいし、複数のプロセッサを接続して構成してもよい。
カスケードI/O21は、ミキサエンジン10を複数カスケード接続して使用する際に、他のミキサエンジンとの間で、音響信号や、PC30からのデータ及びコマンド等の授受を行うためのインタフェースである。なお、ミキサエンジン10を複数カスケード接続して使用する場合には、複数のミキサエンジン10を協同的に動作させて一連の音響信号処理を行わせることが可能である。そして、PC30ではこのような音響信号処理を編集し、PC30に直接接続されたミキサエンジン10を介して他のミキサエンジン10にも編集結果を転送して、各ミキサエンジン10を編集した信号処理構成に従って動作させることができる。
次に、PC30における信号処理構成の編集方式について説明する。図2は、PC30のディスプレイに表示させる信号処理構成の編集画面の例を示す図である。
ユーザがPC30に上記の編集プログラムを実行させると、PC30はディスプレイにグラフィック表示の表示画面として図2に示すようなCAD(Computer Aided Design)画面40を表示させ、ユーザからの編集指示を受け付ける。そして、この画面においては、編集中の信号処理構成を、その構成要素である4bandPEQ,AutoMixer等の、DSP20に実行させる信号処理の機能を示す信号処理コンポーネント(A:以下単に「コンポーネント」と呼ぶ)と、コンポーネントの出力端子(B)と入力端子(C)とを結ぶ結線(D)とによってグラフィカルに表示している。なお、コンポーネントの左側に表示した端子が入力端子、右側に示した端子が出力端子である。そして、ミキサエンジン10への入力を示すコンポーネントは出力端子のみを有し、ミキサエンジン10からの出力を示すコンポーネントは入力端子のみを有し、それ以外のコンポーネントは全て入力端子と出力端子の両方を有する。
ユーザは、この画面において、「Component」メニューの操作で表示されるコンポーネントリストの中から信号処理構成に加えたいコンポーネントを選択して画面上に配置し、配置された複数のコンポーネントの任意の出力端子と任意の入力端子との間の結線を指定することにより、信号処理構成を編集することができる。そして、編集した結果は、「File」メニューの「保存」を実行指示することによりコンフィグレーション(コンフィグ)として保存され、さらに「File」メニューの「コンパイル」を実行指示することによりコンフィグデータの一部のデータ形式をミキサエンジン用のデータ形式に変換した上でミキサエンジン10に転送して記憶させることもできる。
なお、PC30は、編集中に、画面上の信号処理構成に従った信号処理に必要なリソースの量を計算しており、これがミキサエンジン10に備えるDSP20のリソースを上回った場合には、そのような処理は行えないため、ユーザにその旨を通知する。
また、信号処理構成に含まれる各コンポーネントについて、そのコンポーネントが信号処理構成に新規に配置されコンパイルされた段階で、その動作パラメータ(例えばミキサであれば各入力のレベル等)を記憶するための記憶領域がカレントデータを記憶するカレントシーン内に用意されると共にその動作パラメータとして所定の初期値が与えられる。
そして、その後ユーザが各コンポーネントについて設けたパラメータ制御パネルを操作することにより、そのパラメータ記憶領域に記憶された動作パラメータを編集することができる。また、ここで編集した結果のカレントシーンに記憶されたパラメータは、コンフィグレーション内のシーンメモリにそのコンフィグレーションに関する設定データであるシーンとして複数記憶しておき、コンフィグレーションに従ってミキサエンジン10に信号処理を行わせる際にカレントシーンに任意に呼び出すことができる。
さらに、ユーザは、ミキサエンジン10とPC30の動作モードとして非オンラインモードとオンラインモードのいずれかを設定可能である。非オンラインモードでは、ミキサエンジン10とPC30とは互いに独立して動作し、オンラインモードでは相互にカレントメモリの動作パラメータ等の同期を取りながら動作を行う。ミキサエンジン10の信号処理構成とPC30の信号処理構成が一致する場合にのみオンラインモードへの移行が可能であり、オンラインモードでは、カレントシーンのデータがミキサエンジン10とPC30とで同じになるよう制御(同期化)される。
また、オンラインモードへ移行するときに、ユーザは、ミキサエンジン10側のカレントシーンとPC30側のカレントシーンのいずれを同期化後のカレントシーンとして使用するかを選択することができ、さらに、シーンメモリの記憶内容についても同期化するよう指示することができる。
オンラインモードへの移行後は、PC30側で行われた操作が直ちにミキサエンジン10の動作に反映され、逆にミキサエンジン10の操作子15で行われた操作が直ちにPC30の動作に反映され、双方のカレントシーンの内容が同一になるよう制御される。なお、上述した「コンパイル」の実行時に自動的にオンラインモードへ移行し、PC30側で信号処理構成が変更された時に自動的に非オンラインモードへ移行するようにしてもよい。
〔実施形態のミキサシステムで用いるデータの構成の説明:図3乃至図5〕
次に、以上のようなミキサシステムにおいて用いる、この発明に関連するデータの構成について説明する。
まず、図3にPC30側で使用するデータの構成を示す。
この図に示すように、PC30のOS上で上記の編集プログラムを実行すると、PC30はその編集プログラムによって規定されるメモリ空間にプリセットコンポーネントデータとコンフィグデータとを記憶させる。
このうち、プリセットコンポーネントデータは、信号処理を編集する際に用いることができるコンポーネントのデータのセットであり、ユーザがカスタマイズできるようにしてもよいが、基本的にはメーカーが供給するものである。そして、データセット全体としてのバージョン管理を行うためのバージョン情報であるプリセットコンポーネントセットバージョンのデータと、そのデータセットを構成する複数のコンポーネントの各種類毎に用意されたPC用プリセットコンポーネントデータとを含む。
各PC用プリセットコンポーネントデータは、コンポーネントの性質や機能を示す情報であって、コンポーネントを識別するためのプリセットコンポーネントヘッダ、コンポーネントの入力や出力およびコンポーネントが扱うデータや動作パラメータの構成を示す構成情報、ユーザの数値入力操作に応じて上述したカレントないしシーンメモリの各シーンにおける各コンポーネントの個別の動作パラメータの値を変更する処理を行うためのパラメータ処理ルーチン、同シーンにおける各コンポーネントの動作パラメータを表示用のテキストデータや特性グラフに変換するための表示・編集用処理ルーチンとを含む。
そして、プリセットコンポーネントヘッダには、プリセットコンポーネントの種類を示す識別情報であるプリセットコンポーネントID及びそのバージョンを示すプリセットコンポーネントバージョンの情報を含み、これらによってプリセットコンポーネントを特定することができる。
また、このミキサシステムにおいては、一部のプリセットコンポーネントをプロテクトし、そのプリセットコンポーネントを含む音響信号処理の実行を、ユーザが所定の解除キーを持つ場合にのみ許可するようにしている。そこで、プリセットコンポーネントヘッダには、そのプリセットコンポーネントについてプロテクトを行うかどうかを示すプロテクト有無の情報も記載するようにしている。
また、上記の構成情報には、コンポーネントの入出力の構成を示す入出力構成情報やコンポーネントが扱うデータやパラメータの構成を示すデータ構成情報の他、コンポーネントの名前、編集画面にコンポーネント自身を表示する際の色や形状等の外観及びそのコンポーネントの動作パラメータを編集するためにディスプレイに表示する制御パネルのデザインや制御パネル上のつまみや特性グラフの配置を示すPC用表示データ等も含む。
また、上記のプリセットコンポーネントIDはデータ構成情報に関連しており、プリセットコンポーネントIDが一致するプリセットコンポーネントは、相互にデータやパラメータの互換性を有する。そのため、同じプリセットコンポーネントIDを有するコンポーネント間では、後述するパラメータの異構成間コピーが可能である。
ここで、このPC用プリセットコンポーネントデータのうち、構成情報中の、グラフィック表示の編集画面における編集に必要なPC用表示データや、表示・編集処理ルーチン中の、制御パネルに特性をグラフで表示するためのルーチン等は、ミキサエンジン10側の動作には必要ないデータであり、PC30側にのみ記憶させる。
なお、このミキサシステムにおいては、各プリセットコンポーネントに、複数のバリエーションを定義できるようにしている。このバリエーションとは、処理の基本的な機能が同一で、処理の繰り返し回数が異なるようなコンポーネントであり、例えばミキサであれば入力端子や出力端子の数が異なるコンポーネント、イコライザであればチャンネル当たりのフィルタ(バンド)数が異なるコンポーネントである。以下の表1に、さらに他の具体例を示す。
Figure 0004211639
このようなコンポーネントは、処理の基本的な機能が同一であることから、処理に使用するパラメータも類似の構成となっており、全てを別々のプリセットコンポーネントとするよりも、バリエーションとして相互に関連付けて管理する方が効率的であるため、このような管理方式を採用したものである。すなわち、バリエーション同士はデータ互換性を有しており、勿論、同じプリセットコンポーネントIDを有している。
そのため、各バリエーションについては、PC用表示データ、データ構成情報、および入出力構成情報をそれぞれスケーラブルに構成することができ、PC用表示データ、データ構成情報、および入出力構成情報は、1つのプリセットコンポーネントの複数のバリエーションで共通化されている。なお、入出力構成情報には、後に図22を用いて説明するような、同一プリセットコンポーネント内の各バリエーションについての異なるバリエーションに含まれる端子の間の対応関係や、図27及び図28を用いて説明するような、同一プリセットコンポーネント内の各バリエーションについての異なるバリエーションに含まれるパラメータの間の対応関係を示す情報も含まれる。
一方、コンフィグデータは、ユーザが編集した信号処理構成を示すデータであり、ユーザが編集結果の保存を選択した場合、その時点での信号処理構成及び設定値等が1つのPC用コンフィグデータとして保存される。またユーザは、図3に示したような複数のPC用コンフィグデータを1つのファイルとしてハードディスクに記憶するよう指示したり、逆に、ハードディスクからRAMへ読み出すよう指示することができる。そして、その指示に応じて、複数のPC用コンフィグデータが1つのファイルとしてハードディスクに書き込まれ、或いはRAMへ読み出される。
さらに、ユーザは、PC30のRAM上の複数のPC用コンフィグデータの1つを、編集プログラムにおける編集対象のコンフィグデータとして選択することができる。そして、PC30(編集プログラムのプロセス)は、選択されたPC用コンフィグデータにプロテクトを行うコンポーネントが含まれるか否かに関わらず、そのPC用コンフィグデータの編集の準備(以下に説明するPC用CADデータ、各シーン、および対応するカレントシーンのパラメータへのアクセス準備)を行う。
また、各PC用コンフィグデータは、コンフィグデータを識別するためのコンフィグヘッダ、編集された信号処理構成の内容を示すPC用CADデータ、および上述した設定データであるシーンを含む。
このうち、コンフィグヘッダには、コンフィグデータを新規に保存する場合にユニークにつけるコンフィグID、コンフィグデータを改変した場合に変更してバージョンを示すコンフィグバージョン、コンフィグデータを作成した編集プログラムのバージョンを示すシステムバージョンの情報等を含む。すなわち、あるコンフィグデータを順次編集しコンパイルをしていくと、そのコンフィグデータには、同じコンフィグIDと、コンパイルの度に変更されるバージョン情報が付与される。
また、PC用CADデータには、編集された信号処理構成に含まれる各コンポーネントについてのコンポーネントデータと、それらのコンポーネント間の結線状態を示す結線データとが含まれる。なお、編集された信号処理構成に同じ種類のプリセットコンポーネントが複数含まれる場合には、それら各々に対して別々のコンポーネントデータを用意する。
そして、各コンポーネントデータは、そのコンポーネントがどのプリセットコンポーネントに該当するかを示すコンポーネントID、同じくどのバージョンのプリセットコンポーネントに該当するかを示すコンポーネントバージョン、そのコンポーネントが含まれる信号処理構成においてそのコンポーネントにユニークに付したIDであるユニークID、そのコンポーネントがコンポーネントIDの示すプリセットコンポーネントのうちどのバリエーションであるかを示すバリエーション情報を含むプロパティデータ、およびPC30側の編集画面で該当するコンポーネントが配置されている位置等を示すPC用表示データを含む。
ここで、このユニークIDは、同じコンフィグIDを有するコンフィグデータ間で、そのコンフィグデータに含まれるコンポーネント同士の対応付けをするために使用されるIDであり、以下のように管理される。
すなわち、上述した信号処理構成の編集画面に新たなコンポーネントが配置された場合、そのコンポーネントには編集中のコンフィグデータで未使用の新たなユニークIDが付与されて、PC用CADデータに追加される。また、既に配置されているコンポーネントのバリエーションないしバージョンが変更された場合、そのコンポーネントのユニークIDおよびコンポーネントIDは変更されず、プロパティデータないしコンポーネントバージョンが更新される。さらに、既に配置されているコンポーネントが削除された場合、PC用CADデータから該コンポーネントが削除されるとともに、そのユニークIDは使用済みのIDとして廃止されて、同じコンフィグデータでは二度と使用されない。
また、結線データには、編集された信号処理構成に含まれる複数の結線の各結線について、どのコンポーネントのどの出力端子からどのコンポーネントのどの入力端子へ結線が行われているかを示す接続データ、およびPC30側の編集画面におけるその結線の形状や配置を示すPC用表示データを含む。
以上からわかるように、PC用CADデータは、ミキサエンジン10のDSP20に実行させる信号処理の内容を、コンポーネントと、該コンポーネントの出力端子と入力端子との間を結ぶ結線とに基づいて規定するデータである。
また、シーンメモリの各シーンは、信号処理構成の各コンポーネントが扱うパラメータであるコンポーネントシーンの集合体であり、各コンポーネントシーンにおけるデータの形式や配列は、PC用CADデータに含まれるそのコンポーネントのコンポーネントIDとコンポーネントバージョンで特定されるプリセットコンポーネントの、PC用プリセットコンポーネントデータ中のデータ構成情報と、PC用CADデータに含まれる同コンポーネントのプロパティデータとによって定義される。
以上がPC30側で使用する主なデータであり、これらのデータは、HDD(ハードディスクドライブ)等の不揮発性記憶手段に記憶させておき、必要な時にRAMに読み出して使用するようにしてもよい。
また、以上のデータ以外にも、PC30においては、現在有効なコンフィグにおける現在有効な設定データであるカレントシーンも記憶している。そして、カレントシーンのデータは、上述したシーンメモリの各シーンと同一構成であり、制御パネル等により信号処理構成の1つのコンポーネントの制御パラメータを編集する際には、このカレントシーンのそのコンポーネントの制御パラメータを変更して編集を行い、その結果をシーンメモリに1つのシーンとして保存することができる。
さらに、PC30には、上述した「コンパイル」の処理でコンフィグデータをミキサエンジン10に転送する際に、PC用CADデータからミキサエンジン10での処理に適した形式のエンジン転送用CADデータを形成するためのバッファも用意している。なお、エンジン転送用CADデータは、PC用CADデータから、上述したコンポーネントや結線のPC用表示データのような、ミキサエンジン10側では使用しないデータを削除し、さらにデータ間の不使用部分を詰めてパッキングすることにより形成される。
次に、図4にミキサエンジン10側に記憶させるデータの構成を示す。
この図に示すように、ミキサエンジン10側でも、主要なデータとして、プリセットコンポーネントデータとコンフィグデータとを記憶させている。ただし、プリセットコンポーネントデータはフラッシュメモリ12に、コンフィグデータはRAM13に記憶させ、その構成内容はPC30側とは若干異なる。そこで、PC30側に記憶させるデータとの相違点を中心に説明する。
図4に示すように、ミキサエンジン10側のプリセットコンポーネントデータは、エンジン用プリセットコンポーネントデータを含む。そして、このエンジン用プリセットコンポーネントデータは、ミキサエンジン10に各コンポーネントに関する音響信号処理を行わせるためのデータであり、まず、表示・編集用ルーチンの一部に代えて、DSP20を動作させてそのコンポーネントとして機能させるためのマイクロプログラムを含む点でPC用のものと異なる。
なお、このマイクロプログラムは、同じプリセットコンポーネントであってもバリエーション毎に異なるものであるため、各バリエーションについて個別に記憶している。ただし、各バリエーションは、共通な基本処理を異なる回数繰り返すような関係にあることから、処理の共通部分についてはマイクロプログラムを共通化し、バリエーションによってプログラムの繰り返し実行回数を変えるといった対応も可能である。この場合、バリエーションによってコンポーネントに係る信号処理を実行するための処理ステップ数、遅延メモリ、レジスタなどのリソース量は異なるが、記憶するマイクロプログラムの量は一定にすることができる。このような対応が可能かどうかは、DSP20のアーキテクチャに応じて決まる。
また、ミキサエンジン10側では、信号処理構成の編集や動作パラメータの特性グラフの表示は行わないため、PC用の構成情報に含まれていたPC用表示データやPC用の表示・編集用ルーチンのうち、特性グラフの表示を行うルーチン等の一部のルーチンは含まれない。なお、ミキサエンジン10側でも、表示器14にパラメータの設定値を表示させ、操作子15によって編集できるようになっており、そのため、PC用の表示・編集用ルーチンのうちの動作パラメータの値を表示用のテキストデータに変換するためのルーチンが必要となるが、このルーチンはパラメータ処理ルーチンに含まれている。
これ以外の点は、PC30側のプリセットコンポーネントデータと同様であり、IDやバージョンについては、PC30側の対応するセットやコンポーネントと同じものを用い、対応関係が認識できるようにしている。
次に、コンフィグデータについては、エンジン用コンフィグデータは、PC用CADデータに代えてエンジン用CADデータを含む点がPC30用のものと異なる。ここで、エンジン用CADデータは、PC30から受信したエンジン転送用CADデータを記憶したものであり、上述したように、PC用CADデータからPC用表示データを削除してパッキングしたものである。
これ以外の点は、PC30側のコンフィグデータと同様であり、IDやバージョンについては、やはりPC30側の対応するコンフィグやコンポーネントと同じものを用い、対応関係が認識できるようにしている。
なお、ミキサエンジン10は、PC30において編集された信号処理構成に基づいて音響信号を処理するものである。そのため、CPU11は、PC30から受け取ったエンジン用CADデータに基づいてDSP20に実行させるマイクロプログラムを形成するようになっており、そのための作業領域としてマイクロプログラム形成バッファを用意している。
マイクロプログラムの形成処理では、まず、エンジン用CADデータに含まれる各コンポーネントのコンポーネントIDとコンポーネントバージョンにより特定されるプリセットコンポーネントデータから、バリエーション情報によって指定されるマイクロプログラムを順次読み出し、その各コンポーネントのプロパティデータ中のバリエーション情報と、特定されたプリセットコンポーネントデータとに基づいて、各コンポーネントに動作に必要な入出力レジスタ、遅延メモリ、記憶レジスタなどのリソース割り当てを行い、割り当てたリソースに基づいてそのマイクロプログラムを加工してマイクロプログラム形成バッファに書き込む。
その際、エンジン用CADデータに含まれる結線データに基づいて、各コンポーネントの入出力端子に対応した入出力レジスタの間のデータの受け渡しプログラムもマイクロプログラム形成バッファに書き込むようにしている。
ここで、リソースの割り当てに基づいてマイクロプログラムを加工しているのは、ミキサエンジン10に備えたDSP20のアーキテクチャに対応させたものであり、別のアーキテクチャであれば、マイクロプログラム自体を加工する代わりに、例えば、割り当てたリソースに応じたパラメータをDSP20に設定するようにすべき場合もある。
ここで、図4に示したエンジン用プリセットコンポーネントデータは、以下に説明するプリセットコンポーネントデータの整合性チェック及び更新の処理により、PC30からミキサエンジン10に転送して記憶させるデータである。そして、この転送用のデータは、PC30側において、PC用プリセットコンポーネントデータとは別の独立したデータとして記憶するようにしてもよいし、あるいはPC用プリセットコンポーネントデータ内に各コンポーネントの一部として記憶するようにしてもよい。後者の場合は、プリセットコンポーネントデータをミキサエンジン10に転送するときに、PC用プリセットコンポーネントデータから不要なデータを落として転送用のデータを作成する。
次に、上述したPC30におけるプリセットコンポーネントデータの整合性チェック及び更新の処理について説明する。図5に、この処理のフローチャートを示す。
図1に示したミキサシステムにおいて、メーカーでプリセットコンポーネントが新規に開発されたり改良されたりした場合、その変更は、編集プログラムのバージョンアップという形で提供することができる。そして、このようにした場合、バージョンアップ後の編集プログラムには、新規に開発された又は改良されたプリセットコンポーネントのデータを含むPC用ないしエンジン用プリセットコンポーネントデータを含んでいる。そして、これをPC30にインストールすると、これらのデータがPC30に記憶される。
この状態でPC30が編集プログラムを実行すると、PC30がミキサエンジン10におけるプリセットコンポーネントデータの更新を指示された場合に、図5のフローチャートに示す処理を行ってプリセットコンポーネントデータの整合性チェック及び更新を行う。例えば編集プログラムの動作中にPC30と動作中のミキサエンジン10とが物理的に接続された場合、編集プログラムの動作中にPC30と物理的に接続されているミキサエンジンン10の電源がONされた場合、動作中のミキサエンジン10と物理的に接続されたPC30上で編集プログラムが起動された場合等に、上記の更新が指示されたものとして処理を開始するとよい。
そして、この処理においては、まずステップS1及びS2で、PC30側とミキサエンジン10側のプリセットコンポーネントセットのバージョン情報を比較し、PC30側のバージョンの方が古ければ、ステップS3からS13に進み、ディスプレイにPC30側のプリセットコンポーネントデータ(又はこれを含む編集プログラム)の更新が必要である旨の表示を行ってユーザに更新を促す。このミキサシステムでは、PC30側とミキサエンジン10側とでプリセットコンポーネントデータに含まれるコンポーネントが一致しないと、ミキサエンジン10の制御を正常に行えないが、PC30側の編集プログラムは比較的容易にバージョンアップすることができるので、このようにしている。
ただ、ミキサエンジン10側のプリセットコンポーネントデータの更新は、編集プログラムのバージョンアップされたPC30から新しいデータを送信することにより行われているため、このような事態はあまり起こらない。しかしながら、例えば、PC30が複数台あって、ミキサエンジン10にそのうちの編集プログラムをバージョンアップしたPC30を接続した後、未だバージョンアップしていない別のPC30を接続した場合等には、このようなことも起こりうる。
一方、PC30側のバージョンの方が古いということがなければ、ステップS3からステップS4以下に進む。そして、ステップS10までの処理で、PC側の各プリセットコンポーネントデータを順次対象とし、ミキサエンジン側に対象と同じIDのプリセットコンポーネントデータがないか(S5)、または同じIDのものがあってもミキサエンジン側の方がバージョンが古い場合(S6)に、そのIDと対応するプリセットコンポーネントデータを更新する。そして、この更新は、ディスプレイにデータを転送中である旨の表示を行い、PC30が記憶している転送用のプリセットコンポーネントデータをミキサエンジン10に転送して、エンジン用プリセットコンポーネントデータとしてフラッシュメモリ12に記憶させることによって行う(S7,8)。
PC側の全てのプリセットコンポーネントデータについて以上の処理が完了すると、更新が必要なプリセットコンポーネントデータは全て更新されるので、ステップS11以下に進み、更新がなされた場合にミキサエンジン10側のプリセットコンポーネントセットのバージョン情報を更新後のものに更新して終了する。既に更新がなされており、PC30側とミキサエンジン10側とでデータが整合していた場合には、改めて更新を行うことはないが、この場合にはそのまま処理を終了する。
以上の処理をPC30に実行させるようにすることにより、編集プログラムのバージョンアップがなされ、コンポーネントが新規に開発されたり、改良されたりした場合でも、これをPC30側に一度インストールして起動し、ミキサエンジン10と接続するのみで、ミキサエンジン10側のコンポーネントに関するデータも自動的に更新することができる。従って、ミキサシステム全体についての更新作業を容易に行うことができる。
また、新規に開発されたり改良されたりしたコンポーネントについて、プリセットコンポーネントデータを1コンポーネント単位で差替えることもできる。
なお、図5に示した処理において、ステップS5の処理はコンポーネントが追加された場合の更新に、ステップS6の処理はコンポーネントが改良(バージョンアップ)された場合の更新に対応する処理であり、これらを両方行うことは必須ではない。
また、ステップS3の判断を、コンポーネントセットのバージョン情報の比較ではなく、各プリセットコンポーネントのIDとバージョンの比較により行うようにしてもよい。このようにした場合、IDが同じプリセットコンポーネントでPC30側の方がバージョンが古いものがあったり、ミキサエンジン10側にあってPC30側にないプリセットコンポーネントがあったりした場合には、ステップS3の判断がYESになる。
さらにまた、図5にはコンポーネントが追加や改良されていた場合に必ず更新を行う例を示したが、更新を行う前に、ディスプレイにダイアログボックスを表示し、更新の可否をユーザに確認するようにしてもよい。
また、コンポーネントを必須なものと必須でないものとに分け、必須でないコンポーネントのデータは、ミキサエンジンやPCから削除できるようにしてもよい。この場合には、削除したコンポーネントに関しては不整合が検出された場合でも更新や警告を行わないようにするとよい。
また、図5に示した処理において、ミキサエンジン10においてプリセットコンポーネントデータの記憶のために用意された記憶領域の空き容量を管理し、ミキサエンジン10に転送しようとするプリセットコンポーネントデータが、その空き容量で記憶できるものか否か判断して、記憶できない場合には転送を中止してその旨の警告を行うようにするとよい。ここで、記憶領域の大きさについては、ミキサエンジン10の機種コード等から把握できる。そして、使用している容量については、エンジン用プリセットコンポーネントデータの大きさを古いバージョンのものも含めて記憶しておけば、ミキサエンジン10に記憶しているプリセットコンポーネントのID及びバージョンの情報を取得してその情報をもとに検索することにより、把握できる。
〔コンポーネントのプロテクトに関する説明:図6乃至図13〕
次に、このミキサシステムにおける、コンポーネントのプロテクトについて説明する。
このミキサシステムにおいては、いくつかの特定のコンポーネントについては、そのコンポーネントに係る音響信号処理を、ミキサエンジン10に所定の解除キーが記憶されている場合のみ許可するようにし、コンポーネントをプロテクトするようにしている。ただし、そのコンポーネントを含む信号処理構成の編集は、解除キーの有無に関わらず許可するようにしている。
また、上記の解除キーは、まずメーカーが用意するライセンスサーバからPC30に転送し、PC30がミキサエンジン10に転送するようにしている。そして、PC30において実行する編集プログラムには、この解除キーを管理するためのキー管理プログラムも含めるようにしている。
なお、解除キーをミキサエンジン10に記憶させるのは、実際に音響信号処理を実行する装置に記憶させた方が、解除キーの有無と音響信号処理の可否との対応関係がはっきりするためである。また、ミキサエンジンとPCとは任意に組み合わせて接続することが可能であり、ミキサエンジン10が単独でも音響信号処理が可能な構成であると、PC30側に解除キーを記憶させたのでは、ミキサエンジン毎に音響信号処理の可否を管理することが困難であるという理由もある。
ここで、以後の説明において、説明の便宜のため、プロテクトを行うプリセットコンポーネントを「有償コンポーネント」と呼ぶことにする。しかしこれは、プロテクトを行うプリセットコンポーネントを使用に対価を要求するコンポーネントに限定する意図ではない。例えば、後述する解除キーに対価を要求せず、単にユーザ管理のためにプロテクトを行うことも考えられる。
ところで、上記のような解除キーの管理方式としては、例えば以下に示す2つの方式が考えられる。まず、第1のキー管理方式について、図6及び図7を用いて説明する。
この第1のキー管理方式では、PC30が、単にライセンスサーバ100からミキサエンジン10への解除キーの転送を仲介する機能を果たす。
すなわち、この方式においては、ユーザは、まずPC30においてキー管理プログラムを起動し、ライセンスサーバ100にアクセスして、プロテクトを解除したい有償コンポーネントのID(識別情報)と、その有償コンポーネントを使用したいミキサエンジンのIDとを送信し、対価を支払う。そして、ライセンスサーバ100は、対価の支払いを確認すると、解除キーをPC30に転送する。そしてPC30は、解除キーを受け取ると、送信したIDと対応するミキサエンジン10にこれを転送し、解除キーを受け取ったミキサエンジン10は、これを記憶手段であるフラッシュメモリ12に記憶する。なお、解除キーを記憶する記憶領域は、当然ユーザに操作されない領域に設けるものとする。
対価の支払いや、ライセンスサーバ100とPC30との間及びPC30とミキサエンジン10との間の安全なデータ転送については、適宜公知の技術を採用すればよい。
また、解除キーは、有償コンポーネント毎かつミキサエンジン毎に作成するようにするのがよく、例えば図7に示すように、プロテクトを解除する有償コンポーネントのID(プリセットコンポーネントID)と、その有償コンポーネントを使用するミキサエンジンのIDとの情報を含むデータとするとよい。これらのデータは、暗号化されていてもよいし、所要の演算によって一連のデータにまとめられていてもよい。あるいは、解除キーとプリセットコンポーネントIDとミキサエンジンIDとを用いて所定の演算を行うと所定の結果が得られる等でもよく、特定のミキサエンジンIDとプリセットコンポーネントIDとの組み合わせに対してライセンスが与えられるようなものであればよい。
また、上記にような解除キーに、さらに、本件出願人が特願2003−287367で提案しているような、ユーザにパッケージ販売するシリアル番号を含めるようにして、ライセンスをそのパッケージのシリアル番号で管理できるようにしてもよい。
次に、第2のキー管理方式について、図8乃至図12を用いて説明する。
この第2のキー管理方式では、PC30にキープールを設け、PC30に接続された任意のミキサエンジンとの間で解除キーの付与/回収を可能としている。
すなわち、この方式においては、ユーザは、まずPC30においてキー管理プログラムを起動し、ライセンスサーバ100にアクセスして、プロテクトを解除したい有償コンポーネントのIDと、PC30の装置IDあるいは編集プログラムやそのユーザのIDと、必要な解除キーの数(ライセンス数)とを送信し、対価を支払う。そして、ライセンスサーバ100は、対価の支払いを確認すると、プール用解除キーをPC30に転送し、PC30はこれを受け取ると、自身のキープールに受け取った解除キーを追加する。
プール用解除キーの形式は、図7に示したものと似ているが、エンジンIDに代えてPC30等のIDを含むものである。同一の有償コンポーネントについて複数のプール用解除キーを転送する場合には、全く同一のキーとしても、シリアル番号等を付して互いに異なるキーとしてもよい。また、キープールは、ユーザに操作されないような位置に設けるものとする。
そして、ユーザがPC30において、解除キーの付与先となるミキサエンジン10と、プロテクトを解除したい有償コンポーネントの種類とを指定して解除キーの付与を指示すると、PC30はキープールにおけるキー数を減少させると共に、図7に示したような解除キーを生成してミキサエンジン10にこれを転送し、解除キーを受け取ったミキサエンジン10は、これを記憶手段であるフラッシュメモリ12に記憶する。また、逆にユーザが解除キーを記憶しているミキサエンジン10と、解除キーを回収したい有償コンポーネントの種類とを指定して解除キーの回収を指示すると、PC30はミキサエンジン10に対してその解除キーを消去する旨の指示を出し、自身のキープールにおけるキー数を増加させる。
図9に、上記の解除キーの付与及び回収の指示を行うための表示画面であるキープール管理画面の表示例を示す。
ここに示した解除キー管理画面50は、PC30にエンジンAとエンジンBの2台のミキサエンジンが接続されている場合の例を示しており、キープール管理部51、エンジンA管理部52、エンジンB管理部53の3つの表示部を有する。
このうち、キープール管理部51は、PC30のキープールに記憶している解除キーの数を表示する表示部であり、PC30が記憶している全ての有償コンポーネント(ヘッダにプロテクト有が設定されているプリセットコンポーネント)について、キープールに存在する解除キーの数を表示している。
エンジンA管理部52及びエンジンB管理部53には、PC30に接続されている各ミキサエンジンが記憶しているプリセットコンポーネントのうち、全ての有償コンポーネントについて、そのミキサエンジンに対応する解除キーが記憶されているか否かを表示する表示部である。これらの表示部は、PC30に接続されているミキサエンジンと対応させて設けられるものであり、これらの表示部に表示する解除キーの有無の情報は、表示時に各ミキサエンジンに問い合わせて取得する。そして、解除キー管理画面50が消去された場合には、その有無の情報を記憶しておく必要はない。
また、これらの表示形式からわかるように、PC30のキープールには同一の有償コンポーネントについての解除キーを複数持つことができるが、各ミキサエンジンには、同一の有償コンポーネントについての解除キーは1つだけ記憶させるようにしている。
このような解除キー管理画面50においては、ユーザは、キープール管理部51から、ミキサエンジンに付与したい解除キーの「キー数」をドラッグし、付与先のミキサエンジンに対応するエンジン管理部にドロップすることにより、そのミキサエンジンへの解除キーの付与を指示することができる。逆に、エンジン管理部から、対応するミキサエンジンから回収したい解除キーの「キー有無」をドラッグし、キープール管理部51にドロップすることにより、解除キーの回収を指示することができる。
また、キープール管理部51から、「有償コンポーネント」をドラッグし、エンジン管理部にドロップすることにより、その有償コンポーネントのミキサエンジンへの転送を指示することができる。この場合、PC30は、図5のステップS7及びS8と同様な処理によりプリセットコンポーネントデータの転送を行い、転送後の状態に従って解除キー管理画面50の表示を更新する。
また、ミキサエンジンからの有償コンポーネントの削除も指示できるようにしてもよいが、解除キーが記憶されているものについては、先に解除キーを回収してからでないと削除できないようにするとよい。あるいは、有償コンポーネントの削除指示に応じて、解除キーが記憶されている場合はその解除キーをミキサエンジンから自動的に回収し、その後に指示された有償コンポーネントを削除するようにしてもよい。
ここで、ミキサエンジンへの解除キーの付与指示を受けた場合には、PC30のCPUは、図10のフローチャートに示す処理を実行する。そしてまず、ミキサエンジンにキー付与を指示された有償コンポーネントのデータが記憶されていない場合には、ステップS21からステップS22以下に進む。そして、ステップS22乃至S24で、ユーザにプリセットコンポーネントデータの転送の要否を確認し、転送の指示を受けた場合にはその転送を行う。転送不要の指示を受けた場合には、そのまま処理を終了する。
また、ステップS21でデータが記憶されていた場合又はステップS24での転送後には、ステップS25に進み、PC30のキープールに付与を指示された解除キーがあるか否か判断する。そして、なければ、付与を行うことができないため、ステップS29でユーザにその旨の警告を行って処理を終了する。
ステップS25で解除キーがあれば、ステップS26に進み、付与先のミキサエンジンに既に付与を指示された解除キーが記憶されているか否かを判断する。そして、記憶されていれば、付与を行う必要がないので、ステップS29でユーザにその旨の警告を行って処理を終了する。
そして、ステップS26で記憶されていなければ、ステップS27及びS28で、ミキサエンジンに付与する解除キーを生成し、キープールのキー数及びミキサエンジンにおける解除キーの有無を変更すると共に、生成した解除キーを指示されたミキサエンジンに転送して処理を終了する。
以上の処理により、適切に解除キーの付与が指示された場合に、その指示に従ってミキサエンジン10に解除キーを記憶させることができる。
なお、ステップS22乃至S24の処理を行うことは必須ではなく、ステップS21でNOの場合にも、ユーザにその旨の警告を行って処理を終了してもよい。また、ステップS29のものも含め、警告の実行も必須ではない。
また、解除キーの回収指示を受けた場合には、PC30のCPUは、図11のフローチャートに示す処理を実行する。そしてまず、ステップS31で、回収先として指示されたミキサエンジンに対し、解除キーの返還を指示し、ステップS32及びS34で、ミキサエンジンからの応答の通知を待つ。
そして、削除通知があった場合には、ステップS32からステップS33に進み、削除通知に従ってミキサエンジンにおける解除キーの有無及びキープールのキー数を変更し、処理を終了する。一方、キーを移動できない旨の通知があった場合には、回収を指示した解除キーに係る有償コンポーネントをミキサエンジンにおいて使用中であることがわかるので、ステップS35でその旨の警告表示を行って処理を終了する。なお、所定時間内にどちらの通知もなかった場合には、タイムアウトのエラー処理を行うようにするとよい。
なお、キーを移動できない旨の通知があった場合でも、DSP20に設定してあるプログラムを、その解除キーに係る有償コンポーネントを使用していないものに変更してから再度回収指示を行うことにより、解除キーの回収を行うことができる。
また、ミキサエンジン10のCPU11は、PC30から解除キーの返還指示を受けた場合に、図12のフローチャートに示す処理を実行する。そしてまず、ステップS41で返還指示に係る有償コンポーネントを使用するマイクロプログラムがDSP20に設定されているか否か判断する。そして、設定されていなければ、返還指示に係る有償コンポーネントは使用中でなく、解除キーを返還しても差し支えないので、ステップS42でフラッシュメモリ12から返還指示に係る解除キーを削除すると共に、その旨を示す削除通知をPC30に送信して処理を終了する。ここで、PC30では解除キーの数のみを管理しているので、キー自体を送信する必要はない。また、ミキサエンジン10が記憶している解除キーがどのPCから送信されてきたものであるかも考慮する必要はない。
なお、後述する第1または第2のプロテクト方式を採用した場合、ここで解除キーを削除する際に、その削除される解除キーに対応する有償コンポーネントを含むコンフィグデータについても、ミキサエンジン10中に残らないよう削除する必要がある。
一方、ステップS41で設定されていた場合には、返還指示に係る有償コンポーネントは使用中であり、解除キーを返還してしまうと、解除キーのない有償コンポーネントに係る音響信号処理を行ってしまうことになるので、ステップS43でPC30にキーを移動できない旨の通知を送信して処理を終了する。なお、返還指示に係る有償コンポーネントが使用中であった場合に、そのコンポーネントを含む信号処理を強制的に中止させ、解除キーを返還するようにしてもよい。
以上のような方式によれば、第1のキー管理方式に比べて処理は多少複雑になるが、必要に応じて解除キーを移転可能であり、より柔軟性や利便性の高いキー管理を行うことができる。
次に、有償コンポーネントに係る音響信号処理を禁止する処理及び、上述した解除キーを使用してその禁止を解除する処理について説明する。
このような処理は、ユーザにコンフィグデータ(編集した信号処理構成を示すデータ)のコンパイルを指示された場合にPC30側で実行する処理又は、その処理によって転送されるエンジン転送用CADデータを受信した場合にミキサエンジン10が実行する処理の中で、所定のプロテクト処理を実行することによって行うことができる。そして、プロテクト処理を行う箇所としては、以下に説明する4箇所のうちいずれかの箇所で行うようにすることが好ましい。以下、まず処理全体の流れを説明し、その後で、プロテクト処理の内容及び挿入箇所(図13及び図14に破線で示した)について説明する。
まず、図13に、コンフィグデータのコンパイルを指示された場合にPC30側で実行する処理のフローチャートを示す。
PC30のCPUは、ユーザにコンパイルの指示を受けると、図13のフローチャートに示す処理を開始する。そして、まずステップS51で、コンパイル対象のコンフィグデータに係る音響信号処理を実行させるミキサエンジン10に、そのコンフィグデータに含まれるプリセットコンポーネントデータが全て記憶されているか否か判断する。そして、記憶されていなければ、ステップS58でエラー処理を行い、警告表示等を行って処理を終了する。
一方、記憶されていれば、ステップS52及びS53で、編集中のPC用CADデータ全体をエンジン転送用のCADデータにコンパイルし、これを対象のミキサエンジン10に転送する。PC30のCPUは、ステップS52の処理においては変換手段として、ステップS53の処理においては転送手段としてそれぞれ機能する。
そして、ステップS54で、前回コンパイル時からCADデータに含まれるコンポーネントに変化があったか否か判断する。この変化には、バリエーションの変化も含む。そして、変化があれば、ステップS55及びS56で、コンパイルしたPC用CADデータに基づいて、その信号処理構成に係るパラメータを記憶するための記憶領域を用意し、コンパイル前のカレントシーン及び各シーンをその記憶領域にコピーして処理を終了する。ただし、このコピーは、上述したユニークIDによりCADデータの編集の前後で各コンポーネントの対応付けをし、その対応付けられたコンポーネント間でさらに対応するデータ部分のみをコピーする異構成間コピーであり、その内容については、バリエーションの変更に関する説明において詳述する。
また、ステップS54で変化がなかった場合には、ステップS57で前回コンパイル時のカレントシーン及び各シーンをそのまま引き継いで処理を終了する。一般に、変更のないコンポーネントについてはパラメータの設定を引き継ぎたいという要求があることから、このようにしたものである。
以上の処理により、PC30側で編集した信号処理構成の情報をミキサエンジン10に転送すると共に、前回転送時の信号処理構成に係るパラメータの設定値のうち、対応するものを最新の信号処理構成に引き継ぐことができる。なお、レスポンスを重視する場合には、パラメータの引き継ぎはカレントシーンのみについて行うようにしたり、或いは、まずカレントシーンのみ引き継ぎを行ない、各シーンの引き継ぎはその後にバックグラウンド処理として行なうようにしてもよい。
なお、1つのコンフィグデータの編集を行いながらコンパイルを行っている場合には、直前のコンフィグIDと同じコンフィグIDであるので、ステップS54乃至S57の異構成間コピーが可能である。逆に、前回のコンパイル時とコンフィグIDが異なる場合には、信号処理構成が前回コンパイル時と全く異なることが予想されるため、ステップS54乃至S57の処理は行わないようにするとよい。そして、これに代えて、ステップS55と同様な処理で用意した記憶領域に、所定の初期値書き込むようにするとよい。
次に、図14に、エンジン転送用CADデータを受信した場合にミキサエンジン10が実行する処理のフローチャートを示す。
ミキサエンジン10のCPU11は、PC30が図13のステップS53の処理で転送したエンジン転送用CADデータを受信すると、図14のフローチャートに示す処理を開始する。そして、ステップS61で、受信したエンジン転送用CADデータをエンジン用CADデータとして記憶し、ステップS62で、前回受信したCADデータからCADデータに含まれるコンポーネントに変化があったか否か判断する。この変化には、バリエーションの変化も含む。
そして、変化があれば、ステップS63及びS64で、図13のステップS55及びS56の場合と同様に、受信したCADデータに基づいて用意した記憶領域に、CADデータ受信前のカレントシーン及び各シーンを、異構成間コピーによりその記憶領域にコピーする。ステップS62で変更がなかった場合は、ステップS65で、図13のステップS57の場合と同様にCADデータ受信時のカレントシーン及び各シーンをそのまま引き継ぐ。この場合において、前回のコンパイル時とコンフィグIDが異なる場合に、ステップS62乃至S65の処理に代えて、ステップS63と同様な処理で用意した記憶領域に、所定の初期値書き込むようにするとよいことは、上述のステップS54乃至S57の場合と同様である。
ステップS64又はS65の後は、ステップS66及びS67に進み、受信したエンジン用CADデータに基づいてDSP20にそのCADデータに係る音響信号処理を実行させるためのマイクロプログラムを生成し、これをDSP20に設定してカレントデータに基づいた音響信号処理を開始させて処理を終了する。CPU11は、ステップS66の処理において、プログラム生成手段として機能する。
以上の処理により、PC30から受信したCADデータに従った音響信号処理をDSP20に実行させることができる。なお、CADデータ受信前のカレントシーンや各シーンの内容がPC30側でのコンパイル前の内容と一致していれば、ステップS62乃至S65の処理により、CADデータ受信後のカレントシーン及び各シーンの内容を、PC30側でのコンパイル後の内容と一致させることができる。
次に、図15に、PC30側で実行する、第1及び第2のプロテクト方式に係るプロテクト処理のフローチャートを示す。
この処理においては、PC30のCPUは、まずステップS71で、コンパイル対象のCADデータが、有償コンポーネントを含むものであるか否か判断する。そして、含まない場合には、プロテクトを行う必要はないので、そのまま元の処理に戻り、処理を継続する。
一方、含む場合には、ステップS72で転送先のミキサエンジンが必要な解除キーを全て記憶しているか否かを確認し、必要な解除キーを1つでも記憶していなければ、ステップS73からS74に進み、必要な解除キーがない旨の警告表示を行ってそのまま処理を終了する。この場合には、対象のCADデータに係る音響信号処理は禁止されたことになる。また、必要な解除キーを全て記憶していれば、対象のCADデータに係る音響信号処理を禁止する必要はないので、ステップS73から元の処理に戻り、処理を継続する。すなわち、対象のCADデータに係る音響信号処理の禁止を解除する。
以上の処理により、有償コンポーネントを含む音響信号処理の実行を禁止すると共に、信号処理を実行しようとするミキサエンジン10に禁止を解除するための解除キーが記憶されている場合にその禁止を解除することができる。そして、この処理において、ステップS72乃至S74においては、PC30のCPUが禁止手段として機能し、またステップS73の判断がYESの場合には、同CPUが解除手段として機能する。
なお、ステップS72の確認は、ミキサエンジン10に問い合わせを行い、記憶している解除キーの内容を調査して行うようにするとよい。ミキサエンジン10とPC30とは、自由に繋ぎ変えることができるため、実際にミキサエンジン10が記憶している解除キーの種類と、PC30側で認識している種類とが一致しなくなってしまうことも考えられるためである。
また、このとき、解除キーを記憶しているミキサエンジンのIDと有償コンポーネントのIDとが解除キーに含まれている場合にのみ、適当な解除キーが記憶されていると判断するようにするとよい。このようにすることにより、解除キーを複製して他のミキサエンジンで使用するような行為を防止でき、不正防止に効果がある。
ところで、図15に示した処理を実行するタイミングとしては、図13のステップS52とS53との間(第1のプロテクト方式)、あるいはステップS51とS52との間(第2のプロテクト方式)が考えられる。
そして、PC30のCPUは、第1のプロテクト方式の場合には、ミキサエンジン10が必要な解除キーを記憶していない場合にCADデータの転送を禁止することにより音響信号処理の実行を禁止する手段として機能することになる。また、第2のプロテクト方式の場合には、同じくCADデータの変換を禁止することにより音響信号処理の実行を禁止する手段として機能することになる。
次に、図16に、ミキサエンジン10側で実行する、第3及び第4のプロテクト方式に係るプロテクト処理のフローチャートを示す。この処理は、図15に示した処理と対応するものである。
この処理においては、ミキサエンジン10のCPU11は、まずステップS81で、受信したCADデータに係る音響信号処理が、使用に解除キーの必要なものであるか否か判断し、必要ない場合には、そのまま元の処理に戻り、処理を継続する。
一方、必要な場合には、ステップS82で自身が必要な解除キーを全て記憶しているか否かを確認し、必要な解除キーを1つでも記憶していなければ、ステップS83からS84に進み、PC30に必要な解除キーがない旨の警告表示を指示してそのまま処理を終了する。併せてミキサエンジン10自身で表示器14に警告表示を行うようにしてもよい。この場合には、対象のCADデータに係る音響信号処理は禁止されたことになる。また、必要な解除キーを全て記憶していれば、ステップS83から元の処理に戻り、処理を継続する。すなわち、音響信号処理の禁止を解除する。
以上の処理により、図15の処理の場合と同様に、音響信号処理の禁止及びその解除を行うことができる。そして、この処理において、ステップS82乃至S84においては、CPU11が禁止手段として機能し、またステップS83の判断がYESの場合には、同CPUが解除手段として機能する。
また、図16に示した処理を実行するタイミングとしては、図14のステップS61とS62との間(第3のプロテクト方式)、あるいはステップS66とS67との間(第4のプロテクト方式)が考えられる。
そして、CPU11は、第3のプロテクト方式の場合には、ミキサエンジン10が必要な解除キーを記憶していない場合にDSP20に音響信号処理を行わせるためのマイクロプログラムの生成を禁止することにより音響信号処理の実行を禁止する手段として機能することになる。また、第4のプロテクト方式の場合には、同じくDSP20によるマイクロプログラムの実行を禁止することにより音響信号処理の実行を禁止する手段として機能することになる。なお、第4のプロテクト方式において、生成したマイクロプログラムのみから解除キーの要否を判断できるのであれば、プロテクト処理においてCADデータを参照することは必須ではない。また、ステップS67においてDSP20にマイクロプログラムを設定した後に、その実行を禁止するようにしてもよい。
以上の第1乃至第4のプロテクト方式は、重複して適用することも可能であるが、少なくともいずれか1つを適用すれば足りる。ただし、ミキサエンジン10が単独でも音響信号処理をなし得る構成である場合には、ミキサエンジン10側に禁止手段を設け、ミキサエンジン10単独でも音響信号処理の禁止が可能である第3又は第4のプロテクト方式が、不正防止の観点からは好ましい。
また、以上のような各処理を行うことにより、ミキサエンジン10が適当な解除キーを記憶している場合のみ、そのミキサエンジン10において有償コンポーネントを使用する音響信号処理を実行可能とすることができる。従って、ユーザに有償コンポーネントのデータを提供した場合でも、その使用を提供者側が管理することができ、データの使用に対する課金等を容易に行うことができる。また、解除キーがない場合でも、有償コンポーネントを用いた信号処理構成の編集は可能としているので、ユーザに有償コンポーネントの有用性を認識してもらい、ライセンス購入の動機付けを行うことができる。
なお、上述した処理においては、ミキサエンジン10における同一の有償コンポーネントについての解除キーの記憶数を管理せず、1つ解除キーがあれば、信号処理構成中に対応する有償コンポーネントがいくつあっても処理を許可する例について説明した。しかし、解除キーの記憶数を管理し、音響信号処理の実行に、そこに含まれる有償コンポーネントの数と同数の解除キーを要求するようにしてもよい。ただし、上述した処理の方が、解除キーの管理処理を単純化できる。
また、上述した処理の場合のような編集中のPC用CADデータだけでなく、PC30が記憶している任意のPC用コンフィグデータをミキサエンジン10に転送し、エンジン用コンフィグデータとして記憶させることができるようにすることも考えられる。この場合、PC30は、コンフィグデータの転送指示に応じて、指示されたPC用コンフィグデータに含まれるPC用CADデータをコンパイルし、コンフィグヘッダとエンジン用CADデータと複数のシーンデータとを含むエンジン用コンフィグデータを生成してミキサエンジン10へ転送する。そして、ミキサエンジン10は、受け取ったエンジン用コンフィグデータを、指定されたRAM13の記憶領域へ記憶する。
そして、上述の第1又は第2のプロテクト方式を採用している場合(PC30側でのみプロテクト処理を行う場合)には、このようなコンフィグデータの転送の際にも、PC30側で以下のようなプロテクト処理を行うとよい。
すなわち、PC用コンフィグデータの転送に際して、図15又は図16に示した処理と同様な処理を行い、転送しようとするPC用コンフィグデータ中のPC用CADデータに有償コンポーネントが含まれていないこと、あるいは、有償コンポーネントが含まれているが転送先のミキサエンジン10が必要な解除キーを記憶していることを確認し、確認ができた場合のみそのPC用コンフィグデータの転送を実行するようにするとよい。そして、確認ができなかった場合は、必要な解除キーが足りない旨の警告を行なうようにするとよい。なお、第2のプロテクト方式の場合のように、ミキサエンジン10が必要な解除キーを記憶していなかった場合にコンパイルを行わないようにしてもよい。
また、上述の第3又は第4のプロテクト方式を採用している場合(ミキサエンジン10側でプロテクト処理を行う場合)には、このようなPC30側でのプロテクト処理は行わなくてもよい。
また、ミキサエンジン10に転送したコンフィグデータをミキサエンジン10の制御に使用しようとする場合、ユーザに、ミキサエンジン10のRAM13に記憶されている複数のエンジン用コンフィグデータの1つを、ミキサエンジン10で実行する信号処理の構成を示すコンフィグデータとして選択させればよい。そしてこの場合、ミキサエンジン10は、このような選択がなされると、選択されたエンジン用コンフィグデータ中のエンジン用CADデータに基づいてマイクロプログラムを作成してDSP20に供給し、対応する信号処理動作を開始させるともに、そのエンジン用CADデータに基づいて、選択されたエンジン用コンフィグデータの各シーンおよび対応するカレントシーンのアクセス準備を行い、さらに、カレントシーンを初期化して、カレントシーンのパラメータに基づく信号処理動作の制御を開始する。
そして、上述の第3又は第4のプロテクト方式を採用している場合(ミキサエンジン10側でプロテクト処理を行う場合)には、このマイクロプログラムを作成する時点あるいはDSP20に信号処理動作を開始させる時点でプロテクト処理を行うとよい。すなわち、これらの処理を開始する際に、上述の転送の場合と同様に、ミキサエンジン10が実行しようとする信号処理に必要な解除キーを記憶していることを確認し、確認ができた場合のみその処理を実行するようにするとよい。
なお、上述の第1又は第2のプロテクト方式を採用している場合には、ミキサエンジン10が実行に必要な解除キーを記憶していないようなコンフィグデータは、ミキサエンジン10に転送できないはずであるから、このようなPC30側でのプロテクト処理は行わなくてもよい。
また、図1に示したようなミキサシステムの構成として、PC側でマイクロプログラムの生成を行い、これをミキサエンジンに転送する構成のものも知られている。そして、このようなミキサシステムに上述したプロテクトの処理を適用しようとする場合には、PC側で生成したマイクロプログラムが、編集した信号処理構成をミキサエンジンでの処理に適した形式で示すデータであると考え、これを上述した処理におけるエンジン転送用CADデータ(あるいはエンジン用CADデータ)と同等に取り扱えばよい。
この場合、第1のプロテクト方式と対応する方式として、PCからミキサエンジンにマイクロプログラムを転送しようとする場合に、そのもとになったPC用CADデータに含まれるプリセットコンポーネントから解除キーの要否を判断し、ミキサエンジンが必要な解除キーを記憶していない場合に転送を禁止するようにする方式が考えられる。
また、第2のプロテクト方式と対応する方式として、PCがマイクロプログラムを生成しようとする場合に、上記と同様にその生成を禁止するようにする方式が考えられる。
さらに、第4のプロテクト方式と対応する方式として、ミキサエンジンがマイクロプログラムをDSPに実行させようとする場合に、上記と同様にその実行を禁止するようにする方式が考えられる。
なお、以上のような各変形を適用する場合も、解除キーの管理に関しては、上述した第1又は第2のキー管理方式と同様なものを適用することができる。
〔バリエーションの変更に関する説明:図17乃至図28〕
次に、このミキサシステムにおける、信号処理構成編集中のコンポーネントのバリエーション変更について説明する。
まず、バリエーションの用途及び機能について、入力端子数に関するバリエーションを有するオートミキサ(AutoMixer)を例に取り、図2及び図17を用いて説明する。オートミキサは、入力のうち最大レベルのものをそのまま出力し、他の入力を減衰させるコンポーネントである。
例えば、図2に示したような信号処理構成を編集したとすると、オートミキサのコンポーネントは、入力端子を全て使用した状態となっている。従って、図17に破線で示したような新たな入力部を配置し、そこからの信号をオートミキサに入力しようとしても、オートミキサに空いた入力端子がないため、このような結線を設定することができない。しかし、オートミキサのコンポーネントを、より入力端子の多い6入力のバリエーションのものに変更することにより、図17に破線で示したような結線を設定できるようになる。
逆に、図17に示したように6つの入力端子を全て使用している状態から、破線で示した入力部を削除した場合等には、もはや入力端子は4つでよいため、より入力端子の少ない4入力のバリエーションのものに変更することにより、DSP20における信号処理に必要なリソースを低減することができる。
そして、このミキサシステムにおいては、バリエーションを変更した場合に、元のコンポーネントの端子に接続されていた結線のうち、置き換え後のコンポーネントにも対応する端子が存在するものを、その置き換え後のコンポーネントに引き継ぐと共に、パラメータについても、元のコンポーネントに関するパラメータの設定値のうち、置き換え後のコンポーネントにも対応するパラメータが存在するものを、その置き換え後のコンポーネントに引き継ぐようにしている。
バリエーションの変更の場合には、処理の基本的な機能が同一なコンポーネントへの置き換えであるから、変更前のコンポーネントに関する設定を変更後のコンポーネントにおいても維持したいという要求が強い。従って、このような処理を行うことにより、コンポーネントを置き換えた場合の、結線やパラメータの再設定の手間を最小限に抑え、信号処理構成編集の操作性を向上させることができる。また、編集操作の内容を直感的でわかりやすいものにすることができる。
そして、このような処理が可能となったのは、処理の基本的な機能が同一なコンポーネント群について、バリエーションという特別の定義を与え、元のコンポーネントと置き換え後のコンポーネントの対応関係を容易に認識できるようにしたためである。
次に、このようなバリエーションの変更を行う際の操作及び処理について説明する。
まず、図18にプロパティ設定画面の例を示す。
図2や図17に示したCAD画面40において、画面に配置されたコンポーネントを選択し、メニューからプロパティの変更を選択すると、図18に示すようなプロパティ設定画面60がポップアップウィンドウとして表示される。
この画面は、ラベル設定部61、幅設定部62、高さ設定部63、バリエーション設定部64、色設定キー65、キャンセルキー66、OKキー67を有する。
ユーザは、このうち幅設定部62及び高さ設定部63により、コンポーネントをCAD画面40に表示する際のシンボルの幅及び高さをそれぞれ設定することができ、ラベル設定部61により、そのコンポーネントのシンボルに付すラベルの文字列を設定することができる。
また、バリエーション設定部64により、選択されたコンポーネントを、対応するプリセットコンポーネント中のどのバリエーションのコンポーネントにするかを設定することができる。すなわち、選択されたコンポーネントを、別のバリエーションのコンポーネントに変更する指示を行うことができる。そして、このバリエーション設定部64はプルダウンメニューになっており、右側の逆三角形のアイコンをクリックすると、図19に示すようなメニューが表示され、バリエーションを選択することができる。
ここで例に示したオートミキサのバリエーションは、入力端子数が異なるもののみであるので、バリエーション設定部64の表示内容は図18及び図19に示したようになるが、例えばマトリクスミキサのように入出力端子数の双方についてバリエーションがある場合には、図20(a)のように、入力端子数と出力端子数の2つのパラメータの設定を受け付けることも考えられる。また、パラメトリックイコライザのようにバンド数にバリエーションがある場合には、図20(b)のように、バンド数の設定を受け付けることになる。
色設定キー65は、CAD画面40におけるコンポーネントの表示色を設定する画面を表示させるためのキーである。また、キャンセルキー66を押下すると、それまでの設定変更を反映させずにもとのCAD画面40に戻る。OKキー67を押下すると、それまでの設定変更を反映させてもとのCAD画面40に戻る。
このとき、コンポーネントの幅、高さ、バリエーション、色等が変更されていれば、変更後の設定に従ってCAD画面40を再描画する。また、変更後のプロパティデータは、図3に示したPC用CADデータ中のプロパティデータとして記憶しておく。
次に、図21に、プロパティ設定画面60における設定内容を反映させるための処理のフローチャートを示す。この処理は、PC30のCPUが、プロパティ設定画面60のOKキー67が押下された場合に実行する処理である。
そして、この処理においては、ステップS91乃至S93で、バリエーション設定部64においてバリエーションの変更が指示されていた場合に、その内容に従ってPC用CADデータ中のプロパティデータに含まれるバリエーション情報を変更すると共に、変更前後のバリエーションにおける端子の対応関係に従って、変更前の結線データから変更後のバリエーションについての結線データを作成する。このうち、ステップS93の処理においては、PC30のCPUが第1の引継手段として機能する。
そして、ステップS94及びS95では、その他、コンポーネントのサイズや色等の変更があれば、その内容に従ってPC用CADデータ中のプロパティデータを変更する等の、変更に応じた処理を行う。なお、バリエーションの変更があった場合に、変更後の端子数等に応じて適当なサイズを自動的に設定することが考えられるが、その場合のサイズ変更に係る処理もここで行う。
その後、ステップS96では、ここまでの処理による変更後の新たなプロパティデータに基づいてCAD画面40を再描画し、処理を終了する。
以上の処理により、コンポーネントのバリエーションが変更され、コンポーネントが異なるバリエーションのものに置き換えられた場合でも、変更前のバリエーションについて設定されていた結線のうち、可能なものを置き換え後のコンポーネントに引き継ぐことができる。
ここで、異なるバリエーションに含まれる端子間の対応関係と結線の引き継ぎ内容について、より詳細に説明する。図22には、オートミキサのバリエーションの例として、4入力,6入力,8入力のオートミキサコンポーネントの表示例をそれぞれ示している。
そして、これらのバリエーションに含まれる端子について、同じ番号を付した端子同士が対応するものとしている。このうち、右側の出力端子については、どのバリエーションにも1つずつであるから、これらを対応させることは当然と言える。そして、左側の入力端子については、上側に表示する端子から順に番号を付し、端子数を増加させる場合には下側に端子を追加し、端子数を減少させる場合には下側から端子を削除するようにしている。
そして、この対応関係に基づいて置き換え後のコンポーネントについての結線データを作成する場合、置き換え後のコンポーネントに、元のコンポーネントの端子と対応する端子が存在すれば、その対応する端子を引き続き元のコンポーネントの端子の場合と同じ相手と結線するようにし、対応する端子が存在しなければ、その元の端子に関する結線データを削除するようにしている。
例えば、4入力のオートミキサを、バリエーションの変更により6入力のオートミキサに置き換える場合、出力端子及び1番から4番の入力端子に関する結線データは、変更前のものを6入力のオートミキサに関する結線データとしてそのまま引き継ぎ、5番及び6番の入力端子については結線データがない状態になる。逆に、6入力を4入力に変更する場合には、出力端子及び1番から4番の入力端子に関する結線データは変更前のものを4入力のオートミキサに関する結線データとしてそのまま引き継ぐが、5番及び6番の入力端子については、変更後に対応する端子がないため、削除することになる。
なお、結線データの削除を行う場合でも、接続先がなくなった結線を自由端の状態で表示しておくと、結線の再設定を行い易くすることができる。また、出力端子の数も変更しうる場合には、出力端子についても同様な対応をするとよい。また、バリエーションの変更時に、各端子の対応関係をユーザが任意に設定できるようにしてもよい。
ところで、このミキサエンジンにおいては、コンポーネントのバリエーションを変更した場合、そのコンポーネントについて設定されていたパラメータの値も、元と対応するパラメータがあれば置き換え後のコンポーネントに引き継ぐようにしている。そして、この処理は、プロパティの設定終了後、PC30において「コンパイル」が実行された場合、そのコンパイルに関連する処理の一環として、図13のステップS55及びS56の処理において行われる。この時点で引き継ぎの処理を行うのは、コンパイルを行って初めてパラメータの記憶領域であるカレントメモリ及びシーンメモリを用意するようにしているためである。なお、図14のステップS63及びS64においてもミキサエンジン10側で同様な処理が行われる。
ここで、このパラメータ引き継ぎの処理について説明する。この処理においては、図23に示すようにメモリ上に新しいワーク領域を用意し、コンパイルした処理構成を示すPC用CADデータに含まれる各コンポーネントの内容を示すPC用プリセットコンポーネントデータ中のデータ構成情報と、そのPC用CADデータに含まれる各コンポーネントのプロパティデータとに基づいてコンパイルした処理構成に係る信号処理に使用するパラメータを記憶するためのカレントシーン及び各シーンのデータ形式を定めてその記憶領域を設ける(図3の説明を参照)。そして、図24に示すように、カレントシーン及び各シーンの内容を、元のワーク領域から新しいワーク領域にコピーする。そのとき、元のワーク領域と新しいワーク領域とではシーンのデータ構成が異なるので、コピーは異構成間コピーとなる。
このシーンの異構成間コピーの具体例を図25に示す。
まず、図25(a)に示すようにコンポーネントが削除された場合には、単に削除されたコンポーネントに係るコンポーネントシーンをコピーしなければよい。ここで、どのコンポーネントが削除されたかは、新たに廃止されたユニークIDにより確認することができる。
また、(b)に示すようにコンポーネントが別のIDのコンポーネントに変更された場合には、変更元のコンポーネントに係るコンポーネントシーンに代えて、変更後のコンポーネントに係るコンポーネントシーンを設ける。そして、ここにはコピーすべきデータがないので、所定の初期値を設定する。なお、変更前のコンポーネントと変更後のコンポーネントとは、コンポーネントIDが異なるだけでなくユニークIDも異なる。
(c)に示すようにコンポーネントが追加された場合には、シーンの末尾に追加されたコンポーネントに係るコンポーネントシーンを設け、やはり所定の初期値を設定する。ここで、どのコンポーネントが追加されたかは、新たに追加されたユニークIDにより確認することができる。
また、コンポーネントのバリエーションが変更された場合には、その変更前後のコンポーネントはユニークIDおよびコンポーネントIDが同じであるので、その変更前後のコンポーネントの対応関係を認識でき、かつ、その2つのコンポーネントにデータ互換性があることが確認できることから、図26に示すような異バリエーション間のパラメータ引き継ぎ処理を行う。なお、このパラメータ引き継ぎ処理を行うに当たっては、コンポーネントIDさえ揃っていればよく、ユニークIDが揃っていないコンポーネント間であっても実行可能である。
そして、この引き継ぎ処理においては、まずステップS101で、元のコンポーネントに係る信号処理に使用していたパラメータのうち、置き換え後のコンポーネントに係る信号処理に使用するパラメータ中に対応するパラメータが存在するものについて、元のコンポーネントについて指定された設定値を、上記の新しいワーク領域に確保したカレントメモリのうちその対応するパラメータの設定値を記憶する領域にコピーする。
その後、ステップS102で、置き換え後のコンポーネントのパラメータのうち、ステップS101で元のコンポーネントの設定値がコピーされなかった部分について、所定の初期値を設定して元の処理に戻る。
以上の処理は、複数のコンポーネントについてバリエーションが変更されていた場合には、コンポーネント毎に行うものとする。そして、この処理において、PC30のCPUは第2の引継手段として機能し、特にステップS101の処理においては書込手段として機能する。
次に、バリエーションの変更前後でのパラメータの対応関係について説明する。
このミキサシステムにおいては、各コンポーネントについてのパラメータを、エレメントという単位に分割して定義している。図27に、(a)に4入力の、(b)に6入力のオートミキサにおけるエレメントの構成を示す。なお各エレメントは、1又は複数のパラメータの集合体である。
この図に示すように、4入力のオートミキサにおいては、パラメータはエレメントE1乃至E5によって構成され、このうちエレメントE3が入力を制御する動作パラメータ群である。そして、4入力であるので、エレメントE3[1]乃至E3[4]として、各入力端子に対応するエレメントE3のパラメータ記憶領域を設けている。
一方、6入力のオートミキサについても、4入力のオートミキサと処理の基本部分が共通であることから、設定すべきパラメータも共通であり、4入力の場合と同じくエレメントE1乃至E5によって構成されている。しかし、入力端子数が6であることから、エレメントE3については、E3[1]乃至E3[6]の6つを設けている。
従って、4入力のオートミキサと6入力のオートミキサとでは、エレメントE1,E2,E4,E5に係るパラメータは全く共通であり、これらのパラメータは対応していると言える。また、エレメントE3についても、E3[1]乃至E3[4]の部分は共通に存在することから、これらのパラメータも対応していると言える。一方、エレメントE3[5]やE3[6]のように、一方にしか存在しないエレメントに係るパラメータには、対応するものがないことになる。
バリエーションの異なるコンポーネントについては、処理の基本部分が共通であるので、設定するパラメータについても、エレメントの種類は共通で、数が異なることになる。従って、オートミキサ以外についても、異なるバリエーションに含まれるパラメータの間の対応関係について上述の場合と同様に考えることができる。なお、各バリエーションにおけるエレメント構成や、各エレメント中に含まれるパラメータの種類については、プリセットコンポーネントデータ中のデータ構成情報の部分に記載するようにしている。
次に、図28を用いて、上述したようなエレメントによって構成されるパラメータを、置き換え元のコンポーネントから置き換え後のコンポーネントに引き継ぐ際のコピー方式について説明する。この図において、Exは元のコンポーネントについてのパラメータの設定値を、Eoは領域を用意する際に設定される所定の初期値を示す。
図28(a)には、図27に示したエレメントE1やE2のように、同一のエレメントが1つだけ存在する場合の例を示している。この場合には、元のコンポーネントの設定値を、単に置き換え後のコンポーネントについて用意した記憶領域にコピーすればよい。
図28(b)には、図27に示したエレメントE3のように、同一のエレメントが1次元的に配列されて複数存在する場合の例を示している。この場合には、元のコンポーネントの設定値を、置き換え後のコンポーネントについて用意した記憶領域のうち、対応するエレメントの部分にコピーする。従って、元のコンポーネントになかったエレメントの部分には設定値はコピーされないので所定の初期値が設定されたままとなるし、コピー先にないエレメントに係る設定値は廃棄される。
図28(c)には、同一のエレメントが2次元的に配列されて複数存在する場合の例を示している。図27にはこのような例はなかったが、例えば、入力端子と出力端子とがそれぞれ複数ある場合にその組み合わせ毎に設定するパラメータ群がこのようなエレメントになる。そして、この場合も基本的な考え方は(b)の場合と同様であり、元のコンポーネントの設定値を、置き換え後のコンポーネントについて用意した記憶領域のうち、対応するエレメントの部分にコピーすればよい。そして、コピーされない部分は初期値が残るし、コピー先のない設定値は廃棄される。3次元以上の形式でエレメントが配列される場合でも、同様である。
以上のような考え方により、図27を用いて説明したような、パラメータ設定値の引き継ぎを行うことができる。なお、置き換え後のコンポーネントについてのパラメータ記憶領域を設けた時点では初期値を設定せず、必要な設定値のコピーが済んでから、コピーがなされなかった部分のみに初期値を設定するような対応も可能である。
なお、ここで説明したようなパラメータ設定値の引き継ぎについて主要なケースを挙げると、以下のようなものがある。
まず、プリセットコンポーネントがバージョンアップされた場合の、1コンポーネント分のパラメータの引き継ぎが挙げられる。この場合、プリセットコンポーネントIDは変らずプリセットコンポーネントバージョンのみが変更されるが、プリセットコンポーネントIDが同じコンポーネントはパラメータのデータ互換性があるので、シーンやライブラリに記憶されている旧バージョンのコンポーネントのパラメータを、新しいバージョンのコンポーネントのパラメータとして引き継ぐことができる。これは図26乃至図28を用いて説明した通りである。またこのとき、コンフィグIDが一致している必要はない。
また、プリセットコンポーネントがバージョンアップされた場合の、コンフィグIDが同じで、旧バージョンのコンポーネントを含むコンフィグデータから新バージョンのコンポーネントを含むコンフィグデータへの、1シーン分のパラメータの引き継ぎが挙げられる。この場合、コンフィグIDが同じであるので、ユニークIDにより、そのバージョンアップされたコンポーネントを含めて各コンポーネントの対応関係を認識することができる。そして、対応関係が認識された2つのコンポーネントは、異バージョンの可能性はあるが、プリセットコンポーネントIDは同じはずである。従って、各対応付けられたコンポーネント同士はパラメータのデータ互換性があり、両コンフィグ間でシーンを引き継ぐことができる。
また、有償コンポーネントがバージョンアップされた場合の、ライセンス及び1コンポーネント分のパラメータの引き継ぎも考えられる。有償コンポーネントをバージョンアップした場合でも、プリセットコンポーネントIDは変化しないので、上述したように解除キーをプリセットコンポーネントIDと対応して発行するようにすれば、旧バージョンに対応した解除キーにより、バージョンアップされたコンポーネントを引き続き使用することができる。また、上述の場合と同様に、旧バージョンのコンポーネントのパラメータも引き継ぐことができる。このとき、コンフィグIDが一致している必要はない。さらに、旧バージョンのコンポーネントを含むコンフィグデータから新バージョンのコンポーネントを含むコンフィグデータへの、1シーン分のパラメータの引き継ぎを行えることも、上述の場合と同様である。
また、同じプリセットコンポーネントIDでバリエーション情報の異なる2つのコンポーネント間でのパラメータの引き継ぎが可能であることは図26乃至28を用いて説明した通りであり、信号処理構成に含まれるコンポーネントのバリエーションを変更したときの、その変更の前後のコンフィグデータ間での1シーン分のパラメータの引き継ぎが可能であることは、図24及び図25を用いて説明した通りである。
以上で実施形態の説明を終了するが、この発明は以上の実施形態に限定されるものではない。例えば、データの構成は図3及び図4に示したものに限られないし、ミキサシステムの編集装置として、PC30ではなく専用の編集装置あるいは制御装置を用いてもよい。音響信号処理装置も、1台とは限らず、複数台を編集装置に同時に接続するようにしてもよい。
以上の説明から明らかなように、この発明の編集装置の制御方法によれば、編集装置によって音響信号処理装置における信号処理の内容を編集し、音響信号処理装置にその編集内容に従った信号処理を行わせる音響信号処理システムを構成する場合において、信号処理の構成要素の差し替えを行う場合の操作性を向上させることができる。従って、この発明を利用すれば、操作性が高い編集装置及び音響信号処理システムを提供することができる。
この発明の編集装置の制御方法を適用する編集装置を備えた音響信号処理システムの実施形態であるミキサシステムの構成を示すブロック図である。 図1に示したPCのディスプレイに表示させる信号処理構成の編集画面の例を示す図である。 この発明に関連するデータのうち、PC側で使用するデータの構成を示す図である。 同じくミキサエンジン側で使用するデータの構成を示す図である。 図1に示したPCが実行するプリセットコンポーネントデータの整合性チェック及び更新の処理を示すフローチャートである。 図1に示したミキサシステムにおいて解除キーを管理する第1のキー管理方式について説明するための図である。 同じく解除キーの構成を示す図である。 同じく第2のキー管理方式について説明するための図である。 図1に示したPCのディスプレイに表示させる解除キー管理画面の例を示す図である。 第2のキー管理方式において、図1に示したPCがミキサエンジンへの解除キーの付与指示を受けた場合に実行する処理を示すフローチャートである。
同じくPCが解除キーの回収指示を受けた場合に実行する処理を示すフローチャートである。 同じくミキサエンジンがPCから解除キーの返還指示を受けた場合に実行する処理のフローチャートである。 図1に示したミキサシステムにおいてコンフィグデータのコンパイルを指示された場合にPC側で実行する処理のフローチャートである。 同じくエンジン転送用CADデータを受信した場合にミキサエンジンが実行する処理のフローチャートである。 同じく、PC側で実行する第1及び第2のプロテクト方式に係るプロテクト処理のフローチャートである。 同じく、ミキサエンジン側で実行する第3及び第4のプロテクト方式に係るプロテクト処理のフローチャートである。 図1に示したミキサシステムにおけるコンポーネントのバリエーション変更について説明するための、図2と対応する編集画面の例を示す図である。 同じくプロパティ設定画面の例を示す図である。 図18に示したプロパティ設定画面におけるバリエーション設定部の表示例を示す図である。 その別の表示例を示す図である。
図1に示したミキサシステムにおいてPCが実行する、プロパティ設定画面における設定内容を反映させるための処理のフローチャートである。 図1に示したミキサシステムにおけるオートミキサのバリエーションの例を示す図である。 同じくパラメータ引き継ぎの処理においてPCのメモリ上に設けるワーク領域について説明するための図である。 同じくコンポーネントに変更があった場合のシーンデータの取扱いについて説明するための図である。 図24に示した異構成間コピーについて説明するための図である。 図24に示した異構成間コピーの一部として実行する異バリエーション間のパラメータ設定値引き継ぎ処理を示すフローチャートである。 図1に示したミキサシステムで使用するコンポーネントにおけるパラメータのエレメント構成について説明するための図である。 図27に示したようなエレメントによって構成されるパラメータを、置き換え元のコンポーネントから置き換え後のコンポーネントに引き継ぐ際のコピー方式について説明するための図である。
符号の説明
10…ミキサエンジン、11…CPU、12…フラッシュメモリ、13…RAM、14…表示器、15…操作子、16…PCI/O、17…MIDII/O、18…その他I/O、19…波形I/O、20…DSP、21…カスケードI/O、22…システムバス、30…PC、40…CAD画面、50…解除キー管理画面、51…キープール管理部、52…エンジンA管理部、53…エンジンB管理部、60…プロパティ設定画面、64…バリエーション設定部、66…キャンセルキー、67…OKキー、100…ライセンスサーバ、A…コンポーネント、B…出力端子、C…入力端子、D…結線

Claims (2)

  1. 処理内容をプログラム可能な音響信号処理部を有する音響信号処理装置に実行させる音響信号処理内容を、それぞれ入力端子又は出力端子を有する複数の信号処理コンポーネントと、該信号処理コンポーネントの出力端子と入力端子との間を結ぶ結線とに基づいて規定し、該信号処理コンポーネント及び結線からなる音響信号処理の構成を、グラフィック表示の表示画面において受け付けた指示に従って編集する編集装置の制御方法であって、
    前記編集装置に、
    複数の前記信号処理コンポーネントを定義する定義データであって、該複数の信号処理コンポーネントのうち少なくとも一部の信号処理コンポーネントを、該信号処理コンポーネントが有する端子の数及び/又は該信号処理コンポーネントに係る信号処理に使用するパラメータの数が異なる複数のバリエーションを有するものとして定義する定義データを記憶させると共に、
    前記信号処理コンポーネントの各バリエーションについて、異なるバリエーションが有する端子及びパラメータの間の対応関係を記憶させ、
    前記信号処理構成の編集に際して、ユーザから、編集中の信号処理構成に含まれる信号処理コンポーネントについて、別のバリエーションへの変更の指示を受け付ける手順と、
    該手順で変更の指示を受け付けた場合に、その指示に係る信号処理コンポーネントを、指示に従って別のバリエーションの信号処理コンポーネントに置き換える手順と、
    記憶している前記対応関係に基づいて、前記置き換え前の元の信号処理コンポーネントの端子に接続されていた結線のうち、前記置き換え後の信号処理コンポーネントにその接続されていた端子と対応する端子が存在するものを、その置き換え後の信号処理コンポーネントの、前記対応する端子に接続する第1の引継手順と、
    記憶している前記対応関係に基づいて、前記元の信号処理コンポーネントに係る信号処理に使用していたパラメータのうち、前記置き換え後の信号処理コンポーネントに係る信号処理に使用するパラメータ中に対応するパラメータが存在するものについて前記元の信号処理コンポーネントに係る信号処理に使用していたパラメータの値を、前記置き換え後の信号処理コンポーネントに係る信号処理に使用する前記対応するパラメータの値として記憶する第2の引継手順とを実行させることを特徴とする編集装置の制御方法。
  2. 請求項1記載の編集装置の制御方法であって、
    前記第2の引継手順に、
    前記置き換え後の信号処理コンポーネントに係る信号処理に使用するパラメータの値を記憶するための記憶領域を確保する手順と、
    前記元の信号処理コンポーネントに係る信号処理に使用していたパラメータのうち、前記置き換え後の信号処理コンポーネントに係る信号処理に使用するパラメータ中に対応するパラメータが存在するものについて前記元の信号処理コンポーネントに係る信号処理に使用していたパラメータの値を、前記記憶領域のうち前記対応するパラメータの値を記憶する領域に書き込む書込手順と、
    前記記憶領域に値を記憶すべきパラメータのうち、前記書込手順において書き込みがなされていないパラメータについて、該パラメータの値を記憶するための記憶領域に所定の初期値を書き込む手順とを設けたことを特徴とする編集装置の制御方法。
JP2004053988A 2004-02-27 2004-02-27 編集装置の制御方法 Expired - Fee Related JP4211639B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2004053988A JP4211639B2 (ja) 2004-02-27 2004-02-27 編集装置の制御方法
US11/065,798 US8976982B2 (en) 2004-02-27 2005-02-24 Audio signal processing system
US12/490,866 US7978864B2 (en) 2004-02-27 2009-06-24 Audio signal processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004053988A JP4211639B2 (ja) 2004-02-27 2004-02-27 編集装置の制御方法

Publications (2)

Publication Number Publication Date
JP2005244774A JP2005244774A (ja) 2005-09-08
JP4211639B2 true JP4211639B2 (ja) 2009-01-21

Family

ID=35025989

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004053988A Expired - Fee Related JP4211639B2 (ja) 2004-02-27 2004-02-27 編集装置の制御方法

Country Status (1)

Country Link
JP (1) JP4211639B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4952024B2 (ja) * 2005-11-21 2012-06-13 ヤマハ株式会社 ネットワークを介して接続された複数の機器で構成される音楽システムの制御装置及び該音楽システムを制御するための統合的なソフトウェアプログラム
JP4735373B2 (ja) * 2005-11-21 2011-07-27 ヤマハ株式会社 ネットワークを介して接続された複数の機器で構成される音楽システムの制御装置及び該音楽システムを制御するための統合的なソフトウェアプログラム
JP5246044B2 (ja) * 2009-05-29 2013-07-24 ヤマハ株式会社 音響装置
JP5212433B2 (ja) * 2010-08-06 2013-06-19 ヤマハ株式会社 音響信号処理装置

Also Published As

Publication number Publication date
JP2005244774A (ja) 2005-09-08

Similar Documents

Publication Publication Date Title
JP5084314B2 (ja) 情報処理装置、情報処理方法、情報処理プログラム、及び情報処理プログラムを記録する記録媒体
JP4756947B2 (ja) 情報処理装置及び方法
EP2629192B1 (en) Information processing apparatus, information processing method, and program
EP2109036A1 (en) Information processor, information processing method, and recording medium
US20100033759A1 (en) Information processing apparatus, information processing method, and computer readable recording medium stored with information processing program
JP4962841B2 (ja) 操作画面生成装置、電子機器、プログラム
EP1221651A2 (en) Device environment configuration system, device environment configuration method, and data storage medium therefor
JP2007317088A (ja) 情報処理装置、印刷制御方法、プログラム及びコンピュータ可読の記憶媒体
CN106462365B (zh) 输出系统、终端装置和输出方法
JP4473101B2 (ja) 文書管理方法ならびにこれを用いた文書管理装置およびプログラム
JP4908731B2 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
JP4935620B2 (ja) 情報処理プログラム、情報処理装置および情報処理システム
CN105074587A (zh) 系统开发装置、方法以及程序
US7978864B2 (en) Audio signal processing system
JP4211639B2 (ja) 編集装置の制御方法
JP4305218B2 (ja) 音響信号処理システム
JP2006268586A (ja) 処理態様指定情報変換プログラム及び処理態様指定情報変換方法
JP2009048485A (ja) 情報処理装置、情報処理方法、情報処理プログラム、及び情報処理プログラムを記録する記録媒体
JP4425808B2 (ja) 印刷情報処理装置、印刷情報処理プログラム及び記録媒体
JP4135624B2 (ja) 構成要素データの管理方法
JP3988730B2 (ja) プログラム及び音響信号処理装置
JP4161961B2 (ja) 編集装置及びプログラム
JP2009151678A (ja) 画像形成装置及び画像形成システム
JP5510502B2 (ja) 情報処理装置、情報処理方法、情報処理プログラム、及び情報処理プログラムを記録する記録媒体
JP2007310768A (ja) 機能設定制御装置、機能設定制御方法、プリンタドライバ及び記録媒体

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071108

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071204

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080701

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080828

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081007

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081020

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111107

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111107

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131107

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees