Release notes for
GStreamer Good Plugins 1.7.1
The GStreamer team is pleased to announce the first release of the unstable
1.7 release series. The 1.7 release series is adding new features on top of
the 1.0, 1.2, 1.4 and 1.6 series and is part of the API and ABI-stable 1.x release
series of the GStreamer multimedia framework. The unstable 1.7 release series
will lead to the stable 1.8 release series in the next weeks. Any newly added
API can still change until that point.
Binaries for Android, iOS, Mac OS X and Windows will be provided separately
during the unstable 1.7 release series.
"Such ingratitude. After all the times I've saved your life."
A collection of plugins you'd want to have right next to you on the
battlefield. Shooting sharp and making no mistakes, these plugins have it
all: good looks, good code, and good licensing. Documented and dressed up
in tests. If you're looking for a role model to base your own plugin on,
here it is.
If you find a plot hole or a badly lip-synced line of code in them,
let us know - it is a matter of honour for us to ensure Blondie doesn't look
like he's been walking 100 miles through the desert without water.
This module contains a set of plugins that we consider to have good quality
code, correct functionality, our preferred license (LGPL for the plugin
code, LGPL or LGPL-compatible for the supporting library).
We believe distributors can safely ship these plugins.
People writing elements should base their code on these elements.
Other modules containing plugins are:
- contains a basic set of well-supported plugins
- contains a set of well-supported plugins, but might pose problems for
- contains a set of less supported plugins that haven't passed the
rigorous quality testing we expect, or are still missing documentation
and/or unit tests
- contains a set of codecs plugins based on libav (formerly gst-ffmpeg)
Bugs fixed in this release
: matroskademux: complete support for A_OPUS (SeekPreRoll, CodecDelay and DiscardPadding)
: matroskamux: support video/x-vp9. webmmux: support audio/x-opus
: qtdemux: Does not properly update base time for non-flushing seeks
: vpxdec: Should try to avoid copies at output
: rtpsession: Also report internal sources in on-new-ssrc and on-ssrc-active
: directsoundsink: fix sleep for buffer-time lower than 200000
: rtpsession: Implement sending of reduced size RTCP packets
: souphttpsrc: add tls-interaction property
: rtp: Dynamic dropout / reorder limits
: rtpsession: Expose RTPSource stats through stats property
: rtpmux: allow the ssrc-property to decide ssrc on outgoing buffers
: qtdemux: add support for XML timed-text subtitles
: jpegdec: fix output state memory leak
: qtdemux: support edit lists partially in push-mode
: gstreamer: good: Fix memory leaks when context parse fails.
: flvmux: use time segment and copy timestamps when streamable
: rtpsource: In case of sender, doesn't need to think about probation and rtp gap.
: smpte: Memory leak
: smpte: Use video info data instead of macro
: qtdemux: check multi trex to find track id in mp4 (DASH) stream.
: avidemux: Reverse playback does not consider segment.start
: rtp: RTCP mapping between NTP and RTP time could be capture or send time based
: souphttpclientsink: Fix memory leaks and segfault crash
: flvdemux: output speex vorbiscomment as a GstTagList
: flvdemux: speex is also always 16KHz
: vpx: create base class for vpx encoders and decoders
: gdkpixbufdec: Fix pixbuf_loader leak during failures
: qtdemux: fix memory leak for corrupted file
: mpegaudioparse: Fix buffer memory leak
: audiofx: Remove unused variable
: souphttpclientsink: Add " retry " for request failures
: audiofx: remove unused variable
: audiochebband: Fix typo in example pipeline
: rtph264pay: add config-interval option to send PPS/SPS before every key frame
: v4l2object: add support of NV16, NV61 and NV24 formats
: v4l2: Track /dev/video* to triggered required probe
: qtdemux: Fix string memory leak
: qtdemux: Seeking in dashdemux broken since edit list changes
: vpxdec: Use more threads by default
: matroska: Missing support for prores video
: souphttpclientsink: Fix error leak and handle error
: multifilesink: fix spelling on multi_file_sink_next_type variable
: aacparse: Avoid over-skipping when checking LOAS config
: qtdemux: letting flushes pass downstream on upstream offset seeks
: interleave: Remove unsed field
: directsoundsink: check device property, don't use default if a specific device is set
: dvdec: Remove unused fields
: DTS > PTS creates invalid mp4 files
: progressreport: Add support for using format=buffers with do-query=false
: tests: souphttpsrc test_icy_stream:0: Assertion 'caps != NULL' failed
You can find source releases of gst-plugins-good in the
gst-plugins-good download directory.
The git repository and details how to clone it can be found at
The project's website is https://gstreamer.freedesktop.org.
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).
There is also a #gstreamer IRC channel on the Freenode IRC network.
Git is hosted on git.freedesktop.org. You can
browse the gst-plugins-good 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.
Contributors to this release
- Alessandro Decina
- Anton Bondarenko
- Arun Raghavan
- Aurélien Zanelli
- Chris Bass
- Dave Craig
- Edward Hervey
- Evan Callaway
- George Kiagiadakis
- Graham Leggett
- Guillaume Desmottes
- Guillaume Marquebielle
- Havard Graff
- Hyunjun Ko
- Jan Schmidt
- Josep Torra
- Julien Isorce
- Luis de Bethencourt
- Manasa Athreya
- Michael Olbrich
- Miguel París Díaz
- Mischa Spiegelmock
- Nicola Murino
- Nicolas Dufresne
- Nirbheek Chauhan
- Olivier Crête
- Philipp Zabel
- Philippe Normand
- Prashant Gotarne
- Ramiro Polla
- Ravi Kiran K N
- Reynaldo H. Verdejo Pinochet
- Ryan Hendrickson
- Sebastian Dröge
- Stavros Vagionitis
- Stian Selnes
- Thiago Santos
- Thibault Saunier
- Thomas Roos
- Tim-Philipp Müller
- Vincent Dehors
- Vineeth T M
- Vineeth TM
- William Manley
- Wim Taymans
- Xavier Claessens