Question

I am trying to grab video frames for further processing from two USB cameras under MAC OS X. I am using Qt 5.3 (the same applies to 5.2) and QtMultimedia library. I can connect to each of two cameras separately. But when I'm trying to use both at a time - an error is occurring for the second one: "Runtime camera error" - that's what I see in output.

The error occurs in AVFoundation plugin: https://qt.gitorious.org/qt/qtmultimedia/source/0e280e78e2fe0f0417ca284f6b0d7a536a970bfd%3asrc/plugins/avfoundation/camera/avfcamerasession.mm#L295

I have four OSes installed on a different hardware: MacOS 10.9, MacOS 10.8 and two MacOS 10.7 Strange, but two cameras work fine with 10.8 and one of the 10.7 machines. Another 10.7 machine and 10.9 machine do not allow to connect to the second camera with "Runtime camera error" message.

What can it be?

Was it helpful?

Solution

The solution was found. The second camera could not be connected due to limitation of USB bandwidth. The QCamera doesn't allow to choose resolution and always connects to the maximum available (HD as usually).

We could reproduce the same behavior by writing the native AVFoundation based classes on our own. Then, we reduced the cameras resolution to a smaller one (e.g. 320x240) and two-three cameras worked great.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top