IAudioClient インターフェイス (audioclient.h)
IAudioClient インターフェイスを使用すると、クライアントは、オーディオ アプリケーションとオーディオ エンジン (共有モード ストリームの場合) またはオーディオ エンドポイント デバイスのハードウェア バッファー (排他モード ストリームの場合) の間にオーディオ ストリームを作成および初期化できます。 クライアントは、次の手順に従って、オーディオ エンドポイント デバイスの IAudioClient インターフェイスへの参照を取得します。
- 「IMMDevice Interface」で説明されている手法のいずれかを使用して、オーディオ エンドポイント デバイスの IMMDevice インターフェイスへの参照を取得します。
- パラメーター iid を REFIID IID_IAudioClientに設定して、IMMDevice::Activate メソッドを呼び出します。
このインターフェイスを使用するアプリケーション スレッドは、COM 用に初期化する必要があります。 COM の初期化の詳細については、Windows SDK ドキュメントの CoInitializeEx 関数の説明を参照してください。
IAudioClient インターフェイスを使用するコード例については、次のトピックを参照してください。
継承
IAudioClient インターフェイスは、IUnknown インターフェイスから継承されます。 IAudioClient には、次の種類のメンバーもあります。
メソッド
IAudioClient インターフェイスには、これらのメソッドがあります。
IAudioClient::GetBufferSize GetBufferSize メソッドは、エンドポイント バッファーのサイズ (最大容量) を取得します。 |
IAudioClient::GetCurrentPadding GetCurrentPadding メソッドは、エンドポイント バッファー内のパディングのフレーム数を取得します。 |
IAudioClient::GetDevicePeriod GetDevicePeriod メソッドは、エンドポイント バッファー内のデータに対してオーディオ エンジンによって連続する処理パスを分離する定期的な間隔の長さを取得します。 |
IAudioClient::GetMixFormat GetMixFormat メソッドは、オーディオ エンジンが共有モード ストリームの内部処理に使用するストリーム形式を取得します。 |
IAudioClient::GetService GetService メソッドは、オーディオ クライアント オブジェクトから追加のサービスにアクセスします。 |
IAudioClient::GetStreamLatency GetStreamLatency メソッドは、現在のストリームの最大待機時間を取得し、ストリームが初期化された後いつでも呼び出すことができます。 |
IAudioClient::Initialize Initialize メソッドは、オーディオ ストリームを初期化します。 |
IAudioClient::IsFormatSupported IsFormatSupported メソッドは、オーディオ エンドポイント デバイスが特定のストリーム形式をサポートしているかどうかを示します。 |
IAudioClient::Reset Reset メソッドは、オーディオ ストリームをリセットします。 |
IAudioClient::SetEventHandle SetEventHandle メソッドは、オーディオ バッファーがクライアントによって処理される準備ができたときにシステムが通知するイベント ハンドルを設定します。 |
IAudioClient::Start Start メソッドは、オーディオ ストリームを開始します。 |
IAudioClient::Stop Stop メソッドは、オーディオ ストリームを停止します。 |
注釈
メモWindows 8では、オーディオ デバイスにアクセスするための IAudioClient の最初の使用は STA スレッド上にある必要があります。 MTA スレッドからの呼び出しにより、未定義の動作が発生する可能性があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ | UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリ | UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | audioclient.h |