IAudioClient インターフェイス (audioclient.h)

IAudioClient インターフェイスを使用すると、クライアントは、オーディオ アプリケーションとオーディオ エンジン (共有モード ストリームの場合) またはオーディオ エンドポイント デバイスのハードウェア バッファー (排他モード ストリームの場合) の間にオーディオ ストリームを作成および初期化できます。 クライアントは、次の手順に従って、オーディオ エンドポイント デバイスの IAudioClient インターフェイスへの参照を取得します。

  1. 「IMMDevice Interface」で説明されている手法のいずれかを使用して、オーディオ エンドポイント デバイスの IMMDevice インターフェイスへの参照を取得します。
  2. パラメーター 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

こちらもご覧ください

コア オーディオ インターフェイス

IMMDevice::Activate

WASAPI