Building with GES
This is a set of instructions for compiling GES, PyGST, GStreamer 1.0 and run pitivi on top of GES. This assumes the following:
- You know minimally how to use Git
- You are reasonably familiar with compiling and resolving dependencies. Make sure to take a look at the instructions on that page before continuing, it will save you a lot of time!
- You have a recent Linux distribution
Warning: the xptv file format changed in the GES version. Please keep backups of xptv files you made with 0.15 as files saved with the GES version will not open in 0.15.
The easy/automated way
This is the official way of getting your environment up and running. This is what we use for testing.
- Solve the Dependencies.
- Get this script, save it, make it executable and run it: http://git.gnome.org/browse/pitivi/plain/bin/pitivi-git-environment.sh
What the script will do:
- The first time you run it, the script will create a "pitivi-git" directory in your home folder. Then, it will get all the git repositories and set all the remotes for gst-python, gst-editing-services and pitivi. If gstreamer 1.0 is not detected on your system, it will build it for you too.
- On subsequent runs, running this script will set up your environment variables so that you can easily run (or build) pitivi git.
If you want to update your whole build in one go, or have failed to do the initial build (due to missing dependencies or something), re-run the script with the --build parameter. In some cases, you might have to delete the "glib" directory. Note that "--build" will not force everything to be rebuilt all the time; if you want to do that, use the --force-autogen parameter instead. This is especially useful if you did not solve all the optional dependencies to have a complete GStreamer experience (for example, missing MP3 support).
- Make sure to exit the script's environment (with ctrl+D) before re-running the script. Otherwise, if you were already inside the environment, re-entering the script makes it think you have gstreamer 1.0 already set up (it will say "Using System wide GStreamer 1.0").
The manual way
You'll have to build gstreamer 1.0 first. If you don't know what you're doing, consider using the automated script above or jhbuild.
First, start by solving the Dependencies.
Install gi(gobject introspection) overrides for gstreamer:
git clone git://anongit.freedesktop.org/gstreamer/gst-python cd gst-python ./autogen.sh # no need for prefix as we wont install make
GStreamer Editing Services - the GES lib
git clone git://anongit.freedesktop.org/gstreamer/gst-editing-services cd gst-editing-services ./autogen.sh --prefix=$HOME/.local make make install
GNonLin plugin for gstreamer
git clone git://anongit.freedesktop.org/gstreamer/gnonlin cd gnonlin ./autogen.sh --prefix=$HOME/.local make make install
git clone git://git.gnome.org/pitivi cd pitivi ./autogen.sh make
Then launch the beast:
GI_TYPELIB_PATH=~/.local/lib/girepository-1.0/ LD_LIBRARY_PATH=~/.local/lib/ GST_PLUGIN_PATH=~/.local/lib/gstreamer-1.0/ PYTHONPATH=/usr/lib/python2.7/dist-packages/:../gst-python/ python bin/pitivi
See also Git for instructions on how to deal with Pitivi git branches.