AudioGroup ヒエラルキーの AudioGroup を選択することで、AudioGroup ビューまたはプロジェクトウィンドウ(サブアセットとして)が、AudioGroup のインスペクターを表示します。
AudioGroup のためのインスペクターは、いくつかのコンポーネントで構成されています。
AudioGroup インスペクターの上部には、すべてのオブジェクトインスペクターに共通のギアドロップダウンメニューと一緒に AudioGroup の名前があります。
ギアメニューには、以下の機能があります。
Unity 内で Playmode のとき、AudioGroup のインスペクターの一番上に“Edit in Playmode”と書かれたボタンがあります。通常では AudioMixer のパラメータ値は、PlayMode で編集できず、ゲーム内のスナップショットによって完全に制御されます。
Playmode で編集すると、スナップショットシステムを上書きすることができ、Playmode 中に直接、現在のスナップショットへの編集し始めます。これはリアルタイムで再生しながらゲームをミックスし、マスターできます。
すべての AudioGroup インスペクターの上部に、その AudioGroup を通して再生のピッチを定めるスライダーがあります。ピッチを変更するには、どのスライダーを使用するか、右側にあるテキストフィールドにマニュアルでピッチ値を入力してください。
AudioMixer 内のすべての AudioGroup は正確な1つの減衰ユニットを持っています。
減衰ユニットは、AudioGroup を通過したオーディオ信号に減衰/ゲインを適用できるところです。減衰は計算され、’その部分に’信号に適用されます(他の減衰設定とは結合せず、音声ソースに適用されます)。Receives とノンリニア DSP エフェクトを結合すると、非常に複雑で面白いセットアップをつくることができます。減衰は–80dB(無音)まで適用でき、ゲインは+20デシベルまで適用できます。
すべての減衰ユニットは、インスペクターに VU メーターを持っています。このメーターは、信号チェーン内のその時点での(減衰が適用された直後の)オーディオ信号のレベルを示します。DSP エフェクトを有する場合または、減衰ユニットの後に受信した場合、その AudioGroup 用 AudioGroup ストリップで見られるメーターの情報は、減衰ユニットでのメーターの情報とは異なります。減衰ユニットを左右にドラッグして、処理のチェーンが異なる点でメーターを表示させるこの方法は AudioGroup のシグナルチェーンのデバッグに最適な方法です。
VU メーターは、実効値(RMS)とピークホールド値の両方を示しています。
エフェクトユニットは、AudioGroup を通して再生されている音声信号を変調する一般的な DSP エフェクトです。例えば、Highpass または Reverb です。エフェクトユニットはまた、Send Unit から送信されているサイドチェーンの信号情報を処理することもできます。各エフェクトユニットにつきインタフェースは異なり、ほとんどの部分は、どのようにエフェクトが信号に適用されるか、変調を変更するためのパラメーターのコレクションを公開します。たとえば、パラメータの EQ エフェクトには、信号の処理方法を変更する3つのパラメータがあります:
Unity は AudioGroup 内で使用できる内蔵エフェクトのコレクションを付属しています。AudioMixer 内で使用できるカスタム DSP エフェクトプラグインを作成する機能もあります。
AudioGroup 内エフェクトの順序を変更するには、エフェクトのヘッダを左クリックし、ドラッグアップまたはダウンして、別の位置に配置します。
AudioGroup からエフェクトを削除するには、エフェクトヘッダを右クリックし、‘Remove this effect’ を選択します。
Send はオーディオ信号のフローを分岐することができ、他のエフェクトユニット内のサイドチェーンとして使用される信号の減衰したコピーを送信します。例えば、サイドチェーンコンプレッサーです。シグナル·チェーンのどこにでも Send を挿入することができ、いずれの点でも信号の分岐ができます。
まず最初に、Send が、AudioGroup に追加されたとき、何にも送信しません。Send Level は –80dB にセットされます。別のエフェクトユニットに送信するには、すでにどこかの AudioMixer でサイドチェーンの信号を受け入れることができるエフェクトユニットを持っている必要があります。先のエフェクトユニットが選択されると、ユーザーは、届け先に信号を送信するために Send Level を増やす必要があります。
AudioGroup に Send を追加するには、AudioGroup インスペクターの下部にある ‘Add Effect’ ボタンをクリックして、‘Sends’ を選択します。 * (信号を受信することができる)別のエフェクトユニットの Send に接続するには、Send Unit Inspector のドロップダウンメニューから届け先を選択します。 * “Send Level”で届け先に送られる信号のレベルを設定します。
Receives は、Sends の信号の受け手です。彼らは単に Sends から送られるオーディオ信号を取って、AudioGroup を通過する現在の信号とミックスします。Receive にはパラメータはありません。
注意 Receive ユニットを単独で使用する場合、サウンドの再生を停止します。これは、設計によるものです。
Duck Volume ユニットは、Sends から送信された信号から、サイドチェーン圧縮の作成を許可します。Duck Volume は、AudioMixer のどこかで再生されているオーディオに基づく信号の減衰をコントロールするすばらしい方法です。
Duck Volume ユニットは、他のエフェクトユニットのように追加することができ、少なくとも使える一つの send から信号がそれらに送られている必要があります。
AudioGroup インスペクター内の各ユニットは、多くの共通の特徴があります。
DSP エフェクトに Wet Mixing を許可すると、どのくらいのオーディオ信号をエフェクトに入力して実際にエフェクトにより処理させるか決定することができます。Wet Mixing を有効にすると、効果的にエフェクトの周りに乾燥チャネルを作成します。その後、エフェクトスロットの上をクリックし、左右にドラッグして、DSP エフェクトユニットを通過するオーディオ信号の割合を増加または減少することができます。信号の残りの部分は、dry チャンネルを通過します。次の図は、この概念を示しています。
Wet mixing は、ユーザーがエフェクトがミックスに与える影響を制御し、元の信号の割合を維持したいときに適しています。
Exposed Parameters は、AudioMixer のスナップショットシステムをバイパスし、スクリプトから AudioMixer 内の任意のパラメータの値を設定することができます。Exposed Parameters がスクリプトを介して設定されている場合、そのパラメータは、その値にロックされ、ゲームのスナップショットの遷移として変更されません。
AudioMixer とパラメータの公開は AudioGroup インスペクターで行われます。インスペクター(Pitch、Volume、Send Level および Wet Level を含む)に示されるいずれかのパラメータでは、パラメータの名前を右クリックして、‘Expose X to script’ を選択することができます。
パラメータが公開されると、AudioMixer ウィンドウの右上にある Exposed Parameter のドロップダウンに表示されます。このドロップダウンをクリックすると、AudioMixer 内のすべての Exposed Parameters を明らかにします。
Snapshots 間で移行する場合、デフォルトでは、すべての移行が値をターゲットにして最初から線形補間で行われます。いくつかの場合において、この移行の動作は要求されません。例えばレンガの壁が移行の開始または終了を変化させるときです。
AudioMixer 内で使用可能なすべてパラメータは、それらの遷移の動作を変更することができます。遷移の動作はスナップショットごとに定義され、ターゲットのスナップショットは遷移の動作を定義しています。
現在のスナップショットのために特定のパラメータについて遷移の上書きを設定するには、パラメータ名を右クリックし、必要な遷移の種類を選択します。
オーディオ ミキサー アセットには独自にインスペクターがあり、ミキサーの全般的なアクティベーション、または、一時停止ビヘイビアを特定できます。アセットなので、オーディオ ミキサーはオーディオ ソースがミキサーで再生されるときアクティブ化され、オーディオ データをミキサーに提供するドライバがある限り、オーディオ ミキサーは基本的にアクティブであり続けます。ミキサーは、シーン ビューのオーディオ プレビュー ボタンでもアクティブ化できるので、アクティベーション ビヘイビアは MonoBehavior などのシーン オブジェクトとは異なります。したがって、ミキサーは停止モードでもアクティブなこと (そのため CPU を消費する) があります。
ミキサーを多く含むプロジェクトで (同時にすべてのミキサーを作動させるためではなく、特定のレベルで、ある特別なミキサーを使用するため) CPU が不足するのを防ぐため、オーディオ ミキサーには一時停止モードにして、すべての処理中のステップを停止するビルトイン機能があります。クリックの音が聞こえたり、エコーや残響が切れてしまうなどの人為的な産物なく自然のままに行うには、各ミキサーで以下のように行います。
オーディオ ソースがミキサーで再生されているか、他のサブ ミキサーからオーディオデータを受け取っている限り、ミキサーはアクティブの状態です。最後のサウンドソースの再生が終わったとき、ミキサーは 1秒待ち、それからミキサー自体の出力の音量測定をし、一時停止するべきかを決定します。これは、残響とエコーがとてもゆっくり消えていくことがあるためです。ミキサーが一時停止する音量の閾値は、図のように、ミキサー アセット インスペクターの Auto Mixer Suspend を有効にしてThreshold Volume パラメーターで設定します。すると、プロジェクトブラウザーでミキサー アセットが選択されます (mixer group や snapshot などのサブ アセット選択時ではありません)。デフォルトで、ミキサーのフェーダーの最低値である –80 dB が設定されています。実際には、それよりかなり大きい値に設定し、早めに非アクティブ化し、スタッターの原因となる中間の CPU スパイクを避けることがしばしばあります。