Building GStreamer

= Building GStreamer for OMAP4 =

Building a module
Building GStreamer using native compilation is really the same as it is to build GStreamer natively on a desktop.

First get the source code by git cloning from GStreamer-omap repository in Gitorious and change to the git branch you want to build.

$ git clone git://gitorious.org/gstreamer-omap/gstreamer.git $ git checkout v0.10.35+ti

Then install the dependencies using apt-get build-dep :

$ apt-get build-dep gstreamer0.10

Finally build:

$ cd gstreamer $ ./autogen.sh $ ./configure --prefix=/usr/ $ make

Use the gst-uninstalled script to run gstreamer without having to install it, or run $make install and use GST_PLUGIN_PATH environment variable to point to the recently installed plugins.

For gst-plugins-good and gst-plugins-bad you should add --enable-experimental to configure parameters in order to build v4l2sink and camerabin2.

Repositories and branches
Repositories for regular GStreamer modules track upstream on the branch master and TI modifications on a separate branch. The name of this branch is composed as v +ti. For instance, on gstreamer.git repository, branch v0.10.35+ti contains TI modifications on top of release 0.10.35 of gstreamer library.

GST-Ducati and Libdce are maintained by TI itself and the branch master holds the current development.

List of repositories and corresponding TI branches:


 * git://gitorious.org/gstreamer-omap/gstreamer.git: v0.10.35+ti
 * git://gitorious.org/gstreamer-omap/gst-plugins-base.git: v0.10.35+ti
 * git://gitorious.org/gstreamer-omap/gst-plugins-good.git: v0.10.30+ti
 * git://gitorious.org/gstreamer-omap/gst-plugins-bad.git: v0.10.22+ti
 * git://gitorious.org/gstreamer-omap/gst-ducati.git: master
 * git://gitorious.org/gstreamer-omap/libdce.git: master

Miscellaneous notes

 * 1) ntp doesn't seem to update the time automatically. Run 'sudo /etc/network/if-up.d/ntpdate' after you reboot.
 * 2) Be careful of time when you build: If you don't reset the system clock (or use ntp to do it for you) then when you recompile, `make' might not recompile some .c files if it thinks they are older than the .o file.
 * 3) Master branch of upstream repositories is not refreshed often, if you want to use master branch track it from upstream repository on freedesktop.org

= Building GStreamer packages for OMAP4 =

The source for Debian packages can be downloaded from Ubuntu-Omap repository in gitorious.