Skip to main content
Visitor II
January 30, 2024
Solved

QT5 camera,no service found for - "org.qt-project.qt.camera"

  • January 30, 2024
  • 1 reply
  • 1545 views

Hi team,
I have an STM32MP157 board with the following git branch.
a. buildroot: remotes/origin/st/2023.02.6
b. buildroot-external-st: remotes/origin/st/2023.02.2

I got the error message "no service found for - "org.qt-project.qt.camera"" when I ran the QT5 example camera code.


The following are plugins:
# ls /usr/lib/qt/plugins/
audio imageformats qmltooling
bearer mediaservice scenegraph
egldeviceintegrations platforms video
generic playlistformats

 

Execute camera program:
export QT_DEBUG_PLUGINS=0
export QT_PLUGIN_PATH=/usr/lib/qt/plugins/
root@buildroot:/usr/lib/qt/examples/multimediawidgets/camera
# ./camera
defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.camera"

 

It looks like the library is loaded.
# ldd ./camera
linux-vdso.so.1 (0xbed92000)
libatomic.so.1 => /lib/libatomic.so.1 (0xb6f20000)
libQt5MultimediaWidgets.so.5 => /usr/lib/libQt5MultimediaWidgets.so.5 (0xb6ee0000)
libQt5Multimedia.so.5 => /usr/lib/libQt5Multimedia.so.5 (0xb6e10000)
libQt5Widgets.so.5 => /usr/lib/libQt5Widgets.so.5 (0xb6950000)
libQt5Gui.so.5 => /usr/lib/libQt5Gui.so.5 (0xb6590000)
libQt5Network.so.5 => /usr/lib/libQt5Network.so.5 (0xb6450000)
libQt5Core.so.5 => /usr/lib/libQt5Core.so.5 (0xb5fc0000)
libGLESv2.so.2 => /usr/lib/libGLESv2.so.2 (0xb5d9b000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb5c20000)
libm.so.6 => /lib/libm.so.6 (0xb5bc0000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb5b80000)
libc.so.6 => /lib/libc.so.6 (0xb5a20000)
/lib/ld-linux-armhf.so.3 (0xb6f84000)
libQt5OpenGL.so.5 => /usr/lib/libQt5OpenGL.so.5 (0xb59c0000)
libpng16.so.16 => /usr/lib/libpng16.so.16 (0xb5970000)
libz.so.1 => /usr/lib/libz.so.1 (0xb5930000)
libpcre2-16.so.0 => /usr/lib/libpcre2-16.so.0 (0xb58c0000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0xb5890000)
libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xb5760000)
libGAL.so => /usr/lib/libGAL.so (0xb5697000)
libVSC.so => /usr/lib/libVSC.so (0xb5388000)
libpcre.so.1 => /usr/lib/libpcre.so.1 (0xb5330000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb5300000)
librt.so.1 => /lib/librt.so.1 (0xb52d0000)

What checks do I need to perform?
Thanks.

    This topic has been closed for replies.
    Best answer by bbakram

    Hello,

     

    Looks like a QtGstreamer camera plugin was not found. Maybe launch with QT_DEBUG_PLUGINS=1 env var and look whether the plugin shows up.

     

    Method setCamera is obviously called with camera info which is not valid. It obviously expects the camera to be found from /dev/video0. You could check if it exists. If your camera is something like video1 or video2, you could rename it to video0 and try again.

     

    You can also check your hw camera using below command (replace video0 with video1 if it doesn't work):

    sudo gst-launch-1.0 v4l2src device=/dev/video0 ! 'video/x-raw,format=UYVY,width=800,height=480' ! glimagesink

     

    You would need also to check that you have libqt5multimedia5-plugins installed in your buildroot.

     

    Regards,

    Akram

    1 reply

    bbakramAnswer
    ST Employee
    January 31, 2024

    Hello,

     

    Looks like a QtGstreamer camera plugin was not found. Maybe launch with QT_DEBUG_PLUGINS=1 env var and look whether the plugin shows up.

     

    Method setCamera is obviously called with camera info which is not valid. It obviously expects the camera to be found from /dev/video0. You could check if it exists. If your camera is something like video1 or video2, you could rename it to video0 and try again.

     

    You can also check your hw camera using below command (replace video0 with video1 if it doesn't work):

    sudo gst-launch-1.0 v4l2src device=/dev/video0 ! 'video/x-raw,format=UYVY,width=800,height=480' ! glimagesink

     

    You would need also to check that you have libqt5multimedia5-plugins installed in your buildroot.

     

    Regards,

    Akram