GStreamer is a free multimedia framework, licensed under the LGPL. It is written in the C programming language and uses the software library GObject. GStreamer is one of the projects of freedesktop.org, the endeavor is to increase the cooperation and the exchange of data between projects through open standards.
Field of application
This library is intended to provide basic functionality for processing multimedia data streams, and thus can serve as a basis for multimedia applications such as media players, video editing software and audio mixers. It can be easily extended using plug-ins.
The advantage of GStreamer ( and more generally of frameworks ) is to be able to deploy the software developers an easy -to-use as possible backbone. So less time in the development of basic functions must be invested, and there is more time for the individual program parts left, which should make the new functionality. Installed plug -ins are automatically available to all GStreamer - based applications, and automatically benefit from the new capabilities.
There are bindings for Perl, Python, Java, Vala, C #, Guile and Ruby, which enable the development of an application in one of these languages.
Since the core of GStreamer is relatively compact, it is also used in the embedded systems, such as Maemo or HP webOS.
The end of 1999 the project GStreamer was a public project. GStreamer has been and is primarily designed for Unix / Linux. Meanwhile, numerous programs are based on GStreamer, including since version 2.2, the Gnome desktop environment and matching music and video programs such as Rhythmbox or Cheese. The used since KDE 4 multimedia API Phonon can use GStreamer as a backend.