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