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

Release notes for GStreamer 0.10.21 "Take These Things From Me"

The GStreamer team is proud to announce a new release in the 0.10.x stable series of the core of the GStreamer streaming media framework.

The 0.10.x series is a stable series targeted at end users. It is not API or ABI compatible with the stable 0.8.x series. It is, however, parallel installable with the 0.8.x series.

The 0.10.x series has been reworked for threadsafety. It also features various feature additions and enhancements.

This module, gstreamer, only contains core functionality. For actual media playback, you will need other modules.

contains a basic set of well-supported plug-ins
contains a set of well-supported plug-ins under our preferred license
contains a set of well-supported plug-ins, but might pose problems for distributors
contains a set of less supported plug-ins that haven't passed the rigorous quality testing we expect

Features of this release

  • Basetransform rework
  • Basesink synchronisation extensions
  • New documentation
  • Many bug fixes, enhancements and optimisations

Bugs fixed in this release

  • 481169 : [tag] add support for geo tags (gps location etc.)
  • 520694 : adding GST_TAG_KEYWORDS
  • 538201 : deleting the control point at ts=0 does not lower the con...
  • 544855 : fakesrc and fakesink should call super::event()
  • 339795 : [GstBaseTransform] Reverse negotiation issues in passthro...
  • 348114 : [PPC64?] [gcc-4.1.2?] GST_BUFFER_IN_CAPS flag should have...
  • 361718 : [basetransform] needs API to force renegotiation
  • 533856 : gst_buffer_join() documentation is unclear
  • 536978 : GTKDOC_CFLAGS should include CFLAGS
  • 537804 : [multiqueue] wrongly reporting that the queue is full.
  • 537812 : [check] add api to setup a pad by name
  • 538568 : Add GST_TAG_ATTACHMENT
  • 539772 : gst_pad_template_new() does more than call g_object_new()
  • 542175 : gst-inspect --gst-plugins-path fails with multiple direct...
  • 543444 : gst_base_sink_get_position can return 0 unexpectedly
  • 543853 : Bison version check failure on OSX 10.4 Tiger
  • 544174 : [basesrc] allow dynamic value of the seekable value.
  • 544776 : [win32] binary registry may fail if glib is using a diffe...
  • 545352 : gsturi is too restrictive
  • 545603 : gst-inspect: don't print uri handler when compiled withou...
  • 545605 : gstelementfactory: don't use uri handler code without uri...
  • 545607 : gst: include gstconfig when using macros defined therein
  • 545853 : [basetransform] rewrite
  • 546328 : fractions with G_MAXINT cause failure for fixation
  • 546822 : gstreamer doesn't tell gettext to output its translations...
  • 547277 : filesrc detect if a file is seekable using SEEK_SET and n...
  • 547728 : [basetransform] fail on buffer_alloc
  • 548394 : basesink should ignore EOS during flushing
  • 548652 : [Inconsistency] GST_TAG_LOCATION is used for different me...
  • 549504 : Thread-safe version of gst_pad_get_internal_links()
  • 551952 : Need 'check' package when compile
  • 551978 : Memleak in gst_element_sync_state_with_paren
  • 547835 : tee release_request_pad while buffer_alloc racyness
  • 538628 : Patch: added a timeout property to fdsrc used in gst_poll...
  • 546883 : [basetransform] ximagesink fails when resizing video window
  • 551509 : gst_base_transform_prepare_output_buffer: assertion faile...

API changes

  • API additions
    • Add GST_TAG_ATTACHMENT for generic file attachments to streams.
    • Add gst_base_sink_set_render_delay()
    • Add gst_base_sink_get_render_delay()
    • Add gst_check_setup_src_pad_by_name
    • Add gst_check_setup_sink_pad_by_name
    • Add gst_check_teardown_pad_by_name
    • Add GstBaseTransform::gst_base_transform_suggest()
    • GstBaseTransform::gst_base_transform_reconfigure()
    • GstPad::gst_pad_set_iterate_internal_links_function()
    • GstPad::GstPadIterIntLinkFunction
    • GstPad::gst_pad_iterate_internal_links()
    • GstPad::gst_pad_iterate_internal_links_default()
  • API deprecations
    • gst_pad_get_internal_links()
    • gst_pad_set_internal_link_function()
    • gst_pad_get_internal_links_default()


You can find source releases of gstreamer in the gstreamer download directory.

The git repository and details how to clone it can be found at .


The project's website is

Support and Bugs

We use GNOME's bugzilla for bug reports and feature requests.

Please submit patches via bugzilla as well.

For help and support, please subscribe to and send questions to the gstreamer-devel mailing list (see below for details).

Find us on IRC at #gstreamer.


Git is hosted on You can browse the gstreamer repository.

All code is in Git and can be checked out from there.

Interested developers of the core library, plugins, and applications should subscribe to the gstreamer-devel list.


Applications ported to GStreamer 0.10 include Totem, RhythmBox, Sound-Juicer, Gnome Media, Flumotion, Amarok, Jamboree, Pitivi, Istanbul, AnnoAmp, Elisa, and others. Let us know if you want to be added to this list.

Contributors to this release

  • Alessandro Decina
  • Antoine Tremblay
  • David Schleef
  • Edward Hervey
  • Frederic Crozat
  • Jan Schmidt
  • Jason Zhao
  • Joel Larsson
  • Luc Pionchon
  • Michael Smith
  • Murray Cumming
  • Ole André Vadla Ravnås
  • Olivier Crete
  • Rene Stadler
  • Robert Schwebel
  • Sebastian Dröge
  • Stefan Kost
  • Thijs Vermeir
  • Thomas Vander Stichele
  • Tim-Philipp Müller
  • Tristan Matthews
  • Wim Taymans

Report a problem on this page.