跳到內容
  • 版面
  • 最新
  • 標籤
  • 熱門
  • 使用者
  • 群組
  • 搜尋
  • Get Qt Extensions
  • Unsolved
Collapse
品牌標誌
  1. 首頁
  2. Qt Development
  3. Mobile and Embedded
  4. QMediaPlayer ERROR defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer
Forum Updated to NodeBB v4.3 + New Features

QMediaPlayer ERROR defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer

已排程 已置頂 已鎖定 已移動 Unsolved Mobile and Embedded
23 貼文 3 Posters 6.3k 瀏覽 1 Watching
  • 從舊到新
  • 從新到舊
  • 最多點贊
回覆
  • 在新貼文中回覆
登入後回覆
此主題已被刪除。只有擁有主題管理權限的使用者可以查看。
  • L 離線
    L 離線
    Luisa
    寫於 最後由 編輯
    #1

    Hi @all,

    I have an application create by QT (Qt 5.6.2 version).
    I cross compile this application for a Zynq MPSOC.

    I use this in a filesystem create by Petalinux 2018.2.

    When I invoke QMediaPlayer class I have the "defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer" error and video doest'n work.

    In my rootfs_config I have enabled gstreamer qt-multimedia... and so on...

    But it doesn't work.

    Someone have the list of package needs to watch the video?

    Where am I wrong?

    Thanks for your help

    Luisa

    1 條回覆 最後回覆
    0
    • L 離線
      L 離線
      Luisa
      寫於 最後由 編輯
      #2

      setting export QT_DEBUG_PLUGINS=1
      I have the message

      QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/qt5/plugins/mediaservice" ...
      QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5/plugins/mediaservice/libqtmedia_audioengine.so"
      Found metadata in lib /usr/lib/qt5/plugins/mediaservice/libqtmedia_audioengine.so, metadata=
      {
      "IID": "org.qt-project.qt.mediaserviceproviderfactory/5.0",
      "MetaData": {
      "Keys": [
      "audiocapture"
      ],
      "Services": [
      "org.qt-project.qt.audiosource"
      ]
      },
      "className": "AudioCaptureServicePlugin",
      "debug": false,
      "version": 329988
      }

      Got keys from plugin meta data ("audiocapture")
      QFactoryLoader::QFactoryLoader() checking directory path "/usr/bin/mediaservice" ...
      defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer"
      ...

      In /usr/lib/qt5/plugins/mediaservice/ I have only this file

      libqtmedia_audioengine.so

      It's correct?

      I think no...

      1 條回覆 最後回覆
      0
      • SGaistS 離線
        SGaistS 離線
        SGaist
        Lifetime Qt Champion
        寫於 最後由 編輯
        #3

        Hi,

        Did you cross-compile your Qt version yourself ?

        Interested in AI ? www.idiap.ch
        Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

        L 1 條回覆 最後回覆
        0
        • SGaistS SGaist

          Hi,

          Did you cross-compile your Qt version yourself ?

          L 離線
          L 離線
          Luisa
          寫於 最後由 編輯
          #4

          @SGaist

          Yes I configure my QTCreator to cross compile for Zynq. My app work well but not for video.

          At a later time I would like to compile my application whit petalinux 2018.2 but I haven't found updated instructions for the version I use. But this is another problem..

          Thanks for your interest

          Luisa

          PS If you think you could help me compile from petalinux can you tell me the instructions to do it?

          1 條回覆 最後回覆
          0
          • SGaistS 離線
            SGaistS 離線
            SGaist
            Lifetime Qt Champion
            寫於 最後由 編輯
            #5

            Then do you have the GStreamer development libraries for your target ?

            Interested in AI ? www.idiap.ch
            Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

            1 條回覆 最後回覆
            0
            • L 離線
              L 離線
              Luisa
              寫於 最後由 編輯
              #6

              sorry for my absence ...
              in petalinux what is the exact package to add?

              1 條回覆 最後回覆
              0
              • SGaistS 離線
                SGaistS 離線
                SGaist
                Lifetime Qt Champion
                寫於 最後由 編輯
                #7

                What is petalinux ?

                Interested in AI ? www.idiap.ch
                Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                1 條回覆 最後回覆
                0
                • L 離線
                  L 離線
                  Luisa
                  寫於 最後由 編輯
                  #8

                  Sorry.
                  Petalinux is a distribution to creteate kernel boot and so on...

                  This is ma config file. Can you check if the 'GStreamer development libraries' is present?

                  Thank you very much. I am going through hard times.

                  Luisa

                  gst-player

                  CONFIG_gst-player=y
                  CONFIG_gst-player-dev=y

                  CONFIG_gst-player-dbg is not set

                  gst-plugins-base

                  CONFIG_gst-plugins-base=y
                  CONFIG_gst-plugins-base-meta=y

                  CONFIG_gst-plugins-base-dbg is not set

                  CONFIG_gst-plugins-base-dev=y
                  CONFIG_gst-plugins-base-apps=y

                  gst-plugins-good

                  CONFIG_gst-plugins-good=y
                  CONFIG_gst-plugins-good-dev=y

                  CONFIG_gst-plugins-good-dbg is not set

                  CONFIG_gst-plugins-good-meta=y

                  gstreamer1.0-meta-base

                  CONFIG_gstreamer1.0-meta-base=y
                  CONFIG_gstreamer1.0-meta-video=y

                  CONFIG_gstreamer1.0-meta-video-dbg is not set

                  CONFIG_gstreamer1.0-meta-debug-dev=y
                  CONFIG_gstreamer1.0-meta-x11-base-dev=y

                  CONFIG_gstreamer1.0-meta-audio-dbg is not set

                  CONFIG_gstreamer1.0-meta-audio=y
                  CONFIG_gstreamer1.0-meta-x11-base=y
                  CONFIG_gstreamer1.0-meta-video-dev=y

                  CONFIG_gstreamer1.0-meta-x11-base-dbg is not set

                  CONFIG_gstreamer1.0-meta-base-dev=y

                  CONFIG_gstreamer1.0-meta-base-dbg is not set

                  CONFIG_gstreamer1.0-meta-debug=y
                  CONFIG_gstreamer1.0-meta-audio-dev=y

                  CONFIG_gstreamer1.0-meta-debug-dbg is not set

                  gstreamer1.0-plugins-bad

                  CONFIG_gstreamer1.0-plugins-bad=y
                  CONFIG_gstreamer1.0-plugins-bad-meta=y
                  CONFIG_gstreamer1.0-plugins-bad-dev=y

                  CONFIG_gstreamer1.0-plugins-bad-dbg is not set

                  gstreamer1.0-plugins-base

                  CONFIG_gstreamer1.0-plugins-base=y
                  CONFIG_gstreamer1.0-plugins-base-apps=y
                  CONFIG_gstreamer1.0-plugins-base-dev=y

                  CONFIG_gstreamer1.0-plugins-base-dbg is not set

                  CONFIG_gstreamer1.0-plugins-base-meta=y

                  gstreamer1.0-plugins-good

                  CONFIG_gstreamer1.0-plugins-good=y
                  CONFIG_gstreamer1.0-plugins-good-dev=y

                  CONFIG_gstreamer1.0-plugins-good-dbg is not set

                  CONFIG_gstreamer1.0-plugins-good-meta=y


                  gstreamer

                  CONFIG_gstreamer=y
                  CONFIG_gstreamer-dbg=y
                  CONFIG_gstreamer-dev=y

                  gstreamer1.0

                  CONFIG_gstreamer1.0=y
                  CONFIG_gstreamer1.0-dev=y
                  CONFIG_gstreamer1.0-bash-completion=y
                  CONFIG_gstreamer1.0-dbg=y

                  gstreamer1.0-omx

                  CONFIG_gstreamer1.0-omx=y
                  CONFIG_gstreamer1.0-omx-dbg=y
                  CONFIG_gstreamer1.0-omx-dev=y

                  gstreamer1.0-rtsp-server

                  CONFIG_gstreamer1.0-rtsp-server=y
                  CONFIG_gstreamer1.0-rtsp-server-dbg=y
                  CONFIG_gstreamer1.0-rtsp-server-dev=y
                  CONFIG_gstreamer1.0-rtsp-server-meta=y


                  packagegroup-petalinux-gstreamer

                  CONFIG_packagegroup-petalinux-gstreamer=y
                  CONFIG_packagegroup-petalinux-gstreamer-dev=y

                  CONFIG_packagegroup-petalinux-gstreamer-dbg is not set


                  1 條回覆 最後回覆
                  0
                  • SGaistS 離線
                    SGaistS 離線
                    SGaist
                    Lifetime Qt Champion
                    寫於 最後由 編輯
                    #9

                    You should check the Qt configuration logs. There might be something that is not found thus your issue of missing plugins.

                    Interested in AI ? www.idiap.ch
                    Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                    L 1 條回覆 最後回覆
                    0
                    • SGaistS SGaist

                      You should check the Qt configuration logs. There might be something that is not found thus your issue of missing plugins.

                      L 離線
                      L 離線
                      Luisa
                      寫於 最後由 編輯
                      #10

                      Where can I find it?

                      1 條回覆 最後回覆
                      0
                      • SGaistS 離線
                        SGaistS 離線
                        SGaist
                        Lifetime Qt Champion
                        寫於 最後由 編輯
                        #11

                        As silly as it may sound, in the folder where Qt was built using your system.

                        Interested in AI ? www.idiap.ch
                        Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                        1 條回覆 最後回覆
                        0
                        • L 離線
                          L 離線
                          Luisa
                          寫於 最後由 編輯
                          #12

                          Found it

                          cat ./build/tmp/work/aarch64-xilinx-linux/qtmultimedia/5.9.4+gitAUTOINC+d83467be15-r0/temp/log.do_configure.1884

                          DEBUG: Executing shell function qmake5_base_preconfigure
                          DEBUG: Shell function qmake5_base_preconfigure finished
                          DEBUG: Executing shell function do_configure
                          NOTE: qmake prevar substitution: ' '
                          NOTE: qmake configure substitution: ' -alsa -no-feature-openal -pulseaudio -no-gstreamer'
                          Info: creating stash file /home/posani/PetaLinux2018.2/NOX/build/tmp/work/aarch64-xilinx-linux/qtmultimedia/5.9.4+gitAUTOINC+d83467be15-r0/build/.qmake.stash
                          Info: creating cache file /home/posani/PetaLinux2018.2/NOX/build/tmp/work/aarch64-xilinx-linux/qtmultimedia/5.9.4+gitAUTOINC+d83467be15-r0/build/.qmake.cache

                          Running configuration tests...
                          Checking for ALSA... yes
                          Checking for Vivante GPU... no
                          Checking for Video for Linux... yes
                          Checking for PulseAudio >= 0.9.10... yes
                          Checking for libresourceqt5... no
                          Done running configuration tests.

                          Configure summary:

                          Qt Multimedia:
                          ALSA ................................... yes
                          GStreamer 1.0 .......................... no
                          GStreamer 0.10 ......................... no
                          Video for Linux ........................ yes
                          OpenAL ................................. no
                          PulseAudio ............................. yes
                          Resource Policy (libresourceqt5) ....... no
                          Windows Audio Services ................. no
                          DirectShow ............................. no
                          Windows Media Foundation ............... no

                          Qt is now configured for building. Just run 'make'.
                          Once everything is built, you must run 'make install'.
                          Qt will be installed into '/home/posani/PetaLinux2018.2/NOX/build/tmp/work/aarch64-xilinx-linux/qtmultimedia/5.9.4+gitAUTOINC+d83467be15-r0/recipe-sysroot/usr'.

                          Prior to reconfiguration, make sure you remove any leftovers from
                          the previous build.

                          DEBUG: Shell function do_configure finished
                          DEBUG: Executing python function do_qa_configure
                          DEBUG: Python function do_qa_configure finished
                          DEBUG: Executing shell function qmake5_base_postconfigure
                          DEBUG: Shell function qmake5_base_postconfigure finished

                          In effect my qtmultimedia doesn't see gstreamer..

                          where did I go wrong?

                          1 條回覆 最後回覆
                          0
                          • SGaistS 離線
                            SGaistS 離線
                            SGaist
                            Lifetime Qt Champion
                            寫於 最後由 編輯
                            #13

                            Check the test build logs to see what fails with the QtMultimedia module.

                            If you add the -v option to your configure call you should see it on the console already.

                            Interested in AI ? www.idiap.ch
                            Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                            1 條回覆 最後回覆
                            0
                            • L 離線
                              L 離線
                              Luisa
                              寫於 最後由 編輯
                              #14

                              QT multimedia did not configure gstreamer among its packages.
                              I have modified the configuration file adding

                              @PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)}
                              ${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio', '', d)}
                              gstreamer010 " @

                              and now it no longer gives me the error.
                              If I want to play h264 files instead it gives me the error:

                              Warning: "No decoder available for type 'video/x-h264, stream-format=(string)avc, width=(int)640, height=(int)512, parsed=(boolean)true, align....

                              and the video doesn't start...

                              I'm discouraged..

                              I looked for solutions to my problem but nothing seems to work.
                              Grazie per il tuo aiuto

                              Luisa

                              1 條回覆 最後回覆
                              0
                              • SGaistS 離線
                                SGaistS 離線
                                SGaist
                                Lifetime Qt Champion
                                寫於 最後由 SGaist 編輯
                                #15

                                Did you install the gstreamer plugins packages ?

                                Interested in AI ? www.idiap.ch
                                Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                1 條回覆 最後回覆
                                0
                                • L 離線
                                  L 離線
                                  Luisa
                                  寫於 最後由 編輯
                                  #16

                                  Yes I install all gstreamer plugins packages.

                                  I try to install gstreamer 1.0 plugins packages.

                                  Unfortunately the situation does not change.
                                  I also installed x264.
                                  Same story...

                                  What could I try to do?

                                  1 條回覆 最後回覆
                                  0
                                  • SGaistS 離線
                                    SGaistS 離線
                                    SGaist
                                    Lifetime Qt Champion
                                    寫於 最後由 編輯
                                    #17

                                    Can you play that file from the command line using gstreamer directly ?

                                    Interested in AI ? www.idiap.ch
                                    Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                    1 條回覆 最後回覆
                                    0
                                    • L 離線
                                      L 離線
                                      Luisa
                                      寫於 最後由 編輯
                                      #18

                                      The solution to my problem was to insert ugly gst plugins, forcing the commercial license.

                                      Thanks for your help

                                      1 條回覆 最後回覆
                                      0
                                      • L 離線
                                        L 離線
                                        Luisa
                                        寫於 最後由 編輯
                                        #19

                                        But I have another problem. When I try to view a video I have the following error

                                        Warning: "Failed to connect: Connection refused"
                                        GET_DMA_PHY: Invalid argument
                                        Failed to import fd : 1973231776
                                        myprogram: base/omx_codec/omx_codec.cpp:1275: void Codec::TreatFillBufferCommand(Task*): Assertion `success' failed.

                                        and the software crashes.

                                        Has anyone solved a problem similar to mine?
                                        Thanks in advance

                                        Luisa

                                        1 條回覆 最後回覆
                                        0
                                        • SGaistS 離線
                                          SGaistS 離線
                                          SGaist
                                          Lifetime Qt Champion
                                          寫於 最後由 編輯
                                          #20

                                          Again: is it working on the command line with gstreamer directly ?

                                          Interested in AI ? www.idiap.ch
                                          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                          1 條回覆 最後回覆
                                          0

                                          • 登入

                                          • Login or register to search.
                                          • 第一個貼文
                                            最後的貼文
                                          0
                                          • 版面
                                          • 最新
                                          • 標籤
                                          • 熱門
                                          • 使用者
                                          • 群組
                                          • 搜尋
                                          • Get Qt Extensions
                                          • Unsolved