From: Xiaofan C. <xia...@gm...> - 2012-04-25 00:07:39
|
On Fri, Apr 20, 2012 at 1:10 AM, Tim Roberts <ti...@pr...> wrote: > streamh wrote: >> The code is as follow: >> static unsigned char* receiveImageData() >> { >> unsigned char* buffer = (unsigned char*)malloc(BUFFSIZE); >> memset(buffer,0,BUFFSIZE); >> int response = 0; >> static int n = 1; >> //printf("malloc %d memory\n",BUFFSIZE); >> response = libusb_bulk_transfer(handle,IN,buffer,BUFFSIZE, >> &transferred,2000); > > You have a USB video camera that delivers frames over a bulk pipe? Are > you sure? That's very unusual. Most video cameras use an isochronous > pipe. What camera is this? Do you have a VID and PID? > I believe there are quite some cheap ones do that. Maybe some of them are here. http://linuxtv.org/wiki/index.php/Webcam_Devices Even Microsoft's USBCAMD2 supports different configuration of device, including those use bulk pipe. http://msdn.microsoft.com/en-us/library/windows/hardware/ff568566(v=vs.85).aspx "Two bulk I/O pipes and an optional interrupt pipe. One bulk pipe streams video and the other bulk pipe transfers still images. The optional interrupt pipe signals notification of external trigger events to registered applications.". -- Xiaofan |