OpenCV Quicktime OS X lion issue
in
Contributed Library Questions
•
1 year ago
Hi, I'm trying to get my PS3 eye webcam working for a multi-touch project, and there seems to be a problem with recognizing the camera.
I have Macam 0.9.2 installed with quicktime 10. The camera works with macam.app and skype 5.2 ... but not with with Quicktime 10.1, nor with the Processing OpenCV 2.0 beta library.
I believe I've tracked the issue down to the following issue that was noted in skype 5.1:
https://jira.skype.com/browse/SCM-809
In short, the problem is that Macam 0.9.2 is reporting that the camera is already in use (even when it's not). The workaround is described below (taken from the above link):
Cheers,
Travis Hoffman
I have Macam 0.9.2 installed with quicktime 10. The camera works with macam.app and skype 5.2 ... but not with with Quicktime 10.1, nor with the Processing OpenCV 2.0 beta library.
I believe I've tracked the issue down to the following issue that was noted in skype 5.1:
https://jira.skype.com/browse/SCM-809
In short, the problem is that Macam 0.9.2 is reporting that the camera is already in use (even when it's not). The workaround is described below (taken from the above link):
We think the reason is Skype 5.0+ is using the QuicktimeX framework instead of the legacy quicktime framework. We have tested our component using the QuicktimeX framework and noticed that it's always return YES for the property "isInUseByAnotherApplication". According to Apple only Apple capture devices respond properly here:Ignoring the response should avoid this issue with any camera via Quicktime X in the future.
"The isInUseByAnotherApplication property only works for capture devices implemented using the new QuickTime X device driver model -- which is not currently public. So in other words, only Apple capture device implementations know about cross-process sharing and can answer the question properly." - Brad Ford, QuickTime Engineering
However, we had no problem opening the device by calling the "open" method and successfully grabbing images from our component when using QuicktimeX framework. These component calls mentioned earlier are executed by the QTKit framework whenever the [QTCaptureDevice inputDevicesWithMediaType:QTMediaTypeVideo] method is called to enumerate available devices. So the solution is to simply ignore whatever the property returns and all non-apple webcameras should be fully functional in Skype 5.1.
Cheers,
Travis Hoffman
1