Compartilhar via


PCAM_PROCESS_PACKET_ROUTINE função de retorno de chamada (usbcamdi.h)

[Não há suporte para CamProcessUSBPacket e pode ser alterado ou indisponível no futuro. Em vez disso, use CamProcessUSBPacketEx. ]

A função de retorno de chamada CamProcessUSBPacket de um minidriver de câmera processa um pacote USB.

Sintaxe

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

Ponteiro para o objeto de dispositivo do minidriver da câmera criado pelo hub USB.

DeviceContext

Ponteiro para o contexto do dispositivo do minidriver da câmera.

CurrentFrameContext

Ponteiro para o contexto de quadro do minidriver.

SyncPacket

Ponteiro para uma estrutura USBD_ISO_PACKET_DESCRIPTOR do pipe de sincronização. Esse valor será NULL se a interface tiver apenas um pipe.

SyncBuffer

Ponteiro para os dados do SyncPacket.

DataPacket

Ponteiro para uma estrutura USBD_ISO_PACKET_DESCRIPTOR do pipe de dados.

DataBuffer

Ponteiro para DataPacket.

FrameComplete

Ponteiro para um valor BOOLEAN que o minidriver da câmera define para indicar se este é o primeiro pacote de dados para um novo quadro de vídeo. Defina como TRUE se este for o primeiro pacote de dados para um novo quadro de vídeo.

NextFrameIsStill

Ponteiro para um valor BOOLEAN que o minidriver da câmera define para indicar se o próximo quadro é um quadro ainda ou não. Esse valor deverá ser definido como FALSE se o fluxo de vídeo estiver fornecendo uma imagem ao vivo ou TRUE se o próximo quadro for uma imagem parada ou um fluxo de captura de imagem.

Retornar valor

Essa função de retorno de chamada retorna um ULONG que indica o número de bytes que devem ser copiados para o buffer (RawFrameBuffer ou FrameBuffer).

Comentários

Minidrivers de câmera que devem manter a compatibilidade com versões anteriores com o USBCAMD original devem usar a estrutura USBCAMD_DEVICE_DATA e suas funções de retorno de chamada associadas (ou seja, funções de retorno de chamada que não contêm o sufixo "Ex").

O minidriver deve concluir essa função o mais rápido possível. O processamento de imagens deve ser adiado para a função CamProcessRawVideoFrame .

Essa função é opcional.

Requisitos

Requisito Valor
Plataforma de Destino Área de Trabalho
Cabeçalho usbcamdi.h (inclua Usbcamdi.h)
IRQL DISPATCH_LEVEL

Confira também

CamProcessRawVideoFrame

CamProcessUSBPacketEx

USBD_ISO_PACKET_DESCRIPTOR