PCAM_PROCESS_RAW_FRAME_ROUTINE fungsi panggilan balik (usbcamdi.h)
[CamProcessRawVideoFrame tidak didukung dan dapat diubah atau tidak tersedia di masa mendatang. Sebagai gantinya, gunakan CamProcessRawVideoFrameEx. ]
Fungsi panggilan balik CamProcessRawVideoFrame kamera minidriver mendekode bingkai video mentah.
Sintaks
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
)
{...}
Parameter
BusDeviceObject
Arahkan ke objek perangkat minidriver kamera yang dibuat oleh hub USB.
DeviceContext
Arahkan ke konteks perangkat minidriver kamera.
FrameContext
Arahkan ke konteks bingkai minidriver kamera.
FrameBuffer
Arahkan ke buffer yang menerima bingkai video yang diproses akhir. Lihat bagian Keterangan untuk informasi selengkapnya tentang cara USBCAMD menggunakan parameter ini.
FrameLength
Menentukan panjang buffer bingkai (dari permintaan baca asli) dalam byte.
RawFrameBuffer
Arahkan ke buffer yang berisi paket USB yang diterima. Lihat bagian Keterangan untuk informasi selengkapnya tentang cara USBCAMD menggunakan parameter ini.
RawFrameLength
Menentukan panjang RawFrameBuffer dalam byte.
NumberOfPackets
Menentukan jumlah paket USB yang diterima ke RawFrameBuffer.
BytesReturned
Arahkan ke jumlah byte yang ditransfer. Minidriver harus mengatur ini ke nol jika mengalami kesalahan selama pemrosesan, seperti yang dijelaskan dalam Aliran Data Menggunakan Pipa Isochronous. Lihat bagian Keterangan untuk informasi selengkapnya tentang cara USBCAMD menggunakan parameter ini.
Nilai kembali
CamProcessRawVideoFrame mengembalikan STATUS_SUCCESS atau kode kesalahan yang sesuai.
Keterangan
Sebelum USBCAMD memanggil panggilan balik CamProcessRawVideoFrame minidriver, ia mengatur DWORD pertama dalam buffer yang diarahkan oleh parameter FrameBuffer ke nilai 0xdeadbeef. Setelah memanggil panggilan balik CamProcessRawVideoFrame minidriver USBCAMD memeriksa DWORD pertama dalam buffer yang ditujukkan oleh parameter FrameBuffer untuk nilai yang 0xdeadbeef tentukan jika CamProcessRawVideoFrame berhasil menyalin bingkai video dari buffer yang diarahkan oleh parameter RawFrameBuffer ke dalam buffer yang diarahkan oleh parameter FrameBuffer .
Minidriver kamera yang harus mempertahankan kompatibilitas mundur dengan USBCAMD asli harus menggunakan struktur USBCAMD_DEVICE_DATA dan fungsi panggilan balik terkait (yaitu, fungsi panggilan balik yang tidak berisi akhiran "Ex").
Fungsi ini bersifat opsional.
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Desktop |
Header | usbcamdi.h (termasuk Usbcamdi.h) |
IRQL | PASSIVE_LEVEL |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk