IAudioClient::GetStreamLatency メソッド (audioclient.h)

GetStreamLatency メソッドは、現在のストリームの最大待機時間を取得し、ストリームの初期化後にいつでも呼び出すことができます。

構文

HRESULT GetStreamLatency(
  [out] REFERENCE_TIME *phnsLatency
);

パラメーター

[out] phnsLatency

メソッド が待機時間 を表す時間値を書き込むREFERENCE_TIME変数へのポインター。 時間は 100 ナノ秒単位で表されます。 REFERENCE_TIMEの詳細については、Windows SDK のドキュメントを参照してください。

戻り値

メソッドが成功した場合は、S_OK を返します。 エラーが発生した場合、次の表に示す値が、可能なリターン コードに含まれますが、これらに限定されません。

リターン コード 説明
AUDCLNT_E_NOT_INITIALIZED
オーディオ ストリームが正常に初期化されていません。
AUDCLNT_E_DEVICE_INVALIDATED
オーディオ エンドポイント デバイスが取り外されているか、オーディオ ハードウェアまたは関連するハードウェア リソースが再構成、無効、削除、またはその他の方法で使用できなくなります。
AUDCLNT_E_SERVICE_NOT_RUNNING
Windows オーディオ サービスが実行されていません。
E_POINTER
パラメーター phnsLatencyNULL です

注釈

このメソッドでは、 IAudioClient インターフェイスを事前に初期化する必要があります。 クライアントが IAudioClient::Initialize メソッドを正常に呼び出してオーディオ ストリームを初期化するまで、このメソッドの呼び出しはすべてエラー AUDCLNT_E_NOT_INITIALIZEDで失敗します。

このメソッドは、現在のストリームの最大待機時間を取得します。 この値は、 IAudioClient オブジェクトの有効期間中は変更されません。

レンダリング クライアントは、この待機時間の値を使用して、1 回の処理パスで書き込むことができる最小量のデータを計算できます。 この最小値より小さい値を書き込むには、オーディオ ストリームに不具合が発生するリスクがあります。 詳細については、「 IAudioRenderClient::GetBuffer」を参照してください。

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ | UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリ | UWP アプリ]
対象プラットフォーム Windows
ヘッダー audioclient.h

こちらもご覧ください

IAudioClient インターフェイス

IAudioClient::Initialize

IAudioRenderClient::GetBuffer