アンビソニックなオーディオ
このページはアンビソニックスの再生方法と、アンビソニックなオーディオデコーダーをサポートするためのオーディオプラグインインターフェースに対する変更について説明します。
アンビソニックスはマルチチャンネル形式で保存されます。それぞれのチャンネルが特定のスピーカーにマッピングされる代わりに、アンビソニックスはより全般的な方法で音場を表します。そのため、音場はリスナーの向き (つまり、VR や AR におけるユーザーの頭部の回転) に基づいて回転させることができます。また、音場はスピーカーの設定と一致する形式にデコードすることもできます。アンビソニックスは一般に 360 度のビデオとペアになっており、離れた周囲の音のためのオーディオスカイボックスとしても使用できます。
プロジェクトの Audio 設定 (Edit > Project Settings の順に選択し、Audio カテゴリを選択) に移動します。プロジェクトの使用可能な Ambisonic Decoder Plugin のリストからデコーダーを選択します。Unity 2017.1 に同梱されているビルトインのデコーダーはありませんが、Google と Oculus はそれぞれ Unity にオーディオ SDK を提供しています。
マルチチャンネルの WAV ファイルを、通常どおりにインポートします。オーディオクリップの Inspector ウィンドウで、新しい Ambisonic のチェックボックスを選択します。WAV ファイルは B-format で、ACN コンポーネントの順序で SN3D で正規化されている必要があります。
他のオーディオクリップと同じように、アンビソニックなオーディオクリップもオーディオソース経由で再生します。アンビソニッククリップを再生するとき、アンビソニッククリップはまず必要に応じて解凍され、アンビソニックデコーダーを通してプロジェクトで選択されたスピーカーモードに変換されます。それから、オーディオソースのエフェクトを通じて処理されます。
Audio Source プロパティに関していくつか注意点があります。
Spatialize を無効に設定します。アンビソニックオーディオクリップを再生する場合、Spatialize はプロジェクトで選択されたアンビソニックオーディオデコーダーを通して自動的に処理されます。デコーダーは、クリップをアンビソニック形式からプロジェクトで選択したスピーカー形式に変換します。デコーダーはさらに、オーディオソースとオーディオのリスナーの位置に基づいて、このデコード操作の一部として空間化をすでに処理しています。
空間化されたオーディオソースと同様に、アンビソニックオーディオクリップではリバーブゾーンは無効になります。
プラグインを作成する場合は、まず、以下の Unity マニュアルのネイティブのオーディオプラグイン SDK とオーディオスペーシャライザー SDK に関する情報を参照し、オーディオプラグイン SDK をダウンロードしてください。
https://bitbucket.org/Unity-Technologies/nativeaudioplugins
AudioPluginInterface.h にアンビソニックオーディオデコーダーに関する 2 つの変更があります。1 つ目は、新しいエフェクト定義フラグ UnityAudioEffectDefinitionFlags_IsAmbisonicDecoder です。アンビソニックデコーダーでは、このフラグをエフェクトの定義ビットフィールドに設定します。プラグインスキャン中、Unity はこのフラグによってエフェクトがアンビソニックなデコーダーであることを判断し、Audio 設定の Ambisonics Decoder リストにオプションとして表示します。
2 つ目は、アンビソニックデコーダーに渡す新しい UnityAudioAmbisonicData 構造体です。これは、スペーシャライザーに渡す UnityAudioSpatializerData 構造体に非常に似ていますが、新しい ambisonicOutChannels 整数が追加されています。このフィールドは、DefaultSpeakerMode のチャンネル数に設定されます。アンビソニックデコーダーは、クリップのチャンネル数で実行するオーディオパイプラインの非常に早い段階に配置されます。よって、ambisonicOutChannels は実際に使用する出力チャンネルの数をプラグインに通知します。
1 次アンビソニックオーディオクリップ (4 チャンネル) を再生し、スピーカーモードがステレオ (2 チャンネル) の場合、アンビソニックデコーダーのプロセスコールバックは、インとアウトのチャンネル数に対して 4 つ渡されます。ambisonicOutChannels フィールドは 2 つに設定されます。この一般的な状況では、プラグインは空間化されたデータを最初の 2 チャンネルに出力し、他の 2 チャンネルの出力はゼロです。
2017.1 の Unity のアンビソニックなソースのフレームワークは、1 次と 2 次のアンビソニックスをサポートします。プラグインインターフェースには、バイノーラルステレオ、クワッド、5.1、7.1 の出力をサポートする情報が含まれていますが、サポートのレベルは、プラグインによって決定されます。初期は、まだ、アンビソニックデコーダープラグインが 1 次アンビソニックソースとバイノーラルステレオ出力をサポートすることだけが予定されています。
現在のフレームワークには、利用可能なアンビソニック形式のいずれかに特化されるものはありません。クリップの形式がアンビソニックのデコーダープラグインの想定される形式と一致する場合は、すべてうまく作動するはずです。しかし、現在の計画では、Unity にとって好ましいアンビソニックフォーマットは、B-format で ACN コンポーネント順と SN3D の正規化を伴っているもの、としています。
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.