IPortWaveRTStream インターフェイス (portcls.h)

インターフェイスは IPortWaveRTStream Windows Vista 以降のオペレーティング システムでサポートされており、 WaveRT ミニポート ドライバーで使用するためのヘルパー メソッドを提供するストリーム固有のインターフェイスです。 ミニポート ドライバーは、オーディオ データの循環バッファーの割り当てとマッピングを実行するメソッドを呼び出します。 WaveRT ポート ドライバーは、このインターフェイスを実装します。 ポート ドライバーは、作成する IPortWaveRTStream 各ミニポート ドライバー ストリーム オブジェクトへのオブジェクト参照を提供します。 IPortWaveRTStreamIUnknown インターフェイスから継承されます。

オーディオ ストリームは、WaveRT フィルターの各ピン インスタンスに関連付けられます。 アダプター ドライバーは、WaveRT ポートとミニポート ドライバーをバインドすることによってフィルターを形成します。 ポート ドライバーが IMiniportWaveRT::NewStream メソッドを呼び出してミニポート ドライバー ストリーム オブジェクトを作成すると、ポート ドライバーはメソッドの呼び出しパラメーターの 1 つとして参照を渡 IPortWaveRTStream します。

循環バッファーに必要なメモリを割り当てるには、ミニポート ドライバーは、インターフェイスの AllocatePagesForMdl メソッドまたは AllocateContiguousPagesForMdl メソッドを IPortWaveRTStream 呼び出す必要があります。 インターフェイスには、割り当てられたページをマップしたり、マップを解除したり、解放したりできる追加のメソッドが用意されています。

インターフェイスの IPortWaveRTStream メソッドは、メモリ記述子リスト (MDL) の割り当てとマッピングを実行する MmXxx カーネル関数に基づいており、これに似ています。 ただし、MmXxx 関数は メソッドの IPortWaveRTStream 代わりに使用できません。

継承

IPortWaveRTStream インターフェイスは、IUnknown インターフェイスから継承されます。 IPortWaveRTStream には、次の種類のメンバーもあります。

メソッド

IPortWaveRTStream インターフェイスには、これらのメソッドがあります。

 
IPortWaveRTStream::AllocateContiguousPagesForMdl

AllocateContiguousPagesForMdl メソッドは、連続する非ページの物理メモリ ページのリストを割り当て、それらを記述するメモリ記述子リスト (MDL) へのポインターを返します。
IPortWaveRTStream::AllocatePagesForMdl

AllocatePagesForMdl メソッドは、非ページ物理メモリ ページのリストを割り当て、それらを記述するメモリ記述子リスト (MDL) へのポインターを返します。
IPortWaveRTStream::FreePagesFromMdl

FreePagesFromMdl メソッドは、メモリ記述子リスト (MDL) を解放します。
IPortWaveRTStream::GetPhysicalPageAddress

GetPhysicalPageAddress メソッドは、メモリ記述子リスト (MDL) 内のページの物理アドレスを返します。
IPortWaveRTStream::GetPhysicalPagesCount

GetPhysicalPagesCount メソッドは、メモリ記述子リスト (MDL) 内の物理ページの数を返します。
IPortWaveRTStream::MapAllocatedPages

MapAllocatedPages メソッドは、以前に割り当てられた物理ページの一覧を、カーネル モードからアクセスできる仮想メモリの連続したブロックにマップします。
IPortWaveRTStream::UnmapAllocatedPages

UnmapAllocatedPages メソッドは、マッピングを解放します。

要件

要件
対象プラットフォーム Windows
ヘッダー portcls.h