使用内核模式视频传输

内核模式视频传输功能由与 dxapi.lib 链接的视频捕获驱动程序访问,这使它以后可以调用 dxapi.sys。 仅当加载 DirectDraw 时,此功能才可用。

硬件解码器的视频捕获驱动程序 () 使用内核模式 DirectDraw 提供的 DxApi 函数来访问 DxApi 接口回调函数。 DxApi 函数是接受函数标识符、输入缓冲区和大小以及输出缓冲区和大小的单个入口点。 此函数的行为以及输入和输出缓冲区的大小和格式取决于指定的函数标识符。 DxApi 函数及其函数标识符在 ddkmapi.h 中定义。

DirectShow 或其他客户端通过 DirectDraw 访问视频微型端口驱动程序提供的 DxApi 接口回调函数。 DxApi 接口回调函数在 dxmini.h 中定义。

若要使用内核模式视频传输接口,视频捕获驱动程序必须首先接收其需要使用的每个 DirectDraw 对象、Surface 和 VPE 对象的用户模式句柄。 对于捕获和 MPEG 模型,这些句柄使用其现有 API 向下传递。 如果驱动程序需要此功能,但不是流类驱动程序,则用户模式组件可以使用 IDirectDrawKernelIDirectDrawSurfaceKernel COM 接口检索句柄,并将其向下传递给驱动程序。 COM 接口及其方法在 ddkernel.h 中标识。