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,指示应复制到缓冲区的字节数, (RawFrameBuffer 或 FrameBuffer) 。
注解
必须保持与原始 USBCAMD 向后兼容性的相机微型驱动程序必须使用 USBCAMD_DEVICE_DATA 结构及其关联的回调函数 (即不包含“Ex”后缀的回调函数) 。
微型驱动程序应尽快完成此功能。 图像处理应延迟到 CamProcessRawVideoFrame 函数。
此函数是可选的。
要求
要求 | 值 |
---|---|
目标平台 | 桌面 |
标头 | usbcamdi.h (包括 Usbcamdi.h) |
IRQL | DISPATCH_LEVEL |