PCAM_PROCESS_PACKET_ROUTINE回调函数 (usbcamdi.h)

[CamProcessUSBPacket 不受支持,将来可能会更改或不可用。 请改用 CamProcessUSBPacketEx。 ]

相机微型驱动程序的 CamProcessUSBPacket 回调函数处理 USB 数据包。

语法

PCAM_PROCESS_PACKET_ROUTINE PcamProcessPacketRoutine;

ULONG PcamProcessPacketRoutine(
  PDEVICE_OBJECT BusDeviceObject,
  PVOID DeviceContext,
  PVOID CurrentFrameContext,
  PUSBD_ISO_PACKET_DESCRIPTOR SyncPacket,
  PVOID SyncBuffer,
  PUSBD_ISO_PACKET_DESCRIPTOR DataPacket,
  PVOID DataBuffer,
  PBOOLEAN FrameComplete,
  PBOOLEAN NextFrameIsStill
)
{...}

参数

BusDeviceObject

指向由 USB 集线器创建的相机微型驱动程序的设备对象的指针。

DeviceContext

指向相机微型驱动程序的设备上下文的指针。

CurrentFrameContext

指向微型驱动程序的框架上下文的指针。

SyncPacket

指向同步管道 中USBD_ISO_PACKET_DESCRIPTOR 结构的指针。 如果接口只有一个管道,则此值为 NULL

SyncBuffer

指向 SyncPacket 数据的指针。

DataPacket

指向数据管道 中USBD_ISO_PACKET_DESCRIPTOR 结构的指针。

DataBuffer

指向 DataPacket 的指针。

FrameComplete

指向相机微型驱动程序设置的 BOOLEAN 值的指针,指示这是否是新视频帧的第一个数据包。 如果这是新视频帧的第一个数据包,则设置为 TRUE

NextFrameIsStill

指向相机微型驱动程序设置为指示下一帧是否为静止帧的 BOOLEAN 值的指针。 如果视频流提供实时图像,应将此值设置为 FALSE ;如果下一帧是静态图像或图像捕获流,则此值应设置为 TRUE

返回值

此回调函数返回一个 ULONG,指示应复制到缓冲区的字节数, (RawFrameBufferFrameBuffer)

注解

必须保持与原始 USBCAMD 向后兼容性的相机微型驱动程序必须使用 USBCAMD_DEVICE_DATA 结构及其关联的回调函数 (即不包含“Ex”后缀的回调函数) 。

微型驱动程序应尽快完成此功能。 图像处理应延迟到 CamProcessRawVideoFrame 函数。

此函数是可选的。

要求

要求
目标平台 桌面
标头 usbcamdi.h (包括 Usbcamdi.h)
IRQL DISPATCH_LEVEL

另请参阅

CamProcessRawVideoFrame

CamProcessUSBPacketEx

USBD_ISO_PACKET_DESCRIPTOR