Important: Please read the Qt Code of Conduct -

QT 5.4.0 Camera not working on BeagleBone Black

  • Hi all,

    I'm trying to get a camera application running on the BeagleBone Black with Qt 5.4.0 and gstreamer-0.10.36. I have done some troubleshooting and I have isolated the error down to Qt identifying the available cameras on the board.

    QList<QCameraInfo> cameras = QCameraInfo::availableCameras();
    foreach (const QCameraInfo &cameraInfo, cameras)
        qDebug() << cameraInfo.deviceName();

    When I run this I get the following error:

    beaglebone:~# ./demo-camera -platform linuxfb
    ** (demo-camera:279): CRITICAL **: gst_photography_set_focus_mode: assertion 'photo != NULL' failed

    Now I have validated that the camera works with gstreamer and I can setup a pipeline to the screen to see a good video feed:

    beaglebone:~# gst-launch-0.10 -e v4l2src ! video/x-raw-yuv,width=320,height=240 ! fbdevsink

    Anyone have any ideas on what could be causing this gst_photography_set_focus_mode error?


  • Hi
    last year I encountered the same problem.
    Can you verify on which /dev your camera is?
    I assume that it is /dev/video1.

    In the source of multimedia backends gstreamer you can see that the programmed it fix to /dev/video0.
    This is one of the deepest and darkest places of the qt code. :-)
    It is Nokia legacy code which finally was rewritten to support gstreamer 1.x with Qt5.5

    Maybe you can test it with Qt5.5 alpha and gstreamer 1.x

    Best regards