2 Release notes for GStreamer Base Plug-ins 0.10.33 "Relaxing Distractions"
6 The GStreamer team is proud to announce a new release
7 in the 0.10.x stable series of the
8 GStreamer Base Plug-ins.
11 The 0.10.x series is a stable series targeted at end users.
12 It is not API or ABI compatible with the stable 0.8.x series.
13 It is, however, parallel installable with the 0.8.x series.
17 This module contains a set of reference plugins, base classes for other
18 plugins, and helper libraries.
20 This module is kept up-to-date together with the core developments. Element
21 writers should look at the elements in this module as a reference for
24 This module contains elements for, among others:
26 device plugins: x(v)imagesink, alsa, v4lsrc, cdparanoia
28 codecs: vorbis, theora
29 text: textoverlay, subparse
30 sources: audiotestsrc, videotestsrc, gnomevfssrc, giosrc
33 audio processing: audioconvert, adder, audiorate, audioresample, volume
34 visualisation: libvisual
35 video processing: ffmpegcolorspace
36 aggregate elements: uridecodebin, playbin2, decodebin2, decodebin, playbin, encodebin
37 libraries: app, audio, cdda, fft, interfaces, netbuffer, pbutils, riff, rtp, rtsp, sdp, tag, video
40 Other modules containing plug-ins are:
44 contains a set of well-supported plug-ins under our preferred license
46 contains a set of well-supported plug-ins, but might pose problems for
49 contains a set of less supported plug-ins that haven't passed the
50 rigorous quality testing we expect
56 Features of this release
58 * audioringbuffer: make sure to not start if the may_start flag is FALSE
59 * baseaudiosink: arrange for running clock when rendering eos
60 * baseaudiosink: don't allow aligning behind the read-segment
61 * baseaudiosink: start ringbuffer upon going to PLAYING and already EOS
62 * riff: Add support for video/x-camstudio
63 * rtcpbuffer: fix invalid read in validation of padding in rtcp packet
64 * rtcpbuffer: Round to next 32bit word, not current 32bit word at end of SDES chunk
65 * rtpbuffer: Off-by-one error when creating RTP header extensions with a two-byte header
66 * rtsptransport: ensure valid int result when parsing ranges
67 * tag: map the ID3v2 TENC frame to GST_TAG_ENCODED_BY
68 * tag: add GST_TAG_CAPTURING_EXPOSURE_COMPENSATION incl. EXIF/XMP mappings
69 * tag: add a new GstTagXmpWriter interface to select XMP schemas to be used
70 * tagdemux: also push cached events downstream when operating in pull mode
71 * video: add GST_VIDEO_BUFFER_PROGRESSIVE flag
72 * video: add ARGB64 and AYUV64 (16 bits per channel) formats
73 * video: add r210 (10 bits per channel) format
74 * video: add gst_video_format_get_component_depth() and _new_template_caps()
75 * video: fix creation of grayscale caps and height calculation for YUV9/YVU9
76 * appsink: emit "new-buffer-list" signal for buffer lists if handled by app
77 * audiorate: add "skip-to-first" property
78 * decodebin2: don't use the same parser element multiple times in the same chain
79 * decodebin2: improve detection of raw caps in expose-all-streams=false mode
80 * discoverer: don't wait for subtitle streams to preroll; leak fixes
81 * discoverer: use nominal bitrate if bitrate tag is unavailable
82 * encodebin: add an audioconvert after the audio resampler
83 * encodebin: fix refcounting issues and leaks related to request pads
84 * encodebin: return a new reference of the pad for the "request-pad" signal
85 * encodebin: set all elements to NULL and remove them from the bin when removing a source group
86 * encodebin: tear down old profiles when setting new ones
87 * multifdsink: disconnect inactive clients in the select loop too
88 * oggmux: prefer headers from caps to determine stream type (for VP8)
89 * oggmux: fix issue with ogg page numbering and discont flag handling
90 * oggmux: ensure stream serial numbers are unique
91 * oggmux: use running time for muxing instead of timestamps
92 * oggparse: better detection of delta unit flag
93 * playbin2, uridecodebin: add "source-setup" signal
94 * playbin2: always prefer the custom set sink and also set it back to NULL in all cases
95 * playbin2: check if an already existing sink supports the non-raw format too
96 * playbin2: fix handling of non-raw custom sinks
97 * playbin2: if a sink claims to support ANY caps assume that it only supports the usual raw formats
98 * playbin2: only consider the audio/video sinks in autoplug_continue for the normal uridecodebin
99 * playbin2: use gst_pad_accept_caps() instead of intersecting with the getcaps caps
100 * playbin2: set sinks to READY before checking if it accept caps
101 * textoverlay: add support for ARGB and other RGB alpha variants, and xBGR and RGBx
102 * textoverlay: add support for vertical center alignment
103 * textoverlay: converted AYUV to use 'A OVER B' alpha compositing
104 * textoverlay: use a class wide mutex to work around pango reentrance issues
105 * theoraenc: don't reset the video quality when setting the bitrate
106 * theoraenc: allow adjustment of the speed level while running
107 * theoraenc: set speed-level property defaults from libtheora's defaults
108 * typefinding: MPEG-TS detection fixes
109 * typefinding: detect HTTP live streaming m3u8 playlists
110 * typefinding: detect windows icon files and DEGAS images (to avoid false positives)
111 * typefinding: detect raw h.263
112 * typefinding: add depth and endianness fields to DTS caps
113 * uridecodebin: Add default handler for autoplug-select
114 * uridecodebin: add https:// to protocols for which to enable buffering
115 * uridecodebin: expose "autoplug-sort" signal
116 * uridecodebin: post proper error message if decodebin2/typefind elements are missing
117 * uridecodebin: Return NULL from the default autoplug-sort handler
118 * videorate: fix "skip-to-first" timestamp setup
119 * videoscale: add 16-bit-channel support (ARGB64, AYUV64), fix ARGB bilinear scaling
120 * videotestsrc: add 16-bit-per-channel support (ARGB64, AYUV64)
121 * vorbis: add support for using tremolo on android
122 * vorbistag: Add support for METADATA_BLOCK_PICTURE tags
123 * vorbistag: Write GST_TAG_IMAGE and GST_TAG_PREVIEW_IMAGE as METADATA_BLOCK_PICTURE
124 * win32: fix DEFAULT_AUDIOSINK, should be direct*sound*sink
125 * xvimagesink: don't paint the window black when going to NULL
127 Bugs fixed in this release
129 * 618516 : [typefinding] need raw H.263 typefinder
130 * 619778 : oggdemux: fails on zero-length pages with Patent_Absurdity_HD_3540kbit.ogv
131 * 633837 : videoscale: invalid reads after conversion to orc linear scaling
132 * 412678 : random segfaults or memory corruptions with multiple textoverlays (pango not reentrant)
133 * 620364 : [typefinding] .ico file detected as AAC
134 * 625129 : typefinding: file incorrectly detected as audio/x-dts
135 * 626152 : [playbin2] add " source-setup " signal
136 * 627268 : [tag] add GST_TAG_ENCODED_BY and map id3v2 TENC frame
137 * 629196 : oggmux: re-tagging an Ogg Vorbis file may corrupt audio data
138 * 632291 : discoverer: sparse tracks cause prerolling to hang till timeout
139 * 632889 : [multifdsink] [PATCH] Disconnect inactive clients in the select loop too
140 * 635669 : [vorbistag] Support METADATA_BLOCK_PICTURE for Vorbis cover art
141 * 635784 : ringbuffer: make sure to not start if the may_start flag is FALSE
142 * 635800 : xvimagesink flashes black when going from READY_TO_NULL
143 * 636886 : baseaudiosink: no running clock when eos leads to hang in PLAYING
144 * 639136 : [oggparse]code is not safe when using libogg fuctions
145 * 639159 : [textoverloay] Add vertical center alignment option
146 * 639237 : textoverlay: patch to use " A OVER B " alpha compositing
147 * 639744 : [oggdemux] Removing dead code:
148 * 640189 : oggmux: cleanup
149 * 640211 : oggmux: ensure serialnos are unique
150 * 640607 : appsink never sends " new-buffer-list " signal
151 * 640709 : [typefindfunctions] h264 typefinder registered with MPEG_VIDEO_CAPS
152 * 640804 : checks: encodebin test fails if theora or vorbis plugins are not available
153 * 641706 : discoverer: Keep references on discoverer objects for callbacks
154 * 641860 : discoverer: Use nominal bitrate if bitrate tag is unavailable
155 * 641917 : [gdppay] Ensure buffer's medata is writeable before setting it
156 * 641927 : [encodebin] refcount issue with the " request-pad " signal
157 * 641952 : [videoscale] assertion on fixate_caps
158 * 642174 : Playbin2 cannot work with non-raw custom sinks
159 * 642232 : theoraenc sets Video quality to zero when explicitely setting the bitrate to 0
160 * 642274 : [playbin2] arbitrary audio-sink is chosen even though explicitely having set a custom audio-sink bin
161 * 642381 : potential memleak in decodebin2
162 * 642466 : playbin2: after replacing a video sink with the pipeline in NULL state I still get the old one
163 * 642720 : audiotestsrc: pipelines with multiple instances with wave=gaussian-noise, white-noise, or pink-noise are very slow
164 * 642942 : adder: offset_end field of outgoing buffers is set to GST_BUFFER_OFFSET_NONE
165 * 642949 : pbutils: encoding-target: chaining error object in loading target from file may cause crash if there is no error
166 * 643775 : [oggmux] use running time instead of timestamps
167 * 644416 : [encodebin] Cannot be reused
168 * 644745 : [oggmux] Fails to mux Speex content, doesn't preroll
169 * 644845 : [alsa] Comparison of unsigned int < 0 always false in gstalsamixer.c
170 * 644996 : libsABI check doesn't depend only on architecture
171 * 645167 : [xmp] Add a new XmpConfig interface
172 * 645437 : encoding-profile: Fix syntax in Example: Creating a profile
173 * 646570 : baseaudiosink: don't allow aligning behind the read-segment
174 * 646572 : baseaudiosrc: protect against ringbuffer disappearing while in a query
175 * 646573 : baseaudiosrc: Add src object lock around call to ringbuffer parse caps
176 * 646575 : rtcpbuffer: Round to next 32bit word, not current 32bit word at end of SDES chunk
177 * 646576 : rtcpbuffer: fix invalid read in validation of padding in rtcp packet
178 * 646923 : video: Remove unused variable
179 * 646924 : rtp: Remove unused variables
180 * 646925 : encoding-profile: Remove unused variables
181 * 646952 : Fix the strlol return type mismatch :
182 * 647399 : Bad typo in ID3 tags: psychadelic - > psychedelic
183 * 647721 : Remove excessive checking for video.c
184 * 647781 : [playbin2] missing shutdown steps and inconsistent error behaviour
185 * 647856 : [oggmux] Assumes that the first buffer can be used to detect the stream type
186 * 647857 : [xvimagesink/ximagesink] Handle NULL caps in buffer_alloc()
187 * 647942 : [pango] Use different Pango contexts for the different subclasses
188 * 647943 : [pango] Class global pango mutex not always used
189 * 648459 : tag: exif: register common tags from tag library
190 * 648466 : Ogg to LPCM transcoding fails
191 * 648548 : videoscale broken with orc 0.4.13
192 * 642667 : [playbin2] autoplug-factories code does not do what it claims to do
193 * 642732 : [playbin2] sinks set to READY after activating groups causes bad autoplug-continue decisions
194 * 646744 : libgsttag: Minor issues building gst-plugins-base with MS compiler
195 * 647294 : gst-plugins-base doesn't compile with GCC 4.6
197 API changed in this release
201 * gst_tag_list_to_xmp_buffer_full()
202 * gst_tag_xmp_list_schemas()
203 * gst_tag_xmp_writer_add_all_schemas()
204 * gst_tag_xmp_writer_add_schema()
205 * gst_tag_xmp_writer_get_type()
206 * gst_tag_xmp_writer_has_schema()
207 * gst_tag_xmp_writer_remove_all_schemas()
208 * gst_tag_xmp_writer_remove_schema()
209 * gst_tag_xmp_writer_tag_list_to_xmp_buffer()
210 * GST_TAG_CAPTURING_EXPOSURE_COMPENSATION
211 * gst_video_format_get_component_depth()
212 * gst_video_format_new_template_caps()
216 You can find source releases of gst-plugins-base in the download directory:
217 http://gstreamer.freedesktop.org/src/gst-plugins-base/
221 More details can be found on the project's website:
222 http://gstreamer.freedesktop.org/
226 We use GNOME's bugzilla for bug reports and feature requests:
227 http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer
231 GStreamer is stored in Git, hosted at git.freedesktop.org, and can be cloned from there.
232 Interested developers of the core library, plug-ins, and applications should
233 subscribe to the gstreamer-devel list. If there is sufficient interest we
234 will create more lists as necessary.
239 Contributors to this release
243 * Andoni Morales Alastruey
249 * Christian Fredrik Kalager Schaller
260 * Luis de Bethencourt
264 * Ole André Vadla Ravnås
266 * Parthasarathi Susarla
273 * Sreerenj Balachandran
282 * Víctor Manuel Jáquez Leal