KSRTAUDIO_BUFFER_PROPERTY構造体

KSRTAUDIO_BUFFER_PROPERTY 構造体は、バッファー ベース アドレスと要求されたバッファー サイズをKSPROPERTY 構造体に追加します。 この構造体は、KSPROPERTY_RTAUDIO_BUFFER を介してオーディオ バッファーの割り当てを要求するためにクライアントによって使用されます。

構文

typedef struct {
  KSPROPERTY Property;
  PVOID      BaseAddress;
  ULONG      RequestedBufferSize;
} KSRTAUDIO_BUFFER_PROPERTY, *PKSRTAUDIO_BUFFER_PROPERTY;

メンバー

プロパティ
KSPROPERTY_RTAUDIO_BUFFERを呼び出す前にクライアントが適切に初期化する KSPROPERTY 構造体。

BaseAddress
目的のバッファー ベース アドレスを指定します。 クライアントがベース アドレスを指定しない限り、このパラメーターは NUL に設定されます。

RequestedBufferSize
必要なバッファー・サイズをバイト単位で指定します。 ドライバーは、返されるKSRTAUDIO_BUFFER構造体で割り当てられたバッファーの実際のサイズを返します。

解説

KSPROPERTY_RTAUDIO_BUFFER要求では、KSRTAUDIO_BUFFER_PROPERTY構造体を使用して、クライアントが要求する循環バッファーを記述します。 ドライバーは、実際に割り当てられたバッファーを記述するKSRTAUDIO_BUFFER構造体を返します。

クライアントが RequestedBufferSize メンバーに書き込む値は、ドライバーでバインドされていません。 ただし、ドライバーは、ドライバー自体のバッファー サイズの制約を考慮して、要求されたサイズにできるだけ近いバッファー サイズを指定する必要があります。 ハードウェアが要求されたサイズを処理できない場合、またはシステムのメモリが不足している場合、ドライバーは別のサイズのバッファーを割り当てます。 たとえば、ドライバーは、メモリ ページよりも小さいバッファーを割り当てるか、バッファー サイズを次のサンプル ブロック全体に切り捨てます。 また、システムがメモリ不足で実行されている場合、ドライバーは、要求されたサイズよりも小さいバッファーを割り当てます。

要件

バージョン

Windows Vista 以降の Windows オペレーティング システムで使用できます。

ヘッダー

Ksmedia.h