PCAM_PROCESS_PACKET_ROUTINE función de devolución de llamada (usbcamdi.h)

[CamProcessUSBPacket no se admite y puede modificarse o no estar disponible en el futuro. En su lugar, use CamProcessUSBPacketEx. ]

La función de devolución de llamada CamProcessUSBPacket de una minidriver de cámara procesa un paquete USB.

Sintaxis

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
)
{...}

Parámetros

BusDeviceObject

Puntero al objeto de dispositivo del minidriver de la cámara creado por el concentrador USB.

DeviceContext

Puntero al contexto del dispositivo del minidriver de la cámara.

CurrentFrameContext

Puntero al contexto de marco del minidriver.

SyncPacket

Puntero a una estructura de USBD_ISO_PACKET_DESCRIPTOR desde la canalización de sincronización. Este valor es NULL si la interfaz tiene solo una canalización.

SyncBuffer

Puntero a los datos del SyncPacket.

DataPacket

Puntero a una estructura USBD_ISO_PACKET_DESCRIPTOR de la canalización de datos.

DataBuffer

Puntero a DataPacket.

FrameComplete

Puntero a un valor BOOLEAN que establece el minidriver de cámara para indicar si este es el primer paquete de datos para un nuevo fotograma de vídeo. Se establece en TRUE si se trata del primer paquete de datos para una nueva trama de vídeo.

NextFrameIsStill

Puntero a un valor BOOLEAN que el minidriver de cámara establece para indicar si el siguiente fotograma es un fotograma todavía o no. Este valor debe establecerse en FALSE si la secuencia de vídeo proporciona una imagen en directo o TRUE si el siguiente fotograma es una imagen fija o una secuencia de captura de imágenes.

Valor devuelto

Esta función de devolución de llamada devuelve un ULONG que indica el número de bytes que se deben copiar en el búfer (RawFrameBuffer o FrameBuffer).

Comentarios

Los minicontroladores de cámara que deben mantener la compatibilidad con versiones anteriores con el USBCAMD original deben usar la estructura USBCAMD_DEVICE_DATA y sus funciones de devolución de llamada asociadas (es decir, las funciones de devolución de llamada que no contienen el sufijo "Ex").

El minidriver debe completar esta función lo antes posible. El procesamiento de imágenes debe aplazarse a la función CamProcessRawVideoFrame .

Esta función es opcional.

Requisitos

Requisito Value
Plataforma de destino Escritorio
Encabezado usbcamdi.h (incluye Usbcamdi.h)
IRQL DISPATCH_LEVEL

Consulte también

CamProcessRawVideoFrame

CamProcessUSBPacketEx

USBD_ISO_PACKET_DESCRIPTOR