IAudioClient::GetStreamLatency メソッド (audioclient.h)
GetStreamLatency メソッドは、現在のストリームの最大待機時間を取得し、ストリームの初期化後にいつでも呼び出すことができます。
構文
HRESULT GetStreamLatency(
[out] REFERENCE_TIME *phnsLatency
);
パラメーター
[out] phnsLatency
メソッド が待機時間 を表す時間値を書き込むREFERENCE_TIME変数へのポインター。 時間は 100 ナノ秒単位で表されます。 REFERENCE_TIMEの詳細については、Windows SDK のドキュメントを参照してください。
戻り値
メソッドが成功した場合は、S_OK を返します。 エラーが発生した場合、次の表に示す値が、可能なリターン コードに含まれますが、これらに限定されません。
リターン コード | 説明 |
---|---|
|
オーディオ ストリームが正常に初期化されていません。 |
|
オーディオ エンドポイント デバイスが取り外されているか、オーディオ ハードウェアまたは関連するハードウェア リソースが再構成、無効、削除、またはその他の方法で使用できなくなります。 |
|
Windows オーディオ サービスが実行されていません。 |
|
パラメーター phnsLatency は NULL です。 |
注釈
このメソッドでは、 IAudioClient インターフェイスを事前に初期化する必要があります。 クライアントが IAudioClient::Initialize メソッドを正常に呼び出してオーディオ ストリームを初期化するまで、このメソッドの呼び出しはすべてエラー AUDCLNT_E_NOT_INITIALIZEDで失敗します。
このメソッドは、現在のストリームの最大待機時間を取得します。 この値は、 IAudioClient オブジェクトの有効期間中は変更されません。
レンダリング クライアントは、この待機時間の値を使用して、1 回の処理パスで書き込むことができる最小量のデータを計算できます。 この最小値より小さい値を書き込むには、オーディオ ストリームに不具合が発生するリスクがあります。 詳細については、「 IAudioRenderClient::GetBuffer」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ | UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリ | UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | audioclient.h |