Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Japanese
  4. [Solved] Qt5 media service について
QtWS25 Last Chance

[Solved] Qt5 media service について

Scheduled Pinned Locked Moved Japanese
29 Posts 2 Posters 21.4k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • C Offline
    C Offline
    chung.k
    wrote on last edited by
    #6

    ターゲットの構成は、下記のようになっています。
    SYSROOT/include/gstreamer-0.10/gst/base/
    SYSROOT/include/gstreamer-0.10/gst/check/
    SYSROOT/include/gstreamer-0.10/gst/controller/
    SYSROOT/include/gstreamer-0.10/gst/dataprotocol/
    SYSROOT/include/gstreamer-0.10/gst/gst*.h

    SYSROOT/usr/include/ にコピーしてみましたが同じでした。

    以上、よろしくお願いします。

    1 Reply Last reply
    0
    • C Offline
      C Offline
      chung.k
      wrote on last edited by
      #7

      gstreamer-0.10.28
      gst-plugins-base-0.10.28
      gst-plugins-good-0.10.26
      gst-plugins-bad-0.10.14
      gst-plugins-ugly-0.10.11
      gst-ffmpeg-0.10.10

      上記をインストールして、libgstmediaplayer.so がビルドされるか確認してみます。

      1 Reply Last reply
      0
      • C Offline
        C Offline
        chung.k
        wrote on last edited by
        #8

        libgstmediaplayer.so などのプラグインが必要です。

        下記をインストールしました。
        gstreamer-0.10.28
        gst-plugins-base-0.10.28
        gst-plugins-good-0.10.26
        gst-plugins-bad-0.10.14
        gst-plugins-ugly-0.10.11
        gst-ffmpeg-0.10.10 (← これだけエラーが取れずインストールできていません)

        しかし、libgstmediaplayer.so が見当たりません。
        どのプラグインをインストールすれば、libgstmediaplayer.so が組み込まれるのでしょうか?

        以上、よろしくお願いします。

        chung@ubuntu:~/workspace/rootfs/build/rootfs/usr/lib/gstreamer-0.10$ ls -all合計 25108
        drwxrwxr-x 2 chung chung 12288 6月 17 16:42 .
        drwxr-xr-x 5 chung chung 4096 6月 17 16:41 ..
         :
         :
        -rwxr-xr-x 1 chung chung 2478 6月 17 16:38 libgstmatroska.la
        -rwxr-xr-x 1 chung chung 455594 6月 17 16:38 libgstmatroska.so
        -rwxr-xr-x 1 chung chung 2030 6月 17 16:41 libgstmpeg4videoparse.la
        -rwxr-xr-x 1 chung chung 79745 6月 17 16:41 libgstmpeg4videoparse.so
        -rwxr-xr-x 1 chung chung 2024 6月 17 16:42 libgstmpegaudioparse.la
        -rwxr-xr-x 1 chung chung 166142 6月 17 16:42 libgstmpegaudioparse.so
        -rwxr-xr-x 1 chung chung 2110 6月 17 16:41 libgstmpegdemux.la
        -rwxr-xr-x 1 chung chung 533629 6月 17 16:41 libgstmpegdemux.so
        -rwxr-xr-x 1 chung chung 2249 6月 17 16:42 libgstmpegstream.la
        -rwxr-xr-x 1 chung chung 249770 6月 17 16:42 libgstmpegstream.so
        -rwxr-xr-x 1 chung chung 1994 6月 17 16:41 libgstmpegtsmux.la
        -rwxr-xr-x 1 chung chung 165861 6月 17 16:41 libgstmpegtsmux.so
        -rwxr-xr-x 1 chung chung 2024 6月 17 16:41 libgstmpegvideoparse.la
        -rwxr-xr-x 1 chung chung 98689 6月 17 16:41 libgstmpegvideoparse.so
        -rwxr-xr-x 1 chung chung 1849 6月 17 16:38 libgstmulaw.la
        -rwxr-xr-x 1 chung chung 75926 6月 17 16:38 libgstmulaw.so
         :
         :

        1 Reply Last reply
        0
        • T Offline
          T Offline
          takumiasaki
          wrote on last edited by
          #9

          GStreamerインストール後にqtmultimediaモジュールの再ビルドは行っていますか。
          その際にqmakeの再実行も必要だと思います。
          うまくいかない場合は qtmultimedia をビルドしたディレクトリに config.log ファイルがあればその内容を教えてください。

          1 Reply Last reply
          0
          • C Offline
            C Offline
            chung.k
            wrote on last edited by
            #10

            やはり、GStreamer が正しくインストールできていないようです。

            下記をインストールしました。
            gstreamer-0.10.28
            gst-plugins-base-0.10.28
            gst-plugins-good-0.10.26
            gst-plugins-bad-0.10.14
            gst-plugins-ugly-0.10.11
            gst-ffmpeg-0.10.10 (これもできました)

            しかし、
            ・gst-launch audiotestsrc ! autoaudiosink では、正常に音が出ますが、
            ・gst-launch videotestsrc ! autovideosink では、画像が表示されません。
            ・gst-launch playbin2 uri=file://xxxx.mp4 では、音だけ出て動画が出ません。


            ~ # gst-launch videotestsrc ! autovideosink
            Setting pipeline to PAUSED ...
            Pipeline is PREROLLING ...
            WARNING: from element /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0: Resource not found.
            Additional debug info:
            gstautovideosink.c(313): gst_auto_video_sink_find_best (): /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0:
            Failed to find a usable video sink
            Pipeline is PREROLLED ...
            Setting pipeline to PLAYING ...
            New clock: GstSystemClock

            Qt 以前に、gst-launch を使用して、音や動画の確認が必要と思い、
            いろいろ調べてはいますが行き詰っております。

            GStreamer の話で申し訳ありませんが、
            何かお気づきの点がありましたら教えていただければと思います。

            以上

            1 Reply Last reply
            0
            • C Offline
              C Offline
              chung.k
              wrote on last edited by
              #11

              intervideosink を使うとメッセージは正しいですが、やはり画は出ません。
              —————————————————————
              ~ # gst-launch videotestsrc ! intervideosink
              Setting pipeline to PAUSED ...
              Pipeline is PREROLLING ...
              Pipeline is PREROLLED ...
              Setting pipeline to PLAYING ...
              New clock: GstSystemClock
              —————————————————————

              組み込みボードなので、frame buffer 関連でしょうか?
              PCにインストールした場合は正しく動画が再生されました。

              以上

              1 Reply Last reply
              0
              • T Offline
                T Offline
                takumiasaki
                wrote on last edited by
                #12

                GStreamerで画が出ない場合、原因がデコーダーかsinkのどちらかにある場合が多いと思います。
                GST_DEBUG環境変数などを使って、何処でエラーが出ているかを確認してください。

                • http://gstreamer.freedesktop.org/data/doc/gstreamer/0.10.36/gstreamer/html/gst-running.html

                エラーがデコーダーが見つからない場合は対応するデコーダーを入れてください。(gst-ffmpegがあればたいていは問題ないと思いますが)

                エラーがsink(xvideosinkなど適切ではないsinkを選んでいる場合)はQt MultiMediaでは独自のsinkを作成して使用するので気にしないでいい場合もあります。ただ、まれにハードウェアデコーダを使用していてフルスクリーンのsinkにしか出力できないケースもあります。v4l2sink などを指定した場合に動作しないかを確認するのも手だと思います。

                1 Reply Last reply
                0
                • C Offline
                  C Offline
                  chung.k
                  wrote on last edited by
                  #13

                  ありがとうございます。
                  デバッグしてみます。

                  1 Reply Last reply
                  0
                  • C Offline
                    C Offline
                    chung.k
                    wrote on last edited by
                    #14

                    GStreamer で音と画、共に出るようになりました。

                    ・gstreamer
                    ・gst-plugins-base
                    ・gst-plugins-good
                    ・gst-plugins-bad
                    ・gst-plugins-ugly
                    ・gst-ffmpeg
                    今まで上記の6つをインストールしていました。
                    この場合は、音しか出なかったのですが、
                    ・gst-fsl-plugin (ボードに付属)
                    をインストールしたところ画も出るようになりました。

                    開発ボードは freescale の i.MX53 を使っています。
                    ・gst-fsl-plugin はこのボード専用のプラグインなのかもしれません。

                    そして、この状態で、QT3.1をビルドしましたが、いくつかエラーが出ました。

                    qtmultimedia をビルドしたディレクトリに config.log ファイルがあればその内容を教えてください。

                    qtmultimedia の config.log を転記(多いので抜粋)します。インクルードのパスの問題かも知れません。

                    executing config test pulseaudio

                    • cd /home/vaio/qt-everywhere-opensource-src-5.3.1/qtmultimedia/config.tests/pulseaudio && /home/vaio/qt-everywhere-opensource-src-5.3.1/qtbase/bin/qmake "CONFIG -= qt debug_and_release app_bundle lib_bundle" /home/vaio/qt-everywhere-opensource-src-5.3.1/qtmultimedia/config.tests/pulseaudio
                      Project ERROR: libpulse development package not found
                      test pulseaudio FAILED
                      executing config test gstreamer
                    • cd /home/vaio/qt-everywhere-opensource-src-5.3.1/qtmultimedia/config.tests/gstreamer && /home/vaio/qt-everywhere-opensource-src-5.3.1/qtbase/bin/qmake "CONFIG -= qt debug_and_release app_bundle lib_bundle" /home/vaio/qt-everywhere-opensource-src-5.3.1/qtmultimedia/config.tests/gstreamer
                    • cd /home/vaio/qt-everywhere-opensource-src-5.3.1/qtmultimedia/config.tests/gstreamer && make
                      make[1]: ディレクトリ /home/vaio/qt-everywhere-opensource-src-5.3.1/qtmultimedia/config.tests/gstreamer' に入ります /usr/local/DigiEL-5.9/x-tools/arm-cortex_a8-linux-gnueabi/bin/arm-cortex_a8-linux-gnueabi-g++ -c -pipe -mfloat-abi=softfp -O2 -O2 -march=armv7-a -mfpu=neon -DLINUX=1 -DEGL_API_FB=1 -Wno-psabi -fno-exceptions -Wall -W -fPIE -DQT_NO_MTDEV -DQT_NO_LIBUDEV -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I/home/vaio/qt-everywhere-opensource-src-5.3.1/qtbase/mkspecs/devices/linux-imx53qsb-g++ -I. -I/home/vaio/workspace/rootfs/build/rootfs/usr/include -o .obj/main.o main.cpp main.cpp:44:21: error: gst/gst.h: No such file or directory main.cpp:46: warning: unused parameter 'argc' main.cpp:46: warning: unused parameter 'argv' make[1]: *** [.obj/main.o] エラー 1 make[1]: ディレクトリ /home/vaio/qt-everywhere-opensource-src-5.3.1/qtmultimedia/config.tests/gstreamer' から出ます
                      test gstreamer FAILED
                    1 Reply Last reply
                    0
                    • T Offline
                      T Offline
                      takumiasaki
                      wrote on last edited by
                      #15

                      @main.cpp:44:21: error: gst/gst.h: No such file or directory@

                      とあるので、インストールしたGStreamerのヘッダーファイルが見つけられていないようです。

                      /home/vaio/workspace/rootfs/build/rootfs/usr/include/gst/gst.h はありますか。
                      GStreamer のヘッダーファイルをそこに置いて qmake を再度実行してください。

                      1 Reply Last reply
                      0
                      • C Offline
                        C Offline
                        chung.k
                        wrote on last edited by
                        #16

                        /home/vaio/workspace/rootfs/build/rootfs/usr/include/gstreamer-0.10/gst になっていましたので、ディレクトリ構成を
                        /home/vaio/workspace/rootfs/build/rootfs/usr/include/gst にしました。
                        が、結果は同じでした。
                        gst には、gst.h や、多くの gstxxx.h があります。

                        ① libは、
                        /home/vaio/workspace/rootfs/build/rootfs/usr/lib/gstreamer-0.10 になっていますが、
                        /home/vaio/workspace/rootfs/build/rootfs/usr/lib にする必要がありますか?

                        ② .qmake.cache が生成されるとき、alsa 以外は、no になっています。
                        Info: creating cache file /home/chung/qt-everywhere-opensource-src-5.3.1/qtmultimedia/.qmake.cache
                        Checking for openal... no
                        Checking for alsa... yes
                        Checking for pulseaudio... no
                        Checking for gstreamer... no
                        Checking for resourcepolicy... no
                        Checking for gpu_vivante... no

                        これは、まだ環境が正しくないという事ですね?
                        ここで、Checking for gstreamer... yes になるのが正解?

                        ③ .qmake.cache を削除するタイミングがわからないのですが、make前に常にするのでしょうか?

                        よろしくお願いします。

                        1 Reply Last reply
                        0
                        • T Offline
                          T Offline
                          takumiasaki
                          wrote on last edited by
                          #17

                          config.log は変化していると思います。チェックしてみてください。
                          qt-everywhere-opensource-src-5.3.1/qtmultimedia/config.tests/gstreamer
                          に Makefile が出来ていると思うので、そこでmakeが成功すれば環境が整ったということになります。

                          1. 設定次第ですが、usr/lib 以下にある方がリンクは通りやすいと思います。

                          2. openal や pulseaudio などは no でかまいませんが、gstreamer が yes になる必要があります。 qtmultimedia/config.tests/gstreamer での make が成功する場合、yes になります。

                          3. qmake の実行前に消してください。make 時には必要なファイルなので消さないでください。

                          1 Reply Last reply
                          0
                          • C Offline
                            C Offline
                            chung.k
                            wrote on last edited by
                            #18

                            qtmultimedia/config.tests/gstreamer で make しました。
                            足りないファイルがいろいろあるようです。
                            glib.h glib-object.h などが必要ですが、
                            これらは、Glib のソースをダウンロードし、ビルドしてインストールすればいいですか?

                            In file included from main.cpp:44:
                            /home/chung/workspace/rootfs/build/rootfs/usr/include/gst/gst.h:27:18: error: glib.h: No such file or directory
                            In file included from /home/chung/workspace/rootfs/build/rootfs/usr/include/gst/gst.h:31,
                            from main.cpp:44:
                            /home/chung/workspace/rootfs/build/rootfs/usr/include/gst/gstenumtypes.h:7:25: error: glib-object.h: No such file or directory
                            In file included from /home/chung/workspace/rootfs/build/rootfs/usr/include/gst/gstelement.h:55,
                            from /home/chung/workspace/rootfs/build/rootfs/usr/include/gst/gstbin.h:27,
                            from /home/chung/workspace/rootfs/build/rootfs/usr/include/gst/gst.h:34,
                            from main.cpp:44:
                            /home/chung/workspace/rootfs/build/rootfs/usr/include/gst/gstconfig.h:197:28: error: libxml/parser.h: No such file or directory
                            In file included from /home/chung/workspace/rootfs/build/rootfs/usr/include/gst/gstelementfactory.h:33,
                            from /home/chung/workspace/rootfs/build/rootfs/usr/include/gst/gstelement.h:60,
                            from /home/chung/workspace/rootfs/build/rootfs/usr/include/gst/gstbin.h:27,
                            from /home/chung/workspace/rootfs/build/rootfs/usr/include/gst/gst.h:34,
                            from main.cpp:44:

                            1 Reply Last reply
                            0
                            • T Offline
                              T Offline
                              takumiasaki
                              wrote on last edited by
                              #19

                              それらのファイルは GStreamer のビルド時に使用しているはずです。
                              新たなインストールは要らないと思いますが、その時に利用したものを rootfs にコピーしてみてください。

                              1 Reply Last reply
                              0
                              • C Offline
                                C Offline
                                chung.k
                                wrote on last edited by
                                #20

                                glib関連のパスが通ってなかったようです。
                                必要なファイルをrootfsにおいてqmake したところ
                                gstreamer... yes になりました。

                                Info: creating cache file /home/chung/qt-everywhere-opensource-src-5.3.1/qtmultimedia/.qmake.cache
                                Checking for openal... no
                                Checking for alsa... yes
                                Checking for pulseaudio... no
                                Checking for gstreamer... yes
                                Checking for gstreamer_photography... no
                                Checking for gstreamer_encodingprofiles... no
                                Checking for gstreamer_appsrc... yes
                                Checking for resourcepolicy... no
                                Checking for gpu_vivante... no

                                これでビルドしなおしてみます。
                                ありがとうございました。

                                1 Reply Last reply
                                0
                                • C Offline
                                  C Offline
                                  chung.k
                                  wrote on last edited by
                                  #21

                                  gstreamer関連は全て yes になりました。

                                  Info: creating cache file /home/chung/qt-everywhere-opensource-src-5.3.1/qtmultimedia/.qmake.cache
                                  Checking for openal... no
                                  Checking for alsa... yes
                                  Checking for pulseaudio... no
                                  Checking for gstreamer... yes
                                  Checking for gstreamer_photography... yes
                                  Checking for gstreamer_encodingprofiles... yes
                                  Checking for gstreamer_appsrc... yes
                                  Checking for resourcepolicy... no
                                  Checking for gpu_vivante... no

                                  ビルドすると多くのエラーがでますが、これはライブラリが無いというエラーでしょうか?
                                  qtmultimedia$ rm .qmake.cache
                                  qtmultimedia$ ../qtbase/bin/qmake -r
                                  qtmultimedia$ make
                                   :
                                  rm -f libgstaudiodecoder.so
                                  /usr/local/DigiEL-5.9/x-tools/arm-cortex_a8-linux-gnueabi/bin/arm-cortex_a8-linux-gnueabi-g++ -Wl,-rpath-link,/home/chung/workspace/rootfs/build/rootfs/usr/lib -Wl,--no-undefined -Wl,-O1 -Wl,-rpath,/usr/local/QtEmbedded-5.3.1/lib -Wl,-rpath-link,/home/chung/qt-everywhere-opensource-src-5.3.1/qtbase/lib -shared -o libgstaudiodecoder.so .obj/qgstreameraudiodecodercontrol.o .obj/qgstreameraudiodecoderservice.o .obj/qgstreameraudiodecodersession.o .obj/qgstreameraudiodecoderserviceplugin.o .obj/moc_qgstreameraudiodecodercontrol.o .obj/moc_qgstreameraudiodecoderservice.o .obj/moc_qgstreameraudiodecodersession.o .obj/moc_qgstreameraudiodecoderserviceplugin.o -L/home/chung/workspace/rootfs/build/rootfs/usr/lib -lqgsttools_p -lgstapp-0.10 -L/home/chung/qt-everywhere-opensource-src-5.3.1/qtmultimedia/lib -lQt5MultimediaWidgets -L/home/chung/qt-everywhere-opensource-src-5.3.1/qtbase/lib -lQt5Multimedia -lQt5Widgets -lQt5Network -lQt5Gui -lQt5Core -lGLESv2 -lEGL -lpthread
                                  .obj/qgstreameraudiodecodersession.o: In function QGstreamerAudioDecoderSession::updateDuration()': qgstreameraudiodecodersession.cpp:(.text+0xc8): undefined reference to gst_element_query_duration'
                                  .obj/qgstreameraudiodecodersession.o: In function QGstreamerAudioDecoderSession::removeAppSink()': qgstreameraudiodecodersession.cpp:(.text+0x1c0): undefined reference to gst_element_get_type'
                                  qgstreameraudiodecodersession.cpp:(.text+0x1cc): undefined reference to g_type_check_instance_cast'  : qgstreameraudiodecoderserviceplugin.cpp:(.text+0xe54): undefined reference to gst_type_find_factory_get_type'
                                  collect2: ld returned 1 exit status
                                  make[4]: *** [../../../../plugins/mediaservice/libgstaudiodecoder.so] エラー 1
                                  make[4]: ディレクトリ /home/chung/qt-everywhere-opensource-src-5.3.1/qtmultimedia/src/plugins/gstreamer/audiodecoder' から出ます make[3]: *** [sub-audiodecoder-make_first] エラー 2 make[3]: ディレクトリ /home/chung/qt-everywhere-opensource-src-5.3.1/qtmultimedia/src/plugins/gstreamer' から出ます
                                  make[2]: *** [sub-gstreamer-make_first] エラー 2
                                  make[2]: ディレクトリ /home/chung/qt-everywhere-opensource-src-5.3.1/qtmultimedia/src/plugins' から出ます make[1]: *** [sub-plugins-make_first] エラー 2 make[1]: ディレクトリ /home/chung/qt-everywhere-opensource-src-5.3.1/qtmultimedia/src' から出ます
                                  make: *** [sub-src-make_first] エラー 2

                                  1 Reply Last reply
                                  0
                                  • T Offline
                                    T Offline
                                    takumiasaki
                                    wrote on last edited by
                                    #22

                                    リンクするライブラリが少ないようです。

                                    デスクトップ用のビルド時のログですが、gstreamer関連で他にも多くのライブラリをリンクしています。

                                    @g++ -Wl,--no-undefined -Wl,-O1 -Wl,-rpath,/opt/qt/5.3/lib -Wl,-rpath-link,/home/asaki/qt-project/build/qt5-build-5.3/qtbase/lib -shared -o libgstaudiodecoder.so .obj/qgstreameraudiodecodercontrol.o .obj/qgstreameraudiodecoderservice.o .obj/qgstreameraudiodecodersession.o .obj/qgstreameraudiodecoderserviceplugin.o .obj/moc_qgstreameraudiodecodercontrol.o .obj/moc_qgstreameraudiodecoderservice.o .obj/moc_qgstreameraudiodecodersession.o .obj/moc_qgstreameraudiodecoderserviceplugin.o -lqgsttools_p -lgstaudio-0.10 -lgstinterfaces-0.10 -lgstvideo-0.10 -lgstpbutils-0.10 -pthread -lgstapp-0.10 -lgstbase-0.10 -lgstreamer-0.10 -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lxml2 -lglib-2.0 -L/home/asaki/qt-project/build/qt5-build-5.3/qtmultimedia/lib -lQt5MultimediaWidgets -L/home/asaki/qt-project/build/qt5-build-5.3/qtbase/lib -lQt5Multimedia -lQt5Widgets -lQt5Network -lQt5Gui -lQt5Core -lGL -lpthread@

                                    qmake 時にこれらのライブラリが決定されると思いますので、一度 qtmultimedia 以下の Makefile をすべて削除して qmake からやり直してみてはどうでしょうか。

                                    1 Reply Last reply
                                    0
                                    • C Offline
                                      C Offline
                                      chung.k
                                      wrote on last edited by
                                      #23

                                      ありがとうございます。

                                      qmake 時にこれらのライブラリが決定されると思いますので、一度 qtmultimedia 以下の Makefile をすべて削除して qmake からやり直してみてはどうでしょうか。

                                      やってみましたが、下記のライブラリーは追加されませんでした。
                                      -lqgsttools_p -lgstaudio-0.10 -lgstinterfaces-0.10 -lgstvideo-0.10 -lgstpbutils-0.10 -pthread -lgstapp-0.10 -lgstbase-0.10 -lgstreamer-0.10 -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lxml2 -lglib-2.0

                                      これらは、環境が整っていればqmake時にMakefileに自動生成されるものでしょうか?
                                      それとも手動でオプションとして追加するのもでしょうか?

                                      自動生成されなかったので、手動で追加したところ
                                      下記の3つは、エラーにならずビルドできました。
                                      audiodecoder mediacapture mediaplayer

                                      最後の camerabin で、"gst_date_time_new_local_time"でエラーになりました。

                                      /usr/local/DigiEL-5.9/x-tools/arm-cortex_a8-linux-gnueabi/bin/arm-cortex_a8-linux-gnueabi-g++ -c -pipe -mfloat-abi=softfp -O2 -O2 -march=armv7-a -mfpu=neon -DLINUX=1 -DEGL_API_FB=1 -Wno-psabi -fvisibility=hidden -fvisibility-inlines-hidden -std=c++0x -fno-exceptions -Wall -W -D_REENTRANT -fPIC -DQT_NO_MTDEV -DQT_NO_LIBUDEV -DHAVE_WIDGETS -DHAVE_GST_APPSRC -DHAVE_GST_PHOTOGRAPHY -DGST_USE_UNSTABLE_API -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_PLUGIN -DQT_MULTIMEDIAWIDGETS_LIB -DQT_MULTIMEDIA_LIB -DQT_WIDGETS_LIB -DQT_NETWORK_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/home/chung/qt-everywhere-opensource-src-5.3.1/qtbase/mkspecs/devices/linux-imx53qsb-g++ -I. -I. -I/src/multimedia -Icamerabin -I../../../../include/QtMultimediaWidgets/5.3.1 -I../../../../include/QtMultimediaWidgets/5.3.1/QtMultimediaWidgets -I../../../../include -I../../../../include/QtMultimediaWidgets -I../../../../include/QtMultimedia/5.3.1 -I../../../../include/QtMultimedia/5.3.1/QtMultimedia -I../../../../include/QtMultimedia -I/home/chung/qt-everywhere-opensource-src-5.3.1/qtbase/include -I/home/chung/qt-everywhere-opensource-src-5.3.1/qtbase/include/QtWidgets -I/home/chung/qt-everywhere-opensource-src-5.3.1/qtbase/include/QtCore/5.3.1 -I/home/chung/qt-everywhere-opensource-src-5.3.1/qtbase/include/QtCore/5.3.1/QtCore -I/home/chung/qt-everywhere-opensource-src-5.3.1/qtbase/include/QtNetwork -I/home/chung/qt-everywhere-opensource-src-5.3.1/qtbase/include/QtGui -I/home/chung/qt-everywhere-opensource-src-5.3.1/qtbase/include/QtCore -I.moc -I/home/chung/workspace/rootfs/build/rootfs/usr/include -o .obj/camerabinsession.o camerabinsession.cpp
                                      camerabinsession.cpp: In member function 'void CameraBinSession::setMetaData(const QMap<QByteArray, QVariant>&)':
                                      camerabinsession.cpp:802: error: 'gst_date_time_new_local_time' was not declared in this scope
                                      make[4]: *** [.obj/camerabinsession.o] エラー 1
                                      make[4]: ディレクトリ /home/chung/qt-everywhere-opensource-src-5.3.1/qtmultimedia/src/plugins/gstreamer/camerabin' から出ます make[3]: *** [sub-camerabin-make_first] エラー 2 make[3]: ディレクトリ /home/chung/qt-everywhere-opensource-src-5.3.1/qtmultimedia/src/plugins/gstreamer' から出ます
                                      make[2]: *** [sub-gstreamer-make_first] エラー 2
                                      make[2]: ディレクトリ /home/chung/qt-everywhere-opensource-src-5.3.1/qtmultimedia/src/plugins' から出ます make[1]: *** [sub-plugins-make_first] エラー 2 make[1]: ディレクトリ /home/chung/qt-everywhere-opensource-src-5.3.1/qtmultimedia/src' から出ます
                                      make: *** [sub-src-make_first] エラー 2

                                      調べたところ、gstreamer.ffi に含まれているようです。
                                      このgstreamer.ffi はどのように指定すればよいでしょうか?

                                      よろしくお願いします。

                                      1 Reply Last reply
                                      0
                                      • C Offline
                                        C Offline
                                        chung.k
                                        wrote on last edited by
                                        #24

                                        gst/gstdatetime.h に定義されていました。
                                        camerabinsession.cpp に、#include <gst/gstdatetime.h> を追加したらエラーがとれました。
                                        ありがとうございました。

                                        1 Reply Last reply
                                        0
                                        • T Offline
                                          T Offline
                                          takumiasaki
                                          wrote on last edited by
                                          #25

                                          解決したようなので、こちらだけ。

                                          これらは、環境が整っていればqmake時にMakefileに自動生成されるものでしょうか?
                                          それとも手動でオプションとして追加するのもでしょうか?

                                          環境によります。pkg-configを使ってビルドする場合にはその情報を元に自動的に追加されるはずです。
                                          そうでは無い場合は手動で追加が必要なようです。

                                          手動で追加する場合、qtmultimedia/src/plugins/gstreamer/common.pri を編集して LIBS に追加するのが良さそうです。

                                          ps. 解決したと思われるやりとりは Subject を "[Solved]" で始まるように編集してもらえるとどれに返信が必要かが分かりやすいので助かります。

                                          1 Reply Last reply
                                          0

                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved