Release notes for
GStreamer Good Plug-ins 0.10.25
"Woe to You Oh Earth and Sea"
The GStreamer team is proud to announce a new release
in the 0.10.x stable series of the
GStreamer Good Plug-ins.
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.
"Such ingratitude. After all the times I've saved your life."
A collection of plug-ins you'd want to have right next to you on the
battlefield. Shooting sharp and making no mistakes, these plug-ins 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 plug-in 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 plug-ins that we consider to have good quality
code, correct functionality, our preferred license (LGPL for the plug-in
code, LGPL or LGPL-compatible for the supporting library).
We believe distributors can safely ship these plug-ins.
People writing elements should base their code on these elements.
Other modules containing plug-ins are:
- contains a basic set of well-supported plug-ins
- contains a set of well-supported plug-ins, but might pose problems for
- contains a set of less supported plug-ins that haven't passed the
rigorous quality testing we expect
Features of this release
- v4l2src: massive performance improvement in many cases
- streaming mode fixes for avi and matroska/webm
- seeking in matroska and webm files that don't have an index
- new cpureport element for debugging
- avidemux: improve VBR audio stream handling
- avidemux: streaming mode fixes: use proper offset for movi-based index, handle 0-size data chunks
- debugutils: new element cpureport, posts "cpu-report" element messages on bus
- flacdec, rtspsrc, rtph264pay, rtpmp4vdepay: memory leak fixes
- gconfvideosrc: use correct GConf key (ie. not the audiosrc key)
- gdkpixbuf: remove gdkpixbuf3 plugin again, gdk-pixbuf was split out of gtk+ and will stay at 2.x
- id3v2mux: write beats-per-minute tag using TBPM frame
- jpegdec: fix markers parsing regression
- matroskademux: do not error out on a block with unknown tracknumber
- matroskademux: fix streaming in case where the size in bytes is unknown
- matroskademux: handle bogus files storing ADTS AAC data
- matroskademux: support seeking in local files even if they don't have an index
- matroskamux: don't try to seek back and fix up headers if streamable=TRUE
- pulsesink: fix race when creating multiple pulsesinks at the same time
- qtdemux: also calculate PAR using track width and height for QT files
- qtdemux: fix the max/avg in btrt atom reading
- qtdemux: improve reverse playback
- qtdemux: parse 64-bit version of mvhd atom as well instead of erroring out
- qtdemux: prevent reading past avc1 atom when parsing
- rtpg729pay: avoid basertppayload perfect-rtptime mode
- rtph263pdepay: allow more clock-rates as input
- rtpL16depay: also parse encoding-params for the number of channels
- rtpL16depay: default to 1 channel if number of channels not specified
- rtpmp4gpay: implement perfect timestamps
- rtspsrc: add "port-range" property, useful for setups with firewall/ipsec
- rtspsrc: don't reuse udp sockets (avoids odd errors when data from previous streams is received)
- udpsrc: add "reuse" property to enable or disable port reuse (enabled by default, but disabled in rtspsrc)
- v4l2: sort formats in the right order so that non-emulated formats are prefered
- videobalance: fix wrong locking order that could lead to a deadlock
- videomixer: only reset QoS information and send a NEWSEGMENT event downstream for NEWSEGMENT events on the master pad
Bugs fixed in this release
: [matroskademux] " reading large block of size 14688496 not supported "
: [avidemux] Support AVF files
: [avidemux] fails to stream eva_2010_2.22_promo1.avi
: [id3v2mux] write beats-per-minute tag
: [GstRtpMP4GDepay] Packet payload was too short.
: rtspsrc has confusing error messages
: bug in rtpL16depay
: avidemux: push mode doesn't work for some http streaming avi files
: Reverse Playback Issue in QtDemux
: [qtdemux] qt file with dimension data in tkhd does not get pixel-aspect-ratio in caps
: videobalance: deadlocks/freezes when changing " brightness " property
: The matroska muxer seeks even when used with streamable=TRUE
: rtspsrc: memory leak in gst_rtspsrc_handle_request
: [examples] Don't use GdkDraw
: rtspsrc: add property to set client port range
: [qtdemux] Set the pixel-aspect-ratio field also for par=1/1
: [matroskademux] critical warnings when playing live webm with progressive download enabled
: pulsesink: crash - pa_threaded_mainloop_stop is called from the pa thread
: [videomixer] Pipeline from the docs doesn't work anymore
: matroskademux: CRITICAL **: file matroska-demux.c: line 578 (gst_matroska_demux_get_length): should not be reached
: [qtdemux] segfault when parsing avc1 atom
: [imagefreeze] Incorrect seek behaviour
: [deinterlace] Broken timestamps
: [matroska] Implement push-mode seeking and non-cue seeking
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
- Andoni Morales Alastruey
- Arnaud Vrac
- David Schleef
- Jonathan Matthew
- Mark Nauwelaerts
- Philippe Normand
- Sebastian Dröge
- Sjoerd Simons
- Stefan Kost
- Thiago Santos
- Tim-Philipp Müller
- Wim Taymans
- Zaheer Abbas Merali