HDAUDIO_BUS_INTERFACE_BDL 結構 (hdaudio.h)

HDAUDIO_BUS_INTERFACE_BDL 結構會指定用戶端在 HD 音訊 DDI HDAUDIO_BUS_INTERFACE_BDL 版本中呼叫例程所需的資訊。 這個 DDI 的另一個變體是由 HDAUDIO_BUS_INTERFACE 結構所指定。

語法

typedef struct _HDAUDIO_BUS_INTERFACE_BDL {
  USHORT                          Size;
  USHORT                          Version;
  PVOID                           Context;
  PINTERFACE_REFERENCE            InterfaceReference;
  PINTERFACE_DEREFERENCE          InterfaceDereference;
  PTRANSFER_CODEC_VERBS           TransferCodecVerbs;
  PALLOCATE_CAPTURE_DMA_ENGINE    AllocateCaptureDmaEngine;
  PALLOCATE_RENDER_DMA_ENGINE     AllocateRenderDmaEngine;
  PCHANGE_BANDWIDTH_ALLOCATION    ChangeBandwidthAllocation;
  PALLOCATE_CONTIGUOUS_DMA_BUFFER AllocateContiguousDmaBuffer;
  PSETUP_DMA_ENGINE_WITH_BDL      SetupDmaEngineWithBdl;
  PFREE_CONTIGUOUS_DMA_BUFFER     FreeContiguousDmaBuffer;
  PFREE_DMA_ENGINE                FreeDmaEngine;
  PSET_DMA_ENGINE_STATE           SetDmaEngineState;
  PGET_WALL_CLOCK_REGISTER        GetWallClockRegister;
  PGET_LINK_POSITION_REGISTER     GetLinkPositionRegister;
  PREGISTER_EVENT_CALLBACK        RegisterEventCallback;
  PUNREGISTER_EVENT_CALLBACK      UnregisterEventCallback;
  PGET_DEVICE_INFORMATION         GetDeviceInformation;
  PGET_RESOURCE_INFORMATION       GetResourceInformation;
} HDAUDIO_BUS_INTERFACE_BDL, *PHDAUDIO_BUS_INTERFACE_BDL;

成員

Size

指定 HDAUDIO_BUS_INTERFACE_BDL 結構位元組的大小。

Version

指定擴充 HD 音訊 DDI 的版本。

Context

介面特定內容資訊的指標。

InterfaceReference

驅動程式提供的例程指標,此例程會遞增介面的參考計數。

InterfaceDereference

驅動程式提供的例程指標,該例程會遞減介面的參考計數。

TransferCodecVerbs

TransferCodecVerbs 例程的函式指標。

AllocateCaptureDmaEngine

AllocateCaptureDmaEngine 例程的函式指標。

AllocateRenderDmaEngine

AllocateRenderDmaEngine 例程的函式指標。

ChangeBandwidthAllocation

ChangeBandwidthAllocation 例程的函式指標。

AllocateContiguousDmaBuffer

AllocateContiguousDmaBuffer 例程的函式指標。

SetupDmaEngineWithBdl

SetupDmaEngineWithBdl 例程的函式指標。

FreeContiguousDmaBuffer

FreeContiguousDmaBuffer 例程的函式指標。

FreeDmaEngine

FreeDmaEngine 例程的函式指標。

SetDmaEngineState

SetDmaEngineState 例程的函式指標。

GetWallClockRegister

GetWallClockRegister 例程的函式指標。

GetLinkPositionRegister

GetLinkPositionRegister 例程的函式指標。

RegisterEventCallback

RegisterEventCallback 例程的函式指標。

UnregisterEventCallback

UnregisterEventCallback 例程的函式指標。

GetDeviceInformation

GetDeviceInformation 例程的函式指標。

GetResourceInformation

GetResourceInformation 例程的函式指標。

備註

IRP_MN_QUERY_INTERFACE IOCTL 會使用此結構,將介面資訊提供給查詢 HD 音訊 DDI 之 HD 音訊總線驅動程式的用戶端。 這個 DDI 的另一個變體是由 HDAUDIO_BUS_INTERFACE 結構所指定。

HDAUDIO_BUS_INTERFACE_BDL和HDAUDIO_BUS_INTERFACE結構類似,但有下列差異:

  • HDAUDIO_BUS_INTERFACE_BDL有三個成員 AllocateContiguousDmaBufferSetupDmaEngineWithBdlFreeContiguousDmaBuffer,這些成員不存在於HDAUDIO_BUS_INTERFACE中。
  • HDAUDIO_BUS_INTERFACE有兩個成員 AllocateDmaBufferFreeDmaBuffer,這些成員不存在於HDAUDIO_BUS_INTERFACE_BDL中。
如需詳細資訊,請參閱 HD 音訊 DDI 版本之間的差異

前五個成員的名稱和定義 (SizeVersionContextInterfaceReference 和 InterfaceDereference) INTERFACE 結構相同。 其餘成員是擴充 HD 音訊 DDI 的特定成員,並指定 DDI 中例程的函式指標。 如需詳細資訊,請參閱 取得HDAUDIO_BUS_INTERFACE_BDL DDI 物件

規格需求

需求
標頭 hdaudio.h (包含 Hdaudio.h)

另請參閱

AllocateCaptureDmaEngine

AllocateContiguousDmaBuffer

AllocateRenderDmaEngine

ChangeBandwidthAllocation

FreeContiguousDmaBuffer

FreeDmaEngine

GetLinkPositionRegister

GetResourceInformation

GetWallClockRegister

HDAUDIO_BUS_INTERFACE

RegisterEventCallback

SetDmaEngineState

SetupDmaEngineWithBdl

TransferCodecVerbs

UnregisterEventCallback