以下、図面を用いて本発明の実施の形態を説明する。
図1は、この発明の実施の形態であるディジタルミキサのハードウエア構成を示すブロック図である。中央処理装置(CPU)101は、このミキサ全体の動作を制御する処理装置である。フラッシュメモリ102は、CPU101が実行する各種のプログラムや各種のデータなどを格納した不揮発性メモリである。ランダムアクセスメモリ(RAM)103は、CPU101が実行するプログラムのロード領域やワーク領域に使用する揮発性メモリである。表示器104は、このミキサの操作パネル上に設けられた各種の情報を表示するためのディスプレイである。電動フェーダ105は、操作パネル上に設けられたレベル設定用の操作子である。操作子106は、操作パネル上に設けられたユーザが操作するための各種の操作子(電動フェーダ以外のもの)である。波形入出力インターフェース(I/O)107は、外部機器との間で波形信号をやり取りするためのインターフェースである。信号処理部(DSP)108は、CPU101の指示に基づいて各種のマイクロプログラムを実行することにより、波形I/O107経由で入力した波形信号のミキシング処理、効果付与処理、及び音量レベル制御処理などを行い、処理後の波形信号を波形I/O107経由で出力する。レコーダ109は、DSP108から入力した楽音信号を記録し、また、記録してある楽音信号を再生する。その他I/O110は、その他の機器を接続するためのインターフェースである。バス111は、これら各部を接続するバスラインであり、コントロールバス、データバス、およびアドレスバスを総称したものである。
図2は、図1のディジタルミキサの機能構成を示すブロック図である。201はマイクなどで入力したアナログ音響信号をディジタル信号に変換した入力を示す。202はディジタル音響信号の入力を示す。これらの入力は、それぞれ複数本(その本数は装置構成に応じた上限がある)設けることができる。入力パッチ203は、上述した入力のラインから、入力チャンネル(ch)204への任意結線を行う。その結線の設定は、ユーザが所定の画面を見ながら任意に行うことができる。入力ch204は、シングルで96chが設けられている。各入力ch204の信号は、16本のMIXバス205へ選択的に出力することができ、その送出レベルをそれぞれ独立に設定することができる。各入力chは、設定されたパラメータに基づいてオーディオ信号の信号処理を行う。
MIXバス205の16本の各バスは、入力ch204から入力する信号をミキシングする。ミキシングされた信号は、そのMIXバスに対応する出力ch206(1〜16ch)に出力される。MIXバス205と出力ch206とは1対1の対応で各chが対応づけられている。各出力chは、設定されたパラメータに基づいてオーディオ信号の信号処理を行う。出力ch206の出力は、出力パッチ207に入力する。出力パッチ207は、出力ch206からアナログ出力208またはディジタル出力209への任意の結線を行う。その結線の設定は、ユーザが所定の画面を見ながら任意に行うことができる。
なお、入力部201,202および出力部208,209は図1の波形I/O107により実現する。その他の部分203〜207は、DSP108が所定のマイクロプログラムを実行することにより実現する。該マイクロプログラムは、CPU101がDSP108に送って設定する。DSP108が該マイクロプログラムを実行するときに使用する係数データも、CPU101がDSP108に送って設定する。
図3は、本実施形態のディジタルミキサの外部パネルの外観(一部)を示す。301,302は、各種の情報を表示するディスプレイ(図1の104)である。各ディスプレイ301,302の下側にchストリップ部(図1の105,106)が設けられている。左側のchストリップ部は8本のchストリップ303−1〜303−8からなり、右側のchストリップ部は8本のchストリップ304−1〜304−8からなる。1本のchストリップ、例えば303−1は、ロータリエンコーダ311,312、ONスイッチ313、SELスイッチ314、CUEスイッチ316、表示部317、および電動フェーダ318を備える。ロータリエンコーダ311は、上側の画面301に表示される内容に応じて機能が切り替わる操作子である。ロータリエンコーダ312は、各種のパラメータ調整用のロータリエンコーダであり、その外側にレベルメータとなるLEDを備えている。ONスイッチ313は、当該chストリップ303−1が割り当てられているchをオン/オフするスイッチである。SELスイッチ314は、当該chストリップ303−1に割り当てられているchを選択するときに使用するスイッチである。電動フェーダ318は、割り当てられているchの音量レベル(信号レベル)調整用のフェーダである。電動フェーダ318のつまみは、CPU101の指示に基づいて任意の位置に位置付けることができる。
図1のRAM103には、カレントメモリが設けられている。カレントメモリは、本ディジタルミキサにおける各種のパラメータ(各信号処理チャンネルのパラメータも当然含まれる)の現在値を記録している。カレントメモリ上のパラメータのうち、DSP108における信号処理に関わるパラメータの現在値は、DSP108にも係数データとして設定されており、DSP108はそれらの現在値に基づいて各種の信号処理(ミキシング)を制御している。カレントメモリ上のパラメータ現在値は、電動フェーダやその他の操作子を使って変更することができる。すなわち、図3の各chストリップの操作子を操作すると、その操作子に該当するパラメータのカレントメモリ上の現在値がその操作内容に応じて書き替えられ、書き替えられた後の新しい現在値がDSP108へセットされ、DSP108における信号処理に反映される。
図3において、1つのchストリップ(例えば303−1)には、1つ以上のchを割り当てることができる。各chストリップにchを割り当てる際の条件や手法については後述する。あるchストリップに割り当てたchは、当該chストリップにおける制御対象chを選択する際の候補となる(本明細書において、chストリップにchを割り当てるとは、chをchストリップの制御対象の候補として設定することを意味する)。1つのchストリップには、そのchストリップに割り当てられたchの中から1つの信号処理chが制御対象chとして設定される。制御対象chとは、そのchストリップ内の操作子で制御する対象となるchである。すなわち、そのchストリップに含まれる操作子(後述する調整操作子)を使って、その制御対象chとして設定されている1つの信号処理chのパラメータの現在値を変更することができる。また、chストリップの表示部317には、その制御対象chのパラメータに関する情報が表示される。さらに、chストリップの電動フェーダ318のつまみはその制御対象chの現在のレベル値に対応する位置に位置付けられる。加えて本実施形態では、chストリップに含まれる操作子の操作により制御対象chのパラメータ現在値が変更されたとき、その制御対象chとグループの関係にある他のchがあれば、それらの他のchパラメータの現在値も連動して変更される。なお、「グループの関係」については、後に詳しく説明する。
カレントメモリには、chストリップごとに、割り当て情報記録領域と制御対象記録領域が設けられている。割り当て情報記録領域は、現時点で実際にchストリップに割り当てられているchを示す割り当て情報を記録する。制御対象記録領域は、現時点で実際にchストリップの制御対象chに設定されているchを示す制御対象ch情報を記録する。
図4は、本実施形態のディジタルミキサの外部パネル上に設けられているレイヤスイッチの外観を示す。401は、1−16chを割り当てるためのchレイヤスイッチである。このスイッチ401がオンされると、図3の16本のchストリップ303−1〜303−8,304−1〜304−8に対して、左側から順に、入力chのうちのch1〜ch16を制御対象chとする。chレイヤスイッチ402〜406も同様のものであり、順に入力チャンネルのうちch17〜ch32、ch33〜ch48、ch49〜ch64、ch65〜ch80、およびch81〜ch96を制御対象chとするスイッチとなっている。
カスタムレイヤスイッチ407,408(以下、カスタムレイヤスイッチ1,2と呼ぶ)は、それぞれ、カスタムレイヤファイル1,2を読み出し、読み出したカスタムレイヤファイルに応じたchストリップへのchの割り当て、及び、制御対象chの初期設定を行うためのスイッチである。カスタムレイヤファイルを用いた割り当てでは、1本のchストリップに複数chを割り当てることが可能である。
なお、本実施形態では、カスタムレイヤスイッチ1,2に固定的にカスタムレイヤファイル1,2を対応させているが、任意の数のカスタムレイヤファイルを作成しておき、その中からカスタムレイヤスイッチ1,2にそれぞれ対応させるカスタムレイヤファイルを選択するようにしてもよい。
次に、カスタムレイヤファイルを作成する前提としてのch定義の設定について説明する。本実施形態のディジタルミキサでは、信号処理を行う96個の入力chは、予め、ch番号の昇順で8ch毎の12個のブロックに分けられている。ユーザは、所定の操作によりch定義設定画面を表示させ、該画面において各ブロック毎にブロック定義を指定することにより、各chのch定義を設定することができる。設定したch定義は、フラッシュメモリ102に格納される。ブロック定義には、「ノーマルブロック」、「ステレオブロック」、「サラウンド1ブロック」、および「サラウンド2ブロック」がある。1つのブロックに1つのブロック定義が指定されると、そのブロック内の8つの各chのそれぞれに、当該ブロック定義に基づくch定義が設定される。ch定義には、「ノーマルch」、「ステレオch」、及び「サラウンドch」がある。
「ノーマルch」は、入力元のオーディオ信号として通常のオーディオ信号を扱うchを意味する。通常のオーディオ信号とは、グループを構成せず、単独である信号を言う。「ノーマルch」に設定された入力chは、グループを構成しない。
「ステレオch」は、入力元のオーディオ信号としてステレオ信号を扱うchを意味する。ステレオ信号とは、ステレオの関係にある複数のオーディオ信号でグループを構成しているものを言う。ステレオchに設定された入力chは、ステレオch(L)、ステレオch(R)、の2つの何れかに設定される。1つのステレオchグループは、必ず、ステレオch(L)に設定された入力chが1つ、ステレオch(R)に設定された入力chが1つ、の2つの入力chによって構成される。
「サラウンドch」は、入力元のオーディオ信号としてサラウンド信号を扱うchを意味する。サラウンド信号とは、サラウンドの関係にある複数のオーディオ信号でグループを構成しているものを言う。サラウンドchに設定された入力chは、サラウンドch(L)、サラウンドch(R)、サラウンドch(C)、サラウンドch(Ls)、サラウンドch(Rs)、サラウンドch(LFE)、の6つの何れかに設定される。なお、L,R,C,Ls,Rs,LFEは、5.1chサラウンドの前側左(L)、前側右(R)、センタ(C)、後側左(Ls)、後側右(Rs)、および重低音出力のウーハ(LFE)の各信号を表す。1つのサラウンドchグループは、必ず、サラウンドch(L)に設定された入力chが1つ、サラウンドch(R)に設定された入力chが1つ、サラウンドch(C)に設定された入力chが1つ、サラウンドch(Ls)に設定された入力chが1つ、サラウンドch(Rs)に設定された入力chが1つ、サラウンドch(LFE)に設定された入力chが1つ、の6つの入力chによって構成される。
上述したch定義における「グループ」は、パラメータの値を連動して調整するchのまとまりを表している。すべての入力chや出力chの中で複数のグループを構成できるものであり、全入力chを1つのグループと捉えたり、全出力chを1つのグループと捉えたりするものではない。グループは、幾つでも設定することができる。
図5は、ブロックにブロック定義を指定して、各chのch定義を設定する例を示す。図5(a)は、ch1〜ch8のブロックに対し「ノーマルブロック」を指定した場合である。この場合、ch1〜ch8の各chのch定義はすべて「ノーマルch」に設定する。
図5(b)は、ch1〜ch8のブロックに対し「ステレオブロック」を指定した場合である。この場合、ch1〜ch8の各chのch定義は「ステレオch」に設定する。具体的には、ch番号の昇順に2つずつ区切って、その2つのchをペアとしてステレオchグループの関係を持たせ、各ペアがそれぞれ1つのステレオchグループを形成する。また、ch番号が奇数のchをステレオのL側とし、その次のch番号が偶数のchをステレオのR側として設定するものとする。ここではch1〜ch8のブロックであるので、ch1,2がステレオLRのペアに、ch3,4がステレオLRのペアに、…というようになる。
図5(c)は、ch1〜ch8のブロックに対し「サラウンド1ブロック」を指定した場合である。この場合、ch番号の昇順で先頭chからの6chのch定義を「サラウンドch」とし、残りの2chを「ノーマルch」と設定する。サラウンドchの6chは、順に、サラウンドのL,R,C,Ls,Rs,LFEに割り当てる。ch1〜6の6つのchを1つのまとまりとしてサラウンドchグループの関係を持たせ、それら6つのchで1つのサラウンドchグループを形成する。
図5(d)は、ch1〜ch8のブロックに対し「サラウンド2ブロック」を指定した場合である。この場合、ch番号の昇順で先頭chからの6chのch定義を「サラウンドch」とし、残りの2chを「ステレオch」と設定する。サラウンドchの6chは、「サラウンド1ブロック」の場合と同様にL,R,C,Ls,Rs,LFEに割り当てる。ch1〜6の6つのchを1つのまとまりとしてサラウンドchグループの関係を持たせ、それら6つのchで1つのサラウンドchグループを形成する。ch7,8の2つのchを1つのまとまりとしてステレオchグループの関係を持たせ、それら2つのchで1つのステレオchグループを形成する。
図5ではch1〜8のブロックを例として説明したが、他のブロックについても同様にして、ブロック定義を指定することにより、すべてのchのch定義を設定することができる。各chのch定義は、フラッシュメモリ102に格納する。
なお、本実施形態では上述したようにch定義を設定しているので、あるchのch定義が分かれば、そのchに割り当てられた信号の種類及びそのchとグループの関係にあるchが分かる。例えば、あるchのch定義が「ステレオch」の場合、(1)そのchのch番号が奇数なら、そのchがL側でその次のchがペアとなるR側と分かり、(2)そのchのch番号が偶数なら、そのchがR側でその前のchがペアとなるL側と分かる。また、例えば、あるchのch定義が「サラウンドch」の場合、そのchがブロックの先頭から何番目のchであるかによって、そのchがL,R,C,Ls,Rs,LFEの何れであるかが分かり、さらにグループの関係となる他のchも分かる。ただし、ch定義に、そのchの信号種類やグループの関係にある他のchについての情報を含ませても良い。
図6は、各chのch定義を設定するためにCPU101が実行するch定義処理のフローチャートを示す。この処理は、ユーザが所定の操作により、ch定義を設定するch定義設定画面を表示させたときに起動される。ディジタルミキサの初期設定であり、必ず、すべての入力chにch定義を設定する。ユーザは、ch定義設定画面において、画面上のスイッチを使って、12個のブロックからいずれか1つを選択し、また図5で説明した4つのブロック定義からいずれか1つを選択できる。
図6において、ステップ601では、ユーザによって選択されたブロックを指定ブロックとする。ステップ602では、ユーザによって選択されたブロック定義を指定ブロック定義とする。ステップ603では、指定ブロック定義に基づいて、指定ブロックに含まれる8chにch定義を設定する。指定ブロック定義に基づいてどのようにch定義を設定するかについては図5で説明した。各chのch定義は、フラッシュメモリ102に格納される。ユーザは、全ブロックに対して図6の処理を行って、全chについてch定義を設定する。これにより、各chに1つずつch定義が規定される。
ユーザは、上述したように各chのch定義を設定し、その後、カスタムレイヤファイルを作成(編集)する。カスタムレイヤファイルを作成する際の処理方式としては2種類ある。以下では、第1の処理方式を実施例1として図7で説明し、第2の処理方式を実施例2として図8で説明する。なお、カスタムレイヤファイルは、フラッシュメモリ102に格納されている。
ユーザがカスタムレイヤファイル作成モードに入る所定の操作をすると、カスタムレイヤフェイル作成モードが開始され、カスタムレイヤファイル作成画面(図略)が表示される。ユーザは、カスタムレイヤフェイル作成画面により、事前に選択している1つのカスタムレイヤファイル(ここではカスタムレイヤファイル1または2)を編集対象として、そのカスタムレイヤファイルに記録されている各chストリップへの入力chの割り当て状態を設定(変更)することができる。1つのカスタムレイヤファイルは、16本のchストリップ303−1〜8、304−1〜8のそれぞれに割り当てる入力ch(複数でもよい)を記録している。このファイルの編集の方法(chストリップへの入力chの割り当ての状態を変更する方法)は2つあり、それが図7の実施例1と図8の実施例2である。
図7は、カスタムレイヤ作成処理(実施例1)のフローチャートを示す。カスタムレイヤファイル作成画面で、ユーザが1つのchストリップを選び、さらに、そのchストリップに割り当てたい1つの入力chを選んだとき、図7の処理が開始される。ユーザは、16本のすべてのchストリップに対して同様にしてchの割り当てを行う。
図7において、ステップ701では、ユーザによって選択された1つのchストリップを指定chストリップとする。ステップ702では、ユーザによって選択された1つの入力chを指定入力chとする。ステップ703では、指定chストリップに、既に割り当てられている入力chがあるか判定する。この判定は、編集対象とされているカスタムレイヤファイル内の、今回の指定chストリップに関する割り当ての状態を参照して、当該指定chストリップに対して既に入力chが割り当てられていることが記録されているかを確認することにより行う。割り当てられている入力chがない場合(すなわち、いま新たに割り当てようとしている指定入力chが第1番目に割り当てるchである場合)は、ステップ708で、指定入力chを、指定chストリップに割り当て、当該割り当て情報を編集対象のカスタムレイヤファイルに書き込んで、終了する。ステップ708の処理は、今回の入力chが今回の指定chストリップに割り当てられていることを表すように、編集対象のカスタムレイヤファイル内の今回の指定chストリップの割り当て状態を表す情報として、今回の入力chが割り当てられている状態を記録するものである。
ステップ704で割り当てられている入力chがあった場合(すなわち、いま新たに割り当てようとしている指定入力chが第2番目以降に割り当てるchである場合)は、ステップ705で、既に割り当てられている入力chのいずれか1つと、指定入力chとがグループの関係にあるか判定する。この判定は、それぞれの入力chのch定義を参照して、2つの入力chが同じグループに属するかを調べる処理である。ch定義に従って図5のようにグループが決められているので、今回の2つの入力chが、図5のルールに従って決められたグループのうちの、同じグループに属しているかを調べるものである。
ステップ706でグループの関係にある場合(同じグループに属する場合)は、ステップ707で、指定入力chを、既に割り当てられている入力chに追加して、指定chストリップに割り当て、当該割り当て情報を編集対象のカスタムレイヤファイルに書き込んで、終了する。ステップ707の処理は、今回の入力chが今回の指定chストリップに割り当てられていることを表すように、編集対象のカスタムレイヤファイル内の今回の指定chストリップの割り当て状態を表す情報として、今回の入力chが割り当てられている状態を追加で記録するものである。ステップ706でグループの関係にない場合は、指定入力chを割り当てることなく、現在カスタムレイヤファイルに記録されている指定chストリップに関する入力chの割り当て状態を維持(変更しない)したまま、終了する。なお、ステップ706でグループの関係にない場合は、既に割り当てられている入力chをキャンセルして、指定入力chを新たに割り当てる方法を採用してもよい。
なお、あるchストリップに第1番目に割り当てられた入力chがノーマルchの場合は、それ以降、そのchストリップにはいずれの入力chも追加して割り当てることはできない。
図7の処理によれば、第1番目に割り当てられたchのch定義がステレオchの場合は、ユーザが割り当てることを指定したchのうち、前記第1番目に割り当てられたchとステレオchグループの関係にあるchのみが追加で割り当てられ、それ以外のchは割り当てられることがない。また、第1番目に割り当てられたchのch定義がサラウンドchの場合は、ユーザが割り当てることを指定したchのうち、前記第1番目に割り当てられたchとサラウンドchグループの関係にあるchのみが追加で割り当てられ、それ以外のchは割り当てられることがない。
図8は、カスタムレイヤ作成処理(実施例2)のフローチャートを示す。カスタムレイヤファイル作成画面で、ユーザが1つのchストリップを選び、さらに、そのchストリップに割り当てたい任意の数の入力chを選び(ここで選べる入力chの数は任意であり、1つでも複数でもよい。複数の場合、それらが同じグループに属していてもいなくても、同時に選択できる。)、カスタムレイヤファイル作成画面上の所定の確定スイッチを押したとき、図8の処理が開始される。図7の実施例1では、割り当てたいchを選択する毎に図7の処理を行い、ch同士のグループの関係をチェックしているが、図8の実施例2では、割り当てたい複数のchが選択された状態で図8の処理が起動される。実施例1と2は、どちらか1つのみを採用しても良いし、ユーザの指定により実施例1の方式と実施例2の方式を選択的に指定できるようにしても良い。
図8において、ステップ801では、ユーザによって選択されたchストリップを指定chストリップとする。ステップ802では、ユーザによって選択された入力chの数を調べ、ステップ803で、その数が複数か判定する。選択された入力chの数が1つのときは、ステップ806で、選択された1つの入力chを、指定入力chとして設定する。次に、ステップ807で、その1つの指定入力chを指定chストリップに割り当て、当該割り当て情報を編集対象のカスタムレイヤファイルに書き込んで、終了する。ステップ807の処理は、指定入力chが指定chストリップに割り当てられていることを表すように、編集対象のカスタムレイヤファイル内の今回の指定chストリップの割り当て状態を表す情報として、今回の入力chが割り当てられている状態を記録するものである。なお、今回の指定chストリップに既に何らかの入力chが割り当てられていた場合には、その以前の割り当ての情報は削除し、今回新しく割り当てる指定入力chのみを割り当てる(すなわち、カスタムレイヤファイルの中身としては、以前の割り当ての状態をあらわす情報を、今回の新しい割り当ての状態を表す情報で上書きする)。
ステップ803で、選択されている入力chの数が複数なら、ステップ804で、当該選択されている複数の入力chの中から指定chストリップに割り当てる入力chを抽出する。この抽出方法は、例えば、選択されている複数の入力chの中から1つの基準chをまず抽出し(第1番目に選択された1つ、ch番号が1番小さい1つ、ユーザが指定した1つなどの予め決められたルールに従い抽出するものとする)、選択されている複数の入力chのうちで、前記基準chとグループの関係にある他の入力chすべてを抽出するものである。すなわち、抽出する入力chは、選択されている複数の入力chの中の1つの基準chと、選択されている複数の入力chの中の前記基準chとグループの関係にある他の入力chすべて、である。前記他の入力chは、あくまで、選択されている複数の入力chの中にあるものである。基準chとグループの関係にある他の入力chであっても、今回の選択されている複数の入力chの中に含まれていない入力chについては、今回の指定chストリップに同時に割り当てる入力chとしては選択(抽出)されない。グループの関係は、上述のch定義を参照することにより取得できる。
なお、抽出された基準chがノーマルchの場合や、基準chはステレオchまたはサラウンドchであるが、ユーザによって選択されたのはそのグループ内の1つのchのみであった場合は、当該1つの基準chのみが抽出される(基準chとグループの関係にある他の入力chが無いということ)。
ステップ805で、抽出したすべての入力chを、指定入力chとして設定し、ステップ807で、それらの指定入力chのすべてを指定chストリップに割り当て、当該割り当て情報を編集対象のカスタムレイヤファイルに書き込んで、終了する。ステップ807の処理で、新しい割り当て情報を指定chストリップの情報として記録するとき、その指定chストリップに既に何らかの情報が記録されている場合には、その古い情報を削除して新しい割り当て情報を記録する(新しい割り当て情報で古い情報を上書きする)。つまり、今回の指定chストリップに対する割り当て情報として、今回の新しい割り当て情報のみが記録されるようにする。
図8の処理によれば、ユーザが割り当てることを指定した複数のchからグループの関係にあるchを抽出して割り当てるので、ステレオchグループやサラウンドchグループの関係にある複数chのみが割り当てられ、それ以外のchは割り当てられることがない。
なお、図7や図8の処理は、あくまでもカスタムレイヤファイルの内容である各chストリップの割り当て情報を作成して、フラッシュメモリ102内のカスタムレイヤファイルに書き込む処理である。カスタムレイヤファイルに割り当て情報を書き込むと、実際のchストリップのchの割り当て状態が変更になるわけではない。カスタムレイヤファイルの割り当て情報を、実際のchストリップのchの割り当て状態に反映させるためには、ユーザのレイヤスイッチ1または2の何れかの押下操作により後述する図9の処理が実行され、これによりカスタムレイヤファイル内の割り当て情報を読み出し、カレントメモリの割り当て情報記録領域に展開する必要がある。
図9は、レイヤスイッチ押下処理のフローチャートを示す。この処理は、図4のレイヤスイッチ401〜408の何れかが押下されたときに起動される。ステップ901では、押下されたスイッチがカスタムレイヤスイッチ1または2であるか否か判定する。そうでないとき、すなわちchレイヤスイッチ401〜406の何れかの押下であった場合は、ステップ906で、押下されたchレイヤスイッチに該当する16個のchを順にchストリップ303−1〜8,304−1〜8に割り当てる。この割り当て情報は、カレントメモリの割り当て情報記録領域に設定される。ステップ906の後、ステップ904に進む。
ステップ901で押下されたスイッチがカスタムレイヤスイッチ1または2である場合は、ステップ902で、そのカスタムレイヤスイッチに該当するカスタムレイヤファイル(1または2)の割り当て情報を読み出し、ステップ903で、読み出した割り当て情報に従ってchストリップへのchの割り当てを行う。これにより、カレントメモリの割り当て情報記録領域に、カスタムレイヤファイルから読み出した割り当て情報に基づいて各chストリップに制御対象chの候補が設定される。ステップ903の後、ステップ904に進む。
ステップ904の処理を説明する。ステップ904では、まず、ステップ903または906で割り当てられた入力chの数をchストリップごとに確認する。ある1つのchストリップに割り当てられた入力chの数が1つの場合、当該割り当てられた入力chを、そのchストリップの制御対象chとしてカレントメモリの制御対象記録領域に設定する。割り当てられた入力chの数が複数の場合、割り当てられた複数の入力chの中から、予め決められた規則で1つの入力chを選択し、選択した1つの入力chを、そのchストリップの制御対象chとしてカレントメモリの制御対象記録領域に設定する。上記予め決められた規則は、複数の入力chの中からいずれか1つを選択する規則であればどのようなものでもよい。例えば、最も小さいch番号の入力chを選択する、などである。具体的には、ステップ906の後にステップ904を実行する場合は、すべてのchストリップに、1つずつの入力chが割り当てられるため、すべてのchストリップで、割り当てられた1つの入力chを、そのchストリップの制御対象chとして設定する。ステップ903の後にステップ904を実行する場合は、1つの入力chが割り当てられているchストリップと、複数の入力chが割り当てられているchストリップが混在するため、chストリップごとに、割り当てられた入力chの数を確認し、chストリップごとに、制御対象chとする1つの入力chを決定して、設定する。ステップ904の後、ステップ905に進む。
あるchストリップに割り当てられた入力ch(カレントメモリの割り当て情報記録領域に記載されているch)は、そのchストリップの操作子を使って制御を行う候補として割り当てられているだけであるので、操作子の操作によってこれらの割り当てられているchのすべてが実際に制御される状態にある訳ではない。ステップ904で制御対象chとされた入力chが、chストリップの操作子を使って、そのパラメータの値が実際に制御される入力chとなる。
次に、ステップ905の表示更新処理について説明する。図3に示したように、各chストリップはそれぞれ表示部317を備える。この表示部317は、当該chストリップの制御対象chについての各種情報を表示するために使用する。制御対象chについてのどのような情報を表示するかはユーザが指定できる。例えば、表示部317に、あるパラメータの現在値を表示すると指定された場合、全chストリップの表示部317は、それぞれ自chストリップの制御対象chについての当該パラメータの現在値を表示する。そのような表示制御はCPU101が行う。ステップ905の表示更新処理は、ステップ904で各chストリップの制御対象chが決定されたことを受け、制御対象chが変更されていた場合に、変更後の制御対象chの情報を表示するように表示部317の表示内容を更新する処理である。chレイヤが指定された場合、およびカスタムレイヤが指定された場合のどちらであっても、各chストリップの制御対象chは1つのchであるので、各chストリップの表示部317の表示内容は、当該制御対象chについての情報となる。
さらに、図3に示したディスプレイ301,302には種々の情報を種々の表示モードで表示することができるが、その表示モードの1つとして、下側の各chストリップに対応する情報を表示するモード(「chストリップ表示モード」と呼ぶ)がある。chストリップ表示モードでは、下側の各chストリップ間の境界線をそのまま上側のディスプレイに伸ばすようにして、ディスプレイ上に各chストリップの表示領域を区切り、区切られた縦長の各表示領域に、対応する下側のchストリップの制御対象chの各種情報を表示する。例えば、chストリップ303−1の制御対象chがch1である場合、ディスプレイ301上に、chストリップ303−1の幅でchストリップ303−1の上側に位置するような縦長の表示領域を設け、該表示領域に制御対象chであるch1の各種の情報を表示する。他のchストリップについての表示も同様である。chストリップ表示モードでの表示は、制御対象chに関する表示を行う点では、chストリップの表示部317の表示と同じである。そこで、ディスプレイ301,302に上記chストリップ表示モードでの表示が為されている場合、ステップ905の表示更新処理では、そのchストリップ表示モードでの表示内容を更新するものとする。
さらに、ステップ905の表示更新処理では、制御対象chが変更されたすべてのchストリップについて、電動フェーダ318のつまみを、変更後の制御対象chの現在の信号レベル値に対応する位置に位置付けるように制御する。また、ONスイッチ313、CUEスイッチ316を変更後の制御対象chの現在値に基づいて点灯・消灯させ、ロータリエンコーダ312周辺のLEDも変更後の制御対象chの現在値に基づいて点灯する。これらによって、変更後の制御対象chの各種のパラメータの現在値をchストリップ上へ表示する。
図10は、chストリップ内の操作子のうち、調整操作子が操作されたときに起動される操作処理のフローチャートを示す。図3で説明したchストリップにある操作子のうち、SELスイッチ314以外(切替操作子以外)の操作子が調整操作子である。具体的には、図3の操作子311,312,313,316,318が調整操作子である。
まずステップ1001で、カレントメモリの制御対象記録領域を参照して、当該操作されたchストリップに設定されている制御対象chを特定する。次に、ステップ1002で、前記特定した制御対象chのパラメータの値を、調整操作子の操作内容に基づいて変更する。さらに、ステップ1002では、前記特定した制御対象chのch定義を参照して、当該制御対象chと同じグループに属する他の入力ch(パラメータの値を連動して変更する他の入力ch、具体的には、ステレオchグループであればLchとRchが連動するch群、サラウンドchグループであればLFEchを除くLchとRchとCchとLschとRschが連動するch群)があるか否かを確認し、あれば、当該他の入力chのパラメータの値も、今回の操作内容に基づいて変更する。当該入力chと同じグループに属する他の入力chがなければ、他の入力chに対しては何もしない。ここで、ch定義によって、同じグループとして設定されている複数の入力chについては、それらが同じchストリップに割り当てられているか否かにかかわらず、常に、それら同じグループに属するすべての入力chについてパラメータの値を連動して制御する。
「連動して」とは、1つの操作に基づいて複数の入力chのパラメータ値を同時に変更することを言う。すなわち、複数の入力chにおける同じ種類のパラメータの値を同時に変更するということであり、1つの操作に基づく操作量を複数の入力chで共用するということである。変更の仕方には、操作量に基づいて絶対値で変更する方法と、相対値で変更する方法がある。絶対値で変更(絶対値で連動)する方法とは、操作量で決まる値を新しい現在値とし、その新しい現在値を複数すべての入力chの現在値として上書きする方法である。相対値で変更(相対値で連動)する方法とは、操作量で決まる値と入力chの現在値との両方から、新しい現在値を求め(例えば2つの値を加減算する)、複数ある入力ch毎に、自己の現在値と、操作量で決まる値とから新しい現在値を求める方法である。このようなパラメータの連動した制御を「連動制御」と呼ぶものとする。
なお、入力chが持つパラメータには、連動するパラメータ(連動パラメータ)と連動しないパラメータ(非連動パラメータ)がある。本実施形態では、説明を簡単にするために、前記調整操作子で制御できるパラメータをすべて連動パラメータであるとして説明した。制御できるパラメータとして非連動パラメータも含まれる場合は、前記調整操作子で制御されたパラメータが連動パラメータか非連動パラメータかを調べ、連動パラメータである場合は実施例の処理を行い、非連動パラメータである場合は、前記ステップ1002において、制御対象chのch定義に関係なく(グループに属するか否かに関係なく)、当該制御対象chのパラメータの値のみを、今回の操作内容に基づいて変更する。主な連動パラメータとしては、EQ、コンプレッサ、音量レベル、チャンネルオンオフ、及び、パンなどがある。連動パラメータは、主に、入力chから出力するオーディオ信号の音特性の調整を主な目的とするパラメータである。主な非連動パラメータとしては、ヘッドアンプゲイン、アッテネータ、ディレイ、及び、フェーズ切り替えなどがある。非連動パラメータは、主に、入力chに入力されるオーディオ信号の音特性の調整を主な目的とするパラメータである。
ステップ1002の後、ステップ1003に進み、表示更新処理を行う。この処理は、図9のステップ905で説明したのと同様に、chストリップ上の各種の表示内容を、今回の操作内容に基づいて更新する。
図11は、chストリップ内の操作子のうち、切替操作子が操作されたときに起動される操作処理のフローチャートを示す。図3で説明したchストリップにある操作子のうち、SELスイッチ314が切替操作子である。各chストリップのSELスイッチ314は、通常はch選択機能を果たすスイッチであるが、本実施形態では各SELスイッチ314を切替操作子として共有するものとする。もちろん、SELスイッチとは別に、chストリップごとに切替操作子を設けた構成でもよい。あるchストリップの切替操作子を操作するごとに、そのchストリップに割り当てられているchの範囲内で制御対象chを切り替えることができる。なお、制御対象chの切替は、chストリップごとに独立して(他のchストリップと相互に影響することなく)実行する。
まずステップ1101では、カレントメモリの割り当て情報記録領域を参照して、切り替え操作子が操作されたchストリップに割り当てられている入力chの状態を調べる。次に、ステップ1102で、当該割り当てられている入力chの数が複数か否か判定する。chレイヤが指定されているときは、各chストリップには1つのchが割り当てられており、複数の入力chが同時に割り当てられていることはないので、ステップ1103に進む。カスタムレイヤが指定されているときは、1つのchストリップに複数の入力chが割り当てられている可能性があるので、今回操作された切替操作子を有するchストリップに割り当てられている入力chの数を調べ、その数に応じてYESかNOへ分岐する。
ステップ1102で割り当てられている入力chの数が1つと判定された場合、ステップ1103で通常のSELスイッチ処理を行い、終了する。つまり、今回のchストリップの制御対象chとして設定されている入力chを、セレクテッドチャンネルへ割り当てる。本実施形態では、SELスイッチ314を切替操作子として共有しているので、ステップ1103を行うが、切替操作子をSELスイッチ314と共有せずに単独で装備している場合は、何も行わず処理を終了する(そのためステップ1103は点線で表記した)。
ステップ1102で割り当てられている入力chの数が複数と判定された場合、ステップ1104で、新たに制御対象chとするchを選ぶ。この処理は、今回のSELスイッチ314が操作されたchストリップに割り当てられている複数の入力ch(複数の制御対象chの候補)の中から、予め決められた規則で1つの入力chを選択する処理である。chストリップに割り当てられている複数の入力chは、カレントメモリの割り当て情報記録領域を参照することにより取得する。ここで選択する入力chは、現在、制御対象chとされている入力chとは異なる他の入力chとする。また、予め決められた規則は、当該chストリップに割り当てられている複数の入力chの中から、現在の制御対象chとは異なる他の入力chを選ぶ方法であればどのようなものでもよい。例えば、複数の入力chのch番号順で、現在の制御対象chの次に大きいch番号を持つもの、あるいは、次に小さいch番号を持つもの、などである。また、予め、ユーザが全chの順番を決めておき、その順番に従って現在の制御対象chの次のchを決めても良い。
次にステップ1105で、選ばれた入力chを、当該chストリップの制御対象chとして設定(カレントメモリの制御対象記録領域に書き込み)する。1つのchストリップに、制御対象chとして設定できる入力chは必ず1つであり、選ばれた新たな1つの入力chを、現在の制御対象chに代えて、新たな制御対象chとして設定するものである。その後、ステップ1106で表示更新処理を行う。この処理は、図9のステップ905で説明したのと同様に、chストリップ上の各種の表示内容を、新たな制御対象chのパラメータの値に基づいて更新する。
なお、図7や図8の処理の前提となるchストリップやchの選択を行うユーザインターフェースはどのようなものでもよいが、例えば、カスタムレイヤファイル作成画面上に、16本のchストリップに対応するアイコンと96個の入力chに対応するアイコンを表示し、その中からchストリップと割り当てたい入力chの選択を行うようにすればよい。また、既に何れかのchストリップに割り当て済みの入力chについては、割り当て済みであることが分かるように(例えば、通常とは違う表示態様で)表示したり、選択不可に設定してもよい。また、ある入力chが選択されたとき、メモリ上のch定義を参照して、その選択された入力chとグループの関係にある入力chをすべて特定し、特定した入力chを提示するようにしてもよい。グループの関係にある入力chとは、同じグループに属する入力chであって、1つのchストリップに割り当てることができる入力chを表す。さらに、ある入力chが選択されたとき、メモリ上のch定義を参照して、その選択された入力chとグループの関係にない入力chをすべて特定し、特定した入力chを提示する、あるいは、選択不可に設定してもよい。グループの関係にない入力chとは、同じグループに属さない入力chであって、1つのストリップに同時に割り当てることができない入力chを表す。
以下では、上記実施形態の変形例を説明する。
[変形例1]上記実施形態では、或る制御対象chのパラメータ値が変更されると、その制御対象chとグループ関係にあるすべての他のchのパラメータ値を連動して変更する(図10ステップ1002)。この連動する他のchを、グループ関係にあるすべての他のchとせず、カスタムレイヤによる割り当て内容に依存させる方法もある。例えば、或る制御対象chのパラメータ値が変更されたときに、当該制御対象chと同じchストリップに割り当てられている他のchを抽出し、抽出された他のchについてパラメータ値を連動して変更する。つまり、前記制御対象chとグループ関係にあるchであっても、同じchストリップに割り当てられていないchは連動しないこととする。また、カスタムレイヤの使用中であって、パラメータ値が変更された制御対象chと同じchストリップに他のchが割り当てられていない場合(制御対象chのみが割り当てられている場合)、当該制御対象chがグループに属していたとしても、当該グループの他のchのパラメータ値を連動することなく、当該制御対象chのパラメータ値のみを変更する。
[変形例2]上記実施形態では、chストリップに入力chを割り当てる場合を説明したが、本発明は、入力chに限ることはない。変形例2として、chストリップに、ミキシング用chや出力chなどを割り当ててもよい。出力chを割り当てる場合、出力chが扱うバスの種類(ミックスバス、ステレオバス、サラウンドバス)をグループとして、入力chの場合と同様に構成することができる。
[変形例3]上記実施形態では、5.1chサラウンドを例として説明したが、変形例3として、他のch数のサラウンド(6.1chサラウンドや7.1chサラウンド)にも適用可能である。
[変形例4]上記実施形態では、ch定義をブロック単位で設定する構成を説明したが、変形例4として、ch単位で任意にch定義を設定する構成としてもよい。例えば、1つの入力chを選択し、それに対して1つのch定義を設定する。あるいは、ステレオchグループやサラウンドchグループを構成したい場合には、グループを構成するために必要な数の入力chを選択し、そのまとまりに対してステレオchやサラウンドchのch定義を設定すればよい。
[変形例5]上記実施形態では、ノーマル、ステレオ、サラウンドというch定義を使ってグループの関係を規定したが、変形例5として、そのようなch定義を使わずにグループの関係を規定してもよい。すなわち、1つのchストリップに、全chから任意に選択した複数のchを割り当てて、割り当てた複数のchがグループの関係を構成するものとしてもよい。
[変形例6]上記実施形態で説明した図7や図8のカスタムレイヤファイルの作成あるいは編集の処理は、カスタムレイヤファイルの内容を書き換えるだけを行っており、その書き換えにあわせて逐次に、新しく書き込まれた割り当て状態を使って、その書き込みと同時に、パネル面のchストリップに対する入力chの割り当てを変更することは行っていない。すなわち、書き換えにあわせて、新しい割り当て状態をリアルタイムにパネル面のchストリップへ反映させない方法を説明したものである。
この方法以外に、変形例6として、カスタムレイヤファイルの内容の書き換えにあわせて逐次に、新しく書き込まれた割り当て状態を使って、その書き込みと同時に、パネル面のchストリップに対する入力chの割り当てを変更する(すなわち、書き換えに合わせて、新しい割り当て状態をリアルタイムにパネル面のchストリップへ反映する)方法を採用してもよい。
この場合、図7や図8の処理を起動する前の処理として、処理対象のカスタムレイヤファイルが選ばれたときに、当該選ばれたカスタムレイヤファイルに基づくchの割り当てを、パネル面のchストリップへ設定する。具体的には、当該カスタムレイヤファイルのから読み出した割り当て情報を、カレントメモリの割り当て情報記録領域に書き込む。
そして、図7のステップ708では、指定chストリップと指定入力chの新しい割り当ての状態を、カスタムレイヤファイルに書き込むとともに、パネル面の当該chストリップの割り当ての状態を、その新しい割り当ての状態へ変更(カレントメモリの割り当て情報記録領域の割り当て情報を変更)する。さらに、そのchストリップの制御対象として、新しく割り当てられた入力chをカレントメモリの制御対象記録領域に設定する(このステップにおいてchストリップに割り当てられる入力chは必ず1つであるため、その1つの入力chをchストリップの制御対象として設定する)。
図7のステップ707でも同様に、指定chストリップと指定入力chの新しい割り当ての状態を、カスタムレイヤファイルに書き込むとともに、パネル面の当該chストリップの割り当ての状態を、その新しい割り当ての状態へ変更(カレントメモリの割り当て情報記録領域の割り当て情報を変更)する。さらに、そのchストリップの制御対象として、新しく割り当てられた入力chをカレントメモリの制御対象記録領域に設定する(このステップの場合、指定chストリップには複数の入力chが割り当てられることになるので、新しく追加された1つの入力chをそのchストリップの制御対象として設定する)。むろん、新しく割り当てられた入力chを制御対象chとすることなく、それまでに制御対象chとして設定されていた入力chをそのまま制御対象chとして維持しておく方法でもよい。
図8のステップ807でも同様に、指定chストリップと指定入力chの新しい割り当ての状態を、カスタムレイヤファイルに書き込むとともに、パネル面の当該chストリップの割り当ての状態を、その新しい割り当ての状態へ変更(カレントメモリの割り当て情報記録領域の割り当て情報を変更)する。この場合、ステップ806を経由した場合には、指定chストリップに割り当てられる入力chが必ず1つであるため、新しく割り当てられた入力chを、そのchストリップの制御対象chとしてカレントメモリの制御対象記録領域に設定する。また、ステップ805を経由した場合には、指定chストリップに同時に複数の入力chが割り当てられることになるため、新しく割り当てられた複数の入力chの中のいずれか1つをそのchストリップの制御対象chとしてカレントメモリの制御対象記録領域に設定する。制御対象chとする1つの入力chを選ぶ方法は、どのようなものでもよい(図8で説明した)。