構成 | Static Public メソッド
クラス CriAtomExAsr

Atomサウンドレンダラのバス出力を制御するクラスです。 [詳細]

すべてのメンバ一覧

構成

struct  BusAnalyzerInfo
 レベル測定情報 [詳細]

Static Public メソッド

static void AttachBusAnalyzer (string busName, int interval, int peakHoldTime)
 レベル測定機能の追加
static void AttachBusAnalyzer (int interval, int peakHoldTime)
 全てのDSPバスへのレベル測定機能の追加
static void DetachBusAnalyzer (string busName)
 レベル測定機能の削除
static void DetachBusAnalyzer ()
 全てのDSPバスからのレベル測定機能の削除
static void GetBusAnalyzerInfo (string busName, out BusAnalyzerInfo info)
 レベル測定結果の取得
static void SetBusVolume (string busName, float volume)
 DSPバスのボリュームの設定
static void SetBusSendLevel (string busName, string sendTo, float level)
 DSPバスのセンドレベルの設定
static void SetBusMatrix (string busName, int inputChannels, int outputChannels, float[] matrix)
 DSPバスのレベル行列の設定
static void SetEffectBypass (string busName, string effectName, bool bypass)
 DSPバスエフェクトのバイパス設定
static void SetEffectParameter (string busName, string effectName, uint parameterIndex, float parameterValue)
 DSPバスエフェクト動作時パラメータの設定
static float GetEffectParameter (string busName, string effectName, uint parameterIndex)
 DSPバスエフェクト動作時パラメータの取得
static bool RegisterEffectInterface (IntPtr afx_interface)
 ユーザ定義エフェクトインターフェースの登録
static void UnregisterEffectInterface (IntPtr afx_interface)
 ユーザ定義エフェクトインターフェースの登録解除

説明

Atomサウンドレンダラのバス出力を制御するクラスです。

説明:
本クラスでは、Atomサウンドレンダラのバス出力を操作してボリュームを変更したり、レベルを測定することができます。

関数

static void AttachBusAnalyzer ( string  busName,
int  interval,
int  peakHoldTime 
)
inlinestatic

レベル測定機能の追加

引数:
busNameDSPバス名
interval測定間隔(ミリ秒)
peakHoldTimeピークホールドレベルのホールド時間(ミリ秒)
説明:
DSPバスにレベル測定機能を追加し、レベル測定処理を開始します。
本関数を実行後、 CriAtomExAsr::GetBusAnalyzerInfo 関数を実行することで、 RMSレベル(音圧)、ピークレベル(最大振幅)、ピークホールドレベルを 取得することが可能です。 複数DSPバスのレベルを計測するには、DSPバスごとに本関数を呼び出す必要があります。
参照:
CriAtomExAsr::GetBusAnalyzerInfo, CriAtomExAsr::DetachBusAnalyzer
static void AttachBusAnalyzer ( int  interval,
int  peakHoldTime 
)
inlinestatic

全てのDSPバスへのレベル測定機能の追加

引数:
interval測定間隔(ミリ秒)
peakHoldTimeピークホールドレベルのホールド時間(ミリ秒)
説明:
DSPバスにレベル測定機能を追加し、レベル測定処理を開始します。
本関数を実行後、 CriAtomExAsr::GetBusAnalyzerInfo 関数を実行することで、 RMSレベル(音圧)、ピークレベル(最大振幅)、ピークホールドレベルを 取得することが可能です。
参照:
CriAtomExAsr::GetBusAnalyzerInfo, CriAtomExAsr::DetachBusAnalyzer
static void DetachBusAnalyzer ( string  busName)
inlinestatic

レベル測定機能の削除

引数:
busNameDSPバス名
説明:
指定のDSPバスからレベル測定機能を削除します。
参照:
CriAtomExAsr::AttachBusAnalyzer
static void DetachBusAnalyzer ( )
inlinestatic

全てのDSPバスからのレベル測定機能の削除

説明:
全てのDSPバスからレベル測定機能を削除します。
参照:
CriAtomExAsr::AttachBusAnalyzer
static void GetBusAnalyzerInfo ( string  busName,
out BusAnalyzerInfo  info 
)
inlinestatic

レベル測定結果の取得

引数:
busNameDSPバス名
infoレベル測定結果
説明:
DSPバスからレベル測定機能の結果を取得します。
参照:
CriAtomExAsr::AttachBusAnalyzer
static void SetBusVolume ( string  busName,
float  volume 
)
inlinestatic

DSPバスのボリュームの設定

引数:
busNameDSPバス名
volumeボリューム値
説明:
DSPバスのボリュームを設定します。
センドタイプがポストボリューム、ポストパンのセンド先に有効です。

ボリューム値には、0.0f〜1.0fの範囲で実数値を指定します。
ボリューム値は音声データの振幅に対する倍率です(単位はデシベルではありません)。
例えば、1.0fを指定した場合、原音はそのままのボリュームで出力されます。
0.5fを指定した場合、原音波形の振幅を半分にしたデータと同じ音量(-6dB)で 音声が出力されます。
0.0fを指定した場合、音声はミュートされます(無音になります)。
ボリュームのデフォルト値はCRI Atom Craftで設定した値です。
static void SetBusSendLevel ( string  busName,
string  sendTo,
float  level 
)
inlinestatic

DSPバスのセンドレベルの設定

引数:
busNameDSPバス名
sendToセンド先DSPバス名
levelレベル値
説明:
センド先DSPバスに音声データを送る際のレベルを設定します。

レベル値には、0.0f〜1.0fの範囲で実数値を指定します。
レベル値は音声データの振幅に対する倍率です(単位はデシベルではありません)。
例えば、1.0fを指定した場合、原音はそのままのレベルで出力されます。
0.5fを指定した場合、原音波形の振幅を半分にしたデータと同じ音量(-6dB)で 音声が出力されます。
0.0fを指定した場合、音声はミュートされます(無音になります)。
レベルのデフォルト値はCRI Atom Craftで設定した値です。
static void SetBusMatrix ( string  busName,
int  inputChannels,
int  outputChannels,
float[]  matrix 
)
inlinestatic

DSPバスのレベル行列の設定

引数:
busNameDSPバス名
inputChannels入力チャンネル数
outputChannels出力チャンネル数
matrixレベル行列を1次元に表したレベル値の配列
説明:
DSPバスのレベル行列を設定します。
センドタイプがポストパンのセンド先に有効です。

レベルマトリックスは、音声データの各チャンネルの音声を、どのスピーカーから どの程度の音量で出力するかを指定するための仕組みです。
matrixは[input_channels * output_channels]の配列です。
入力チャンネルch_inから出力チャンネルch_outにセンドされるレベルは matrix[ch_in * output_channels + ch_out]にセットします。
レベル行列のデフォルト値は単位行列です。

レベル値には、0.0f〜1.0fの範囲で実数値を指定します。
レベル値は音声データの振幅に対する倍率です(単位はデシベルではありません)。
例えば、1.0fを指定した場合、原音はそのままのレベルで出力されます。
0.5fを指定した場合、原音波形の振幅を半分にしたデータと同じ音量(-6dB)で 音声が出力されます。
0.0fを指定した場合、音声はミュートされます(無音になります)。
static void SetEffectBypass ( string  busName,
string  effectName,
bool  bypass 
)
inlinestatic

DSPバスエフェクトのバイパス設定

引数:
busNameバス名
effectNameエフェクト名
bypassバイパス設定(true:バイパスを行う, false:バイパスを行わない)
説明:
エフェクトのバイパス設定を行います。
バイパス設定されたエフェクトは音声処理の際、スルーされるようになります。
エフェクトのバイパス設定をする際は、本関数呼び出し前にあらかじめ DSPバス設定をアタッチしている必要があります。
どのバスにどのエフェクトが存在するかは、アタッチしたDSPバス設定に依存します。
指定したバスに指定したIDのエフェクトが存在しない場合、関数は失敗します。
注意:
音声再生中にバイパス設定を行うとノイズが発生することがあります。
static void SetEffectParameter ( string  busName,
string  effectName,
uint  parameterIndex,
float  parameterValue 
)
inlinestatic

DSPバスエフェクト動作時パラメータの設定

引数:
busNameバス名
effectNameエフェクト名
parameterIndexエフェクト動作時パラメータインデックス
parameterValueエフェクト動作時パラメータ設定値
説明:
DSPバスエフェクトの動作時パラメータを設定します。

どのバスにどのエフェクトが存在するかは、アタッチしたDSPバス設定に依存します。
指定したバスに指定したIDのエフェクトが存在しない場合、関数は失敗します。
static float GetEffectParameter ( string  busName,
string  effectName,
uint  parameterIndex 
)
inlinestatic

DSPバスエフェクト動作時パラメータの取得

引数:
busNameバス名
effectNameエフェクト名
parameterIndexエフェクト動作時パラメータインデックス
説明:
DSPバスエフェクトの動作時パラメータ値を取得します。

どのバスにどのエフェクトが存在するかは、アタッチしたDSPバス設定に依存します。
指定したバスに指定したIDのエフェクトが存在しない場合、関数は失敗します。
static bool RegisterEffectInterface ( IntPtr  afx_interface)
inlinestatic

ユーザ定義エフェクトインターフェースの登録

引数:
afx_interfaceユーザ定義エフェクトのバージョン情報付きインターフェース
戻り値:
登録に成功したか?(true:登録に成功した, false:登録に失敗した)
説明:
ユーザ定義エフェクトインターフェースをASRに登録します。
ユーザ定義エフェクトインターフェースを登録したエフェクトはDSPバス設定をアタッチする際に使用できるようになります。
以下の条件に該当する場合は、ユーザ定義エフェクトインターフェースの登録に失敗し、エラーコールバックが返ります:
  • 同じエフェクト名を持つユーザ定義エフェクトインターフェースが既に登録されている
  • Atomが使用しているユーザ定義エフェクトインターフェースと異なる
  • ユーザ定義エフェクトインターフェースの登録数上限に達した
注意:
本APIはCRI ADX2 Audio Effect Plugin SDKでユーザ定義エフェクトを登録するときのみ使用可能です。
本関数を呼び出すタイミングは、必ず CriAtomPlugin::InitializeLibrary の呼び出しから CriAtomEx::AttachDspBusSetting の呼び出しまでの間にしてください。
一度登録を行ったインターフェースのポインタは、 CriAtomEx::DetachDspBusSetting が呼び出されるまで参照され続けます。
ライブラリ使用中にインターフェースの登録解除を行う場合は、 CriAtomExAsr::UnregisterEffectInterface を使用して下さい。
参照:
CriAtomExAsr::UnregisterEffectInterface, CriAtomEx::AttachDspBusSetting, CriAtomEx::DetachDspBusSetting
static void UnregisterEffectInterface ( IntPtr  afx_interface)
inlinestatic

ユーザ定義エフェクトインターフェースの登録解除

引数:
afx_interfaceユーザ定義エフェクトのバージョン情報付きインターフェース
説明:
ユーザ定義エフェクトインターフェースの登録を解除します。
登録を解除したエフェクトはDSPバス設定をアタッチする際に使用できなくなります。
登録処理を行っていないユーザ定義エフェクトインターフェースの登録を解除することはできません(エラーコールバックが返ります)。
注意:
本APIはCRI ADX2 Audio Effect Plugin SDKでエフェクトの登録解除をするときのみ使用可能です。
参照:
CriAtomExAsr::RegisterEffectInterface

CRI Middleware logo Copyright (c) 2012-2018 CRI Middleware Co., Ltd. CRI ADX2 LE マニュアル (for Unity) SDKVer.2.10版