以下に、本発明に係る音響信号処理システムの一実施形態であるミキシングシステムについて、添付図面を参照して、説明する。
《ミキシングシステムの全体構成》
図1(a),(b)は、ミキシングシステムの構成を説明するブロック図である。
図1に示すミキシングシステムは、複数のシステム構成装置(ノード)と、各装置を接続するオーディオネットワーク7から構成され、複数の装置として、オペレータが各種操作を行うミキシングコンソール(装置B)1と、オーディオ信号に対するミキシング処理等の信号処理を行う第1ミキシングエンジン(装置C)2及び第2ミキシングエンジン(装置D)3と、外部からオーディオ信号を入力する、又は外部へオーディオ信号を出力するオーディオ信号入出力装置(I/O装置(装置A,E及びF))4〜6とを含んでいる。
ミキシングシステムを構築する複数の装置1〜6は、オーディオ信号のミキシング処理に係る信号処理を共同して行う。すなわち、コンソール1は、システム全体の動作の制御や、各装置2〜6をリモート制御する制御装置となり、オペレータから受け付けた操作に応じた指示を、オーディオネットワーク7経由で他の装置2〜6に送信することで、エンジン2,3における信号処理の制御や、各装置間でオーディオ信号を送受信するための経路制御等を行う。他の装置2〜6は、コンソール1から与えられた指示に基づいて動作する。また、オペレータは、コンソール1において、エンジン2,3が実行している信号処理の内容(パラメータの値等)や、I/O装置4〜6におけるオーディオ信号の入出力レベル等の各種データをモニタすることができる。
オーディオネットワーク7は、各装置1〜6の間をイーサネット(登録商標)規格のネットワークケーブルを用いて順次接続することにより形成されたリング型のネットワークであって、上記特許文献2(特開2008‐072347号公報)に開示された伝送方式により、複数チャンネルのオーディオ信号を含む各種データを「伝送フレーム」単位で伝送することができる。
オーディオネットワーク7に接続された装置1〜6のうちいずれか1つがマスタノードとなり、所定のサンプリング周期毎に「伝送フレーム」を作成して、該作成した伝送フレームをネットワーク7に送出する。図1では、符号(M)が付記された装置F(第3I/O装置6)がマスタノードである例を示している。
マスタノード以外の装置は、全てスレーブノードとなり、所定のネットワーククロックに基づいて、オーディオネットワーク7から伝送フレームを受信しつつ、その伝送フレームをオーディオネットワーク7へ送信する転送処理を行う。1つの伝送フレームのサイズが、サンプリング周期やネットワーク7の通信速度(伝送帯域幅)等の条件に基づき適切に設定されることにより、マスタノードから送信された伝送フレームは、1サンプリング周期内に、リング型のネットワーク7に接続された全ての装置1〜6の間を、1巡することができる。したがって、伝送フレームに載せた複数チャンネルのオーディオ信号(波形データ)を複数の装置1〜6の間で略リアルタイム伝送することができる。
なお、マスタノードは、上記伝送フレームを生成する装置として機能するとともに、ネットワーク7上の各装置において、波形データを処理するサンプリング周期のタイミングを同期させるワードクロックのワードクロックマスタとして機能する。スレーブノードとなる各装置は、1つの伝送フレームの受信を開始したタイミングに同期して、波形データを処理するサンプリング周期を規定する信号であるワードクロックを発生することで、波形データの処理タイミングを、マスタノードにおけるサンプリング周期(ワードクロック)のタイミングに同期させる。
《伝送フレームの伝送経路》
図1(a)において、各装置間を結ぶ矢印は、伝送フレームの伝送経路を示しており、矢印の向きは伝送フレームの転送方向を表す。装置1〜6は、それぞれ単方向に通信を行う受信インターフェースと送信インターフェースの組みを2組備えており、隣接する2つの装置の1組の受信インターフェース及び送信インターフェースを、ネットワークケーブルにより接続する。
例えば、装置A(I/O装置4)と装置B(コンソール1)の間では、装置Aの受信インターフェースと装置Bの送信インターフェースが1つの通信ケーブルで接続されるとともに、装置Bの受信インターフェースと装置Aの送信インターフェースが別の通信ケーブルで接続される。図1(a)に示す装置1〜6の列の両端に描かれた装置A(I/O装置4)と装置F(I/O装置6)の間も、同様に2本の通信ケーブルによって接続される。このように、隣接する装置間を2つの順次接続することで、図1(a)に示す通り、それぞれ反対方向で伝送フレームが伝送される2つのリング状の伝送経路が形成される。マスタノード(装置F)で生成された伝送フレームは、2つの伝送経路のうち一方の経路において、装置F→A→B→C→D→E→Fの順に全ての装置を循環し、他方の経路において、装置F→E→D→C→B→A→Fの順に全ての装置を循環する。本明細書及び図面では、このように二重化された伝送経路で伝送フレームを伝送する動作を「ツイン動作」という。図1(a)のミキシングシステムは、システムが正常に稼動しているときには、「ツイン動作」で稼動できる(図1において「(1)ツイン動作」)。
「ツイン動作」で稼動中のミキシングシステムにおいて、システム中の装置のうちの1つ(例えば、装置D)が電源オフされたこと、或いはケーブルの切断等なんらかの事情により等により、ネットワーク7上に存在しなくなってしまうと「(2)電源オフ」)、当該不在となったに装置(装置D)の箇所で、2つのリング状の伝送経路が切断されてしまう。このような場合には、図1(b)に示す通り、切断された装置Dに隣接する装置Cと装置Eが伝送経路の折り返し端(ループバック(LB))となり、装置Dを除く5つの装置の間で、各ループバックを両端とする1つのリング状の伝送経路が形成される。この伝送経路において、マスタノードFで生成された伝送フレームは、装置F→A→B→C→B→A→F→E→Fの順に5つの装置を循環する(図1(b)に示す「(3)シングル動作」)。
このように本実施例のミキシングシステムでは、ネットワーク7上の1つの装置(ただし、マスタノード以外の装置)の箇所でツイン動作の伝送経路の一部が切断された場合であっても、シングル動作の経路を用いて伝送フレームをシステム全体に循環させる伝送経路を維持できる。したがって、ネットワーク7に接続された装置のうちの1つが存在しなくなった場合でも、他の装置はネットワーク7から切り離されること無く、システム全体で伝送フレームを伝送する動作を継続可能である。
《エンジンのミラーリング》
また、本実施例のミキシングシステムには、図1(a)に示す通り、第1ミキシングエンジン2及び第2ミキシングエンジン3の2つのエンジンが具備されており、2つのエンジンを択一的に切り替えるシステム運用形態(エンジンのミラーリング)が可能である。エンジンのミラーリングを行う場合には、2つのエンジン2,3が同じオーディオ信号に対する同じ内容のミキシング処理が行われるよう設定され、いずれか一方がミキシングシステムにおける信号処理の主体として用いる「運用系エンジン」(第1信号処理装置)となり、他方は信号処理に参加せずに待機しているバックアップ用のエンジン(「待機系エンジン」(第2信号処理装置))となる。
エンジンのミラーリング機能により、「運用系エンジン」の動作に異常が生じたときなどに、「待機系エンジン」を新たな運用系エンジンとして使用することで、元の「運用系エンジン」が行っていた信号処理を、新たな運用形エンジンにより継続することができる。且つ、上述の通り、ネットワーク上の1つの装置が不在になった場合でも、システム全体ではシングル動作により伝送フレームを伝送する動作を継続可能である。すなわち、本実施例に係るミキシングシステムにおいては、運用系エンジンが不在になった場合でも、システム全体で伝送フレームを伝送する動作を継続し、且つ、オーディオ信号に対する信号処理を継続することが可能である。
本実施例に係るミキシングシステムにおいては、後述する通り、エンジンのミラーリングを行うにあたり「FASTモード」及び「ECONOMYモード」の2つの動作モードを設定することができる。「FASTモード」は、I/O装置4,5又は6からオーディオ信号の出力を途切れさせること無くエンジンの切り替えを行うことに特徴がある。また、「ECONOMYモード」では、ミラーリングのために使用する伝送フレームにおけるオーディオ信号の記憶領域(伝送チャンネル)の量を節約する点に特長がある。
《伝送フレームの構成》
図2は、オーディオネットワーク7を伝送される伝送フレームの構成を示す。伝送フレームは、オーディオ信号等の各種データを記憶する複数の記憶領域を有する。伝送フレームには、先頭側から順に、プリアンブル100、管理データCD記憶領域101、複数チャンネルのオーディオ信号を記憶可能な音響信号領域102、イーサネット(登録商標)データ領域103、ITP領域104、メータ領域105、NC領域106、及び、当該フレームのエラーチェックコードを記憶するフレームチェックシークエンス(FCS)領域107が設けられている。なお、図2に示す各領域のサイズ(各領域の帯域幅)は一例であって、図面上での各領域のサイズ比率が、その領域に記憶されるデータ量に対応するものではない。
プリアンブル100には、IEEE(Institute of Electrical and Electronic Engineers)802.3で規定されるプリアンブルとともに、SFD(Start Frame Delimiter)等が記載される。本発明では、システムにおける伝送フレームのルーティングが、機器のアドレスではなく、ケーブルによる機器の物理的な接続により行われているので伝送フレームの「宛先アドレス」は不要である。また、伝送フレームのサイズは予め定められた固定サイズなので伝送フレームの「データサイズ」も不要である。CD記憶領域101には、当該伝送フレームに含まれるデータを管理するためのデータ(伝送フレームの番号や、サンプル)遅れ値などが記載される。本実施例では、CD記憶領域101には、後述するOSFフラグ(第1状態データ,第2状態データ)が書き込まれる。
音響信号領域102は、オーディオ信号の伝送を行うために使用される領域であって、所定の複数の伝送チャンネル(例えば256チャンネル)を有する。伝送チャンネルは、所定のサンプリング周波数でサンプリングされたデジタルオーディオ信号(波形データ)を、1つの伝送チャンネルに1チャンネル分ずつ記憶できる。各伝送チャンネルには、音響信号領域102の先頭側から順に、連続するチャンネル番号が付けられている。ネットワーク7に接続された各装置には、その装置がオーディオ信号を書き込む1又は複数の伝送チャンネルが、予め割り当てられる。各装置に対する音響信号領域102の割り当てについては、後述する。
イーサネット(登録商標)データ領域103、ITP領域104、メータ領域105及びNC領域106は、オーディオネットワーク7経由で各装置1〜6の間でやりとりするオーディオ信号以外のデータを格納する領域である。イーサネット(登録商標)データ領域103により、通常のイーサネット(登録商標)フレームが伝送される。通常のイーサネット(登録商標)フレームには、先述したプリアンブル及びSFDに続けて、宛先アドレス、送信元アドレス及びデータサイズがあり、更にその後に可変長のデータが続き、エラーチェック用のFCSで終る。宛先アドレス及び送信元アドレスは、各装置のネットワークI/Oに固有のMAC(Media Access Control)アドレスである。なお、宛先アドレスとしては、全装置を宛先とするブロードキャストアドレスを指定することもできる。本システムにおいて、或る装置が別の装置をリモートで監視したり、制御したりするために伝送される各種制御データは、全て、イーサネット(登録商標)フレームの形式で伝送される。イーサネット(登録商標)データ領域103には、コンソール1から送信されるリモート制御用データ等の各種制御データ(イーサネット(登録商標)データ)が記憶される。1つの伝送フレームのイーサネット(登録商標)データ領域103に書き込めるサイズよりも大きいデータを伝送する場合には、周知の通り、送信側でデータを該書き込めるサイズ以下の部分データに分けて伝送し、受信側で複数の部分データを所定の順番に結合することで、元のデータを復元する。メータ領域105は、コンソール1(制御装置)で各装置の各オーディオ信号の入出力音量レベルを表示するためのレベル表示メータ用データを記憶する。また、NC領域106は、オーディオネットワーク7のネットワーク構成を示すデータを記憶する。
FCS47は、IEEE802.3で規定される、フレームのエラーを検出するエラーチェックコードを記憶した領域である。なお、レベル表示メータ用のデータを記憶する領域105やネットワーク構成に示すデータを記憶するNC領域106が設けられているのは、それらのデータを定常的に伝達するためである。なお、上記で説明した伝送フレームを用いたネットワーク技術の詳細については、特開2009‐094587号公報に詳しいので、そちらを参照されたい。
《各装置のハードウェア構成》
図3(a)〜(c)は、ミキシングシステムを構成する各装置のハードウェア構成を説明するためのブロック図であって、(a)はコンソール1のハードウェア構成、(b)はI/O装置4〜6のハードウェア構成、(c)は第1エンジン2及び第2エンジン3のハードウェア構成をそれぞれ示す。
《各装置に共通する構成》
図3(a)〜(c)において、CPU10,20,30、ROM(Read Only Memory)及びRAM(Random Access Memory)を含むメモリ11,21,31、オーディオ信号インターフェース(「A IO」(以下「オーディオI/O」))12,22,32、ネットワークインターフェース(「N I/O」。以下「ネットワークI/O」)13,23,33、及びコンピュータインターフェース(「PC IO」)14,24,34は、各装置1〜6で共通する構成要素である。各装置の各構成要素は、CPUバス18,26,37を介してCPU10,20,30に接続される。各装置のCPU10,20,30は、それぞれ、メモリ11,21,31のROMに記憶された制御プログラムを実行し、メモリ11,21,31のRAMに記憶された隔週設定データや各種パラメータに基づいて、各装置の全体的な動作を制御する。
オーディオI/O12,22,32は、各装置に外部接続された入力元からアナログ又はデジタルオーディオ信号を入力する入力手段、又は、外部接続された出力先へアナログ又はデジタルオーディオ信号を出力する出力手段として機能するインターフェースである。入力元は、例えば楽器や音楽再生装置など、ミキシングシステムに対する入力信号(オーディオ信号)を入力する何らかの装置である。出力先は、例えばアンプや録音装置、或いはモニタ用ヘッドフォンなど、ミキシングシステムの出力信号(オーディオ信号)の出力先となる何らかの装置である。なお、オーディオI/O12,22,32については、図3(b)のI/O装置を説明するときに、詳しく述べる。
また、ネットワークI/O13,23,33は、各装置をオーディオネットワーク7に接続するインターフェースであって、伝送フレームを経路の上流から受信して下流へ送信する転送機能を有するとともに、伝送フレームの特定の領域からオーディオ信号等の各種データを読み出す読み出し手段、及び伝送フレームの特定の領域に対してオーディオ信号等の各種データを書き込む書き込み手段として機能する。ネットワークI/O13,23,33の詳細は、後述の図4を参照して詳しく説明する。
各装置のオーディオI/O12,22,32とネットワークI/O13,23,33の間は、オーディオバス19,27,38により接続されており、オーディオI/O12,22,32とネットワークI/O13,23,33の間で、複数チャンネルのデジタルオーディオ信号(波形データ)を、サンプリング周期に基づくタイミングで1サンプルずつ時分割伝送しつつ、それに並行してイーサネット(登録商標)フレームを伝送することができる。なお、オーディオI/O及びネットワークI/Oは、ワードクロックを用いた周知の技術により、波形データを処理するサンプリング周期のタイミングを同期する。すなわち、オーディオI/O及びネットワークI/Oのいずれか1つがワードクロックマスタとなり、該マスタ以外はスレーブとなり、スレーブはマスタが発生するワードクロックに同期したタイミングでワードクロックを生成し、該ワードクロックに基づくサンプリング周期のタイミングで波形データを処理する。
また、各装置のコンピュータインターフェース14,24,34は、それぞれ、各装置にパーソナルコンピュータ(PC)を接続するための通常のイーサネット(登録商標)規格のインターフェースである。PCインターフェース14,24,34を介して装置に外付けされたPCは、直接に接続された装置との間だけでなく、該装置が接続されたオーディオネットワーク7を介して他の装置との間でもイーサネット(登録商標)フレームを伝送することができ、該イーサネット(登録商標)フレームを利用して、ミキシングシステムの各装置1〜6をリモート制御するための(コンソール1と同様の)制御装置として動作する。
《コンソールの構成》
図3(a)において、コンソール1には、操作パネルに設けられた表示部(P表示)15、オペレータによる各種操作を受け付けるパネル操作子(P操作子)16、各チャンネルのオーディオ信号の音量レベルを調整する音量レベル調整用操作子(電動F)17が具備されている。表示部15は、例えば液晶ディスプレイ等の表示器であって、CPU10からCPUバス18を介して与えられた表示制御信号に基づき各種情報を表示する。パネル操作子16は、操作パネル上に配置された多数の操作子である。また、音量レベル調整用操作子17は、オーディオ信号の音量を調整するための操作子であって、CPU10から与えられる駆動信号に基づきツマミ部の操作位置が電動制御される、いわゆる「電動フェーダ」により構成される。
オペレータは、コンソール1の表示部15、パネル操作子16及び音量レベル調整用操作子17を用いて、エンジン2,3が実行する信号処理に関連する各種パラメータの値の設定や、後述するミラーリング設定や、エンジンの切り替え指示等の各種操作を入力することができる。パネル操作子16等の操作に応じた検出信号はCPUバス18を介してCPU10に供給される。CPU10は、該供給された検出信号に基づいて、コンソール1自身の動作を制御するとともに、他の装置をリモート制御するための制御データを発生する。CPU10が発生した制御データは、CPUバス18を介してネットワークI/O13に供給され、ネットワークI/O13において伝送フレームに書き込まれる。
《I/O装置の構成》
図3(b)のI/O装置において、オーディオI/O22は、アナログオーディオ信号を入力するアナログ入力部、アナログオーディオ信号を出力するアナログ出力部、又はデジタルオーディオ信号(波形データ)を入出力するデジタル入出力部の少なくとも何れかの機能を有する。オーディオI/O22は、I/Oカード装着用スロットと、該スロットに装着されるカード式デバイスにより構成されてよい。オペレータは、I/Oカード装着用スロット数等の制限の範囲内で、オーディオI/O22の構成を任意に変更することができる。
アナログ入力部は、例えばXLR端子やフォーン端子等からなる複数のアナログ入力端子とAD変換回路を備え、該入力端子に接続された入力元から供給された複数チャンネルのアナログオーディオ信号を、サンプリング周期毎にデジタルオーディオ信号(波形データ)に変換してオーディオバス27に出力する。
アナログ出力部は、例えばXLR端子やフォーン端子等からなる複数のアナログ出力端子とDA変換回路を備え、サンプリング周期毎に、オーディオバス27から取り込んだ複数チャンネルのデジタルオーディオ信号(波形データ)をアナログオーディオ信号に変換して、該出力端子に接続された出力先へ出力する。
デジタル入出力部は、例えばAES/EBU端子やADAT(登録商標)端子等の複数のデジタルオーディオ端子を備え、サンプリング周期毎に、該デジタルオーディオ端子に接続された入力元からの波形データの入力、又は、該デジタルオーディオ端子に接続された出力先への波形データの出力を行う。
また、図3(b)に示す通り、I/O装置は簡易ユーザインターフェース(簡易UI)25を具備する。簡易UI25は、電源スイッチや動作チェック用のLEDインジケータなどを含むシンプルなユーザインターフェースである。
《エンジンの構成》
図3(c)に示す通り、エンジン2,3には、オーディオ信号に対する信号処理を行う信号処理部(DSP(Digital Signal Processing)部)35が設けられている。DSP部35は、1つのDSP(Digital Signal Processor)で構成してもよいし、バスで相互接続された複数のDSPで構成し、該信号処理を複数のDSPで分散処理するようにしてもよい。DSP部35は、オーディオバス38を介してオーディオI/O32及びネットワークI/O33に接続されており、DSP部35と、オーディオI/O32及びネットワークI/O33の間で、サンプリング周期毎に複数チャンネルの波形データの送受信を行うことができる。
DSP部35には、サンプリング周期毎に、オーディオバス38を介してネットワークI/O33及びオーディオI/O32から取り込まれた複数チャンネルの波形データ(オーディオ信号)が供給されるとともに、CPUバス37を介してCPU30から制御データが供給される。制御データは、コンソール1においてオペレータが行ったミキシング処理に関する操作に応じたデータであって、オーディオネットワーク7経由でコンソール1から受信したものである。そして、DSP部35は、サンプリング周期毎に、各種マイクロプログラムに基づく処理を実行し、コンソール1でオペレータが入力した操作に応じたパラメータの値に応じた信号処理を、オーディオバス38から取得した複数チャンネルの波形データに対して行う。DSP部35で信号処理された複数チャンネルの波形データは、サンプリング周期毎に、オーディオバスを介してネットワークI/O33又はオーディオI/O32へ供給される。
また、図3(c)に示す通り、エンジン2,3は簡易ユーザインターフェース(簡易UI)36を具備する。簡易UI36は、電源スイッチや動作チェック用のLEDインジケータなどである。
《ネットワークI/Oの構成》
図4は、コンソール1、エンジン2,3及びI/O装置4〜6に具備されたネットワークI/O13、23及び33の電気的ハードウェア構成例を説明するブロック図である。図4に示す通りネットワークI/O13、23及び33は、1組の第1受信部40及び第1送信部41と、別の1組の第2受信部42及び第2送信部43と、フレーム処理部44と、制御用マイクロコンピュータ(「制御マイコン」)45と、オーディオバス19、27又は38に接続されたオーディオ信号用受信FIFO46及びオーディオ信号用送信FIFO47と、CPUバス18、26又は37に接続された制御データ用受信FIFO48及び制御データ用送信FIFO49を備える。
制御マイコン45は、CPU、ROM及びRAMを含むマイクロコンピュータであって、フレーム処理部44とCPUバス18、26又は37にデータ送受信可能に接続される。制御マイコン45のCPUは、ROM又はRAMに格納された制御プログラムを実行して、当該ネットワークI/Oの全体動作の制御を行う。また、制御マイコン45は、CPUバス18、26又は37を介して接続された当該装置のメインのCPU10,20又は30の動作を監視し、該メインのCPU10,20又は30に異常が生じたときに、その旨をネットワーク7上の他の装置に通知する処理を行うことができる。
第1受信部40及び第1送信部41の1組がネットワークケーブルにより隣接する1つの装置に接続され、また、第2受信部42及び第2送信部43の1組がネットワークケーブルにより別の隣接する装置に接続される(図1(a)を参照)。受信部40,42において、ネットワークケーブルを伝播する電気信号又は光信号から抽出されたネットワーククロックに基づいて、該電気信号又は光信号からデジタルデータを復調することで、伝送経路の上流から送信されている伝送フレームを構成するデータが順次、フレーム処理部44に供給される。送信部41,43は、フレーム処理部44から供給されたデジタルデータを、ネットワーククロックをキャリアとして電気信号又は光信号に変調してネットワークケーブルから出力する。これにより、伝送フレームのデータが順次、経路の下流へ送信される。
これら受信部40,42及び送信部41,43のネットワーク物理層は、所定サイズの伝送フレームを1サンプリング周期内に伝送できるだけの帯域を有していれば、従来から知られるどのような通信方式でデータ通信を行うインターフェースで構成されてもよい。一例として、周知の1Gbpsのイーサネット(登録商標)規格の物理層であれば、上記の能力の要求を満たす。
フレーム処理部44は、受信部40,42を介して供給される伝送フレームのデータを取り込む処理と、該伝送フレームにデータを書き込む処理を行いつつ、当該受信している伝送フレームを送信部41,43へ出力する。つまり、受信部40,42を介して経路の上流から入力されている伝送フレームは、フレーム処理部44を通過して、送信部41,43を介して経路の下流に順次転送されるものであるところ、当該伝送フレームがフレーム処理部44を通過する過程において、当該伝送フレームに対するデータの取り込み及び書き込み処理がフレーム処理部44により行われる。
前記伝送フレームの転送は、基本的には、第1受信部40から入力された伝送フレームを第2送信部43から出力する経路と、第2受信部42から入力された伝送フレームを第1送信部41から出力する経路の2つの経路について行われる。ただし、シングル動作を行う場合の経路の折り返し端部(ループバック)となる装置では、第1受信部40から入力された伝送フレームを第1送信部41から出力する経路、又は、第2受信部42から入力された伝送フレームを第2送信部43から出力する経路のいずれかの経路を用いた転送が行われる。
各FIFO46〜49は、それぞれ、先に書き込まれたデータから順に読み出すファーストイン、ファーストアウト(First In, First Out)のバッファであって、伝送フレームに対して書き込むべきデータ、及びフレーム処理部44において伝送フレームから取り込んだデータの一時記憶に用いる。
オーディオ信号用受信FIFO46は、フレーム処理部44において伝送フレームから取り込まれた複数チャンネルのデジタルオーディオ信号(波形データ)を格納するバッファである。オーディオ信号用受信FIFO46に格納された複数チャンネルの波形データは、サンプリング周期毎に、オーディオバス19、27又は38を介して当該装置内の他の構成要素(オーディオI/O、DSP等)に供給される。
オーディオ信号用送信FIFO47は、伝送フレームに書き込むべき複数チャンネルの波形データを格納するバッファである。オーディオ信号用送信FIFO47には、サンプリング周期毎に、オーディオバス19、27又は38を介して供給された複数チャンネルの波形データが供給される。
制御データ用受信FIFO48は、サンプリング周期ごトの伝送フレームのイーサネット(登録商標)データ領域103から取り込まれたデータである、又は、同データに基づいて形成された制御データ(イーサネット(登録商標)フレーム)を格納するバッファである。制御データ用受信FIFO48に格納された制御データは、CPUバス18、26又は37を介して当該装置のメインのCPU10,20又は30により読み出され、システム全体の制御や当該装置の制御に利用される。
制御データ用送信FIFO49は、伝送フレームに書き込むべき制御データを格納するバッファである。送信FIFO49には、当該装置のメインのCPU10,20又は30が、CPUバス18、26又は37を介して送信すべき制御データ(イーサネット(登録商標)フレーム)を書き込む。なお、CPU10,20又は30は、当該装置において送信すべき制御データが発生した場合だけでなく、当該装置の外付けのPCから制御データを受信し、その制御データが当該装置宛でない場合(他の装置宛の場合)にも、その制御データを送信すべき制御データとして送信FIFO49に書き込む。
《フレーム処理部が行う処理》
図5は、フレーム処理部44が、伝送フレームの通過時に行う各種データの読み出し及び書き込み処理を説明するブロック図である。各ブロック80〜91は、それぞれデータの書き込み処理又は読み出し処理を示している。フレーム処理部44は、各ブロック80〜91に対応するデータの書き込み処理及び読み出し処理を行う。各ブロックに対応する処理は、それぞれ他のブロックの処理とは独立に行われる。
A書込処理80は、オーディオ信号用送信FIFO47に格納された複数チャンネルの波形データを伝送フレームの音響信号領域102中の特定の領域(伝送チャンネル)に書き込む処理である。各装置のフレーム処理部44は、複数の送信ポートを備えており、各送信ポートには、その装置が確保した複数の伝送チャンネル(伝送チャンネル群)が1つずつ割り当てられる。A書込処理80では、各サンプリング周期の伝送フレームのうちの、その装置が確保した各伝送チャンネルの領域が通過するタイミングで、その伝送チャンネルが割り当てられた送信ポートに対応する波形データを、当該領域(伝送チャンネル)に書き込み、その領域の記憶内容を書き換える。これにより、各装置は、波形データが新たに書き込まれた伝送フレームを経路の下流に送信することができる。
A取込処理81は、伝送フレームの音響信号領域102から波形データを取り込んで、オーディオ信号用受信FIFO46に格納する処理である。各装置のフレーム処理部44は複数の受信ポートを備えており、各受信ポートには、それぞれ、波形データを受信すべき1つの伝送チャンネルを示す受信チャンネルが設定される。A取込処理81では、各サンプリング周期毎の伝送フレームのうちの、各受信ポートに設定された受信チャンネルが示す伝送チャンネルの領域が通過するタイミングで、当該領域(伝送チャンネル)から波形データを取り込み、該取り込んだ波形データを受信FIFO46に格納する。これにより、他の装置が伝送フレームの音響信号領域102に書き込んだ波形データを取り込むことができる。
E書込処理82は、制御データ用送信FIFO49に蓄積された制御データ(イーサネット(登録商標)フレーム)を伝送フレームのイーサネット(登録商標)データ領域103に書き込む処理である。制御データ(イーサネット(登録商標)データ)は、上記の通り、リモート制御用の制御データや、各装置の接続状況や動作状況の情報等である。制御データの伝送はトークンパッシング方式で管理されており、伝送フレームのイーサネット(登録商標)データ領域103にデータを書き込むことができるのは、ネットワーク7の中で1つの権限(トークン)を有する装置だけなので、E書込処理82を行うときには、フレーム処理部44は、当該装置がイーサネット(登録商標)データ領域103に対する書き込み権限を取得した後に、E書込処理82を行う。また、制御データ用送信FIFO49に蓄積された制御データのサイズが1つの伝送フレームのイーサネット(登録商標)データ領域103に書き込めるサイズよりも大きい場合、当該FIFO49の制御データを、それぞれ該書き込めるサイズ以下の複数の部分データに分けて書き込む。
E取込処理83は、伝送フレームのイーサネット(登録商標)データ領域103から取り込んだデータに基づいて制御データを形成し、イーサネット(登録商標)データ用受信FIFO48に格納する処理である。各装置のフレーム処理部44は、E取込処理83により、伝送フレームのイーサネット(登録商標)データ領域103のデータを取り込み、該取り込んだデータが制御データの全部である場合はそのまま、該取り込んだデータが制御データの部分データである場合は複数の伝送フレームで順次送られる部分データを集めて制御データの全部を形成して、該制御データに記載されたFCSに基づいきエラーチェックを行う。ここで、エラーが検出された場合が該制御データは破棄され、エラーが検出されなかった場合は、該制御データの宛先アドレスが当該装置又は当該装置に接続されたPC宛てであるか否かが判断される。当該装置又は当該装置に接続されたPC宛てでなかった場合は、該制御データを破棄し、当該装置又は当該装置に接続されたPC宛てであった場合は、該制御データを制御データ用受信FIFO48に格納し、当該装置のメインのCPU10,20又は30に制御データの受信を通知する。該通知を受けたメインのCPU10,20又は30は、制御データ受信用FIFO48から該制御データを読み出し、宛先アドレスが当該装置宛てであった場合は、該読み出した制御データに基づいてシステム全体の制御や当該装置の制御を行い、宛先アドレスが外付けPC宛てであった場合は、該読み出した制御データを該PCへ転送する。
OSF書込処理84及びOSF取込処理85は、OSFフラグに関する書き込み処理及び取り込み処理である。「OSF」は「Operation State Flag」の頭文字である。OSFフラグは、当該フラグ送信元のエンジン2,3の動作状態を、正常又は異常の2値で示すフラグ(第1状態データ及び第2状態データ)であって、当該エンジンの動作状態が後述する異常要件に該当するとき、「異常」を示す値が設定され、それ以外の場合は正常を示す値が設定される。
OSF書込処理84は、伝送フレーム中のCD領域101にOSFフラグを書き込む処理であって、エンジン2,3のフレーム処理部44のみが行う。OSF取込処理85は、伝送フレームのCD領域101からOSFフラグを取り込む処理であって、これはネットワーク7に接続された各装置で行われる。各装置は、伝送フレームのOSFフラグを取り込むことで、該OSFフラグの送信元であるエンジンの状態が正常か異常かを判断できる。
また、CD書込処理85は、伝送フレームのCD領域101にOSFフラグ以外のデータを書き込む処理である。CD取込処理86は、伝送フレームのCD領域101からOSFフラグ以外のデータを取り込む処理である。ECC書込処理87は、マスタノードが今回出力する伝送フレーム用のエラーチェックコードを伝送フレームのFCS47に書き込む処理である。ECC取込処理88は、伝送フレームのFCS47からエラーチェックコードを取り込む処理である。スレーブノードのフレーム処理部44は、取り込んだエラーチェックコードに基づき当該伝送フレームが正常かどうかを判断し、エラーの場合にはその伝送フレームを破棄する。
各装置のフレーム処理部44は、図に示したデータ以外にも、ITP領域、メータ領域、NC領域等のデータについても書き込み及び読み出しの処理を行っている(図5において、「その他書込処理89」及び「その他取込処理90」と表記)。
《ミキシングシステムにおける信号処理の流れ》
図6は、図1に示すミキシングシステムにおける信号処理の流れを説明するブロック図である。図6において、コンソール1、第1I/O装置4及び第3I/O装置6が、外部からのオーディオ信号(入力信号)を本システムに対する入力信号として伝送フレームに書き込む入力装置として利用される。また、コンソール1、第1I/O装置4及び第2I/O装置5が、エンジン2,3によりミキシング処理されたオーディオ信号(出力信号)を、伝送フレームから取り込んで、外部へ出力する出力装置として利用される。また、エンジン2,3自身も、外部からの入力信号を本システムに対する入力信号として入力する入力装置として利用され、且つ、エンジン2,3によりミキシング処理されたオーディオ信号を外部へ出力する出力装置として利用される。なお、ミキシングシステムは、2つのミキシングエンジン2,3が具備されているが、図6にはエンジンを示すブロックは1つしか描かれていない。実施的な信号処理の動作は、2つのエンジン2,3のいずれか一方(運用系エンジン)のみが行うからである。
図6において、点線矢印は各装置1〜6とオーディオネットワーク7の間のオーディオ信号の流れを示しており、実線矢印は、各装置内のオーディオバス19,27,38経由で行われるオーディオ信号の流れを示す。先述したように、伝送フレームの音響信号領域102は、所定の複数の伝送チャンネル(例えば256チャンネル)分の記憶領域を有しており、オーディオネットワーク7では同時に256チャンネル分のオーディオ信号を伝送することができる。各装置1〜6は、予め(例えばネットワーク7に接続されたとき等)、その全256チャンネルの中から、その装置がオーディオ信号の送信に用いる1又は複数の伝送チャンネルを排他的に確保しており、自身で確保した伝送チャンネルを用いてオーディオ信号をオーディオネットワーク7上に送信することができる。
入力装置1,4,6において、オーディオ入力部60〜62(「Ai(c)」、「Ai(♯1)」、及び「Ai(♯3)」は、図3のオーディオI/O12,22の入力機能に相当しており、各入力端子毎に外部の入力元が接続される。制御装置は、パッチ部50〜52に対し、オーディオ入力部60〜62の複数の入力端子から入力されたオーディオ信号を、伝送フレームの伝送チャンネルに割り当てる設定を行う。なお、「パッチ」は、基本的には、オーディオ信号の入力元に出力先を割り当てることで、該入力元のオーディオ信号をその出力先に送る経路を設定すること(経路設定)をいう。各出力先は、1つの入力元に対してのみ割り当てることが可能であり、同時に2つの入力元に対して割り当てることはできない。また、ある出力先が、いずれの入力元に対しても割り当てられなかった場合。その出力先には無音の信号(ゼロレベル信号)が出力される。更に、受信ポートに関するパッチ設定には、その受信ポートが受信する伝送チャンネルを示す設定(受信設定)が含まれる。受信ポートの受信チャンネルを動的に変化させることにより、装置で必要とされる受信ポート数を減らすことができる。一方、送信ポートに関しては、各装置が複数の伝送チャンネルを確保し、該確保した複数の伝送チャンネルを送信チャンネルとして静的に複数の送信ポートに設定するようになっているので、パッチ設定には送信する伝送チャンネルに関する設定(送信設定)は含まれていない。オーディオ入力部60〜62の複数の入力端子を介して外部から入力された複数チャンネルのアナログオーディオ信号は、サンプリング周期毎にデジタルオーディオ信号(波形データ)に変換され、パッチ部50〜52のパッチ設定に基づいて、サンプリング周期毎に、オーディオバス19,27を介して、ネットワークI/O13,23の複数の送信ポートに供給される。このとき、ネットワークI/O13,23の複数の各送信ポートは、サンプリング周期毎に受信する伝送フレームの、当該入力装置が確保した複数の伝送チャンネルの領域への書き込みを行っている。オーディオ入力部60〜62の動作が入力手段に相当し、このネットワークI/O13,23を含むパッチ部50〜52の動作が、入力信号書き込み手段に相当する。
制御装置は、ミキシングエンジン2,3の入力パッチ部53に対して、伝送フレーム中の伝送チャンネルの波形データを、後段の入力チャンネル部63の入力チャンネルに割り当てるパッチ設定を行う。該パッチ設定には、エンジン2,3が受信すべきで脳チャンネルを示す受信設定と、受信した該伝送チャンネル(1つの受信ポート)の信号を所望の入力チャンネルに供給するための経路設定が含まれる。ミラーリングを行う場合、エンジン2,3の入力パッチ部53では、それぞれ、同じ伝送チャンネルの波形データを、各エンジンで対応する関係にある入力チャンネル(同じチャンネル番号の入力チャンネル)に割り当てる。エンジン2,3のネットワークI/O33は、サンプリング周期毎に受信する伝送フレームから、入力パッチ部53の受信設定に基づき、入力装置1,4,6により書き込まれた1又は複数チャンネルの波形データ(入力信号)を取り込み、該取り込んだ1又は複数チャンネルの入力信号を、入力パッチ部53の経路設定に基づき、サンプリング周期毎に、オーディオバス38を介して、DSP部35内部で実現されているヌ湯力チャンネル部63の複数の入力チャンネルに供給する。エンジン2,3のネットワークI/O33を含む入力パッチ部53の動作が第1読み出し手段及び第2読み出し手段に相当する。
入力チャンネル部63は、複数の信号処理チャンネル(入力チャンネル)を有しており、各入力チャンネル毎に、制御装置により設定された音量、周波数、効果等を制御する各種パラメータに基づいて、入力された波形データに対して、レベル調整、イコライジング、及び効果付与等を含む信号処理を行い、該処理済みのオーディオ信号を混合バス64に出力する。混合バス64は、複数のバスラインからなり、各バスライン毎に、入力チャンネル部63から供給された1又は複数チャンネルの波形データを混合して、混合した結果を出力チャンネル部65へ出力する。出力チャンネル部65は、各バスラインに対応する複数の信号処理チャンネル(出力チャンネル)を有しており、出力チャンネル毎に、制御装置により設定された音量、周波数、効果等を制御する各種パラメータに基づいて、対応するバスラインから出力された波形データに対してレベル調整等の信号処理を行う。これら入力チャンネル部63、混合バス64及び出力チャンネル部65は、エンジン2,3のDSP部35(図3(c)参照)が実行するマイクロプログラムの処理により実現される。上記エンジン2,3のDSP部35の動作が、第1信号処理手段及び第2信号処理手段に相当する。
制御装置は、出力パッチ部54に対して、出力チャンネル部65の各出力チャンネルの波形データを、伝送フレームの伝送チャンネルに割り当てるパッチ設定を行う。DSP部35で信号処理された各出力チャンネルの波形データ(出力信号)は、出力パッチ部54のパッチ設定に基づき、サンプリング周期毎に、オーディオバス38を介して、ネットワークI/O33の複数の送信ポートに供給される。ネットワークI/O33の複数の送信ポートは、それぞれ、供給される波形データを、サンプリング周期毎の伝送フレームの音響信号領域102中の特定の領域(当該送信ポートに設定された送信チャンネル)に書き込む。エンジン2,3のネットワークI/O33を含む出力パッチ部54の動作が、第1出力信号書き込み手段及び第2出力信号書き込み手段に相当する。なお、後述する通り、FASTモードでは、エンジン2,3のいずれも出力信号を伝送フレームに書き込み、ECONOMYモードでは、エンジン2,3のいずれか一方のみが出力信号を伝送フレームに書き込む。
また、エンジン2,3には、自身の(ローカルの)オーディオ入力部66(Ai(Lo)及びオーディオ出力部76(Ao(Lo))も具備されている。ローカルのオーディオ入力部66及びオーディオ出力部76は、図3(c)のオーディオI/O32に相当する。ローカルのオーディオ入力部66の各入力端子から入力されアナログデジタル変換されたオーディオ信号は、オーディオネットワーク7の伝送フレームから取り込まれたオーディオ信号と同様に、入力パッチ部53の経路設定に基づいて、入力チャンネル部63の所望の入力チャンネルに供給することができる。また、出力チャンネル部65の各出力チャンネルから出力されるオーディオ信号は、伝送フレームに書き込まれるオーディオ信号と同様に、出力パッチ部54の経路設定に基づいて、ローカルのオーディオ出力部76の所望の出力端子にデジタルアナログ変換して供給することができる。
制御装置は、各出力装置1,4,5のパッチ部55、56及び57に対して、伝送フレームの伝送チャンネルの波形データを、後段のオーディオ出力部70〜73の複数の出力端子に接続するパッチ設定を行う。該パッチ設定には、出力装置1,4,5が受信すべき伝送チャンネルを示す受信設定と、受信した伝送チャンネル(1つの受信ポート)のオーディオ信号を所望の出力端子に供給するための経路設定が含まれる。オーディオ出力部70〜72(「Ao(c)」、「Ao(♯1)」、及び「Ao(♯2)」)は、図3のオーディオI/O12,22の出力機能(オーディオI/Oが有する複数の物理的出力端子)に相当し、各出力端子毎に外部の出力先へ接続される。各出力装置1,4,5のネットワークI/O13,23においては、サンプリング周期毎に受信する伝送フレームから、パッチ部55〜57の受信設定に基づき、エンジン2,3により書き込まれた複数チャンネルの波形データ(出力信号)を取り込み、該取り込んだ複数チャンネルの出力信号を、パッチ部55から57の経路設定に基づき、サンプリング周期毎に、オーディオバス19,27を介してオーディオ出力部70〜72の複数の出力端子に供給する。オーディオ出力部70〜72の複数の出力端子において、前記供給された複数チャンネルの波形データは、サンプリング周期毎に、アナログオーディオ信号に変換され出力される。このネットワークI/O13,23を含むパッチ部55〜57の動作が出力信号読み出し手段に相当し、オーディオ出力部70〜72の動作が出力手段に相当する。
以上の構成をまとめると、入力装置1,4,6は、オーディオ入力部60〜62を介して外部の入力元から入力された複数チャンネルのオーディオ信号を、それぞれ、パッチ部50〜52のパッチ設定に基づき、伝送フレームの伝送チャンネルに書き込む。エンジン2,3は、入力パッチ部53のパッチ設定に基づき、伝送フレームから複数チャンネルの前記入力信号を取り込んで、入力チャンネル部63、混合バス64及び出力チャンネル部65により、取り込んだ入力信号に対してミキシング処理等の信号処理を行い、該信号処理された複数チャンネルの出力信号を、それぞれ、出力パッチ部54のパッチ設定に基づき伝送フレームの伝送チャンネルに書き込む。出力装置1,4,5は、パッチ部55〜57のパッチ設定に基づき、伝送フレームから複数チャンネルの前記出力信号を取り込んで、オーディオ出力部70〜73を介して外部の出力先へ出力する。
なお、各装置1〜6のネットワークI/Oの複数の送信ポートには、当該装置が確保した複数の伝送チャンネルが送信チャンネルとして静的に設定されていおり、その伝送チャンネルが実際に使用されていない場合(つまり、その伝送チャンネルに対する送信のパッチ設定が行われていない場合)であっても、当該伝送チャンネルに音量レベルがゼロの無音信号(ゼロレベル信号)を載せて、該無音信号をネットワーク7に送信する。先述したように、図6の各パッチ部50〜57には、入力元に対して未割り当ての出力先に、ゼロレベル信号を供給する入力元(図示せず)が含まれる。
《ネットワーク越しのパッチ設定》
上記の通り、本ミキシングシステムでは、エンジン2,3のみならず、全ての装置にパッチ部50〜57が具備されている。これは、限られた数の伝送チャンネルを有効に利用して、オーディオネットワーク7越しにオーディオ信号を入力元から出力先へ伝送するためである。オペレータは、制御装置(コンソール1やPC)のユーザインターフェースを用いて、オーディオネットワーク7越しのパッチ設定を行うことができる。このオーディオネットワーク7越しのパッチ設定において、オペレータは、ある装置の入力元から別の装置の出力先へのパッチ設定(例えば、入力装置の1つの入力端子とエンジンの1つの入力チャンネルの接続の設定)を行うだけでよく、伝送チャンネルの割り当てはシステムにより自動的に行われるのでオペレータがこれを考慮する必要はない。かかるネットワーク越しのパッチ設定を行う手順を、入力装置に接続された入力元とエンジンの入力チャンネルを接続する場合を例に、簡単に説明する。
(1)コンソール1(制御装置)において、1つの入力装置の1つの入力端子を入力元とし、その入力元に対しエンジン2,3の1つの入力チャンネルを1つの出力先として割り当てるパッチ設定が行われたとき、その入力元を具備する入力装置に対して、その入力元からのオーディオ信号を送信すべき旨を示す送信接続のデータが設定される。送信接続のデータは、オーディオ信号の入力元を特定するデータを含む。また、接続相手となる入力チャンネルを具備するエンジン2,3には、前記入力元からのオーディオ信号を受信し、1つの入力チャンネルに供給すべき旨を示す受信接続のデータが設定される。受信接続のデータは、入力元を特定するデータと、該入力元の接続相手となる入力チャンネルを特定するデータを含む。なお、本実施例では2台のエンジン2,3のミラーリングを行うので、各エンジン2,3に同じ受信接続のデータが設定される。
(2)制御装置は、入力元を具備する入力装置のパッチ部50乃至52のいずれかに対して、前記設定された送信接続の内容に基づいて、当該装置が確保している伝送チャンネルのうちの未使用の1つを該送信接続に割り当て、その送信接続のデータによって特定される入力元に、該割り当てた伝送チャンネルの送信ポートを割り当てるパッチ設定を行う。これにより、前記特定された入力元の信号が、該割り当てた送信ポートによって、伝送フレームの前記1つの未使用の伝送チャンネルに書き込まれるようになる。また、当該入力装置は、前記入力元と、該入力元に割り当てた送信ポートが書き込む伝送チャンネルの番号をセットにして、このデータをオーディオネットワーク7に接続された全ての装置に通知する。これにより、他の全ての装置は、該伝送チャンネルにどの入力元のオーディオ信号が載っているのかを知ることができる。
(3)制御装置は、接続相手となるエンジン2,3の入力パッチ部53に対して、前記受信接続の設定内容と、前記入力元を具備する入力装置からの通知内容(入力元と伝送チャンネルを特定する情報のセット)に基づいて、当該入力元のオーディオ信号が載った伝送チャンネルの番号を特定し、1つの受信ポートを該特定された伝送チャンネルを受信するように設定するとともに、該受信ポートに、前記受信接続のデータによって特定される入力チャンネルを割り当てるパッチ設定を行う。これにより、該特定された伝送チャンネルのオーディオ信号が、該特定された入力チャンネルに供給される。つまり、2台のエンジン2,3では、それぞれ、同じ伝送チャンネルから波形データ(オーディオ信号)が取り込まれて、該取り込まれた波形データが、各エンジンで対応する関係にある入力チャンネル(同じチャンネル番号の入力チャンネル)に供給される。
上記(1)〜(3)により、外部の入力元から入力装置に入力されたオーディオ信号が、オーディオネットワーク7を経由して、エンジン2,3の1つの入力チャンネルに供給される。なお、エンジン2,3の出力チャンネルと出力装置1,4,5の各出力端子に接続された出力先をネットワーク7越しに接続する手順は、上記(1)〜(3)において、オーディオ信号の入力元となる入力装置の「入力元」をエンジンの「出力チャンネル」と読み替え、また、接続相手であるエンジンの「入力チャンネル」を出力装置「出力先」と読み替えればよい。更に、入力装置の入力元を出力装置の出力先にネットワーク7越しに接続する場合は、上記(1)〜(3)において、入力装置の「入力元」はそのまま読み、接続相手であるエンジンの「入力チャンネル」を出力装置「出力先」と読み替えればよい。
《FASTモード》
図7(a)〜(c)は、「FASTモード」の特徴を説明する図である。(a)において、前記図2に示す伝送フレーム中の音響信号領域102の各伝送チャンネルに対する各装置の割り当ての様子(どの装置がどの伝送チャンネルを確保しているか)を示す。図7(a)〜(c)において、アルファベット文字は、図1において各装置に付与したアルファベット文字に対応している。また、図7(a)〜(c)においては、装置C(第1エンジン2)が「運用系エンジン」、装置D(第2エンジン3)が「待機系エンジン」である状態を想定している。
(a)において、アルファベット文字が示された領域は、そのアルファベット文字に対応する装置に割り当てられた伝送チャンネルの領域(記憶領域)を示す。各領域のサイズ(各領域の帯域幅)は、各装置が確保する伝送チャンネル数に対応する。符号Cの領域は、装置C(第1エンジン2)に割り当てられた記憶領域である。符号A,B及びFの各領域は、それぞれ対応する装置A(第1I/O装置4)、装置B(コンソール1)及び装置F(第3I/O装置6)に割り当てられた記憶領域である。これら領域C,A,B及びFは、音響信号領域102の先頭側(図において左側)から連続的に確保されている。これに対して、装置D(第2エンジン3)に割り当てられた記憶領域Dは、例外的に、音響信号領域102の後尾側(図において右側)に確保される。そして、いずれの装置にも割り当てられていない領域は「空き領域」として残っている。何れかの装置がマスタノードに対して新たな伝送チャンネルを要求したとき、マスタノードは、空き領域中の一部又は全部の領域をその装置に対して割り当て、その装置は、該割り当てられた領域(伝送チャンネル)を確保する。なお、(a)において、装置E(第2I/O装置)の領域が確保されていないのは、本実施例では、装置Eが、出力装置としてのみ利用されるシステムの構成を想定しているからである(図6参照)。
(a)において、ミラーリングを行うために確保されたエンジン用の2つの領域C,Dを斜線で示している。「FASTモード」によるエンジンのミラーリングを行う場合、運用系エンジンCと、待機系エンジンDは、同じオーディオ信号に対する同じ内容のミキシング処理を行うよう設定されるので、音響信号領域102には、エンジンC及びエンジンDのそれぞれに対して同じ量(伝送チャンネル数)の領域C及び領域Dが確保される。つまり、「FASTモード」の場合には、実質的には使用されない待機系エンジンの出力信号の分だけ、音響信号領域102の伝送チャンネルを余計に使用することになる。しかし、待機系エンジンにも予め伝送チャンネルを割り当てておくことで、後述する通り、エンジンのミラーリングを行うとき(待機系エンジンを運用系エンジンに切り替えるとき)に、ほとんど音切れが生じることなく速やかにエンジンの切り替えを行うことができるようになる。
図7(b)及び(c)は、「FASTモード」によるエンジンのミラーリング機能により、装置1〜6間でのオーディオ信号の入出力状態が変化する様子を説明する図である。(b)は運用系エンジンCが正常にしている状態(正常時)を示し、(c)は運用系エンジンCに異常が生じたときに、待機系エンジンDが運用系エンジンに切り替わった状態(異常時)を示す。また、(b)及び(c)において、装置A〜Fを示すブロック1〜6の列に略並行に延びる帯C,A,B,F及びDは、装置C,A,B,F及びDに割り当てられた音響信号領域102の領域C,A,B,F及びD(図7(a)参照)を表している。このネットワークでは、1つの装置が伝送チャンネルに書き込んだオーディオ信号を、他の何れの装置でも取り込むことができるので、各領域C,A,B,F及びDを示す帯は、全ての装置A〜Fにわたる長さで描かれている。
《運用系エンジンの正常時》
各入力装置A,B,及びF(第1I/O装置4,コンソール1及び第3I/O装置6)は、それぞれ、複数の入力端子から入力されたオーディオ信号(入力信号)を、パッチ部50,51,52のパッチ設定に基づき、領域A,B及びFの複数の伝送チャンネルに書き込む(装置A,B,及びFから帯A,B,及びFへ延びる下向き白抜き矢印)。エンジンC,D(第1及び第2エンジン2,3)は、それぞれ、領域A,B及びF内の複数の伝送チャンネルからオーディオ信号を複数の受信ポートで取り込み、複数の入力チャンネルに供給する(帯A,B,及びFから装置C,Dへ延びる上向き白抜き矢印)。
エンジンC,Dは、それぞれ、前記取り込んだ入力信号をDSP部35で信号処理して、該信号処理した複数の出力チャンネルのオーディオ信号(出力信号)を、出力パッチ54のパッチ設定に基づき、それぞれに割り当てられた領域C,D内の複数の伝送チャンネルに書き込む。運用系エンジンCと待機系エンジンDは、それぞれ同じオーディオ信号に対して同じ内容の信号処理を施しているので、領域C及びDに書き込まれたオーディオ信号は全く同じものである。更に該パッチ設定では、複数の各出力チャンネルのオーディオ信号を、領域Cと領域D内の同じ位置に書き込むようになっている。これにより領域C,Dでは複数のオーディオ信号の並びが相互に同じとなり、後述するミラーリングに際して、エンジンC,Dの対応する出力信号を、出力装置側で相互に切り替えるための構成を簡単にすることができる。
そして、各出力装置A,B,及びE(第1I/O装置4,コンソール1及び第2I/O装置5)はパッチ部55,56,57のパッチ設定に基づき、それぞれ、領域Cに書き込まれた運用系エンジンCの出力信号のうちの各自で必要な信号を複数の受信ポートで選択的に取り込み、各接続された出力端子へ出力する(領域Cから装置A,B,Eへの上向き実線矢印)。これにより、運用系エンジンンCで信号処理された結果の出力信号が、各出力装置,B,及びEから出力される。なお、領域Dに書き込まれた待機系エンジンDの出力信号を、出力装置A,B,及びEにおいて別の受信ポートを用いて同時に受信するようにしてもよい(領域Dから装置A,B,Eへの上向き点線矢印)。その場合は、エンジンの切り替えは、各出力装置A、B、及びE内のパッチ55、56、及び57の各出力端子の経路設定を、C領域の受信ポートからD領域の対応する受信ポートへ変更することにより行われる。
《運用系エンジンの異常時》
運用系エンジンCに異常が生じた場合、出力装置A,B,及びEにおいて、パッチ部55,56,57のパッチ設定(受信設定)を変更することで、各出力装置A,B及びFにおける出力信号の取り込み元となる伝送チャンネルの領域が、領域Cから領域Dに変更される。すなわち、(c)に示す通り、出力装置A,B,及びEは、領域Dに書き込まれたエンジンDの出力信号のうちの各自で必要な信号を選択的に取り込み、各自に接続された外部の出力先へ出力する(領域Dから装置A,B,Eへの上向き実線矢印)。ここで、各装置の複数の受信チャンネルを、それぞれ共通のベースチャンネルからのオフセットで設定できるようにしておけば領域C及びDにおける、エンジンC及びエンジンDの各複数の出力信号が書き込まれている複数の伝送チャンネルの並びは相互に同じなので、ベースチャンネルを領域Cの先頭チャンネルから領域Dの先頭チャンネルに替えるだけで、領域Cから取り込んでいた複数のオーディオ信号と同じオーディオ信号を、領域Dから取り込むことができる。
出力装置A,B,及びEにおいて、出力信号の取り込み元を領域Cから領域Dへ切り替えることで、元の待機系エンジンンDで信号処理した結果の出力信号が、各出力装置,B,及びEから出力されるようになる。この結果、元の待機系エンジンDは、これ以降、運用系エンジンとして機能する。(c)では、領域Dに斜線を施し、領域Dが実際に使用される出力信号の取り込み元であることを示している。なお、領域Cに書き込まれたエンジンCの出力信号を、出力装置A,B,及びEにおいて別の受信ポートを用いて同時に受信するようにしてもよい(領域Cから装置A,B,Eへの上向き点線矢印)。元の運用系エンジンCは、これ以降、待機系エンジンとして機能する。
このように「FASTモード」では、出力装置A,B,及びE側で、第1エンジン2(エンジンC)及び第2エンジン3(エンジンD)のいずれか一方の出力信号を選択して出力することにより、運用系エンジンとして使用するエンジン(ミキシングシステムの信号処理の主体)を切り替えることができる。エンジン切り替え処理の過程において、第1エンジン2(エンジンC)及び第2エンジン3(エンジンD)に対する伝送チャンネルの割り当ては変化しないので、各エンジン2,3は、エンジンの切り替えに際して、伝送チャンネルの割り当ての変更等の処理を行わなくてよい。また、出力装置A,B,及びE側が行う処理は、出力信号の取り込み元を切り替えるだけの簡単な処理である。従って「FASTモード」によれば、出力装置からのオーディオ信号の出力をほとんど途切れさせることなく(音切れは数ミリ秒以下)、エンジンの切り替えを行うことができるようになる。
《エンジンの自動切り替え(OSFフラグ)について》
エンジンの切り替えは、運用系エンジンCの状態に応じて自動的に行うことができる。エンジンの状態に応じた自動切り替えを実現するために、この実施例では、運用系エンジンC及び待機系エンジンDは、それぞれ、OSFフラグ(第1状態データ及び第2状態データ)を出力している。
(b),(c)において、領域C,Dを示す各帯に沿って描かれた点線は、それぞれ、エンジンC,Dが出力するOSFフラグを示す。エンジンC,Dは、それぞれ、自身の動作状態が正常か異常かを定期的にチェックし、CD書込処理86を用いて、チェック結果に応じたOSFフラグを伝送フレームのCD記憶領域101に書き込む。この実施例では、2つのエンジンC,DのそれぞれのOSFフラグが共通の記憶領域(一例としてCD記憶領域101)に書き込まれる例を挙げている。
ミキシングシステム内の全ての装置A〜Fは、CD取込処理87を用いて、エンジンC,Dにより伝送フレームに書き込まれたOSFフラグを取得して、OSFフラグに応じて運用系エンジンC及び待機系エンジンDのそれぞれの動作状態の正常/異常を検出することができる。そして、各出力装置A,B及びEは、運用系エンジンCのOSFフラグが異常を示しているとき、待機系エンジンDの出力信号を選択して出力することで、運用系エンジンとして使用するエンジン(ミキシングシステムの信号処理の主体)を切り替えることができる。すなわち、各出力装置A,B及びEは、エンジンC,Dの各OSFフラグに応じて、運用系エンジンC又は待機系エンジンDの出力信号の一方を選択して出力することことができる。なお、運用系エンジンと待機系エンジンの両方がOSFフラグを出力する構成に限らず、少なくとも運用系エンジンのみがOSFフラグを出力する構成であればよい。
《エンジンの手動切り替えについて》
また、エンジンの切り替えは、OSFフラグに応じて自動的に行われるだけでなく、オペレータの指示に応じて行うこともできる。オペレータが、コンソール1(装置B)においてエンジンの切り替え指示を入力すると、コンソール1において、全装置1〜6宛て(宛先アドレスがブロードキャストアドレス)の、エンジンの切り替え命令(制御データ)が、伝送フレームのイーサネット(登録商標)領域103に書き込まれる。出力装置A,B及びEは、伝送フレームに書き込まれた切り替え命令の受信に応じて、エンジンC又はエンジンDのいずれか一方の出力信号を選択して出力することができる。したがって、オペレータの操作に応じた切り替え指示によっても、信号処理の主体を運用系エンジンCから待機系エンジンDに切り替えるミラーリングを行うことができる。オペレータが入力する切り替え指示は、単に運用系エンジンと待機系エンジンを切り替える指示であってもよいし、或いは、運用系エンジンとして使用すべきエンジンを指定する指示であってもよい。
《ECONOMYモード》
次に、図8(a)〜(d)を参照して「ECONOMYモード」の特徴を説明する。(a)は、運用系エンジンCが正常に動作しているときの、音響信号領域102の伝送チャンネルに対する各装置の割り当ての様子を説明する図であり、(b)は該運用系エンジンCが正常に動作しているときの、装置1〜6間でのオーディオ信号の伝送の様子を説明する図である。また、(c)は、運用系エンジンCに異常が生じたとき(信号処理主体として使用するエンジンを待機系エンジンDに切り替えたとき)における、音響信号領域102の伝送チャンネルに対する各装置の割り当ての様子を説明する図であり、(d)は、エンジンCに異常が生じた時の、装置1〜6間でのオーディオ信号の伝送の様子を説明する図である。
《運用系エンジンの正常時》
前述した「FASTモード」の場合には、運用系エンジンC及び待機系エンジンDの各々に、予め、オーディオ信号を書き込む記憶領域C及び領域Dを割り当てていたのに対して、「ECONOMYモード」の場合には、図8(a)に示す通り、運用系エンジンCの正常時には、運用系エンジンCに対してのみ、音信号領域102の領域C(図において斜線部)を割り当てて、待機系エンジンDには音信号領域102の領域を割り当てない。
(b)に示す通り、運用系エンジンCの正常時には、各入力装置A,B,及びF(第1I/O装置4,コンソール1及び第3I/O装置6)は、それぞれ、複数の入力端子から入力されたオーディオ信号(入力信号)を、パッチ部50,51,52のパッチ設定に基づき、領域A,B及びFの複数の伝送チャンネルに書き込む(装置A,B,及びFから帯A,B,及びFへ延びる下向き白抜き矢印)。エンジンC,D(第1及び第2エンジン2,3)は、入力パッチ53のパッチ設定に基づき、領域A,B及びF内の複数の伝送チャンネルからオーディオ信号(入力信号)を複数の受信ポートで取り込み、複数の入力チャンネルに供給する(帯A,B,及びFから装置C,Dへ延びる上向き白抜き矢印)。
エンジンC,Dには、それぞれ出力パッチ54に同じパッチ設定が行われる。運用系エンジンCは、前記取り込んだ入力信号をDSP部35で信号処理して、該信号処理された複数の出力チャンネルのオーディオ信号(出力信号)を、当該パッチ設定に基づき、領域C内の複数の伝送チャンネルに書き込む。一方、待機系エンジンDは、前記取り込んだ入力信号をDSP部35で信号処理するが、伝送フレームの領域(伝送チャンネル)を確保していないので、当該パッチ設定は無効とされ、該信号処理された複数出力チャンネルのオーディオ信号(出力信号)を伝送フレームに書き込む動作を行わない。
そして、各出力装置A,B,及びE(第1I/O装置4,コンソール1及び第2I/O装置5)は、それぞれ、パッチ部55,56,57のパッチ設定に基づき、領域Cに書き込まれた運用系エンジンCの出力信号のうちの各自で必要な信号を複数の受信ポートで選択的に取り込み、各接続された出力端子へ出力する(領域Cから装置A,B,Eへの上向き実線矢印)。これにより、運用系エンジンンCで信号処理された結果の出力信号が、各出力装置A,B,Eから出力される。
《運用系エンジンの異常時》
運用系エンジンCに異常が生じたときには、信号処理主体として使用するエンジンが、運用系エンジンCから待機系エンジンDに切り替わる。この場合、図8(c)に示す通り、エンジンCに割り当てられていた領域Cを、エンジンDに割り当て直す。すなわち、その時点までの運用系エンジンCは、出力パッチ54のパッチ設定を無効にすることにより、領域Cに対するオーディオ信号の書き込みを停止して、自身に割り当てられていた領域Cを解放する。そして、ネットワーク7のマスタノード(装置F)に当該領域を解放した旨を通知する。一方、その時点までの待機系エンジンDは、マスタノードに対して、元の運用系エンジンCが確保していたのと同じサイズの領域を確保する要求を行い、マスタノードからの許可応答に応じて、該元の運用系エンジンCが解放した所定サイズの領域を確保する。これにより、エンジンCに割り当てられていた領域がエンジンDに割り当て直される。図8(c)に示す通り、エンジンDに対して新たに割り当て直された領域Dは、図8(a)においてエンジンCに割り当てられていた領域Cと同じ位置且つ同じサイズである。
図8(d)に示す通り、運用系エンジンとなったエンジンDは、領域Dを確保した後、出力パッチ54のパッチ設定を有効にすることにより、自身のDSP部35で信号処理した複数の出力チャンネルのオーディオ信号(出力信号)を該割り当てられた領域Dの複数の伝送チャンネルに書き込む動作を開始する(エンジンDから領域Dへの下向き実線矢印)。各出力装置A,B及びEは、パッチ部55,56,57のパッチ設定に基づき、領域Dに書き込まれた運用系エンジンDの出力信号のうちの各自で必要な信号を選択的に取り込み、複数の出力端子へ出力する(領域Dから装置A,B及びEへの上向き矢印)。ここで、エンジンDに割り当てる領域Dは、それまでエンジンCに割り当てられていた領域Cと同じ領域であり、また、出力パッチ54のパッチ設定もエンジンCとエンジンDで同じなので、領域Cと領域Dに書き込まれる複数のオーディオ信号は、その配置までも含めて同じとなる。従って、出力装置A,B及びEでは、エンジンの切り替え前後でパッチ部55,56,57のパッチ設定を変更することなく、(b)に示す領域Cから取り込んでいたオーディオ信号と同じオーディオ信号を、(d)に示す領域Dから取り込むことができる。
これにより、新たに運用系エンジンンとなったエンジンDで信号処理された結果の出力信号が、各出力装置,B,及びEから出力されることになる。一方、待機系エンジンとなったエンジンCは、入力装置A,B及びFからの入力信号の取り込みを行っているが、信号処理結果である出力信号の伝送フレームへの書き込みは行わない。
なお、各出力装置A、B、及びEのパッチ55、56、57は、受信設定された各伝送チャンネルが、何れの装置にも確保されていない(従って、オーディオ信号も書き込まれていない)時、その伝送チャンネルに関する受信設定および経路設定を無効とし、接続された入力チャンネルに無音信号を供給する。従って、エンジンの切り替え処理を行っている間、外部へのオーディオ信号の出力は自動的にミュートされ、エンジンの切り替えが完了したら、ミュートが自動的に解除され、外部へのオーディオ信号の出力が再開される。すなわち、「ECONOMYモード」では、エンジンの切り替え処理の間(数秒〜数十秒)、オーディオ信号の外部への出力が途切れる。
このように、「ECONOMYモード」では、運用系エンジンC(第1エンジン2)が確保していた領域を、待機系エンジンD(第2エンジン3)に割り当て直すことで、運用系エンジンとして使用するエンジン(ミキシングシステムの信号処理の主体)を切り替えることができる。「ECONOMYモード」の場合には、2つのエンジンC,Dの両方に予め音響信号領域102の伝送チャンネルを割り当てるのではなく、その時点での運用系エンジンにのみ音響信号領域102の領域(伝送チャンネル)を割り当てるので、音響信号領域102の伝送チャンネルを無駄遣いすることなく、エンジンのミラーリングを行うことができる。この場合、伝送チャンネルの割り当てを変更する間、オーディオ信号の出力が途絶える(音切れが生じる)ことになるが、そのような音切れが生じることが許容される環境であれば、伝送チャンネルの節約という利点は大きい。
《エンジンの自動切り替え(OSFフラグ)について》
「ECONOMYモード」の場合、少なくとも運用系エンジンがOSFフラグを出力していれば、OSFフラグに応じたエンジンの自動切り替えを行うことができる。図8(b)において、運用系エンジンCは、自身の動作状態を示すOSFフラグを伝送フレームのCD領域101に書き込む(図において領域Cに沿う点線)。運用系エンジンCに異常が生じた場合、運用系エンジンCは、異常を示すOSFフラグを出力するとともに、オーディオ信号の書き込みを停止して領域Cを解放する。各出力装置A,B及びEは、エンジンCの異常を示すOSFフラグの受信に応じて、外部へのオーディオ信号の出力をミュートする。また、待機系エンジンDは、該の異常を示すOSFフラグの受信に応じて、伝送フレームの音響信号領域102中の運用系エンジンCが確保していた領域が解放されるのを待って、当該領域を確保し、確保した領域に対するオーディオ信号の書き込みを開始する(図8(d))。そして、エンジンDは、新たな運用系エンジンとして、自身の動作状態を示すOSFフラグを伝送フレームのCD領域101に書き込む(図において領域Dに沿う点線)。各出力装置A,B及びEは、エンジンDの正常を示すOSFフラグの受信に応じて、オーディオ信号の出力ミュートを解除して、エンジンDの出力信号の出力を開始する。これにより、OSFフラグに応じて、運用系エンジンとして使用するエンジン(ミキシングシステムの信号処理の主体)を切り替えることができる。なお、図8(b),(d)では、運用系エンジンだけがOSFフラグを出力する構成例を示しているが、これに限らず、運用系エンジンと待機系エンジンの双方がOSFフラグを出力する構成であってもよい。
《エンジンの手動切り替えについて》
「ECNOMYモード」によるエンジンの切り替えは、OSFフラグに応じて自動的に行われるだけでなく、オペレータの指示に応じて行うこともできる。オペレータが、コンソール1(装置B)においてエンジンの切り替え指示を入力すると、コンソール1においてエンジンの切り替え命令(制御データ)が、伝送フレームのイーサネット(登録商標)データ領域103に書き込まれるので、上記自動切り替えの場合と同様な処理により、その時点の運用系エンジンはオーディオ信号の書き込み停止と領域の解放を行い、その時点の待機系エンジンは領域の確保とオーディオ信号の書き込み開始を行う。出力装置A,B及びEは、エンジン切り替えが完了するまで外部へのオーディオ信号の出力をミュートしておき、完了したらミュートを解除する。これにより、OSFフラグに応じて、運用系エンジンとして使用するエンジン(ミキシングシステムの信号処理の主体)を切り替えることができる。オペレータが入力する切り替え指示は、単に運用系エンジンと待機系エンジンを切り替える指示であってもよいし、或いは、運用系エンジンとして使用すべきエンジンを指定する指示であってもよい。
《ミラーリング設定》
ミキシングシステムのオペレータは、コンソール1(制御装置)から、ミラーリングに関する複数項目の設定を行うことができる。ミラーリングの設定の項目を図9に例示的に列挙する。ミラーリング設定の項目には、エンジンからOSFフラグを出力するかどうかを設定するOSFフラグ出力機能のオン/オフ設定、ネットワークI/Oの制御マイコン45によりエンジンを制御するメインのCPU30の動作をチェックするウォッチドッグ機能のオン/オフ設定、エンジン切り替え機能(ミラーリング機能)のオン/オフ設定、ネットワークI/Oの制御マイコン45によりメインCPUの異常他の装置に通知する及び、その通知を他の装置から受けるCPU通知機能のオン/オフ設定、及び、ミラーリングの動作モードの設定(FASTモード又はECONOMYモードのいずれかの選択)がある。
次に、図10〜図20に、各装置において、メインのCPU10、20、30およびネットワークI/Oの制御マイコン45が共同して実行する処理のフローチャートを示す。 オペレータにより上記のミラーリング設定の項目について設定が行われると、コンソール1(制御装置)は、該設定された内容を伝送フレームに書き込んで、ミキシングシステムに接続された全ての装置宛てに送信する。全ての装置は、伝送フレームからミラーリング設定のデータ(オン/オフ等)を取り込んで、設定内容に応じて、その装置で必要な処理を行う。これにより、コンソール1で行われたミラーリング設定の内容は、ミキシングシステムの各装置に反映される。
《OSFフラグ出力機能設定》
図10は、ミラーリング設定の項目の1つであるOSFフラグ出力機能のオン/オフ設定の変更がおこなわれたときに、エンジン2,3のCPU30とネットワークI/O33の制御マイコン45が共同で行う処理を示すフローチャートである。この処理は、ミラーリングの動作モードがFASTモード及びECONOMYモードのいずれに設定されている場合にも実行される。
オペレータがコンソール1(制御装置)においてOSFフラグ出力機能のオン/オフ設定の変更を行うと、CPU10による制御の下で、該変更後のオン又はオフの設定値が伝送フレームに書き込まれる。エンジン2,3のネットワークI/O33においてフレーム処理部44は、E取込処理83により、伝送フレームに書き込まれた該設定値を取り込む。そして、エンジン2,3のCPU30は、取り込まれたOSFフラグ出力機能の設定値をメモリ31のRAMに書き込み、制御マイコン45に伝達する(ステップS1)。該設定値がオンの場合(ステップS2の「オン」)、制御マイコン45は、OSFフラグの書き込み許可をフレーム処理部44に設定する(ステップS3)。一方、該設定値がオフの場合(ステップS2の「オフ」)、エンジンの制御マイコン45は、OSFフラグの書き込み禁止をフレーム処理部44に設定する(ステップS4)。
なお、ミラーリング機能がオン(ミラーリング動作中)のときは、OSFフラグが利用されるので、各エンジンのOSFフラグ出力機能は、必ず、オンに設定される。OSFフラグ出力機能のオン/オフ設定をユーザが行えるようにしたのは、OSFフラグ出力機能のオン/オフ設定をミラーリング機能以外にも使用するケースがあるからである。したがって、ユーザは、ミラーリング機能がオフのときに限り、必要に応じて、OSFフラグ出力機能のオン/オフを任意に設定できる。
《FASTモードによるエンジン切り替え動作》
FASTモードによるエンジン切り替え機能に関する動作について説明する。エンジン切り替え機能のオン/オフ設定がオンに設定されており、ミラーリングモードがFASTモードに設定されているときに、FASTモードによるエンジン切り替え機能が機能する。なお、以下の動作説明では、運用エンジン及び待機系エンジンの両方がOSFフラグを出力する構成を想定している。
《エンジンにおける動作チェック処理》
図11は、FASTモードによるエンジン切り替え機能がオンのときに、エンジンの制御マイコン45が行う定期的な動作チェック処理の一例を示すフローチャートである。この処理は、運用系エンジン及び待機系エンジンのいずれにおいても実行される。
ステップS5において、制御マイコン45は、所定の異常要件をチェックして、当該エンジンの動作が異常か正常かを判断する。異常要件の「(1)電源」は、当該エンジンの電源源が、オペレータによりオフされた、電源ケーブルが外れた、故障した等の要因で落ちたか否かをチェックする処理である。なお、メインの電源が落ちてもネットワークI/O33の制御マイコンは稼動できる。異常要件の「(2)ウォッチドッグ」は、前記ウォッチドッグ機能によりエンジンのメインCPU30が正常に稼動しているかどうかのチェックである。ウォッチドッグ機能がオペレータによりオフされている場合は、この要件はチェックしないことになる。また、異常要件の「(3)ハードウェア」は、エンジンにおける、オーディオI/O32、DSP35及びCPU30と制御マイコン45が通信するためのハードウェア、等の各種ハードウェアのエラーチェックである。ここで、(1)、(2)のチェックは制御マイコン45が行う処理である。(3)のチェックはCPU30の処理だが、チェック結果は制御マイコン45に伝達されおり、制御マイコン45で利用できる。なお、異常要件としてステップS5に挙げたものは一例であって、異常要件はこれらに限定されない。
制御マイコン45は、ステップS6において、前記ステップS5の異常要件の少なくとも1つで異常があれば、エンジンの状態が異常であると判断し、異常要件のいずれも異常がなければ、当該エンジンの状態が正常であると判断する。異常要件のチェック結果が正常であれば(ステップS6の「正常」)、ステップS7において、OSFフラグの値に「正常」を設定する。また、異常要件のチェック結果が異常であれば(ステップS6の「異常」)、ステップS8において、OSFフラグの値に「異常」を設定する。
エンジンのフレーム処理部44は、OSF書込処理84により、前記ステップS7又はS8において設定されたOSFフラグの値を、伝送フレームのCD領域101に書き込んで、該伝送フレームを出力する。これにより、エンジンの動作状態に応じたOSFフラグが、オーディオネットワーク7の全ての装置1〜6に対して送信される。オーディオネットワーク7の全ての装置1〜6は、受信したOSFフラグにより、エンジンの動作状態を知ることができる。OSF書込処理84の動作が、第1状態データ書き込み手段及び第2状態データ書き込み手段に相当する。
《OSFフラグに応じた自動切り替え》
FASTモードによるエンジンの切り替えは、OSFフラグの値に応じて自動的に行うこと、及びオペレータの手動操作による切り替え指示に応じて行うことのいずれも可能である。まず、OSFフラグに応じた自動切り替えに関する動作の説明をする。
《出力装置におけるフラグチェック処理》
図12は、ミラーリングモードとしてFASTモードが設定されている場合に、出力装置1,4,5のネットワークI/O13,23の制御マイコン45が定期的に行うOSFフラグチェック処理の一例を示すフローチャートである。ミラーリング機能がオンのときは、エンジン2,3のOSFフラグ出力機能は必ずオンの状態にあり、各出力装置において、図12の定期処理が行われる。
出力装置1,4,5のネットワークI/O13,23においてフレーム処理部44はOSF取込処理85により、伝送フレームのCD領域101から、運用系エンジンのOSFフラグ(第1状態データ)と、待機系エンジンのOSFフラグ(第2状態データ)を取り込む。このOSF取込処理85が第1状態データ読み出手段に相当する。ステップS9において、制御マイコン45は、運用系エンジンのOSFフラグをチェックして、運用系エンジンのOSFフラグの値が「異常」を示している場合(ステップS9の「異常」)、ステップS10以下の処理により、出力信号の取り込み元を、現時点の運用系エンジンから現時点の待機系エンジンに切り替える。つまり、ミキシングシステムで使用するエンジンを切り替える。
出力装置の制御マイコン45は、ステップS10において、パッチ部55,56,57のパッチ設定を無効にすることにより、現在外部へ出力している出力信号(運用系エンジンの出力信号)をミュートする処理を行う。ミュート処理は、当該出力信号の出力レベルを徐々に下げる処理、直前サンプリング周期に出力した正常なサンプル波形データをホールドして該ホールドしたサンプル波形データを出力する処理、それらの組み合わせ等、従来から知られる適宜の処理により構成できる。なお、ミュート処理は、メインのCPU10,20により制御されてもよい。
ステップS11において、出力装置の制御マイコン45は、フレーム処理部44がOSF取込処理85により読み出した待機系エンジンのOSFフラグをチェックして、待機系エンジンのOSFフラグの値が「正常」を示している場合(ステップS28の「正常」)、ステップS12において、所定の切り替え条件に基づいてエンジンに切り替えを行うかどうかを判定する。待機系エンジンに関するOSF取込処理85が第2状態データ読み出手段に相当する。
前記切り替え条件は、例えば、ステップS9における運用系エンジンのOSFフラグのチェックを所定の複数回行う等、予め決めたルールである。例に挙げたように、切り替え条件として、運用系エンジンのOSFフラグのチェックを複数回行うように設定すれば、例えば、何らかの理由で運用系エンジンの動作が一時的に異常と判定された後に、速やかに当該運用系エンジンの動作正常に戻った場合等に、無用なエンジンの切り替え処理を行わずにすむ。
切り替え条件を満たしていない場合には、ステップS13を「未だ」に分岐して、その時点ではステップS14以下を行わずに、今回のフラグチェック処理を終了する。すなわち、運用系エンジンのOSFフラグが異常を示している場合であっても、前記切り替え条件を満たしていなければ、その時点ではエンジンの切り替えを行わずに、次回以降のフラグチェック処理の起動機会で、改めてエンジンの切り替えを行うかどうかを判断する。
切り替え条件を満たしており、エンジンの切り替えを行う場合(ステップS13の「直ちに」)、切り替え先となる待機系エンジンを特定する情報を、制御マイコン45のメモリに設けられたレジスタEXに設定する(ステップS14)。レジスタEXに設定されたエンジンが新たな運用系エンジンとなる。制御マイコン45は、出力信号の取り込み元(当該ネットワークI/O13,23の各受信ポートに設定された受信チャンネル)を、前記ステップS14でレジスタEXに設定された切り替え先エンジン(EX)に割り当てられた領域(伝送チャンネル)に変更する(ステップS15)。ここでは、先述したように、1つのベースチャンネルを変更するだけでよい。そして、該エンジン切り替え結果を、当該出力装置のCPU10、20に通知し、通知を受けたCPU10、20は、レジスタEXのちをRAMに記憶すると共に、制御装置(コンソール1等)を宛先とする該エンジン切り替え結果の制御データ(イーサネット(登録商標)フレーム)を形成して、形成した制御データを送信FIFO49に書き込む(ステップS16)。フレーム処理部44は、E書込処理82により、前記書き込み権限(トークン)を取得して、該制御データを伝送フレーム内のイーサネット(登録商標)データ領域103に書き込む。
運用系エンジンのOSFフラグの値が「正常」の場合(ステップS9の「正常」)、出力装置の制御マイコン45は、ステップS17において、パッチ部55,56,57のパッチ設定を有効にすることにより、出力信号のミュートを解除する処理を行う。前回のフラグチェック処理によりエンジンの切り替えが行われた場合、新たな運用系エンジンのOSFフラグをチェックしてから、前回の処理で行われた出力信号のミュートを解除する。
これにより、各出力装置1,4,5は、新たにレジスタEXに設定されたエンジン(元の待機系エンジン)が伝送フレームに書き込んだ出力信号を取り込み、該取り込んだ出力信号を外部へ出力することができる。例えば、前記図7(b)及び(c)に示すように、信号処理の主体をエンジンCからエンジンDに切り替える場合には、各出力装置は、出力信号の取り込み元を伝送フレームの音響信号領域102の領域Cから領域Dに変更することにより、各出力装置から出力される出力信号は、エンジンCの出力信号からエンジンDの出力信号に切り替わる。したがって、結果的に、ミキシングシステムの信号処理主体となるエンジンが切り替わることになる。
なお、前回のフラグチェック処理で、切り替え条件判定の結果、未だエンジン切り替えを行わない判断をした場合(ステップS13の「未だ」)であって、今回のフラグチェック処理で運用系エンジンのOSFフラグの値が「正常」に戻っていれば、出力ミュートを解除して、出力信号の外部出力を再開する。
《エンジンの手動切り替え》
次に、ミラーリングモードとしてFASTモードが設定されている場合に、オペレータの手動操作によりエンジン切り替えが指示されたときの動作について説明する。
《コンソールにおける処理》
図13は、コンソールにおいてオペレータがエンジン切り替え操作をおこなっときに、コンソール1のCPU10とネットワークI/O13の制御マイコン45が共同で実行する処理を示すフローチャートである。オペレータはコンソール1の表示部(P表示)15及び操作子(P操作子)16からなるユーザインターフェースを用いて、エンジン切り替え操作を行う。切り替え操作は、単に運用系エンジンと待機系エンジンの交代を指示する操作であってもよいし、切り替え先となるエンジンを個別に指定する操作であってもよい。メインのCPU10は、切り替え操作が検出されたとき、その操作を示す情報をメモリ11のRAMに記憶すると共に、制御マイコン45に伝達する。
制御マイコン45は、前記切り替え操作により切り替え先に指定されたエンジンを特定する情報を、レジスタEXにセットして(ステップS18)、該レジスタEXにセットされた切り替え先エンジン(EX)のOSFフラグの値をチェックし、その結果をCPU10に伝達する(ステップS19)。
切り替え先エンジン(EX)のOSFフラグが「正常」であれば(ステップS19の「正常」)、コンソール1のCPU10は、ミキシングシステム内の全ての出力装置に対してエンジン(EX)への切り替え命令(制御データ)を送信する(ステップS20)。すなわち、フレーム処理部44は、E書込処理82により、全ての出力装置を宛先とするエンジン(EX)への切り替え命令を伝送フレームに書き込んで、該伝送フレームを出力する。なお、ステップS20において、切り替え命令の宛先を全ての出力装置としたのは、当該切り替え命令が必要なのは出力装置だけであり、最低限、全ての出力装置に切り替え命令が届けばよいからである。したがって、切り替え命令をブロードキャストアドレスで送信し、ミキシングシステムの全ての装置が切り替え命令を受信できるよう構成してもよい。
一方、切り替え先エンジン(EX)のOSFフラグが「異常」の場合(ステップS19の「異常」)、コンソール1のCPU10は、ステップS21において、所定のエラー処理を行い、処理を終了する。信号処理の主体を切り替え先エンジンに切り替えることができないからである。エラー処理は、例えば、エンジンに切り替えが行えない旨の警告表示を、表示部(P表示)15に行う処理等を含む。
《出力装置における処理》
図14は、出力装置1,4,5が前記ステップS21で送信された切り替え命令を受信したときに、各出力装置のCPU10,20とネットワークI/O13、23の制御マイコン45が共同で実行する処理を示すフローチャートである。当該出力装置宛ての切り替え命令(制御データ)を受信したCPU10、20は、直ちに、該切り替え命令を制御マイコン45に伝達する。
ステップS22において、出力装置の制御マイコン45は、受信した切り替え命令により指定され切り替え先エンジン(EX)のOSFフラグをチェックする。切り替え先エンジン(EX)のOSFフラグが「正常」の場合(ステップS22の「正常」)、ステップS23において、出力装置の制御マイコン45は、出力信号の取り込み元を、前記受信した切り替え命令により指定され切り替え先エンジン(EX)に割り当てられた領域(伝送チャンネル)に変更する。これにより、出力装置のフレーム処理部44は、A取込処理81によって切り替え先エンジン(EX)の出力信号を取り込むようになる。一方、切り替え先エンジン(EX)の出力するOSFフラグが「異常」の場合(ステップS22の「異常」)、ステップS24に処理を進める。
ステップS24において、制御マイコン45は、前記ステップS23及びS24の処理結果をCPU10,20に通知し、CPU10,20はその処理結果に基づき、受信した切替命令に対するレスポンス(すなわち、切替命令に応じてエンジンの切り替えできたか、できなかったかを示す制御データ)を形成して、コンソール1に送信する。コンソール1は、出力装置からのレスポンスを受信したら、該受信したレスポンスの内容を、表示部(P表示)15に表示すること等により、オペレータに提示する。したがって、エンジン切り替えができなかった場合には、その旨をオペレータに通知して、次の措置がとられることを待つことができる。
以上説明した通り、Fastモードによるエンジンのミラーリングによれば、予め第1エンジン2及び第2エンジン3に対してそれぞれで必要な1又は複数の伝送チャンネルを割り当てておき、各エンジン2,3のそれぞれが1又は複数のチャンネルのオーディオ信号(出力信号)を伝送フレームの1又は複数の伝送チャンネルに書き込んでいるところ、出力装置1,4,5は、正常時には運用系エンジン(エンジン2,3のいずれか一方)が書き込んだ出力信号を伝送フレームから取り込んで出力する。運用系エンジンのOSFフラグが異常を示したとき、出力装置1,4,5は、OSFフラグにより運用系エンジンの異常を検出し、出力信号の取り込み元を運用系エンジンの領域から待機系エンジンの領域に切り替えることで、待機系エンジン(エンジン2,3のいずれか他方)が書き込んだ出力信号を伝送フレームから取り込んで出力する。これにより、エンジンの切り替えが行われる。このように、出力装置1,4,5における出力信号の取り込み元を変更するだけで、迅速にエンジンの切り替えを行うことができるので、ほとんど出力信号の途切れることのない(音切れは数ミリ秒以下)ミラーリング機能を実現することができる。
また、待機系エンジンもOSFフラグを出力するように構成することで、出力装置1,4,5は、待機系エンジンの異常も検出することができるようになる。これにより、エンジンの切り替えすべきとき(運用系エンジンが異常のとき、又は、オペレータによりエンジンの切り替えが指示されたとき)であっても、待機系エンジンのOSFフラグが異常を示しているならば、出力装置は、切り替え先となる待機系エンジンの出力信号の出力も停止することができる。従って、正常でないオーディオ信号が出力されることを防止することができる。
FASTモードによれば、ほとんど出力信号を途切れさせることなく(音切れなしに)エンジンの切り替え(エンジンのミラーリング)を行うことができるので、例えば、ライブ演奏会場、音楽フェスティバル会場、或いは各種イベント会場等で用いるミキシングシステムなど音響信号の出力を継続することが要求される音響信号処理システムにおいてミラーリング機能を実装する場合に好適である。
《ECONOMYモードによるエンジンの切り替え》
次に、ECONOMYモードにおけるエンジン切り替え機能に関する動作について説明する。エンジン切り替え機能のオン/オフ設定がオンに設定されており、ミラーリングモードがECONOMYモードに設定されているときに、ECONOMYモードによるエンジン切り替え機能が機能する。なお、以下の動作説明では、運用エンジン及び待機系エンジンの両方がOSFフラグを出力する構成を想定している。
《エンジンにおける動作チェック処理》
図15は、ECONOMYモードが設定されているときに、エンジンのネットワークI/O33のエンジンの制御マイコン45が行う定期的な動作チェック処理の一例を示すフローチャートである。この定期処理は、運用系エンジン及び待機系エンジンのいずれにおいても実行される。
「ECONOMYモード」の場合、図15に示す通り、異常要件をチェックして、チェック結果に応じてOSFフラグの値を設定するところまでは、前記図11のステップS5〜S8の処理と同じである(ステップS25〜S28)。
ステップS27又はS28でOSFフラグの値を設定した後、エンジンの制御マイコン45は、当該エンジンが運用系エンジン又は待機系エンジンのいずれであるかに応じて、異なる処理を行う。当該エンジンが運用系エンジンの場合には(ステップS29の「運用系」)、ステップS30において、エンジンの制御マイコン45は、前記ステップS27又はS28で設定されたOSFフラグの値をチェックし、OSFフラグの値が「正常」の場合(ステップS30の「正常」)、出力パッチ54のパッチ設定のうちの送信ポートに係る設定を有効にすることにより、フレーム処理部44に対してオーディオ信号の書き込みを許可(図では「A書込許可」と表記)する(ステップS31)。
OSFフラグの値が「異常」の場合(ステップS30の「異常」)、エンジンの制御マイコン45は、フレーム処理部44に対してオーディオ信号の書き込み禁止(図では「A書込禁止」と表記)を設定し(ステップS32)、当該エンジンが確保している全ての伝送チャンネル群(音響信号領域102内の領域)を解放する処理を行う(ステップS33)。ステップS32、S33により、運用系エンジンの動作に異常が生じたときに、当該運用系エンジンは、運用系エンジンとしての動作を停止して、待機系エンジンに切り替わる。ステップS32〜S33の処理が制御手段に相当する。
当該定期処理を実行しているエンジンが待機系エンジンの場合(ステップS29の「待機系」)、エンジンの制御マイコン45は、ステップS34において、出力パッチ54のパッチ設定のうちの送信ポートに係る設定を無効にすることにより、フレーム処理部44に対してオーディオ信号の書き込み禁止(「A書込禁止」)を設定する。ECONOMYモードの場合、待機系エンジンは、伝送チャンネルを確保しておらず、オーディオ信号の出力を行わないからである(例えば図8(a),(b)を参照)。
《OSFフラグに応じた自動切り替え》
ECONOMYモードによるエンジンの切り替えは、OSFフラグの値に応じて自動的に行うこと、及びオペレータの手動操作による切り替え指示に応じて行うことのいずれも可能である。OSFフラグに応じたエンジンの自動切り替えは、出力装置と待機系エンジンにおけるフラグチェック処理により実現される。
《出力装置におけるフラグチェック処理》
図16は、ECONOMYモードが設定されているときに、各出力装置1,4,5において定期的に行われるOSFフラグチェック処理の一例を示すフローチャートである。エンジン切り替え機能(ミラーリング機能)がオンであれば、エンジン2,3のフラグ出力機能も必ずオンであり、各出力装置において、図16の定期処理が行われる。
出力装置のネットワークI/O13,23のフレーム処理部44は、OSF取込処理85により、伝送フレームからOSFフラグを取り込む。出力装置のネットワークI/O13,23の制御マイコン45は、該取り込んだOSFフラグのうち運用系エンジンのOSFフラグの値をチェックし、運用系エンジンのOSFフラグが正常を示している場合(ステップS35の「正常」)、ステップS36において、パッチ部55,56,57のパッチ設定を有効にすることにより、運用系エンジンからの出力信号の出力ミュートを解除する処理を行う。一方、運用系エンジンのOSFフラグが異常を示している(ステップS35の「異常」)、ステップS37において、パッチ部55,56,57のパッチ設定を無効にすることにより、運用系エンジンからの出力信号の出力をミュートする処理を行う。ミュート処理の構成例は、前記図12のステップS10と同様である。
《待機系エンジンにおけるフラグチェック処理》
図17は、ECONOMYモードが設定されているときに、待機系エンジンの制御マイコンが定期的に行うOSFフラグチェック処理の一例を示すフローチャートである。
待機系エンジンのネットワークI/O33のフレーム処理部44は、OSF取込処理85により、伝送フレームからOSFフラグを取り込む。そして、制御マイコン45は、ステップS38において、該取り込んだ運用系エンジンのOSFフラグをチェックする。運用系エンジンのOSFフラグが正常であれば(ステップS38の「正常」)、そのまま、処理を終了する。
運用系エンジンのOSFフラグが異常を示している場合には(ステップS38の「異常」)、ステップS39において当該エンジンのOSFフラグをチェックし、自身が正常に動作しているかどうかを調べる。自身の動作が正常でなければ、運用系エンジンに替わることができないからである。
当該待機系エンジンのOSFフラグが正常であれば(ステップS39の「正常」)、待機系エンジンの制御マイコン45は、前記図15のステップS33による運用系エンジンの伝送チャンネルの解放を待ち、解放された全ての伝送チャンネルを確保して(ステップS40)、出力パッチ54のパッチ設定のうちの送信ポートにかかる設定を有効にすることにより、フレーム処理部44に対して前記確保した伝送チャンネルに対するオーディオ信号(波形データ)書き込み許可(A書込許可)を設定する(ステップS41)。ステップS40,S41により元の待機系エンジンは、出力信号の出力を開始して、新たな運用系エンジンに切り替わる。ステップS40〜S41の処理により、ネットワークI/O33を含む出力パッチ部54が第2出力信号書き込み手段として機能する。
そして、ステップS42において、制御マイコン45は、上記処理の結果、すなわち当該エンジンが待機系から運用系に自動切り替えされたことをCPU30に通知し、CPU30は、該自動切り替えを示す自動切替情報(制御データ)を形成し、フレーム処理部44を用いて制御装置(コンソール1)に送信する。なお、当該エンジンのOSFフラグが異常を示している場合(ステップS39の「異常」)には、エンジンの切り替えができないので、CPU30は、何ら処理を行わずに、ステップS42に処理を進めて、コンソール1に対してエンジンの切り替えができなかった旨を示す切替失敗情報(制御データ)を送信する。なお、ステップS40で、所定時間内に運用系エンジンによる伝送チャンネルの解放が行われなかった場合は、エラーと判断し図17の処理を中止し、該エラーを制御装置(コンソール1)に通知するようにすればよい。
前記図15〜17の処理により、OSFフラグに応じたエンジンの自動切り替えが行われる。すなわち、運用系エンジンに異常が生じたとき、当該運用系エンジンは、異常を示すOSFフラグを出力する(図15のステップS28)とともに、伝送フレームに対する出力信号(波形データ)の書き込みを停止して、伝送チャンネルを解放する(図15のステップS32,S33)。出力装置1,4,5は、図16の処理により、運用系エンジンのOSFフラグの値に基づいて、運用系エンジンの動作の異常を検出することができ、運用系エンジンに異常が生じたときには、運用系エンジンの出力信号を外部に出力することを一旦停止する。待機系エンジンは、運用系エンジンのOSFフラグの値に基づいて、運用系エンジンの異常を検出することができ、運用系エンジンに異常が生じたとき、伝送チャンネルを取得して、該取得した伝送チャンネルに対する出力信号(波形データ)の書き込み(出力信号の出力)を開始する(図17のステップS40,41)。かくして元の待機系エンジンが新たな運用系エンジンに切り替わると、各出力装置1,4,5は、該新たな運用系エンジンから出力された正常を示すOSFフラグに応じて出力信号のミュートを解除する(図16のステップS38)。これにより新たな運用系エンジンの出力信号が各出力装置1,4,5から出力される。
《エンジンの手動切り替え》
次に、ミラーリングモードとしてECONOMYモードが設定されている場合に、オペレータの手動操作によりエンジン切り替えが指示されたときの動作について説明する。
《コンソールにおける処理》
図18は、コンソールにおいてオペレータがエンジン切り替え操作をおこなっときに、コンソール1のCPU10とネットワークI/O13の制御マイコン45が共同で実行する処理の一例を示すフローチャートである。オペレータの切り替え操作に応じて、CPU10は、検出された該操作を制御マイコン45に通知し、制御マイコン45は、切り替え先エンジンを特定する情報をレジスタEXにセットして(ステップS43)、該切り替え先エンジン(EX)が出力しているOSFフラグの値をチェックする(ステップS44)ところまでは、前記図13に示すFASTモードの場合の処理と同様である。
切り替え先エンジン(EX)のOSFフラグが「正常」であれば(ステップS44の「正常」)、2つのエンジンのうち切り替え先エンジン(EX)ではないエンジン(現時点での運用系エンジン)に対して伝送フレームへのオーディオ信号の書き込みを禁止するA書込禁止命令(制御データ)を送信し(ステップS45)、現時点での待機系エンジン(切り替え先エンジン(EX))に対して伝送フレームへのオーディオ信号の書き込みを許可するA書込許可命令(制御データ)を送信する(ステップS46)。すなわち、コンソール1のフレーム処理部44は、前記書き込み権限(トークン)を取得して、伝送フレームに対して運用系エンジン宛てのA書込禁止命令と、待機系エンジン宛てのA書込許可命令を書き込んで、該伝送フレームを出力する。
なお、切り替え先エンジン(EX)のOSFフラグが「異常」の場合、エンジンの切り替えを行うことができないので、所定のエラー処理を行い(ステップS47)、処理を終了する。エラー処理は、例えば、エンジンの切り替えができない旨を表示部15に表示すること等を含む。
《運用系エンジンの処理》
図19は、運用系エンジンのフレーム処理部44においてA書込禁止命令を受信したときに、運用系エンジンのCPU30と制御マイコン45が共同で実行する処理の一例を示すフローチャートである。CPU30は受信したA書込命令(制御データ)を運用系エンジンの制御マイコン45に通知し、ステップS48において、該制御マイコン45は、他のエンジン(待機系エンジン)から出力されたOSFフラグの値をチェックして、該OSFフラグが正常を示していれば(ステップS48の「正常」)、ステップS49において、出力パッチ54のパッチ設定のうちの送信ポートに係る設定を無効にすることにより、当該運用系エンジンのフレーム処理部44に対してオーディオ信号(出力信号)の書き込み禁止(A書込禁止)を設定して、ステップS50において当該運用系エンジンが確保している全ての伝送チャンネル群(音響信号領域102内の領域)を解放する処理を行う。これらステップS49及びS50の処理は、前記図15のステップS32,S33と同様である。ステップS49,S50により当該エンジンは、運用系エンジンとしての動作を停止して、待機系エンジンとなる。そして、CPU30は、出力信号(波形データ)の出力を停止して、自身が確保していた全ての伝送チャンネルを解放した旨を示すレスポンス(制御データ)を形成し、フレーム処理部44を用いて、コンソール1に通知する(ステップS51)。
なお、図19では、他のエンジン(待機系エンジン)のOSFフラグが異常であれば(ステップS48の「異常」)、ステップS49,S50を行わずに、ステップS51において、CPU30は、その旨(つまり運用系エンジンの動作を継続すること)を示すレスポンス(制御データ)を形成し、フレーム処理部44を用いて、コンソール1に通知する構成となっている。しかし、ステップS48の分岐ステップがない構成でもよい。すなわち。他のエンジン(待機系エンジン)のOSFフラグの値に関わらず、ステップS49の出力信号の出力停止と、ステップS50の伝送チャンネル解放を行う構成でもよい。
《待機系エンジンの処理》
図20は、待機系エンジンのフレーム処理部44においてA書込許可命令を受信したときに、待機系エンジンのCPU30と制御マイコン45が共同で実行する処理の一例を示すフローチャートである。CPU30は、受信したA書込許可命令を待機系エンジンの制御マイコン45に通知し、ステップS52において、該制御マイコン45は、当該エンジンのOSFフラグの値をチェックして、該OSFフラグが正常を示していれば(ステップS52の「正常」)、運用系エンジンが前記図19のステップS50を実行して伝送チャンネルが解放されるのを待ち、解放された伝送チャンネルを確保した(ステップS53)後、出力パッチ54のパッチ設定のうち送信ポートに係る設定を有効にすることにより、フレーム処理部44に対して前記確保した伝送チャンネルに対するオーディオ信号(波形データ)書き込み許可(A書込許可)を設定する(ステップS54)。ステップS53,S54により元の待機系エンジンは、出力信号の出力を開始して、新たな運用系エンジンに切り替わる。そして、CPU30は、当該待機系エンジンが必要な伝送チャンネルを確保し出力信号(波形データ)の出力を開始した旨を示すレスポンス(制御データ)を形成し、フレーム処理部44を用いて、コンソール1に通知する(ステップS55)。
待機系エンジンのOSFフラグが異常を示している場合(ステップS52の「異常」)、待機系エンジンは、ステップS53,S54を行わずに、CPU30は、当該エンジンの異常によりエンジンの切り替えを行わない旨を示すレスポンス(制御データ)を形成し、フレーム処理部44を用いて、コンソール1に通知する(ステップS55)。
前記図18〜20の処理により、コンソール1においてオペレータが行ったエンジンを切り替える操作に応じて運用系エンジンと待機系エンジンが切り替わる。
以上説明した通り、ECONOMYモードによるエンジンのミラーリングによれば、第1エンジン2及び第2エンジン3のうち何れか一方の運用系エンジンに対してのみ、1又は複数の伝送チャンネルを割り当てておき、運用系エンジンに異常が生じたときに該割り当てられた全ての伝送チャンネルを解放して、待機系エンジンに割り当て直すことで、エンジンの切り替えを行う。つまり、2台のエンジンのうちの一方(その時点での運用系エンジン)にのみ伝送チャンネルを割り当てるので、伝送チャンネルを無駄遣いすることなくミラーリング機能を実現することができる。
また、待機系エンジンがOSFフラグに応じて運用系エンジンの異常を検出する構成であるため、待機系エンジン以外の装置で運用系エンジンの異常を検出して、それを待機系エンジンに通知する方法に比べれば、エンジンの切り替え処理に要する時間及び処理工程を節約することができる。
また、待機系エンジンもOSFフラグを出力するように構成することで、出力装置1,4,5は、待機系エンジンの異常も検出することができるようになる。これにより、エンジンの切り替えすべきとき(運用系エンジンが異常のとき、又は、オペレータによりエンジンの切り替えが指示されたとき)であっても、待機系エンジンのOSFフラグが異常を示しているならば、出力装置は、切り替え先となる待機系エンジンの出力信号の出力も停止することができる。従って、正常でないオーディオ信号が出力されることを防止することができる。
また、ECONOMYモードによれば、伝送チャンネルを無駄遣いすることはないなくミラーリング機能を実現することができる反面、エンジンの切り替えを行う過程(伝送チャンネルの解放/割り当て等の処理を行う間)において、出力装置1,4,5が出力信号の出力を停止するので、音響信号の出力が途絶えてしまう(数秒から数十秒の音切れが生じる)。このため、ECONOMYモードは、例えば、構内放送や、音声案内システムなど、音響信号の出力が事故的に中断したとしても許容しうる音響信号処理システムにおいて、ミラーリング機能を実装する場合に好適である。
なお、図7(a)では、運用系エンジンCに対して音響信号領域102の先頭側の領域Cを割り当てて、待機系エンジンDに対して音響信号領域102の後尾側の領域Dを割り当てる例を示したが、運用系エンジンC及び待機系エンジンに割り当てる領域の位置は、図示の例に限らない。それぞれ同じ量の領域を確保できさえすれば、音響信号領域102中のどこに確保してもよい。同様に、図8(a),(c)に示すECONOMYモードの場合も、運用系エンジンに割り当てる領域は、音響信号領域102の先頭側に限定されない。
また、FASTモードにおいて、前記図7(a)の説明ではエンジンC及びDが複数のオーディオ信号を書き込む伝送チャンネルの並びを相互に同じにしていたが、同じ複数のオーディオ信号が書き込まれていれば、伝送チャンネルの並びは必ずしも同じでなくても良い。その場合、そのオーディオ信号を出力する出力装置A,B,及びEでは、エンジンの切り替え時に、それぞれ複数の受信チャンネルを個別に設定しなおさなければならない。
また、FASTモードにおいて、出力装置A、B、及びEでは、その装置が出力するオーディオ信号の数と同じ数の受信ポートに領域C又は領域Dの伝送チャンネルを受信チャンネルとして設定するようになっていたが、その倍の数の受信ポートを用意して、領域C及び領域Dの伝送チャンネルを受信チャンネルとして設定し、領域Cと領域Dのオーディオ信号を平行して取り出すようにしてもよい。その場合、エンジンの切り替え時に、各出力装置が出力するオーディオ信号を、一方のエンジンの出力信号から他方のエンジンの出力信号へクロスフェードで切り替えることができる。
また、図7及び図8の説明では、各装置に対して、それぞれ音響信号領域102中の連続する領域(伝送チャンネル)を割り当てる例を示しているが、各装置に対して割り当てる領域(伝送チャンネル)は不連続であってもよい。
なお、上記実施例では、運用系エンジン及び待機系エンジンの各OSFフラグ(第1状態データ及び第2状態データ)がCD領域101に記憶される例について説明したが、OSFフラグを記憶する領域は、例えば音響信号領域102など他の領域であってもよい。また、2つのエンジンが出力する各OSFフラグが共通のCD領域101に記憶される構成に限らず、それぞれが別の領域に記憶される構成であってもよい。例えば、音響信号領域102中の伝送チャンネルを1チャンネルずつ、各エンジンのOSFフラグ書き込み用に使う構成にしてもよい。
また、前記図12のフローチャートでは、FASTモードにおいて、各出力装置では、運用系エンジンのOSFフラグの異常が複数回確認されたとき(ステップS12及びS13)に、エンジンの切り替えを行うよう処理が構成される例を示したが、運用系エンジンのOSFフラグの異常の1回目の検出でエンジンを切り替えるように処理を構成してもよい。
また、上記実施例では、運用系エンジン及び待機系エンジンが、それぞれOSFフラグ(第1状態データ及び第2状態データ)を出力する構成としたが、FASTモード及びECONOMYモードのいずれの場合も、少なくとも運用系エンジンがOSFフラグを出力する構成であれば、OSFフラグに応じたエンジンのミラーリングを行うことが可能である。運用系エンジンのみがOSFフラグを出力する構成の場合、FASTモードでは、図12の出力装置の定期処理において、S11からS13の処理を行わずに、S9で「異常」に分岐してから、S14に処理が進む。また、FASTモードの手動切り替え操作の際には、図13のS19(コンソールにおけるOSFフラグのチェック)、及び図14のS22(出力装置におけるOSFフラグのチェック)を行わない。また、ECONOMYモードでは、図17のステップS39(待機系エンジンの自身のフラグチェック)を行わない。ECONOMYモードの手動切り替えでは、図18のステップS44(コンソールにおけるOSFフラグのチェック)、図19のステップS48(運用系エンジンにおけるOSFフラグのチェック)、及び図20のステップS52(待機系エンジンにおけるOSFフラグのチェック)を行わない。
また、上記実施例では、各装置1〜6にCPU10,20,30と制御マイコン45が備えられる構成例を示し、図10〜図20等の各処理をメインのCPU10,20又は30と制御マイコン45が共同して実行する構成を説明したが、各装置1〜6に制御マイコン45を具備しない構成とし、図10〜図20等の各処理をメインのCPU10,20又は30が単独で行うようにしてもよい。
また、図1のミキシングシステム構成例では、2つのエンジン2,3が相互に隣接する接続形態となっているが、オーディオネットワーク7における各装置の接続順は図示の例に限定されず、ネットワーク7中のどの位置にどの装置が接続されていても、本実施例にかかるエンジンの切り替え動作を行うことができる。
また、本実施例では、入力装置及び出力装置が、オーディオ信号入力機能及び出力機能を備えた入出力装置(入力装置及び出力装置が一体化された装置)4,5,6により構成される例を示したが、入力装置及び出力装置がハードウェア的に別体で構成されていてもよい。
上記実施例で説明したミキシングシステムは、例えば、コンサート会場、劇場、音楽制作スタジオ、あるいは構内放送、音声案内システム等に利用することができる。また、本発明に係る音響信号処理システムの実施形態は、上記実施例で説明したミキシングシステムに限定されない。例えば、マイクとサウンドシステムを備えた通信ユニット間で音声通信を行うインターカムシステム、ギターやボーカルの音響信号にコンプレッサやディストーション等のエフェクトを付与する効果付与システム、会場内の音響信号をマイクで拾って残響支援用の音響信号を生成して会場内に出力する残響支援システム、或いは、複数の音響信号を同時に録音/再生する複数トラック録再システムなどに適用することが可能である。