This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

GSTREAMER on DM357

Hi all.

Somebody tried to use GSTREAMER with DM357 EVM?

I heard that this Linux package is "equivalent" to DirectShow of Windows. By "equivalent" I mean, you have a sort of libraries in high level that can handle JPEG, MPEG, audio codec, in a transparent way to the user. For example, you can create an image server from a camera to internet, just writing a line of command.

I know that there is an implementation of GSTREAMER available to some variations of DaVinci processor, such DM357, but I want to know if somebody already use it.

Thanks a lot.

SerKam

  • Since GStreamer is sitting on top of the same basic API framework on any of the Davinci devices it should work largely the same on most devices depending on what the device is capible of processing. There is actually a table on the GForge site here that shows what has been tested with the DM357, so someone has used it.

  • I have a DM357 EVM and trying to build Gstreamer.

    So far I've ran into some problems. Keep trying...

  • Hi Daniel

    Did you succesfully build the gstreamer for DM357 EVM?

    I will start this task from now and I will appreciate a lot your impressions and advices.

    Thanks

     

  • Yes, I could successfully build it for DM357 after running into some obstacles.

    I used a Fedora 9 for building, may be that's not the best choice. I suggest if you can built it on a RedHat, that's the most tested environment.

    Anyway if you run into troubles let me know may be I can help you.

     

    Altough Gstreamer is running now, so far I was not able to successfully run a UDP video stream and receive it in the EVM 357. Keep trying...

  • Hi Daniel

    Is it possible you send the Gstreamer modules you have build to me? If this is possible, send to my e-mail serkam@terra.com.br, thank you. Or post here. I am sure that there are other people interested in it.

    I need to test a H.264 streamer server with Gstreamer under DM357 urgently, to decide if DM357 is the best choice among other alternatives. As I am using Ubuntu as the Linux host, I am affraid that I will spend a lot of time until I can get a sucessfull build of Gstreamer here and I have no time. I intend to receive the streams with VLC, in Linux and in Windows.

    I had a terrible experience with Gstreamer using iMX31LC from Freescale. I spend almost 2 years to design a board with iMX31LC, that required a 8 layers board manufactured in China, with 3 revisions. When the hardware was OK, I found that the Linux had a lot of flaws, mainly in the Gstreamer and V4L2, due issues in the linux drivers of iMX31LC. The fact is, the Gstreamer never worked fine in my iMX31LC board, even with technical support from Freescale.

    I hope that DM357 has less problems.

    Best Regards

    SERGIO KAMAKURA

    WARP TECNOLOGIA

     

  • Hi Sergio, I've sent gstreamer.tar.bz2 to your email. It's 20Mb so I don't know if you'll get it.

    Let me know how it goes.

    So far I was not succesfull on receiving a stream in the DM357. Let me know if you could do it.

    Rgds

  • Hi Daniel

    Unfortunatelly, until now no e-mail arrived from you.

    Could you send by parts?

    My primary e-mail: serkam@terra.com.br

    Second alternative: serkam@uol.com.br

    Third alternative: serkam@gmail.com.

    Thanks a lot.

     

  • OK resent to those addresses

  • Hi Daniel

    I did receive in my gmail.

    Today I have an appointment, so, I will work on it tomorrow.

    I'll keep you posted.

    Thanks a lot.

     

  • Hi Daniel

    I decompressed the package you sent in my Windows XP, recorded it in a SD card, mounted it in the EVMDM357 and copied all things to /opt as you recommended. I rebooted my kit, only to be sure that, eventually, any new lib will be recognized by the kernel. But, when I try to execute ./gst-inpect-0.10, it complains the following:

    # cd opt

    # ls

    bin      dvsdk    etc      include  info     lib      share

    # cd bin

    # ls

    glib-genmarshal      gst-inspect-0.10     gst-xmlinspect-0.10

    glib-gettextize      gst-launch           gtester

    glib-mkenums         gst-launch-0.10      gtester-report

    gobject-query        gst-typefind         lame

    gst-feedback         gst-typefind-0.10    oil-bugreport

    gst-feedback-0.10    gst-visualise-0.10

    gst-inspect          gst-xmlinspect

    # ./gst-inspect-0.10

    ./gst-inspect-0.10: error while loading shared libraries: librt.so.1: cannot open shared object file: No such file or directory

    #

    Is this librt.so.1 a lib that you sent or is a one that is native from de kernel?

    I did a try to copy /opt/bin to /usr/bin and /opt/lib to /usr/lib, but the same occurs.

     # cd /opt/lib

    # ls

    glib-2.0                           libgstpbutils-0.10.a

    gstreamer-0.10                     libgstpbutils-0.10.la

    libcheck.a                         libgstpbutils-0.10.so

    libcheck.la                        libgstpbutils-0.10.so.0

    libcheck.so                        libgstpbutils-0.10.so.0.15.0

    libcheck.so.0                      libgstreamer-0.10.a

    libcheck.so.0.0.0                  libgstreamer-0.10.la

    libgio-2.0.la                      libgstreamer-0.10.so

    libgio-2.0.so                      libgstreamer-0.10.so.0

    libgio-2.0.so.0                    libgstreamer-0.10.so.0.18.0

    libgio-2.0.so.0.1800.1             libgstriff-0.10.a

    libglib-2.0.la                     libgstriff-0.10.la

    libglib-2.0.so                     libgstriff-0.10.so

    libglib-2.0.so.0                   libgstriff-0.10.so.0

    libglib-2.0.so.0.1800.1            libgstriff-0.10.so.0.15.0

    libgmodule-2.0.la                  libgstrtp-0.10.a

    libgmodule-2.0.so                  libgstrtp-0.10.la

    libgmodule-2.0.so.0                libgstrtp-0.10.so

    libgmodule-2.0.so.0.1800.1         libgstrtp-0.10.so.0

    libgobject-2.0.la                  libgstrtp-0.10.so.0.15.0

    libgobject-2.0.so                  libgstrtsp-0.10.a

    libgobject-2.0.so.0                libgstrtsp-0.10.la

    libgobject-2.0.so.0.1800.1         libgstrtsp-0.10.so

    libgstaudio-0.10.a                 libgstrtsp-0.10.so.0

    libgstaudio-0.10.la                libgstrtsp-0.10.so.0.15.0

    libgstaudio-0.10.so                libgstsdp-0.10.a

    libgstaudio-0.10.so.0              libgstsdp-0.10.la

    libgstaudio-0.10.so.0.15.0         libgstsdp-0.10.so

    libgstbase-0.10.a                  libgstsdp-0.10.so.0

    libgstbase-0.10.la                 libgstsdp-0.10.so.0.15.0

    libgstbase-0.10.so                 libgsttag-0.10.a

    libgstbase-0.10.so.0               libgsttag-0.10.la

    libgstbase-0.10.so.0.18.0          libgsttag-0.10.so

    libgstcdda-0.10.a                  libgsttag-0.10.so.0

    libgstcdda-0.10.la                 libgsttag-0.10.so.0.15.0

    libgstcdda-0.10.so                 libgstvideo-0.10.a

    libgstcdda-0.10.so.0               libgstvideo-0.10.la

    libgstcdda-0.10.so.0.15.0          libgstvideo-0.10.so

    libgstcontroller-0.10.a            libgstvideo-0.10.so.0

    libgstcontroller-0.10.la           libgstvideo-0.10.so.0.15.0

    libgstcontroller-0.10.so           libgthread-2.0.la

    libgstcontroller-0.10.so.0         libgthread-2.0.so

    libgstcontroller-0.10.so.0.18.0    libgthread-2.0.so.0

    libgstdataprotocol-0.10.a          libgthread-2.0.so.0.1800.1

    libgstdataprotocol-0.10.la         libid3tag.a

    libgstdataprotocol-0.10.so         libid3tag.la

    libgstdataprotocol-0.10.so.0       libid3tag.so

    libgstdataprotocol-0.10.so.0.18.0  libid3tag.so.0

    libgstfft-0.10.a                   libid3tag.so.0.3.0

    libgstfft-0.10.la                  libmad

    libgstfft-0.10.so                  libmad.0

    libgstfft-0.10.so.0                libmad.0.2.1

    libgstfft-0.10.so.0.15.0           libmad.a

    libgstinterfaces-0.10.a            libmad.la

    libgstinterfaces-0.10.la           libmad.so

    libgstinterfaces-0.10.so           libmad.so.0

    libgstinterfaces-0.10.so.0         libmad.so.0.2.1

    libgstinterfaces-0.10.so.0.15.0    libmp3lame.a

    libgstnet-0.10.a                   libmp3lame.la

    libgstnet-0.10.la                  libmp3lame.so

    libgstnet-0.10.so                  libmp3lame.so.0

    libgstnet-0.10.so.0                libmp3lame.so.0.0.0

    libgstnet-0.10.so.0.18.0           liboil-0.3.a

    libgstnetbuffer-0.10.a             liboil-0.3.la

    libgstnetbuffer-0.10.la            liboil-0.3.so

    libgstnetbuffer-0.10.so            liboil-0.3.so.0

    libgstnetbuffer-0.10.so.0          liboil-0.3.so.0.3.0

    libgstnetbuffer-0.10.so.0.15.0     pkgconfig

    #

    This is the contents in /opt/lib, that is all lib files you sent.

    Any advice will welcome, Daniel

    Thanks

     

  • Hi, that library and others should be in /lib directory of your filesystem. I didn't sent them.

    It's better if you boot the EVM mounting the full filesystem from the DVSDK via NFS.

    If not you'll have to copy all those libraries.

    Hope it helps

     

  • Hi Daniel,

    I have very similar problem. I put all the libs in /lib and gst-launch, etc in /bin copied share files and etc files into the sample filesystem from mv5.0 target. I nfs because this is quite large and when I run the gstreamer programs I get the message that it can't open shared libraries. All of the libraries are in /lib from cross compiling, do I need to use ldd or something to updated libraries?

    Any info will be greatly appreciated.

    --Julia

  • Hi, I didn't have to use ldd. Just put the common libraries in /lib and gst package in /opt/gstreamer

  • Hi Daniel

    I don't know if you received my e-mail reporting the problem that gst-inspect didn't find anything ( plugins, elements, filters, etc ). If not, follows:

    root@192.168.1.153:/opt/gstreamer/bin# ./gst-inspect
    staticelements:  bin: Generic bin
    staticelements:  pipeline: Pipeline object

    Total count: 1 plugin, 2 features

    May be I still need to copy some files into some folder. Oh, in time, did you sent the loadmodules.sh script file? I couldn't find it.

    I am trying to compile the gstreamer in my Ubuntu 9.04.

    Oh mine! That's a nightmare. I could compile some parts in root mode. In user mode, the compiler doesn't access some files in /opt/mv_pro_5.0/montavista/common/share/misc...

    Even in root mode, now, it stops in:

    .....

    make[4]: Entering directory `/home/serkam/dvsdk_2_05_01_14/gst-ti-plugin-full-1.00.02/opensource_build'
    ***** Extracting gstreamer
    ***** Patching gstreamer
    ***** Configuring gstreamer
    configure: WARNING: In the future, Autoconf will not detect cross-tools
    whose name does not start with the host triplet.  If you think this
    configuration is useful to you, please write to autoconf@gnu.org.
    appending configuration tag "CXX" to libtool
    appending configuration tag "F77" to libtool
    configure: WARNING: Sissy ! By asking to not build the tests known to fail, you hereby waive your right to customer support.  If you do not agree with this EULA, please press Ctrl-C before the next line is printed.  By allowing the next line to be printed, you expressly acknowledge your acceptance of this EULA.
    configure: error: no
    make[4]: *** [gstreamer.configure] Error 1
    make[4]: Leaving directory `/home/serkam/dvsdk_2_05_01_14/gst-ti-plugin-full-1.00.02/opensource_build'
    make[3]: *** [base] Error 2
    make[3]: Leaving directory `/home/serkam/dvsdk_2_05_01_14/gst-ti-plugin-full-1.00.02/opensource_build'
    make[2]: *** [all] Error 2
    make[2]: Leaving directory `/home/serkam/dvsdk_2_05_01_14/gst-ti-plugin-full-1.00.02/opensource_build'
    make[1]: *** [opensource_build] Error 2
    make[1]: Leaving directory `/home/serkam/dvsdk_2_05_01_14/gst-ti-plugin-full-1.00.02'
    make: *** [all] Error 2

    Any ideas on what is going on?

    Did you compile em RedHat? If yes, which version do you use?

    Thanks a lot Daniel.