2 Release notes for GStreamer Good Plugins 1.3.1
5 The GStreamer team is pleased to announce the first release of the unstable
6 1.3 release series. The 1.3 release series is adding new features on top of
7 the 1.0 and 1.2 series and is part of the API and ABI-stable 1.x release
8 series of the GStreamer multimedia framework. The unstable 1.3 release series
9 will lead to the stable 1.4 release series in the next weeks, and newly added
10 API can still change until that point.
14 Binaries for Android, iOS, Mac OS X and Windows will be provided separately
15 during the unstable 1.3 release series.
19 The versioning scheme that is used in general is that 1.x.y is API and
20 ABI backwards compatible with previous 1.x.y releases. If x is an even
21 number it is a stable release series and all releases in this series
22 will only contain important bugfixes, e.g. the 1.0 series with 1.0.7. If
23 x is odd it is a development release series that will lead to the next
24 stable release series 1.x+1 and contains new features and bigger
25 changes. During the development release series, new API can still
30 "Such ingratitude. After all the times I've saved your life."
33 A collection of plugins you'd want to have right next to you on the
34 battlefield. Shooting sharp and making no mistakes, these plugins have it
35 all: good looks, good code, and good licensing. Documented and dressed up
36 in tests. If you're looking for a role model to base your own plugin on,
40 If you find a plot hole or a badly lip-synced line of code in them,
41 let us know - it is a matter of honour for us to ensure Blondie doesn't look
42 like he's been walking 100 miles through the desert without water.
45 This module contains a set of plugins that we consider to have good quality
46 code, correct functionality, our preferred license (LGPL for the plugin
47 code, LGPL or LGPL-compatible for the supporting library).
48 We believe distributors can safely ship these plugins.
49 People writing elements should base their code on these elements.
52 Other modules containing plugins are:
56 contains a basic set of well-supported plugins
58 contains a set of well-supported plugins, but might pose problems for
61 contains a set of less supported plugins that haven't passed the
62 rigorous quality testing we expect, or are still missing documentation
65 contains a set of codecs plugins based on libav (formerly gst-ffmpeg)
71 Bugs fixed in this release
73 * 728501 : rtpaux/rtprtx: Unit tests are racy and take very long sometimes
74 * 719636 : deinterlace: alters caps in passthrough mode preventing hardware decode
75 * 727305 : matroskademux: Add support for A_OPUS
76 * 725632 : v4l2: Normalise control names in the same way as v4l2-ctl
77 * 345830 : qtdemux: better edit lists handling
78 * 636143 : avidemux: report creation date/time via GST_TAG_DATE_TIME
79 * 652986 : rtpjitterbuffer: events are not serialized
80 * 664339 : matroskamux: support for audio/x-adpcm
81 * 691570 : [isomp4/qtdemux] lots of critical warnings on this sample file
82 * 692787 : rtph264pay: No way to clear SPS and PPS in case of a new stream
83 * 705024 : aacparse: does not propagate downstream sample rate restriction upstream
84 * 705982 : mp4mux: HDLR box name string is not NULL terminated
85 * 708165 : videomixer: Store and forward tag events
86 * 709079 : rtpgstpay: Leaks memory
87 * 709093 : qtdemux: add HEVC support
88 * 709266 : matroska-demux leaks memory
89 * 709312 : videoflip: Add an automatic method that flip base on image-orientation tag
90 * 710415 : hdv1394src: Not possible to select a HDV camera from GUID
91 * 710762 : qtdemux: fails reading some MOV files with problematic jpeg frames
92 * 711010 : videomixer: remove unneeded guint comparison
93 * 711011 : y4mencode: fix uninitialized variable warning
94 * 711013 : osxvideosink: fix missing selector name warning
95 * 711084 : rtpmanager: add new rtprtxsend and rtprtxreceive elements for retransmission
96 * 711087 : rtpbin: Support Auxiliary streams
97 * 711270 : check: add rtpsession test
98 * 711411 : rtpjitterbuffer: implement RTX statistics
99 * 711412 : rtpjitterbuffer: Automatically calculate RTX properties based on RTT
100 * 711560 : rtpsession: ssrc collision improvements
101 * 711693 : rtpsession: Implement various session statistics
102 * 712206 : v4l2: print FOURCC before enumerating
103 * 712254 : multifilesrc: Implement seeking in case of multiple images
104 * 712303 : qtdemux: playback regression after commit ae1150e85cf99d7482933aa6f7e4f012fe45a3ec
105 * 712567 : rtpsession: RBs are not included in SRs after the first RTCP timeout when there are multiple internal senders
106 * 712612 : v4l2bufferpool: take over the floating reference for the new allocator
107 * 712754 : v4l2: add support for multi-planar V4L2 API
108 * 719434 : rtph264pay maps and unmaps inbuffer twice
109 * 719497 : videoflip: crashes on tag list without orientation tag in git master
110 * 719783 : qtdemux: regression with mp4-main-multi-mpd-AV-NBS.mpd
111 * 719829 : rtp: Add RFC4571 framing/de-framing element
112 * 719938 : rtpbin: allow dynamic RTP/RTCP encoders and decoders
113 * 720371 : rtpbin: Impossible to set jitterbuffer rtx-* properties when using rtpbin
114 * 720512 : flacparse: Doesn't set the codec tag
115 * 720568 : v4l2: Various changes to allow using M2M decoders
116 * 720995 : matroskamux: add g726 adpcm support
117 * 721245 : osxvideosink: Fails to build on OS X Leopard 10.5.8
118 * 721342 : shout2send: Some minor cleanups
119 * 722175 : rtpmanager: improve code of rtprtx* elements
120 * 722370 : rtprtxsend: push rtx buffers from a different thread to avoid long retransmission delays
121 * 722372 : rtpjitterbuffer: Got data flow before stream-start event
122 * 722394 : v4l2: set GST_BUFFER_FLAG_DELTA_UNIT when appropriate
123 * 722396 : avimux: don't make the buffer writable unless absolutely necessary
124 * 722866 : rtspsrc: add rtpjitterbuffer do-retransmission property
125 * 722981 : autodetect elements have inconsistent handling of autoplugin
126 * 723166 : qtdemux: incorrect tag character
127 * 723269 : matroskamux: used uid list grows forever
128 * 723289 : cairooverlay: add RGB16 support
129 * 723502 : gst-plugins-good: Do not build check tests for disabled plugins
130 * 723849 : matroska: add support for GRAY8, BGR and RGB video colourspaces in V_UNCOMPRESSED codec
131 * 724085 : gst-plugins-good/docs: Rebalance docbook < para > tags in comments
132 * 724213 : rtph264pay: shouldn't update time for sending SPS and PPS if we failed to send SPS or PPS
133 * 724396 : rtspsrc: add tls-database property
134 * 724636 : v4l2videodec: VP8 KO with playbin
135 * 724705 : videomixer: Port to new collectpads API
136 * 724712 : rtspsrc doesn't set caps on pads before adding them
137 * 724899 : v4l2src does not set interlaced flag on buffers
138 * 725008 : matroskademux: crash with 24bit raw audio
139 * 725159 : rtpjitterbuffer: RTP sequence number rollover problems
140 * 725361 : [regression] rtpsession: setting the " internal-ssrc " property does nothing
141 * 725480 : gst-plugins-good: Ignore gcov intermediate files
142 * 725723 : osxvideo: GetCurrentProcess not available on Mavericks
143 * 725948 : videomixer2: crash after renegotiating with different resolution
144 * 726106 : matroskademux: does not handle fps lower than 1
145 * 726161 : png plugin handles interlaced png files incorrectly
146 * 726696 : rtspsrc memleaks
147 * 726737 : osxvideosink: advertize for the video meta API support
148 * 726738 : osxvideosink: use the video frame API instead of the video meta API
149 * 726833 : ximagesrc: Add alpha channel support
150 * 726837 : rtspsrc segfault
151 * 727821 : souphttpsrc: Regression in push mode
152 * 727867 : qtdemux: Does not return stream flags from trex atom
153 * 727878 : qtdemux: replace duplicated variable when parsing trex atom
154 * 729223 : wavparse: drops upstream tags for .wav files that are ID3 tagged
155 * 728987 : qtdemux: 'caps' may be used uninitialized in this function.
156 * 729067 : goom filter: left shift of 24 places cannot be represented in type 'int'
157 * 712333 : regression: videoflip: aborts with gst_video_flip_transform_caps: code should not be reached
158 * 722077 : v4l2: compile error - 'V4L2_CAP_VIDEO_M2M_MPLANE' undeclared
159 * 722127 : v4l2: Add NV12_64Z32 support
160 * 722128 : v4l2: Implement video decoder
161 * 723446 : v4l2src: Should detect support for mplanar formats during runtime
162 * 726453 : v4l2 plugin broken due to bundeling of videodev2.h
163 * 721764 : souphttpsrc: Add ability to do HTTP session logging
164 * 722311 : matroskaparse: should try to identify data on stream header before going with a blind
165 * 722705 : Factor out common init/reset code from matroska parse/demux
166 * 712643 : qtdemux: couple of issues with vobsub
167 * 581295 : mp4mux: Add support for embedded subtitles
171 You can find source releases of gst-plugins-good in the download
172 directory: http://gstreamer.freedesktop.org/src/gst-plugins-good/
174 The git repository and details how to clone it can be found at
175 http://cgit.freedesktop.org/gstreamer/gst-plugins-good/
179 The project's website is http://gstreamer.freedesktop.org/
181 ==== Support and Bugs ====
183 We use GNOME's bugzilla for bug reports and feature requests:
184 http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer
186 Please submit patches via bugzilla as well.
188 For help and support, please subscribe to and send questions to the
189 gstreamer-devel mailing list (see below for details).
191 There is also a #gstreamer IRC channel on the Freenode IRC network.
195 GStreamer is stored in Git, hosted at git.freedesktop.org, and can be cloned
196 from there (see link above).
198 Interested developers of the core library, plugins, and applications should
199 subscribe to the gstreamer-devel list.
202 Contributors to this release
205 * Aleix Conchillo Flaque
206 * Aleix Conchillo Flaqué
209 * Andoni Morales Alastruey
211 * Branislav Katreniak
213 * Christian Fredrik Kalager Schaller
216 * Djalma Lúcio Soares da Silva
225 * Jeremy Huddleston Sequoia
231 * Luis de Bethencourt
235 * Mathieu Duponchelle
249 * Reynaldo H. Verdejo Pinochet
252 * Santiago Carot-Nemesio
254 * Sebastian Rasmussen
256 * Sreerenj Balachandran