функция обратного вызова 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 |