Share via


DVCLIENTCONFIG 構造体

DVCLIENTCONFIG 構造体

クライアントの実行時のパラメータを制御する。

構文

typedef struct {
    DWORD dwSize;
    DWORD dwFlags;
    LONG lRecordVolume;
    LONG lPlaybackVolume;
    DWORD dwThreshold;
    DWORD dwBufferQuality;
    DWORD dwBufferAggressiveness;
    DWORD dwNotifyPeriod;
} DVCLIENTCONFIG, *LPDVCLIENTCONFIG, *PDVCLIENTCONFIG;

メンバ

  • dwSize
    この構造体を使う前に、この構造体のサイズ (バイト単位) に設定する必要がある。

  • dwFlags

    • DVCLIENTCONFIG_MANUALVOICEACTIVATED または DVCLIENTCONFIG_AUTOVOICEACTIVATED のどちらも指定しない場合、システムはプッシュツートーク モードで動作する。プッシュツートーク モードでは、有効なターゲットが指定されている限り、マイクからの入力は転送される。NULL ターゲットが設定されるか、現在のターゲットがセッションを離れるか、または現在のターゲットが破棄された場合、音声転送は停止する。

  • lRecordVolume
    設定する録音のボリュームを示す LONG 値。有効な値については、IDirectSoundBuffer8::SetVolume メソッドの説明を参照すること。

    自動ゲイン制御が有効になっている場合、この値を DVRECORDVOLUME_LAST に設定できる。この場合、システムは、自動ゲイン制御アルゴリズムで決まった現在のボリュームを使う。DVRECORDVOLUME_LAST 以外の値を指定して自動ゲイン制御に組み合わせた場合、指定した値でアルゴリズムが再開する。

    IDirectPlayVoiceClient::GetClientConfig を呼び出すと、この値に現在の録音ボリュームが含まれる。DirectPlay Voice では、録音ボリュームを調整するとき、マイクのボリューム (カード用のマイクのボリュームが存在する場合) およびマスタ録音ボリューム (カードに存在する場合) を調整する。マイクのボリュームとマスタ録音ボリュームがどちらも存在しない場合、DirectPlay Voice は録音ボリュームを調整できない。

  • lPlaybackVolume
    設定する再生のボリュームを示す値。このボリュームを調整すると、メイン バッファとすべての 3D サウンド バッファが調整される。有効な値については、IDirectSoundBuffer8::SetVolume メソッドの説明を参照すること。DVPLAYBACKVOLUME_DEFAULT を指定すると、ほとんどの状況に適したデフォルト値 (フル ボリューム) を使える。

  • dwThreshold
    dwFlags メンバに DVCLIENTCONFIG_MANUALVOICEACTIVATED フラグを指定した場合に、音声転送のトリガに使われる入力レベル。このフラグを指定した場合、DVTHRESHOLD_MIN から DVTHRESHOLD_MAX までの任意の値を指定できる。また、DVTHRESHOLD_DEFAULT を設定すると、デフォルト値を使える。DVCLIENTCONFIG_MANUALVOICEACTIVATED または DVCLIENTCONFIG_AUTOVOICEACTIVATED は、dwFlags メンバには指定されない。フラグを指定すると、この値はこの構造体の範囲メンバの任意の場所に設定できる (プッシュツートーク モードを示す)。この値は DVTHRESHOLD_UNUSED に指定する必要がある。

  • dwBufferQuality
    適応バッファリング アルゴリズムのバッファ品質の設定。大部分のアプリケーションでは、DVBUFFERQUALITY_DEFAULT に設定する。DVBUFFERQUALITY_MIN から DVBUFFERQUALITY_MAX までの任意の値に設定できる。一般に、値が大きいほど音声の質は高くなるが、遅延時間は長くなる。値が小さいほど遅延時間は短くなるが、質は低下する。

  • dwBufferAggressiveness
    適応バッファリング アルゴリズムのバッファの即応性の程度の設定。大部分のアプリケーションでは、DVBUFFERAGGRESSIVENESS_DEFAULT に設定できる。また、DVBUFFERAGGRESSIVENESS_MIN から DVBUFFERAGGRESSIVENESS_MAX までの任意の値に設定できる。一般に、値が大きいほど適応バッファリングは状況変化への対応が速くなる。値が小さいほど、適応バッファリングは状況変化への対応が遅くなる。

  • dwNotifyPeriod
    DVMSGID_OUTPUTLEVEL メッセージと DVMSGID_INPUTLEVEL メッセージ (セッションが全二重である場合) を受け取る頻度を示す値。この値を 0 に設定した場合、メッセージは無効になる。メッセージ間の間隔をミリ秒単位で指定する。DVNOTIFYPERIOD_MINPERIOD を指定すると、メッセージ間で可能な最小時間が設定される。

注意

この構造体は、パラメータの初期状態を設定するために、IDirectPlayVoiceClient::Connect の呼び出しで最初に使われる。接続の確立後、この構造体を取得するには IDirectPlayVoiceClient::GetClientConfig を呼び出し、構造体を設定するには IDirectPlayVoiceClient::SetClientConfig を使う。

構造体の情報

ヘッダー dvoice8.h
最低限のオペレーティング システム Windows 98