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