open source multimedia framework
Annual Conference
Planet (Blogs)
Security Center
Mailing Lists
File a Bug
Bug Lists
Follow @gstreamer on Twitter

Developer Information

Much documentation and some introductory slides are to be found on the Documentation page. We suggest to read the manual and the slides to get a general overview and to get you started.

New developers are welcome to:

  • Contribute to the core library.
  • Write plugins for GStreamer.
  • Write applications using GStreamer.
  • Write a lot of language bindings.
  • Contribute to the documentation.
  • Build test cases.

The developers tend to live in IRC on Freenode, in #gstreamer.

Git access


The repository is split in several modules.

Anonymous Git Access

This project's Git repository can be checked out through anonymous Git with the following instruction set. The module you wish to check out must be specified as the modulename. To determine the names of the modules created by this project, you may examine their Git repository via the provided web-based Git repository viewer.

git clone git://

Developer Git Access

Developers can check out modules from git like this:

git clone ssh://

Only project developers can access the Git tree via this method. A Git client must be installed on your client machine. Substitute modulename and username with the proper values. Make sure the appropriate SSH key is available on your machine (add it with
). Enter your SSH key's passphrase when prompted.

You can find information on how to get a developer account on freedesktop here.

However, usually you should only apply for a developer account if you have been encouraged by a GStreamer developer to do so, or have been contributing to GStreamer and been active in the GStreamer community for some time.

You do not need a developer account in order to work on GStreamer. Anonymous git access should be sufficient for that, and it's easy to maintain personal git branches elsewhere with git (e.g. on a personal server, or gitorious or github). Patches can and should then be submitted via bugzilla, as per the SubmittingPatches page on the wiki.

Developers will be added to the project for write access as necessary. For all other changes, please submit patches (in git format-patch) format to bugzilla. File a new bug and then attach the patch to the bug.

Continuous integration: Build bots and validation

Commits to Git are verified by our build cluster. This does automated checkouts on a series of slaves and runs the build there, as well as an extensive media validation test suite. If a commit breaks a build it is announced in the #gstreamer IRC channel and on the GStreamer Continuous Integration website.

Language Bindings

The GStreamer API can be accessed from various programming languages in addition to the native C API.

Report a problem on this page.