共用方式為


WavePci 埠驅動程式

重要 不再建議使用 WavePci,請改用 WaverRT。

WavePci 埠驅動程式會管理音訊裝置的波形資料流播放或錄製,該裝置能執行實體記憶體任意位置的分散/綜合 DMA 傳輸。 使用分散/收集 DMA,裝置可以在由一系列映射組成的緩衝區中處理音訊資料。 每個映射都是物理上連續的記憶體區塊,但連續的映射不一定彼此相鄰。 WavePci相容裝置是音訊介面卡上的硬體功能。 通常,適配器是主機板上整合晶片組的一部分,或安裝在插入主機板上 PCI 插槽的音訊卡上。 配接器驅動程式會提供對應的 WavePci 迷你埠驅動程式, 其系結至 WavePci 埠驅動程式物件,以形成可擷取或轉譯波浪資料流程的 波形篩選 器。

WavePci 埠驅動程式會將 IPortWavePci 介面公開給迷你埠驅動程式。 IPortWavePci 會繼承基底介面 IPort 中的方法。 此外,IPortWavePci 還提供了以下方法:

IPortWavePci::NewMasterDmaChannel

建立新的主要 DMA 通道物件。 IPortWavePci::通知

通知埠驅動程式,DMA 控制器已前進至音訊資料流程中的新位置。 WavePci 埠驅動程式還會將 IPortWavePciStream 介面公開給每個小型端口驅動程式的資料流物件。 IPortWavePciStream 會繼承基底介面 IUnknown 中的方法。 IPortWavePciStream 提供下列其他方法:

IPortWavePciStream::GetMapping

從埠驅動程式取得下一個映射。 IPortWavePciStream::ReleaseMapping

釋放先前透過 GetMapping 函數取得的對應。 IPortWavePciStream::TerminatePacket

終止 I/O 封包,即使它只部分填滿了擷取資料。 I/O 封包是音訊緩衝記憶體的一部分,其中包含與特定映射 IRP 相關聯的所有映射。

WavePci 埠和迷你埠物件會透過其各自的 IPortWavePciIMiniportWavePci 介面彼此通訊。 此外,WavePci 端口和迷你埠資料流程物件會透過其各自的 IPortWavePciStreamIMiniportWavePciStream 介面彼此通訊。