nickon314
Posts: 116
Joined: Tue Jul 03, 2012 12:11 pm
Location: West Yorkshire

GStreamer 1.0

Thu May 09, 2013 9:02 am

Hi ,

I've had no luck getting the GStreamer 0.10 to work.
So, following some advice I've started installing the 1.0 packages.

It appears to be installed, but some packages are missing.
Such as autovideosink.
So, someone suggested that I use eglglessink instead. But, the config.log for the 'bad' plugins shows that package can't be installed because I don't have libtimemmgr package installed.

But, I can't find how to install libtimemmgr. Is there an apt-get for it ?


Regards

Nick

nickon314
Posts: 116
Joined: Tue Jul 03, 2012 12:11 pm
Location: West Yorkshire

Re: GStreamer 1.0

Thu May 09, 2013 9:18 am

I've just tried to build the 'bad' package with --enable-eglgles on the ./configure command.

But, eglglessink is still not built.


Regards

Nick

User avatar
Defiant
Posts: 181
Joined: Tue Oct 30, 2012 6:17 pm
Location: Hamburg, Germany

Re: GStreamer 1.0

Sat May 11, 2013 8:05 am

What sources do you use to build?

libtimemmgr sounds like a TI-Library (OMAP etc)

Did you follow the howto?

lgammo
Posts: 1
Joined: Mon May 13, 2013 8:52 pm

Re: GStreamer 1.0

Mon May 13, 2013 9:00 pm

Try downloading the gstreamer SDK from gstreamer.com. The SDK comes with a build system called cerbero that can be setup for native an cross compilation. The result is a complete 'distro' for gstreamer.

I have the SDK working fine on Fedora 17.

nickon314
Posts: 116
Joined: Tue Jul 03, 2012 12:11 pm
Location: West Yorkshire

Re: GStreamer 1.0

Fri May 17, 2013 4:58 pm

Defiant wrote:What sources do you use to build?

libtimemmgr sounds like a TI-Library (OMAP etc)

Did you follow the howto?
Yes, I tried the howto, but that doesn't compile.
I get as far as doing 'sudo make install' to gst-plugins-base' but it fails with lots of errors.
One of them is:
'video-format.c:1132:7: error: too many arguments to function 'video_orc_unpack_YUV9'

There are lots of other similar errors to similarly named functions :(

Regards

Nick

User avatar
Defiant
Posts: 181
Joined: Tue Oct 30, 2012 6:17 pm
Location: Hamburg, Germany

Re: GStreamer 1.0

Fri May 17, 2013 5:02 pm

Maybe you are on a broken commit? Try an older one.

nickon314
Posts: 116
Joined: Tue Jul 03, 2012 12:11 pm
Location: West Yorkshire

Re: GStreamer 1.0

Fri May 17, 2013 5:15 pm

Defiant wrote:Maybe you are on a broken commit? Try an older one.
How do I get an older one? Is it by using the -b option to git ?


Regards

Nick

User avatar
Defiant
Posts: 181
Joined: Tue Oct 30, 2012 6:17 pm
Location: Hamburg, Germany

Re: GStreamer 1.0

Fri May 17, 2013 8:51 pm

Try tag 1.0.6 or 1.0.7. -b is for branches.

nickon314
Posts: 116
Joined: Tue Jul 03, 2012 12:11 pm
Location: West Yorkshire

Re: GStreamer 1.0

Sat May 18, 2013 8:52 pm

Well, it does get a bit further using 1.0.7 tag.
But, compiling gst-libav fails due to lack of memory.

This is on the 512MB pi too!

I guess other people must have some sort of virtual memory setup to do this.

Regards

Nick

User avatar
Defiant
Posts: 181
Joined: Tue Oct 30, 2012 6:17 pm
Location: Hamburg, Germany

Re: GStreamer 1.0

Sat May 18, 2013 9:04 pm

You sure you want a codec from libav?

nickon314
Posts: 116
Joined: Tue Jul 03, 2012 12:11 pm
Location: West Yorkshire

Re: GStreamer 1.0

Sat May 18, 2013 9:58 pm

Defiant wrote:You sure you want a codec from libav?
I'm following the HOWTO doc.

Regards

Nick

User avatar
Defiant
Posts: 181
Joined: Tue Oct 30, 2012 6:17 pm
Location: Hamburg, Germany

Re: GStreamer 1.0

Sun May 19, 2013 6:16 am

libav contains the Software codecs which are really slow. In most cases one usually prefers the gst-omx hardware codec.

User avatar
fbutler
Posts: 302
Joined: Thu Mar 15, 2012 4:09 pm
Location: Surrey, England

Re: GStreamer 1.0

Sun May 19, 2013 7:12 am

nickon314 wrote:Well, it does get a bit further using 1.0.7 tag.
But, compiling gst-libav fails due to lack of memory.

This is on the 512MB pi too!

I guess other people must have some sort of virtual memory setup to do this.
No. I compiled gst-libav yesterday on a Pi with 512MB memory with gpu_mem set to 128

nickon314
Posts: 116
Joined: Tue Jul 03, 2012 12:11 pm
Location: West Yorkshire

Re: GStreamer 1.0

Sun May 19, 2013 8:12 am

Maybe the HOWTO needs updating.

If libav is pointless on the Pi, and we don't have enough RAM to actually build it - how did it get in there in the first place?

Nick

User avatar
Defiant
Posts: 181
Joined: Tue Oct 30, 2012 6:17 pm
Location: Hamburg, Germany

Re: GStreamer 1.0

Sun May 19, 2013 8:50 am

Its not pointless, since it contains decoders that are not part of gst-omx - its just a question if you need these codecs or not.

nickon314
Posts: 116
Joined: Tue Jul 03, 2012 12:11 pm
Location: West Yorkshire

Re: GStreamer 1.0

Sun May 19, 2013 12:07 pm

I too have GPU_men set to 128.

Do you have any virtual memory setup?

I turned off swap because my memory card is getting full.

Regards

Nick.

User avatar
fbutler
Posts: 302
Joined: Thu Mar 15, 2012 4:09 pm
Location: Surrey, England

Re: GStreamer 1.0

Sun May 19, 2013 12:57 pm

nickon314 wrote:I too have GPU_men set to 128.

Do you have any virtual memory setup?.
I was just using the 2013-02-09-wheezy-raspbian image updated, upgraded and with rpi-update run on it.
Here's a vmstat:

Code: Select all

pi@raspi1 ~ $ vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 0  0      0  64900  13124 125756    0    0     5     7   50   76 20  2 78  0
nickon314 wrote:I turned off swap because my memory card is getting full.
Perhaps that's your issue. I've compiled GStreamer 1.0 many times on the Pi and I've never had an issue with lack of memory.

Is there a particular reason why you want to compile it yourself rather than using Defiant's GStreamer 1.0 Packages?

nickon314
Posts: 116
Joined: Tue Jul 03, 2012 12:11 pm
Location: West Yorkshire

Re: GStreamer 1.0

Sun May 19, 2013 9:09 pm

I've dropped GPU mem down to 64MB, and now that compiles.

I'm now trying to build gst-plugins-bad, but that fails because Schroedinger/schro.h is missing.

It's #included from gstschro.c .

Any suggested fix for that problem?

Regards

Nick

User avatar
fbutler
Posts: 302
Joined: Thu Mar 15, 2012 4:09 pm
Location: Surrey, England

Re: GStreamer 1.0

Sun May 19, 2013 9:26 pm

nickon314 wrote:I'm now trying to build gst-plugins-bad, but that fails because Schroedinger/schro.h is missing.

It's #included from gstschro.c .

Any suggested fix for that problem?
Here's the libraries I installed before compiling any of the GStreamer stuff. It may be included as one of them. :

Code: Select all

sudo apt-get install -y build-essential autotools-dev automake autoconf \
                        libtool autopoint libxml2-dev zlib1g-dev libglib2.0-dev \
                        pkg-config bison flex python git gtk-doc-tools libasound2-dev \
                        libgudev-1.0-dev libxt-dev libvorbis-dev libcdparanoia-dev \
                        libpango1.0-dev libtheora-dev libvisual-0.4-dev iso-codes \
                        libgtk-3-dev libraw1394-dev libiec61883-dev libavc1394-dev \
                        libv4l-dev libcairo2-dev libcaca-dev libspeex-dev libpng-dev \
                        libshout3-dev libjpeg-dev libaa1-dev libflac-dev libdv4-dev \
                        libtag1-dev libwavpack-dev libpulse-dev libsoup2.4-dev libbz2-dev \
                        libcdaudio-dev libdc1394-22-dev ladspa-sdk libass-dev \
                        libcurl4-gnutls-dev libdca-dev libdirac-dev libdvdnav-dev \
                        libexempi-dev libexif-dev libfaad-dev libgme-dev libgsm1-dev \
                        libiptcdata0-dev libkate-dev libmimic-dev libmms-dev \
                        libmodplug-dev libmpcdec-dev libofa0-dev libopus-dev \
                        librsvg2-dev librtmp-dev libschroedinger-dev libslv2-dev \
                        libsndfile1-dev libsoundtouch-dev libspandsp-dev libx11-dev \
                        libxvidcore-dev libzbar-dev libzvbi-dev liba52-0.7.4-dev \
                        libcdio-dev libdvdread-dev libmad0-dev libmp3lame-dev \
                        libmpeg2-4-dev libopencore-amrnb-dev libopencore-amrwb-dev \
                        libsidplay1-dev libtwolame-dev libx264-dev
I've started a complete up to date Gstreamer 1.0 compile tonight on one of my Pi's. If it is successful I'll post my script for the build here tomorrow.

User avatar
fbutler
Posts: 302
Joined: Thu Mar 15, 2012 4:09 pm
Location: Surrey, England

Re: GStreamer 1.0

Mon May 20, 2013 9:13 am

fbutler wrote:I've started a complete up to date Gstreamer 1.0 compile tonight on one of my Pi's. If it is successful I'll post my script for the build here tomorrow.
Nick,
I had a couple of syntax errors building it overnight due to poor cutting and pasting by me in the build script, however I've corrected these now. The build script that I used can be found here:
http://www.trans-omni.co.uk/pi/GStreame ... _gstreamer

nickon314
Posts: 116
Joined: Tue Jul 03, 2012 12:11 pm
Location: West Yorkshire

Re: GStreamer 1.0

Mon May 20, 2013 9:18 am

Did your build work ok?

Regards

Nick

nickon314
Posts: 116
Joined: Tue Jul 03, 2012 12:11 pm
Location: West Yorkshire

Re: GStreamer 1.0

Mon May 20, 2013 9:21 am

Oops, looks like our forum posts crossed in the mail.


Regards

Nick

User avatar
fbutler
Posts: 302
Joined: Thu Mar 15, 2012 4:09 pm
Location: Surrey, England

Re: GStreamer 1.0

Mon May 20, 2013 9:31 am

nickon314 wrote:Did your build work ok?

Regards

Nick
Yes, I believe so, but I won't be fully testing it until tonight :-)

If you do a gst-inspect-1.0 after the build you should see:
Total count: 189 plugins, 1068 features
at the end of the listing

If you do a gst-inspect-1.0 | grep omx you should see the following gst-OMX components:

Code: Select all

omx:  omxmpeg2videodec: OpenMAX MPEG2 Video Decoder
omx:  omxmpeg4videodec: OpenMAX MPEG4 Video Decoder
omx:  omxh263dec: OpenMAX H.263 Video Decoder
omx:  omxh264dec: OpenMAX H.264 Video Decoder
omx:  omxtheoradec: OpenMAX Theora Video Decoder
omx:  omxvp8dec: OpenMAX VP8 Video Decoder
omx:  omxmjpegdec: OpenMAX MJPEG Video Decoder
omx:  omxvc1dec: OpenMAX WMV Video Decoder
omx:  omxh264enc: OpenMAX H.264 Video Encoder
Also here's the commands I use to set up my GStreamer environment:

Code: Select all

################# SET UP GSTREAMER ENVIRONMENT ##########

cd $HOME
echo -e \\n# Gstreamer environment >> .profile
echo export GST_PLUGIN_PATH=/usr/local/lib/gstreamer-1.0/ >> .profile
echo export GST_OMX_CONFIG_DIR=/usr/local/etc/xdg/ >> .profile
echo export LD_LIBRARY_PATH=/usr/local/lib/ >> .profile
. ./.profile

rm ~/.cache/gstreamer-1.0/registry.armv6l.bin

# Install the v4l-utils to be able to use the v4l2-ctl command to configure 
# v4l2 input devices, such as webcams, if required
sudo apt-get install v4l-utils

nickon314
Posts: 116
Joined: Tue Jul 03, 2012 12:11 pm
Location: West Yorkshire

Re: GStreamer 1.0

Mon May 20, 2013 10:44 am

I had to use this to build gst-plugins-bad :

make CFLAGS+="-I/usr/include/schroedinger -Wno-error"

otherwise it can't find schro.h file.

User avatar
fbutler
Posts: 302
Joined: Thu Mar 15, 2012 4:09 pm
Location: Surrey, England

Re: GStreamer 1.0

Mon May 20, 2013 11:05 am

nickon314 wrote:I had to use this to build gst-plugins-bad :

make CFLAGS+="-I/usr/include/schroedinger -Wno-error"

otherwise it can't find schro.h file.
I had no issues with compiling gst-plugins-bad without that. Here's an excerpt for my build log for the make:

Code: Select all

make -C schroedinger
make[3]: Entering directory `/home/pi/myNAS/RaspberryPiPackages/gstreamer-1.0/gst-plugins-bad/ext/schroedinger'
  CC     libgstschro_la-gstschro.lo
  CC     libgstschro_la-gstschrodec.lo
  CC     libgstschro_la-gstschroenc.lo
  CC     libgstschro_la-gstschroutils.lo
  CCLD   libgstschro.la
make[3]: Leaving directory `/home/pi/myNAS/RaspberryPiPackages/gstreamer-1.0/gst-plugins-bad/ext/schroedinger'
and from sudo make install:

Code: Select all

Making install in schroedinger
make[2]: Entering directory `/home/pi/myNAS/RaspberryPiPackages/gstreamer-1.0/gst-plugins-bad/ext/schroedinger'
make[3]: Entering directory `/home/pi/myNAS/RaspberryPiPackages/gstreamer-1.0/gst-plugins-bad/ext/schroedinger'
make[3]: Nothing to be done for `install-exec-am'.
 /bin/mkdir -p '/usr/local/lib/gstreamer-1.0'
 /bin/bash ../../libtool   --mode=install /usr/bin/install -c   libgstschro.la '/usr/local/lib/gstreamer-1.0'
libtool: install: /usr/bin/install -c .libs/libgstschro.so /usr/local/lib/gstreamer-1.0/libgstschro.so
libtool: install: /usr/bin/install -c .libs/libgstschro.lai /usr/local/lib/gstreamer-1.0/libgstschro.la
libtool: finish: PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/sbin" ldconfig -n /usr/local/lib/gstreamer-1.0
----------------------------------------------------------------------
Libraries have been installed in:
   /usr/local/lib/gstreamer-1.0

Return to “Media centres”