Condividi tramite


PCAM_PROCESS_RAW_FRAME_ROUTINE funzione di callback (usbcamdi.h)

[CamProcessRawVideoFrame non è supportato e potrebbe essere modificato o non disponibile in futuro. Usare invece CamProcessRawVideoFrameEx. ]

La funzione di callback CamProcessRawVideoFrame di una fotocamera decodifica un fotogramma video non elaborato.

Sintassi

PCAM_PROCESS_RAW_FRAME_ROUTINE PcamProcessRawFrameRoutine;

NTSTATUS PcamProcessRawFrameRoutine(
  PDEVICE_OBJECT BusDeviceObject,
  PVOID DeviceContext,
  PVOID FrameContext,
  PVOID FrameBuffer,
  ULONG FrameLength,
  PVOID RawFrameBuffer,
  ULONG RawFrameLength,
  ULONG NumberOfPackets,
  PULONG BytesReturned
)
{...}

Parametri

BusDeviceObject

Puntatore all'oggetto dispositivo del minidriver della fotocamera creato dall'hub USB.

DeviceContext

Puntatore al contesto di dispositivo del minidriver della fotocamera.

FrameContext

Puntatore al contesto del fotogramma del minidriver della fotocamera.

FrameBuffer

Puntatore al buffer che riceve il fotogramma video elaborato finale. Per altre informazioni sull'uso di questo parametro da PARTE di USBCAMD, vedere la sezione Osservazioni.

FrameLength

Specifica la lunghezza in byte del buffer dei fotogrammi (dalla richiesta di lettura originale).

RawFrameBuffer

Puntatore al buffer contenente i pacchetti USB ricevuti. Per altre informazioni sull'uso di questo parametro da PARTE di USBCAMD, vedere la sezione Osservazioni.

RawFrameLength

Specifica la lunghezza di RawFrameBuffer in byte.

NumberOfPackets

Specifica il numero di pacchetti USB ricevuti in RawFrameBuffer.

BytesReturned

Puntatore al numero di byte trasferiti. Il minidriver deve impostare questo valore su zero se rileva errori durante l'elaborazione, come descritto in Flusso di dati Using Isochronous Pipes. Per altre informazioni sull'uso di questo parametro da PARTE di USBCAMD, vedere la sezione Osservazioni.

Valore restituito

CamProcessRawVideoFrame restituisce STATUS_SUCCESS o un codice di errore appropriato.

Commenti

Prima che USBCAMD chiami il callback CamProcessRawVideoFrame del minidriver, imposta il primo DWORD nel buffer a cui punta il parametro FrameBuffer sul valore 0xdeadbeef. Dopo aver chiamato il callback USBCAMD di CamProcessRawVideoFrame del minidriver controlla il primo DWORD nel buffer a cui punta il parametro FrameBuffer per il valore 0xdeadbeef per determinare se CamProcessRawVideoFrame ha copiato correttamente il fotogramma video dal buffer a cui punta il parametro RawFrameBuffer nel buffer a cui punta il parametro FrameBuffer .

I minidriver della fotocamera che devono mantenere la compatibilità con le versioni precedenti con USBCAMD originale devono usare la struttura USBCAMD_DEVICE_DATA e le funzioni di callback associate, ovvero le funzioni di callback che non contengono il suffisso "Ex").

Questa funzione è facoltativa.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione usbcamdi.h (include Usbcamdi.h)
IRQL PASSIVE_LEVEL

Vedi anche

CamProcessRawVideoFrameEx