On Nov 14, 2006, at 5:16 PM, Harald wrote:
> I'm not sure what the problem might be.
> Your camera uses the MySPCA500Driver[.h.m]
> The USB communication is probably fine, since it says
> "Playing"; if there were some prblems then this would change.

I found some time to get Xcode up and running and get some debugging  
information out of macam. Besides a lot of warnings about deprecated  
methods / functions the project built successfully.

The debug up to plugging the camera in looks like this:

QT call to dummy sgpn:kComponentOpenSelect
QT call resulted in 0
QT call to dummy sgpn:kComponentRegisterSelect
QT call resulted in 0
QT call to dummy sgpn:kComponentCloseSelect
QT call resulted in 0
USB Interface ID = 220
2006-11-15 14:37:35.720 macam[1065] couldn't get TOC - device is  
probably hung

This error gets printed on line 892 of "MySPCA500Driver.m".

After this, it becomes a mixed bag of results. The first two times I  
tried it my extra debug statement on line 710 got executed printing a  
simple "Test" message every second or so.

When starting macam for the third time and the tries after that  
(without changing the code) I get random errors when pressing "Play":
isocComplete: Error: kIOUSBNotSent2Err - Transaction not sent
or
StartNextIsochRead-ReadIsochPipeAsync: Error: kIOReturnNoBandwidth -  
bus bandwidth would be exceeded

I think these are the result of macam not shutting down properly (it  
hangs when choosing Quit).

One thing I did notice is that the red light on the camera doesn't  
light when in "Playing" mode which could indicate the camera is not  
in the correct state. I tried pressing the shutter button and  
immediately afterwards the red light goes on, but the capture screen  
stays grey or black.

After rebooting and replacing my debug "Test" message with the length  
of the buffer ("%ld\n", currBuffer.numBytes) I get the number 460907  
which gets printed every second. It doesn't seem to change.

I wrote some code to write each buffer to disk and all I got where  
zero-filled files. I'm pretty sure my simple dumping code is correct:
                                        FILE* fp = fopen(filename, "wb");
                                        for(i=0; i<currBuffer.numBytes; i++) {
                                                fputc(currBuffer.buffer[i], fp);
                                        }
                                        fclose(fp);

All in all it seems the problem is not (yet) in the image decoding  
part since all that gets are zero filled buffers. Do you have any  
ideas on where to start looking now? Thanks a lot in advance.

Sincerely,

Frank

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
webcam-osx-devs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/webcam-osx-devs

Reply via email to