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 值的指针。 如果视频流提供实时图像或 TRUE 下一帧是静止图像或图像捕获流,则此值应设置为 FALSE。
返回值
此回调函数返回一个 ULONG,指示应复制到缓冲区(RawFrameBuffer 或 FrameBuffer)的字节数。
言论
必须保持与原始 USBCAMD 的向后兼容性的相机微型驱动程序必须使用 USBCAMD_DEVICE_DATA 结构及其关联的回调函数(即不包含“Ex”后缀的回调函数)。
微型驱动程序应尽快完成此函数。 图像处理应延迟到 CamProcessRawVideoFrame 函数。
此函数是可选的。
要求
要求 | 价值 |
---|---|
目标平台 | 桌面 |
标头 | usbcamdi.h (包括 Usbcamdi.h) |
IRQL | DISPATCH_LEVEL |