Release 0.10.26
[gstreamer-omap:kzeros-gstreamer-multimedia-framework.git] / NEWS
1 This is GStreamer 0.10.26 "Think Twice"
2
3 Changes since 0.10.25:
4
5       * registry: do plugin scanning (on *nix) using an external helper binary
6       * lots of performance improvements all over the place (ghostpads,
7         multiqueue, pad construction, superfluous type checks, registry loading)
8       * add GstByteWriter, a simple generic byte writer
9       * filesink: Use _wfopen on win32 to open files with non-ascii filenames correctly.
10       * queue2: add option to remove the temp-file (enabled by default)
11       * it is now allowed to use gst_caps_set_simple() on non-simple caps
12       * queue2: move from gst-plugins-base into the coreelements plugin in core
13         (this means you may need to remove libgstqueue2.so manually if you
14         installed from source and don't do make uninstall before upgrading, or
15         combine an older -base with a newer core)
16       * multiqueue: add support for buffering mode where we post BUFFERING
17         messages based on the level of the queues
18       * typefind: speed up typefinding a lot by first trying the typefinder for
19         the file's extension
20       * buffer: remove private/internal subbuffer subclass and keep track of
21         the parent buffer directly in the GstBuffer structure (this removes
22         quite a bit of special-casing and will allow for future improvements/
23         extensions that are harder to do if there's a separate subbuffer class.
24       * collectpads: add ability to install clipping functions
25       * new tags for TV/Radio shows/episodes, lyrics, composer sortname and
26         grouping
27       * miniobject: avoid race when recycling buffers
28       * basesrc: fix race in PLAYING->PAUSED->PLAYING
29
30 Bugs fixed since 0.10.25:
31
32       * 476514 : [multiqueue] Doesn't forward EOS event in all cases
33       * 590941 : API: add gst_pad_get_caps() variant that avoids unneeded caps copies
34       * 595602 : g_child_proxy_get_valist doesn't initialize GValue correctly
35       * 535069 : basesrc no longer support non-flushing seeks on itself
36       * 560442 : GNOME Goal: Remove deprecated GLib symbols
37       * 595511 : Annotations for gst_element_query_{position,duration}
38       * 595886 : gst_pad_fixate_caps() does not return fixed caps in case of multiple structures
39       * 595964 : [multiqueue] can hang pipeline during startup
40       * 596366 : proxy_getcaps reverses direction of getcaps
41       * 597407 : GstPipeline calculates base_time incorrectly when a new clock appears during PAUSED state
42       * 597550 : basesrc: sometimes no buffers produced after PLAYING - PAUSED - PLAYING
43       * 597690 : Improve caps setters API
44       * 598297 : make check fails when any --disable option which changes the API has been used
45       * 598526 : bytewriter: fails to compile with gcc 4.2.4 on Ubuntu Hardy 64 bits
46       * 598700 : scripts: Parallelise git-update.sh build script
47       * 598895 : [GstRegistry] Use hash table for feature lookups
48       * 598896 : [GstRegistry] Cache lists of ElementFactory and TypeFindFactory
49       * 599147 : typefind : Avoid having to re-sort the typefind factory list
50       * 599759 : [qtdemux] Add support for more tags
51       * 600313 : Visualisations stop updating after seek
52       * 600922 : gst-launch: wake up less often to check for Ctrl-C
53       * 601587 : MiniObject race condition
54       * 601668 : [gstregistry] gstregistry.c uses a variable from gst.c
55       * 601669 : [tests] tests/examples/manual depends on libgstcheck
56       * 602093 : libgstcheck fails to export some symbols when built under et_EE locale
57       * 602275 : [API] Add new sink-message event
58       * 602419 : [basesink] Regression with position reporting
59       * 603059 : Totem crashes when DVD is encrypted but libdvdcss isn't available
60       * 603787 : [registry] Doesn't use GMappedFile
61       * 604091 : tee: cleanup requestpads in dispose
62       * 604093 : gst-inspect/launch: move gst_tools_print_version to avoid glib warning
63       * 605251 : tee causes segfault if there is no source pad
64       * 605930 : [shave] common/shave not existing yet when configure checks need it
65       * 606435 : gsttee not threadsafe
66       * 607283 : segfaults and/or miniobject warnings with GLib > = 2.23.2
67       * 607317 : [PATCH] fix unaligned detection for x86-64 when cross compiling
68       * 607431 : update common modules before freeze
69       * 607481 : Should define G_THREADS_MANDATORY everywhere
70       * 607739 : [queue2] Temporary file is removed although code claims the opposite
71       * 607842 : Audio comes out with short breaks after resume pipeline (paused- > playing)
72       * 608136 : multiqueue handles UNEXPECTED flowreturn wrongly
73       * 608398 : Initializing the glib thread system seems not to work
74       * 608442 : [filesrc] typo in warning message
75       * 608726 : bytewriter: mistake in .h/.c function naming
76       * 609166 : Buffer list docs ascii art
77       * 590669 : [API] need GstByteWriter or GstChunkWriter
78       * 601698 : Rename new plugin-scanner helper executable before release
79       * 604565 : [gstcheck] Update check to 0.9.8
80       * 596877 : New internal libcheck breaks the Solaris build
81
82 API additions since 0.10.25:
83
84       * GST_DEBUG_REGISTER_FUNCPTR()
85       * gst_base_src_new_seamless_segment()
86       * gst_event_new_sink_message()
87       * gst_event_parse_sink_message()
88       * gst_util_fraction_add()
89       * gst_util_fraction_multiply()
90       * gst_util_greatest_common_divisor()
91       * gst_util_double_to_fraction()
92       * gst_util_fraction_to_double()
93       * gst_registry_get_feature_list_cookie()
94       * gst_default_registry_get_feature_list_cookie()
95       * gst_pad_get_caps_reffed()
96       * gst_pad_peer_get_caps_reffed()
97       * gst_structure_id_has_field()
98       * gst_structure_id_has_field_typed()
99       * gst_plugin_feature_list_copy()
100       * gst_caps_set_value()
101       * gst_byte_writer_ensure_free_space()
102       * gst_byte_writer_free()
103       * gst_byte_writer_free_and_get_buffer()
104       * gst_byte_writer_free_and_get_data()
105       * gst_byte_writer_get_remaining()
106       * gst_byte_writer_init()
107       * gst_byte_writer_init_with_buffer()
108       * gst_byte_writer_init_with_data()
109       * gst_byte_writer_init_with_size()
110       * gst_byte_writer_new()
111       * gst_byte_writer_new_with_buffer()
112       * gst_byte_writer_new_with_data()
113       * gst_byte_writer_new_with_size()
114       * gst_byte_writer_put_data()
115       * gst_byte_writer_put_float32_be()
116       * gst_byte_writer_put_float32_le()
117       * gst_byte_writer_put_float64_be()
118       * gst_byte_writer_put_float64_le()
119       * gst_byte_writer_put_int16_be()
120       * gst_byte_writer_put_int16_le()
121       * gst_byte_writer_put_int24_be()
122       * gst_byte_writer_put_int24_le()
123       * gst_byte_writer_put_int32_be()
124       * gst_byte_writer_put_int32_le()
125       * gst_byte_writer_put_int64_be()
126       * gst_byte_writer_put_int64_le()
127       * gst_byte_writer_put_int8()
128       * gst_byte_writer_put_string_utf16()
129       * gst_byte_writer_put_string_utf32()
130       * gst_byte_writer_put_string_utf8()
131       * gst_byte_writer_put_uint16_be()
132       * gst_byte_writer_put_uint16_le()
133       * gst_byte_writer_put_uint24_be()
134       * gst_byte_writer_put_uint24_le()
135       * gst_byte_writer_put_uint32_be()
136       * gst_byte_writer_put_uint32_le()
137       * gst_byte_writer_put_uint64_be()
138       * gst_byte_writer_put_uint64_le()
139       * gst_byte_writer_put_uint8()
140       * gst_byte_writer_reset()
141       * gst_byte_writer_reset_and_get_buffer()
142       * gst_byte_writer_reset_and_get_data()
143       * gst_bit_reader_get_size()
144       * gst_byte_reader_get_size()
145       * gst_data_queue_new_full()
146       * gst_collect_pads_set_clip_function()
147       * gst_type_find_helper_get_range_ext()
148
149 Changes since 0.10.24:
150     
151       * Improve the byte-reader API
152       * GObject introspection support
153       * Improve clock accuracy on win32
154       * Optimisations in capabilities checking
155       * Optimisations and fixes in the basetransform base class
156       * new 64-bit scaling utility function variants
157       * Various bug-fixes and improvements (see ChangeLog and bugs list below)
158
159 Bugs fixed since 0.10.24:
160      
161       * 583999 : [basetransform] caps refcounting problem causing GST_IS_CAPS assertion failures
162       * 566881 : [GstIndex] support/caching in GstBin
163       * 588472 : [basetransform] problems in reverse-negotiating
164       * 589173 : macros cause spurious semicolon warnings
165       * 589314 : [basetransform] clears GAP flag in passthrough mode
166       * 589524 : gst_base_transform_acceptcaps() could provide more verbose debugging output
167       * 589849 : [segment] Clipping fails to handle start=stop < segment_start correctly
168       * 589991 : [queue] limited error handling might cause pipeline appearing to hang
169       * 590045 : Query position fails when pipeline is paused and format is not time
170       * 590430 : Add support for " album artist " tags
171       * 590841 : configure script check for libxml2 is incorrect
172       * 590919 : gst_util_uint64_scale_int() and friends don't round
173       * 591045 : [basesrc] Leaking GstTask instances
174       * 591318 : ghostpad : core dump : on_src_target_notify called with an invalid ghostpad
175       * 591441 : append mode for filesink
176       * 592209 : [GstPad] Deprecated markers missing in the header for internal links function related things
177       * 592314 : core/tests/examples/streams/ does not link to pthread
178       * 593460 : Broken win32-specific systemclock code
179       * 593719 : regression: segfault when using gstrtpbin and certain video codecs
180       * 594107 : [gstbin] : use of freed message : valgrind Invalid read
181       * 594225 : [API] [bytereader] add _unchecked() variants and inline most common functions
182       * 594990 : [introspection] pkg-config file madness and another bug
183       * 595130 : checks fail
184       * 595133 : gst/gstutils check fails
185       * 595209 : Fix out-of-tree build
186       * 368536 : bin_change_state makes children go through unnecessary state changes
187
188 API additions since 0.10.24:
189     
190       * gst_caps_can_intersect()
191       * gst_util_uint64_scale_int_round()
192       * gst_util_uint64_scale_int_ceil()
193       * gst_util_uint64_scale_round()
194       * gst_util_uint64_scale_ceil()
195       * gst_iterator_new_single()
196       * gst_byte_reader_skip_unchecked()
197       * gst_byte_reader_peek_*_unchecked()
198       * gst_byte_reader_get_*_unchecked()
199       * gst_byte_reader_{peek,get,dup}_data_unchecked()
200       * gst_byte_reader_get_float*_unchecked()
201
202 Changes since 0.10.23:
203     
204       * Fully support nested structures in caps
205       * Support frame-by-frame stepping in sinks
206       * Add support for buffer-lists to pass around groups of buffers
207       * Use TaskPools for managing worker threads
208       * New stream-status API for finer thread control
209       * Code optimisations
210       * Many other bug-fixes and enhancements
211
212 Bugs fixed since 0.10.23:
213      
214       * 580579 : crash in Volume Control: aucunes idées désolé.
215       * 527488 : [GstXML] can't load elements with request pads from XML
216       * 570233 : allow plugins caching data in the registry
217       * 584389 : don't recreate plugin feature and element factories on fi...
218       * 534208 : [API] add gst_structure_get()
219       * 545787 : [API] add gst_plugin_register_static_full() for bindings
220       * 554460 : thumbnailer crash in gst_fake_sink_event() on FLUSH_START...
221       * 559643 : Don't allow empty or NULL strings in taglists
222       * 560345 : gst_tag_list_get_string() may return NULL or empty string
223       * 560442 : GNOME Goal: Remove deprecated GLib symbols
224       * 572285 : Buffer Lists
225       * 577926 : Remove old xml registry
226       * 578908 : [fdsink] implement seeking on seekable fds
227       * 580177 : glibc 2.10 deprecates register_printf_function
228       * 580716 : race condition in gst_element_lost_state
229       * 581198 : [tags] Add gst_tag_setter_add_tag_value() and gst_tag_lis...
230       * 581281 : [GstURIHandler] Doesn't use get_type_full() at all
231       * 582010 : audiotestsrc is-live=1 ! pulsesink unreliable
232       * 582564 : [controller] Use ordered GSequence instead of GList in th...
233       * 582588 : [API] Add a way to get the pad corresponding to a taglist
234       * 582878 : [GstClock] ABI breakage in GIT on x86
235       * 583187 : [API] add gst_adapter_masked_scan_uint32() and gst_adapte...
236       * 583419 : Bad translatable string in gst-launch.c
237       * 583456 : framestep functionality
238       * 583554 : Slow down or lock if date time is changed to the past
239       * 584835 : MSVC compiler fails with 'static inline' function
240       * 584838 : basesrc: confusing QUERY_SEEKING handling
241       * 585039 : rtpool-test can't find pthreads
242       * 585075 : Compilation with MSVC fails for files including config.h ...
243       * 585137 : gst_xml_write_file() fails serialising GstStructure property
244       * 585592 : [API] add gst_byte_reader_masked_scan_uint32()
245       * 585733 : Wrong #include order in gstsegment.c
246       * 585748 : [API] add gst_tag_list_new_full() to create taglist with ...
247       * 586566 : Add GAP Flag support to gstcapsfilter
248       * 586568 : [bytereader] add misc. string functions and gst_byte_read...
249       * 587973 : use G_DIR_SEPARATOR_S instead of " /' " 
250       * 587976 : Fix for gst-inspect and gst-launch when option parsing is...
251       * 588744 : [check] Stream consistency checker utility
252       * 588745 : [basesrc] Serialize tags in the dataflow
253       * 589127 : gsttask leaks the pool
254       * 590056 : [collectpads] race resulting in double flush-stop being o...
255       * 590622 : [bytereader] buffer size checks subject to wrap-around ov...
256       * 579177 : GstInfo: maintain ABI compatibility
257       * 581321 : typefind element leaks force-caps property
258       * 584118 : [gstadapter][doc] Improve documentation of gst_adapter_ma...
259       * 585433 : [queue] Can lock down if min-threshold conflicts with max...
260       * 585569 : rtsp/rtp streaming fails when skipping explicit PAUSED st...
261       * 585834 : Support for GstBufferList in ghostpads
262       * 585960 : Support for GstBufferList in gstbasesink
263       * 587052 : [filesink.c] Support for files > 4GB on windows makes file...
264
265 API added since 0.10.23:
266      
267       * GST_DEBUG_CATEGORY_GET() macro
268       * gst_byte_reader_dup_data
269       * gst_byte_reader_dup_string
270       * gst_byte_reader_dup_string_utf8
271       * gst_byte_reader_dup_string_utf16
272       * gst_byte_reader_dup_string_utf32
273       * gst_byte_reader_skip_string
274       * gst_byte_reader_skip_string_utf8
275       * gst_byte_reader_skip_string_utf16
276       * gst_byte_reader_skip_string_utf32
277       * gst_byte_reader_peek_string
278       * gst_byte_reader_peek_string_utf8
279       * gst_byte_reader_get_string
280       * gst_byte_reader_get_string_utf8
281       * add gst_tag_list_new_full()
282       * add gst_tag_list_new_full_valist()
283       * add gst_byte_reader_masked_scan_uint32()
284       * add gst_plugin_get_cache_data, gst_plugin_set_cache_data
285       * gst_structure_get()
286       * gst_structure_id_get()
287       * gst_structure_get_valist()
288       * gst_structure_id_get_valist()
289       * GstSegment::gst_segment_set_running_time()
290       * Add GST_MESSAGE_SRC_NAME() macro
291       * GstSegment::gst_segment_to_position()
292       * GstEvent::gst_event_new_step()
293       * GstEvent::gst_event_parse_step()
294       * GstMessage::gst_message_new_step_done()
295       * GstMessage::gst_message_parse_step_done()
296       * gst_structure_id_new()
297       * Add gst_message_{new,parse}_tag_full() to get/set the source pad
298       * GstAdapter::gst_adapter_masked_scan_uint32()
299       * GstElement::gst_element_lost_state_full()
300       * GstAdapter::gst_adapter_prev_timestamp()
301       * gst_plugin_register_static_full()
302       * gst_tag_list_add_value()
303       * gst_tag_setter_add_tag_value()
304       * add GST_TAG_CONTAINER_FORMAT tag
305       * GstTask::gst_task_set_state()
306       * GstObject::gst_object_ref_sink()
307
308 Changes since 0.10.22:
309       * Support files > 4GB on Windows
310       * Controller interpolation fixes
311       * Add timer support to GstPoll and use it for clocking
312       * Attempt to typefind contents from the file extension if all else fails
313       * GStreamer revision control switched to Git
314       * Many other bug fixes and improvements
315
316 Bugs fixed since 0.10.22:
317      
318       * 579177 : GstInfo: maintain ABI compatibility
319       * 163577 : [RFC] Interlaced/progressive media support in GStreamer.
320       * 574160 : collectpads does not reliably eos when last pad is removed
321       * 575598 : hierarchical pipelines accumulate segment-done wrongly
322       * 575922 : disabling subsystems cause API break
323       * 576842 : loading a broken registry file can crash
324       * 555978 : [ladspa] no elements exposed/found on Cygwin
325       * 565607 : Broken macros in gsturi.h and gstinterface.h
326       * 566936 : [ghostpads] unlink function wrongly called on target
327       * 567692 : gstinfo.h header not compatible with C++
328       * 567725 : [qtdemux] stopping at a time sometimes shows a different ...
329       * 568289 : gst_pad_template_new() leaks caps it's supposed to take o...
330       * 568438 : gst_poll_wait calling read() on control socket
331       * 568481 : GStreamer linking failures.
332       * 568632 : __MSVCRT_VERSION__ not defined with mingw, causing " stora...
333       * 568678 : filesrc doesn't logs offsets
334       * 570910 : Removing the target of a ghostpad does not re-target the ...
335       * 571227 : Add home page tag
336       * 571559 : [API] add GST_PARAM_MUTABLE_PLAYING etc. to indicate vali...
337       * 572480 : unref and copy functions should not be macros
338       * 573623 : [API] Array binary search utility function
339       * 574024 : [GstAdapter] gst_adapter_push should not accept empty buf...
340       * 574211 : gst_poll_*_control always returns FALSE on Windows
341       * 574213 : [gstcheck] fix for libcheck > 0.9.6
342       * 574241 : gst_tag_list_add and gst_tag_list_add_values behave incon...
343       * 574484 : [patch] Make caps in DOT debug graphs more readable
344       * 574623 : [dot_file_with_ts] ':' not a valid character for a filename
345       * 574805 : [capsfilter] Doesn't reset the internal suggestion with A...
346       * 575695 : build fails on OpenSolaris due to incorrect header file i...
347       * 575814 : flag for EOS on gst-launch when exiting with ctrl-c
348       * 576381 : [basesink] QoS: emergency rendering not always done
349       * 576563 : pidgin crashes on exit in gst_plugin_ext_dep_free()
350       * 576582 : A patch to enable the use of 'name' in Enum parameters
351       * 577887 : Missing GST_DISABLE_GST_DEBUG in gstregistrybinary.c
352       * 577891 : add alloc-pad property on tee
353       * 578114 : API: add two new log levels: FIXME and MEMDUMP
354       * 578201 : _gst_plugin_fault_handler_is_setup undefined under HAVE_W...
355       * 579127 : gst-launch: disable CLOCK_LOST message handling
356       * 580121 : race condition in GStreamer state changes causes problems...
357       * 361155 : Add monotonic clock
358       * 517231 : threadsafe/colored windows logging
359       * 572591 : Another batch of " differs in signedness " warnings
360       * 573823 : pad block callback if it is re-blocked while the previous...
361       * 574163 : Fix gst_pad_activate_pull deactivation with unlinked element
362       * 575682 : Add gst_pad_is_compatible()
363       * 575988 : On Windows filesink can't write files longer than 2-4 GiB...
364
365 API additions since 0.10.22:
366     
367       * New FIXME and MEMDUMP debug levels
368       * gst_tag_list_get_buffer() and gst_tag_list_get_buffer_index()
369       * New tags: GST_TAG_SUBTITLE_CODEC, GST_TAG_HOMEPAGE
370       * gst_util_array_binary_search()
371       * gst_message_new_request_state(), gst_message_parse_request_state(), GST_MESSAGE_REQUEST_STATE
372       * GstPoll::gst_poll_new_timer()
373       * GstPoll::gst_poll_write_control()
374       * GstPoll::gst_poll_read_control()
375
376 Changes since 0.10.21:
377
378       * GstController improvements
379       * Extensions to the latency setting behaviours
380       * Ability for plugins to register dependencies to trigger re-scanning
381       * Optimisations in some common operations on caps and values and elsewhere
382       * Add sequence numbers to events so dependent events can be associated with
383         the event that caused them
384       * New macros for reading and writing float values
385       * Many improvements in the basesink base class
386       * Support non-default main contexts for GstBus watches
387       * Improvements in pull-mode scheduling of sinks
388       * Fixes for alignment issues on sparc
389       * Ghost pad fixes
390       * New bit-reader assistance API
391       * Many other bug fixes and improvements
392       
393 Bugs fixed since 0.10.21:
394
395       * 567002 : --gst-disable-registry-update also skips registry creation
396       * 350477 : [Registry] Provide a way for plugins to delegate the 'cha...
397       * 510354 : post GST_MESSAGE_STRUCTURE_CHANGE when linking and unlink...
398       * 526044 : Crash if there is more than one watcher for a GstBus
399       * 539108 : gst_ghost_pad_new() does more than call g_object_new()
400       * 544003 : [parse] Links to wrong pad if no padtemplate name is given
401       * 544293 : rtspsrc / gstpoll regression
402       * 545714 : GST_READ_UINT_* and GST_WRITE_UINT_* are not always safe ...
403       * 548786 : [win32] search for plugins based on location of DLL
404       * 551676 : Small Memleak fix in gst_pad_link_check_compatible_unlocked
405       * 552778 : add free_func in gstbuffer instances
406       * 553554 : [base] Add a generic bit reader
407       * 553874 : query_position broken during seek
408       * 555196 : Move floating point endian conversion macros into core
409       * 555307 : Need to push latency event into the pipeline
410       * 555631 : Banshee crashes; gstreamer GST_CAPS GST_IS_CAPS warnings
411       * 556091 : libtool-2.2 and old gettext don't mix
412       * 556900 : a copy & paste bug in helloworld example
413       * 557154 : Allow totem to run without write-access to home directory
414       * 557300 : libgstnet needs to link against $(WIN32_LIBS)
415       * 557438 : Gstreamer crashes when Banshee supposed to change track
416       * 557649 : GstBaseTransform can cause ivalid memory references
417       * 559250 : segments need identifiers.
418       * 560301 : Add --plugin to gst-inspect
419       * 560360 : Excessive statting when reading binary cache
420       * 560399 : Unnecessary CRC checksum for binary registry cache
421       * 560442 : GNOME Goal: Remove deprecated GLib symbols
422       * 561501 : g_type_class_ref without unref
423       * 562170 : GstBus watch doesn't work with non-default main context
424       * 562949 : [API] Add an URI query type for querying the source/sink URI
425       * 564863 : Caps are not propagated from a ghostpad's target to the g...
426       * 567225 : volatile gonce_data in BOILERPLATE not initialized to 0
427       * 566393 : [deadlock] Setting index on a pipeline
428
429 API added since 0.10.21:
430
431       * Add bit reader and byte reader classes.
432       * gst_message_new_structure_change()
433       * gst_message_parse_structure_change()
434       * GST_BUFFER_FREE_FUNC()
435       * Add GST_READ_UINT24_(LE|BE) and GST_WRITE_UINT24_(LE|BE).
436       * GstBaseSrc::gst_base_src_set_blocksize()
437       * GstBaseSrc::gst_base_src_get_blocksize()
438       * GstBaseSink::gst_base_sink_set_blocksize()
439       * GstBaseSink::gst_base_sink_get_blocksize()
440       * GstBaseSink::blocksize
441       * GstBaseSink::gst_base_sink_do_preroll()
442       * Add gst_byte_reader_get_data and gst_byte_reader_peek_data 
443       * Move float endianness conversion macros from libgstfloatcast to core
444       * gst_util_seqnum_next, gst_util_seqnum_compare
445       * gst_event_get_seqnum, gst_event_set_seqnum
446       * gst_message_get_seqnum, gst_message_set_seqnum
447       * GstSeekFlags::GST_SEEK_FLAG_SKIP 
448       * gst_bin_recalculate_latency()
449       * GstBin::do-latency
450       * gst_tag_setter_reset_tags()
451       * gst_query_new_uri, gst_query_set_uri, gst_query_parse_uri
452       * add gst_plugin_add_dependency()
453       * add gst_plugin_add_dependency_simple()
454
455
456 Changes since 0.10.20:
457
458       * Basetransform rework
459       * Basesink synchronisation extensions
460       * New documentation
461       * Many bug fixes, enhancements and optimisations
462
463 Bugs fixed since 0.10.20:
464
465       * 481169 : [tag] add support for geo tags (gps location etc.)
466       * 520694 : adding GST_TAG_KEYWORDS
467       * 538201 : deleting the control point at ts=0 does not lower the con...
468       * 544855 : fakesrc and fakesink should call super::event()
469       * 339795 : [GstBaseTransform] Reverse negotiation issues in passthro...
470       * 348114 : [PPC64?] [gcc-4.1.2?] GST_BUFFER_IN_CAPS flag should have...
471       * 361718 : [basetransform] needs API to force renegotiation
472       * 533856 : gst_buffer_join() documentation is unclear
473       * 536978 : GTKDOC_CFLAGS should include CFLAGS
474       * 537804 : [multiqueue] wrongly reporting that the queue is full.
475       * 537812 : [check] add api to setup a pad by name
476       * 538568 : Add GST_TAG_ATTACHMENT
477       * 539772 : gst_pad_template_new() does more than call g_object_new()
478       * 542175 : gst-inspect --gst-plugins-path fails with multiple direct...
479       * 543444 : gst_base_sink_get_position can return 0 unexpectedly
480       * 543853 : Bison version check failure on OSX 10.4 Tiger
481       * 544174 : [basesrc] allow dynamic value of the seekable value.
482       * 544776 : [win32] binary registry may fail if glib is using a diffe...
483       * 545352 : gsturi is too restrictive
484       * 545603 : gst-inspect: don't print uri handler when compiled withou...
485       * 545605 : gstelementfactory: don't use uri handler code without uri...
486       * 545607 : gst: include gstconfig when using macros defined therein
487       * 545853 : [basetransform] rewrite
488       * 546328 : fractions with G_MAXINT cause failure for fixation
489       * 546822 : gstreamer doesn't tell gettext to output its translations...
490       * 547277 : filesrc detect if a file is seekable using SEEK_SET and n...
491       * 547728 : [basetransform] fail on buffer_alloc 
492       * 548394 : basesink should ignore EOS during flushing
493       * 548652 : [Inconsistency] GST_TAG_LOCATION is used for different me...
494       * 549504 : Thread-safe version of gst_pad_get_internal_links()
495       * 551952 : Need 'check' package when compile
496       * 551978 : Memleak in gst_element_sync_state_with_paren
497       * 547835 : tee release_request_pad while buffer_alloc racyness
498       * 538628 : Patch: added a timeout property to fdsrc used in gst_poll...
499       * 546883 : [basetransform] ximagesink fails when resizing video window
500       * 551509 : gst_base_transform_prepare_output_buffer: assertion faile...
501
502 API added since 0.10.20:
503
504       * Add GST_TAG_ATTACHMENT for generic file attachments to streams.
505       * Add gst_base_sink_set_render_delay()
506       * Add gst_base_sink_get_render_delay()
507       * Add gst_check_setup_src_pad_by_name
508       * Add gst_check_setup_sink_pad_by_name
509       * Add gst_check_teardown_pad_by_name
510       * Add GstBaseTransform::gst_base_transform_suggest()
511       * GstBaseTransform::gst_base_transform_reconfigure()
512       * GstPad::gst_pad_set_iterate_internal_links_function()
513       * GstPad::GstPadIterIntLinkFunction
514       * GstPad::gst_pad_iterate_internal_links()
515       * GstPad::gst_pad_iterate_internal_links_default()
516
517 API deprecated since 0.10.20:
518
519       * gst_pad_get_internal_links()
520       * gst_pad_set_internal_link_function()
521       * gst_pad_get_internal_links_default()
522
523 Changes since 0.10.19:
524
525       * Add the Presets interface
526       * Use the binary registry by default
527       * Deprecate gst_element_get_pad and don't use it anywhere any more.
528       * Reverse playback fixes
529       * API to get missing element messages from parse_launch parsing.
530       * Fixes in latency calculations
531       * BaseTransform negotiation fixes
532       * New Buffering query and messages
533       * Fix multiqueue deadlocks when changing limits
534       * Remove pre-generated parser hacks and require newer flex/bison
535       * Use GSlice in more places
536       * Use static strings in property declarations everywhere to save memory
537         allocations
538       * Fix unaligned memory accesses with the binary registry and add CRC
539         checks
540       * Lots of other bug fixes
541
542 Bugs fixed since 0.10.19:
543
544       * 535069 : basesrc no longer support non-flushing seeks on itself
545       * 522882 : Add a configure option to enable/disable OPTION_PARSING i...
546       * 396779 : Preset interface for elements
547       * 359653 : GStreamer Binary Registry patch
548       * 401456 : [API] Rename gst_bin_find_unconnected_pad to gst_bin_find...
549       * 446763 : [identity] leaks events in single segment mode
550       * 459862 : typefinding coud be more efficient
551       * 461253 : Crash when gst_base_transform_prepare_output_buffer is se...
552       * 489269 : valgrind option parameter invalid for valgrind 2.2 
553       * 508070 : gstreamer crashes whilst trying to read .so files in .deb...
554       * 512577 : GstTagMergeMode doc has slightly incorrect explanation
555       * 512578 : gst_tag_setter_merge_tags can mess up with KEEP_ALL merge...
556       * 514507 : gst-xmlinspect outputs text instead of xml for plugins
557       * 518022 : [libgstnet] MSVC 6.0 compile error due to socklen_t
558       * 518932 : Expose gst_segment_copy() to facilitate wrapping of GstSe...
559       * 520468 : Add a Env to enable/disable scan_and_update_registry for ...
560       * 522326 : use of 'char*' instead of 'const char*' in gst_caps_set_s...
561       * 523798 : [API] Some GstMiniObject enhancements
562       * 523806 : Should use G_PARAM_STATIC_(NAME|NICK|BLURB) when possible
563       * 523978 : Documentation fixes. 
564       * 523985 : [PATCH] [identity] meta-writes buffers without meta-writa...
565       * 524659 : Add specific error code for encrypted streams (e.g. WMA/A...
566       * 525532 : [fakesink/fakesrc/identity] Uses GObject marshallers for ...
567       * 526042 : [identity] check-imperfect-timestamp doesn't handle new s...
568       * 526236 : mingw32 gstpoll compilation fix
569       * 526247 : Actually build dlls when cross-compiling with mingw32
570       * 526705 : GstIndexResolver uses nickname field as description field
571       * 526768 : Basetransform bufferalloc passing through too easily
572       * 526814 : [API] add gst_pad_add_{data,event,buffer}_probe_full() wi...
573       * 527967 : gst_gerror_get_type is not thread safe
574       * 528187 : Get missing elements from gst_parse_launch()
575       * 528868 : URI schemes/protocols should be handled case insensitive
576       * 529148 : Make gstqueue give the right min latency
577       * 530317 : GType registration error - race condition when parallel c...
578       * 530637 : queue leak on capacity change
579       * 531538 : Race between gst_bus_set_flushing and async bus watches
580       * 533490 : gst_message_new_warning() should take const gchar*
581       * 533635 : gst_event_new_tag() documentation should say it takes own...
582       * 533740 : [API] add gst_typefind_suggest_simple()
583       * 533865 : gst_element_get_pad() should really be deprecated
584       * 534258 : basesink not accumulated time in some cases.
585       * 535218 : gst_base_src_send_event will block if basesrc is blocking...
586       * 536723 : Misspelled word in error string
587       * 536744 : Must link to libdl if dladdr() is used
588       * 536780 : gcc 4.3.0 compile warnings
589       * 536857 : DATADIR definition conflicts with windows headers
590       * 525961 : Build fails on darwin
591       * 535285 : Correct reference to GST_URI_UNKNOWN in gst_element_facto...
592
593 API added since 0.10.19:
594
595       * Add GST_IS_PARAM_SPEC_MINI_OBJECT, GST_PARAM_SPEC_MINI_OBJECT
596         GST_TYPE_PARAM_MINI_OBJECT and gst_value_dup_mini_object
597       * typefind::force-caps
598       * gst_message_set_buffering_stats()
599       * gst_message_parse_buffering_stats()
600       * GST_QUERY_BUFFERING
601       * GstBufferingMode
602       * gst_query_new_buffering()
603       * gst_query_set_buffering_percent()
604       * gst_query_parse_buffering_percent()
605       * gst_query_set_buffering_stats()
606       * gst_query_parse_buffering_stats()
607       * gst_query_set_buffering_range()
608       * gst_query_parse_buffering_range()
609       * GST_STREAM_ERROR_DECRYPT
610       * GST_STREAM_ERROR_DECRYPT_NOKEY
611       * gst_segment_copy()
612       * gst_pad_add_data_probe_full()
613       * gst_pad_add_buffer_probe_full()
614       * gst_pad_add_event_probe_full()
615       * GstEvent::gst_event_has_name()
616       * GstFakeSrc:format
617       * gst_type_find_suggest_simple()
618       * GstBaseSink::gst_base_sink_wait_clock()
619       * gst_parse_launch_full()
620       * gst_parse_launchv_full()
621       * gst_parse_bin_from_description_full()
622       * gst_parse_context_new()
623       * gst_parse_context_free()
624       * gst_parse_context_get_missing_elements()
625       * gst_bin_find_unlinked_pad()
626       * GstPreset interface
627
628 API deprecated since 0.10.19:
629
630       * gst_element_get_pad -
631         use gst_element_get_static_pad or gst_element_get_request_pad
632       * gst_atomic_int_set() - g_atomic_int_set from GLib
633       * gst_bin_find_unconnected_pad()
634
635 Changes since 0.10.18:
636
637       * Fix a regression in raw fd handling
638
639 Bugs fixed since 0.10.18:
640      
641       * 524041 : gstfdsrc broken in 0.10.18
642
643 Changes since 0.10.17:
644         
645       * New GstPoll abstraction simplifies operations on multiple fd's/sockets
646       * Various bug fixes and corrections
647       
648 Bugs fixed since 0.10.17:
649       
650       * 516187 : adding gst_collect_pads_read_buffer () collectpads
651       * 516395 : gst_buffer_create_sub does not copy flags
652       * 520756 : different registry backend configurations cause build errors
653       * 498222 : configure improvements
654       * 499127 : [multiqueue] has no documentation
655       * 505417 : Add GstPoll to core
656       * 509559 : [gstinfo]_gst_debug_init() memory leak
657       * 510194 : segmentation fault when trying to link elements.
658       * 511783 : [API] [check] add gst_check_element_push_buffer_list() etc.
659       * 513964 : [GstPad] gst_pad_get_caps don't return a copy of the caps
660       * 515469 : patch to add gst_index_set_resolver_full
661       * 519584 : gst_element_implements_interface() segfaults with 'filesr...
662       * 519698 : g_free/xmlFree mismatches in gstregistryxml
663       * 520152 : Core uses non-portable size_t and ssize_t
664       * 520671 : GstPoll needs to be ported to Windows
665       * 520808 : GstPoll's API could need some changes for Windows
666       * 520877 : registrybinary.c doesn't build cleanly on Windows/MSVC
667       * 521740 : libgstreamer.def exports not up to date
668       * 522741 : regression: gst_index_entry_free() frees string it does n...
669
670 Changes since 0.10.16:
671
672       * Fix compilation on environments that have POSIX timers but not
673         monotonic clocks
674
675 Bugs fixed since 0.10.16:
676       
677       * 512715 : gst/gstutils.c and HAVE_MONOTONIC_CLOCK
678
679 Changes since 0.10.15:
680
681       * Monotonic/Posix clock support
682       * Dumping of dot-file graph descriptions for debugging
683       * Clean-up of exported symbols
684       * Many bug-fixes and enhancements
685
686 Bugs fixed since 0.10.15:
687
688       * 497859 : --disable-gst-debug option fails compilation
689       * 339279 : [gst.URIHandler] interfaces with class-global virtual met...
690       * 498694 : Patches to avoid g_signal_emit(SIGNAL_HANDOFF) on identit...
691       * 498746 : basesink is forwarding downstream events
692       * 498767 : Hangs after end of tracks since 0.10.15
693       * 498924 : deprecate GST_PLUGIN_DEFINE_STATIC because it's not portable
694       * 499007 : [gst-plot-timeline] more options
695       * 499140 : Add check to ensure .def files are kept up-to-date
696       * 500143 : Some small improvements (limiting realloc and CPU usage )
697       * 500150 : [filesink] add property to enable buffering via setvbuf()
698       * 501560 : gst_(caps|structure)_from_string() crash if structure nam...
699       * 503131 : g_intern_string SUSE 10.2
700       * 503231 : Change to GST_BUFFER_FLAG_GAP meaning can break with base...
701       * 503417 : Build failure due uninitialized variable in function 'gst...
702       * 503590 : gstreamer-0.10.15 fails tests on ppc64
703       * 503675 : broken registry files written to disk
704       * 504499 : Messages from check no longer contain the test case name
705       * 505799 : iSight camera does not work in gstreamer
706       * 506643 : crash in fixate_value/gst_value_init_and_copy on empty li...
707       * 507957 : clean-up incomplete function declarations
708       * 508175 : GST_TIMEVAL_TO_TIME() and GST_TIMESPEC_TO_TIME() need to ...
709       * 510187 : gst_plugin_register_static() API review and GST_PLUGIN_DE...
710       * 510747 : Use $(MAKE) instead of make to fix the build if GNU make ...
711       * 511750 : Configure of prereleases 15.2-15.4 fail in OpenEmbedded M...
712
713 API additions since 0.10.15:
714
715 * GstIdentity::signal-handoffs
716 * gst_util_get_timestamp()
717 * gst_base_transform_set_gap_aware()
718 * GstFileSink::buffer-mode
719 * GstFileSink::buffer-size
720 * gst_plugin_register_static()
721
722 API deprecated since 0.10.15:
723
724 * GST_PLUGIN_DEFINE_STATIC()
725
726 Changes since 0.10.14:
727
728       * Changes for asynchronous sink management
729       * New ts-offset property on basesink for adjusting clock synchronisation
730       * New GstController LFO feature
731       * Fixes and improvements in latency measurement for live pipelines
732       * Additional documentation and docs fixes
733       * Faster typefinding
734       * More tag types added
735       * Improvements in various core elements and parent classes
736       * New unit tests
737       * Allow dumping pipelines as dot graphs
738       * GstStructures now support nesting
739       * URIHandler interface can now be implemented in bindings
740       * Many other bug-fixes and improvements
741
742 Bugs fixed since 0.10.14:
743
744       * 496722 : DSP/DSW files in win32/vs6 directory are in unix format
745       * 476514 : [queue] Doesn't forward EOS event in all cases
746       * 456573 : allow dumping pipelines as dot graphs
747       * 475723 : cleanup static caps correctly
748       * 480341 : Memory leak at fakesink (regression in cvs)
749       * 349410 : Problems with type handling
750       * 414539 : [API] Support more GST_TAG*_SORTNAME and remove MusicBrai...
751       * 459717 : [Controller] Add GstLFOControlSource that provides values...
752       * 459809 : [API] add GST_TAG_COMPOSER
753       * 461598 : Commit Hungarian translations from TP
754       * 461599 : Some files missing from POTFILES.in
755       * 464366 : program including gst/gstbuffer.h does not compile with -...
756       * 466595 : gst_index_add_association generates corrupted entries
757       * 469402 : File uri handling on windows broken
758       * 473846 : Deadlock if sink is unable to send first buffer
759       * 474371 : Can't build libsgtcontroller with VS6
760       * 474823 : tee unit test failure
761       * 478347 : GST_STATIC_PAD_TEMPLATE macro causes warnings with g++-4.2
762       * 478401 : gstbasesrc.c ref count bug
763       * 479784 : GST_PLUGIN_DEFINE() doesn't accept BSD and MIT/X11 licences
764       * 485343 : Implement a wait_eos function in basesink
765       * 487969 : allow nested GstStructures
766       * 492077 : Build issues on Windows/MSVC
767       * 493134 : Wrong GstObject signals registration
768       * 493983 : Build issues on Windows
769       * 494343 : pre-release vs6 patch
770       * 480858 : gstqueue code cleaning
771       * 486758 : queue element fails to re-negotiate caps upstream when si...
772       * 488201 : gst_segment_set_newsegment does not accumulate correctly
773       * 492729 : PAUSED- > PLAYING returns ASYNC when triggered from bus han...
774       * 494245 : [basesink] doesn't sync correctly if segment is in BYTES ...
775
776 API added since 0.10.14:
777
778       * gst_base_sink_get_last_buffer()
779       * GstBaseSink::last-buffer
780       * GstURIHandlerInterface::get_type_full
781       * GstURIHandlerInterface::get_protocols_full
782       * New tag: GST_TAG_ARTIST_SORTNAME
783       * New tag: GST_TAG_ALBUM_SORTNAME
784       * New tag: GST_TAG_TITLE_SORTNAME
785       * New tag: GST_TAG_COMPOSER
786       * gst_value_set_structure()
787       * gst_value_get_structure()
788       * GST_VALUE_HOLDS_STRUCTURE macro
789       * gst_bus_pop_filtered()
790       * gst_bus_timed_pop_filtered()
791       * gst_base_sink_wait_eos()
792       * gst_pad_peer_query()
793       * GstBaseSrc::do-timestamp
794       * gst_base_src_set_do_timestamp()
795       * gst_base_src_get_do_timestamp()
796       * GstBaseSink::ts-offset property
797       * gst_base_sink_set_ts_offset()
798       * gst_base_sink_get_ts_offset()
799       * GstBaseSink::async property
800       * gst_base_sink_set_async_enabled()
801       * gst_base_sink_is_async_enabled()
802       * gst_structure_get_uint()
803       * GstLFOControlSource and functions
804
805 Changes since 0.10.13:
806
807       * State change handling improvements
808       * New improved GstController API
809       * Multi-queue fixes and enhancements
810       * Fewer dynamic library relocations
811       * Various other fixes and improvements
812       * Parallel installability with 0.8.x series
813       * Threadsafe design and API
814
815 Bugs fixed since 0.10.13:
816
817       * 457322 : registry is read twice on startup
818       * 406632 : pkgconfigify the check for Check in configure.ac
819       * 423700 : [multiqueue] leaks memory when flushing
820       * 437457 : saving relocations for GstElementDetails
821       * 444648 : [API] add GstParamSpecFraction
822       * 444820 : build error with grammar.tab.c
823       * 448794 : state changes are racy with decodebin after rewrite for 0...
824       * 449197 : [capsfilter] Should set src pad caps on buffer
825       * 449226 : Incomplete ghostpads in xml session save
826       * 449493 : minor quoting fix in gst-feature.m4 macro
827       * 450711 : [GstController] Improve extensibility by providing a GstC...
828       * 451939 : [API] add GST_TAG_LICENSE_URI and GST_TAG_COPYRIGHT_URI
829       * 459501 : gst_registry_lookup_feature_locked is slow
830       * 462558 : Regression in async state change handling
831       * 462752 : make gst_element_class_set_details_simple args const
832       * 430682 : multiqueue doesn't output data on unlinked pads properly
833       * 462085 : registry feature hash can access invalid memory
834       * 357959 : buffer_alloc is not proxied through tee
835       * 374639 : GstTee doesn't handle pad list resyncs properly
836       * 449414 : [capsfilter] Copy of passed GstCaps taken instead of refe...
837       * 453732 : [PATCH] multiqueue returns wrong internally linked pads
838
839 API added since 0.10.13:
840
841       * Add GstParamSpecFraction, so elements can have fraction
842         properties without lots of painful string parsing (#444648).
843       * Add fail_unless_equals_float() and assert_equals_float()
844       * Add gst_type_register_static_full
845       * Add gst_element_class_set_details_simple
846       * Refactor GstController into the core controller which can take
847         a GstControlSource for providing actual values for timestamps.
848       * add GST_TAG_LICENSE_URI and GST_TAG_COPYRIGHT_URI (#451939)
849       * gst_element_factory_has_interface()
850
851 Changes since 0.10.12:
852
853       * Latency handling infrastructure for live playback scenarios
854       * State change handling changes
855       * GstController property handling improved
856       * Various bug fixes and improvements
857       * Parallel installability with 0.8.x series
858       * Threadsafe design and API
859
860 Bugs fixed since 0.10.12: 
861
862       * 440682 : gst/gstsystemclock unit test occasionally fails
863       * 342564 : Configure options causing compilation to fail
864       * 378255 : Swedish translation updated
865       * 392804 : [API] add GST_CORE_ERROR_DISABLED
866       * 412648 : [filesink] reports wrong (byte) position after seeking
867       * 413123 : No XML dependency patch
868       * 415394 : [identity] post message for imperfect streams if check-pe...
869       * 417992 : Quickly playing/pausing messes up synchronization
870       * 420106 : [basetransform] race on shutdown: setcaps func called aft...
871       * 420206 : Collectpads causes a segv. when stopping after a pad remove
872       * 421480 : Make it possible to build without libxml2 with --disable-...
873       * 421543 : [GstPad] Doesn't check if pad accepts caps after caps change
874       * 422295 : GstController crashes with quadratic and cubic interpolat...
875       * 425400 : Multiqueue leaks memory when releasing sink pads
876       * 431150 : compilation fails with flex 2.5.4
877       * 431940 : [API] add gst_buffer_try_new_and_alloc()
878       * 432876 : current time level in queue
879       * 434926 : Multilib conflicts with gst-launch-0.10 man page
880       * 435880 : [GstBin] Property to allow bins to handle child async cha...
881       * 437563 : URIs with upper-case protocol don't play
882       * 440463 : gstbin unit test sometimes hangs waiting for ASYNC_DONE m...
883       * 441159 : Regression in state change handling
884       * 349180 : gst_parse_launch is not reentrant (or recursively callable)
885       * 414986 : Don't start the async thread for the system clock until n...
886       * 393099 : GstBuffer copy vfunc broken?
887       * 419851 : pad-added and pad-removed signals parameter type incorrect
888       * 420133 : gst_element_sync_state_with_parent should look at pending...
889       * 421177 : Possible deadlock if pad eventfunc is not specified
890
891 API additions since 0.10.12:
892
893       * gst_element_change_state()
894       * GST_STATE_TARGET
895       * GST_BASE_TRANSFORM_LOCK/UNLOCK
896       * GstClock::gst_clock_unadjust_unlocked()
897       * fakesink::num-buffers property
898       * GST_CORE_ERROR_DISABLED
899       * basesrc::prepare_seek_segment vmethod
900       * gst_buffer_try_new_and_alloc()
901       * gst_buffer_copy_metadata()
902       * GstBufferCopyFlags enum
903       * GST_BUFFER_COPY_ALL flag
904       * gst_uri_protocol_is_supported()
905       * gst_base_src_query_latency()
906       * GstQueue::pushing
907       * gst_controller_suggest_next_sync()
908       * gst_object_suggest_next_sync()
909       * basesrc::unlock_stop
910       * basesink::unlock_stop
911       * GstBin::async-handling property
912       * gst_message_new_async_start()
913       * gst_message_parse_async_start()
914       * gst_message_new_async_done()
915       * GST_MESSAGE_ASYNC_START
916       * GST_MESSAGE_ASYNC_DONE
917
918 Changes since 0.10.11:
919
920       * Add a warning if GLib threading support is not properly initialised
921       * Add support for binary registry serialisation
922       * Preliminary support for pull-mode scheduling of entire chains
923       * Add support for HPPA 
924       * Collectpads fixes
925       * Lots of bug fixes
926
927 Bugs fixed since 0.10.11:
928      
929       * 378931 : Bison version check doesn't work on Solaris 9
930       * 399875 : [multiqueue] dynamic growth not implemented.
931       * 339326 : pads not set to FLUSHING when created
932       * 380129 : gst_plugin_feature_load doesn't consistently ref a return...
933       * 381301 : [patch] Make GstBus watch work with any GMainContext
934       * 383382 : Removing pads from collectpads not threadsafe
935       * 383506 : Disallow CLOCK_TIME_NONE as periodic clock id interval
936       * 387073 : gst-launch videotestsrc ! ffmpegcolorspace ! ximagesink d...
937       * 387866 : [docs] Small fix for GstCollectPads docs
938       * 391278 : g_thread_init() called too late, possibly causing memory ...
939       * 391296 : [API] add gst_update_registry() to rescan registry at run...
940       * 391777 : GStreamer does not reset SEGV trap handler
941       * 391909 : Fix compilation with MinGW
942       * 399094 : gst_pad_start_task: small doc typo
943       * 401381 : GstRegistry signals documentation is missing
944       * 401781 : [API] add GST_ROUND_DOWN_* macros
945       * 402393 : [API][GstCollectPads] Allow elements to specify destroy n...
946       * 405284 : Changing state of pipeline can lock up with preroll queue...
947       * 400656 : [PATCH] filesrc seekability detection fix (NFS and 2GB+ f...
948       * 403172 : [filesrc] doesn't handle localhost file locations
949       * 404569 : [filesrc] Unexpected end of file
950       * 161922 : script to provide plugin installation info
951       * 391915 : adapter test doesn't compile with mingw
952       * 395554 : gst_tag_setter_merge_tags works at most once
953       * 403597 : [API] Add ReplayGain reference level tag
954       * 405288 : Configure checks use pkg-config directly
955       * 381492 : [SystemClock] ClockID wait_async notification broken
956       * 382592 : Multiple wait()ers break periodic clock ids
957       * 385084 : endless ghost pad pull/push activate recursion until crash
958       * 388201 : [API] add gst_adapter_copy()
959
960 API additions since 0.10.11:
961
962       * gst_update_registry()
963       * gst_adapter_copy()
964       * GST_ROUND_DOWN_* macros
965       * GstCollectDataDestroyNotify
966       * gst_query_new_latency()
967       * gst_query_set_latency()
968       * gst_query_parse_latency()
969       * gst_message_new_lost_preroll()
970       * gst_message_parse_lost_preroll()
971       * gst_message_new_prerolled()
972       * gst_message_new_latency()
973       * gst_event_new_latency()
974       * gst_event_parse_latency()
975       * GST_TAG_REFERENCE_LEVEL
976       * gst_base_sink_query_latency()
977       * gst_base_sink_get_latency()
978       * gst_bus_timed_pop()
979       * gst_message_new_info()
980       * gst_message_parse_info()
981
982 Bugs fixed since 0.10.10:
983
984       * 363095 : [BaseTransform] Outputs empty buffers
985       * 353301 : aborts in _get_element_by_uri(), probably due to buggy el...
986       * 344639 : Separate threadsafe queuing functionnality in a separate ...
987       * 347785 : [multiqueue] New multiple input-output queue
988       * 352827 : re-negotiation issues with dynamic pipelines and level or...
989       * 357180 : [libs] gst_controller_new* functions don't increase refco...
990       * 318031 : gstreamer should use gmodule-no-export in its .pc file
991       * 340878 : Registry doesn't discard removed plugin features
992       * 345496 : No GstPadDirection in files created by GstXml
993       * 356910 : Basesrc gst_base_src_activate_push not calling base_src_s...
994       * 357593 : Generated gst-element-check.m4 installed from $(srcdir)
995       * 358436 : #include is missing in gstghostpad.c and gstquery.c
996       * 358999 : [PATCH] [GstPad] Flushing on blocked pads not handled cor...
997       * 359850 : Compiling issues on sparc with Forte
998       * 360151 : Fixes compiling with forte: disable warning as error for ...
999       * 360173 : Fixes compiling with forte: warning clean up (part 1)
1000       * 360467 : [API] add gst_tag_list_is_empty ()
1001       * 360860 : Fixes compiling with forte: warning clean up (part 2)
1002       * 361675 : Allow applications to use libxml2 and GStreamer even if  ...
1003       * 361720 : grammar project: error generating gstmarshal.c and gstmar...
1004       * 361730 : wrong source file list in VC8 project
1005       * 361732 : " win32\common\libgstreamer.def " lacks 'gst_caps_merge' entry
1006       * 361769 : Deadlock in gstpad.c 
1007       * 364388 : size variable is not always initialized in gst_base_src_s...
1008       * 366321 : GST_SEGMENT_FORMAT not defined on windows
1009       * 370865 : [basesrc] update segment duration in gst_base_src_update_...
1010       * 371493 : Incomplete change of printf conversion specifiers in gstr...
1011       * 374475 : [PATCH] minor doc typo
1012       * 377332 : [PATCH] Warning with check > = 0.9.4
1013       * 357617 : [libs] gst_controller_set_from_list can return without un...
1014       * 358737 : _gst_event_copy sets the wrong parent_refcount on the chi...
1015       * 366212 : Fix some misspellings in gstreamer core
1016       * 369366 : MacOSX printf fixes for CVS
1017       * 371894 : tests/examples/typefind is broken  
1018       * 355499 : ensure_current_registry_forking()  fails if zombie alread...
1019       * 352345 : Small race condition in the queue element
1020       * 357432 : [libs] GstController needs to keep controlled objects alive
1021       * 358613 : sink- > file is never reset for filesink elements, even tho...
1022       * 366286 : [PATCH] fix compilation on Windows
1023       * 366572 : Bad declaration in headerfile
1024       * 367677 : [fdsrc] skips the first byte
1025       * 369942 : [PATCH] unblocking blocked pad does not release all block...
1026
1027 API added since 0.10.10:
1028
1029       * gst_element_state_change_return_get_name
1030       * gst_tag_list_is_empty
1031       * gst_pad_is_blocking()
1032       * GST_PAD_IS_BLOCKING() macro
1033       * GST_PAD_BLOCKING GstPadFlag
1034       * gst_base_src_wait_playing
1035       * gst_base_sink_wait_preroll
1036       * gst_message_new_buffering
1037       * gst_message_parse_buffering
1038
1039 Bugs fixed since 0.10.9:
1040      
1041       * 349180 : gst_parse_launch is not reentrant (or recursively callable)
1042       * 348455 : [filesrc] should not use mmap() by default, since it migh...
1043       * 340674 : marry gst-debugs & plot-timeline.py
1044       * 350449 : [GstBaseTransform] buffer_alloc should alway try downstream
1045       * 352580 : implement proper caps merging
1046       * 345444 : Linking to an audioconvert (pad-added callback) multiple ...
1047       * 347293 : GstValueList comparison is flawed
1048       * 347311 : element_unlink leaks its iterator wich will leak the src ...
1049       * 348179 : gst_parse_lauch is not reentrant
1050       * 348354 : failure in bison version detection breaks build
1051       * 350419 : API: GST_SEGMENT_FORMAT printf extension for GstSegments
1052       * 350879 : [init] Mark gstreamer as being initialized during registr...
1053       * 350935 : API: add GST_TAG_EXTENDED_COMMENT
1054       * 353976 : asssertion about element sanity in gst_registry_xml_write...
1055       * 350432 : micro-optimising quarks
1056       * 341029 : Ghostpads internal and target should be linked from the b...
1057       * 345295 : [PATCH] gstreamer/libs/gst/net for Windows
1058       * 347756 : Allow --disable-trace without --disable-parse
1059       * 347794 : Do not reset SIGSEGV handler when --gst-disable-segtrap i...
1060       * 348918 : application should decide whether or not to use fork() to...
1061       * 349943 : [QOS] documentation/code mismatch
1062       * 351768 : Unwanted concurent buffer modifications
1063       * 352958 : pad_alloc_buffer and stream lock
1064       * 353121 : gst_query_new_segment should initialize all structure fields
1065       * 353122 : gst_element_get_bus refs the bus unconditionally
1066       * 347385 : [ghostpad] gst_ghost_pad_new_from_template() method
1067       * 348677 : Upgrade to 0.10.9 breaks existing applications (failed se...
1068
1069 API added since 0.10.9:
1070      
1071       * gst_segtrap_is_enabled
1072       * gst_segtrap_set_enabled
1073       * gst_registry_fork_is_enabled
1074       * gst_registry_fork_set_enabled
1075       * gst_ghost_pad_new_from_template
1076       * gst_ghost_pad_new_no_target_from_template
1077       * gst_caps_merge
1078       * GST_TAG_EXTENDED_COMMENT
1079       * GstClockCLass:wait_jitter
1080       * GST_SEGMENT_FORMAT
1081       * gst_structure_id_set
1082       * gst_structure_id_set_valist
1083
1084 Changes since 0.10.8:
1085
1086       * The testsuite can now generate coverage information
1087       * Better support for non-linear editing
1088       * Removed Glib 2.6 compatibility
1089       * Performance improvements on cpus that support branch hints
1090       * Bug fixes
1091
1092 Bugs fixed since 0.10.8:
1093
1094       * 346730 : some warnings about enums and macros
1095       * 341029 : Ghostpads internal and target should be linked from the b...
1096       * 346192 : [PATCH] Pad blocking on events
1097       * 347384 : [ghostpad] padtemplates shouldn't be set automatically
1098       * 344115 : [patch] make more internal data const
1099       * 324176 : gst-element-check-0.x.m4 should use versioned gst-inspect
1100       * 330379 : Bogus commits to basesink, basetransform, collectpads
1101       * 341667 : restore_from_xml breaks pad links again after creating them
1102       * 344642 : tools/gst-inspect.c does not compile if --disable-nls is ...
1103       * 344748 : Fails with non-writable registry
1104       * 344849 : GstController doesn't handle float properties correct
1105       * 345086 : [gst-feedback] calls un-versioned tools
1106       * 346097 : SIGSEGV when using --gst-plugin-load
1107       * 347337 : GDP does not correctly deserialize events without a struc...
1108       * 347408 : basesrc causes regressions in pull with 0 bytes
1109       * 345720 : Bad performance playing files off CD
1110       * 331727 : make probes and Ghostpads more elegant
1111       * 343196 : basetransform not handles ro/rw buffer flagging for trans...
1112       * 346663 : Segmentation error with fakesrc, fakesink and a filter
1113
1114 Changes since 0.10.7:
1115     
1116       * Important fix for registry update causing applets not to load
1117
1118 Bugs fixed since 0.10.7:
1119     
1120       * 344474 : Gnome Mixer Applet doesn't want to load
1121
1122 Changes since 0.10.6:
1123     
1124       * Registry cache updating is now done in a fork, so no plugins are left
1125         opened
1126       * New version of data protocol now serializes events
1127       * queue fixes
1128       * win32 fixes
1129
1130 Bugs fixed since 0.10.6:
1131     
1132       * 338335 : [patch] memleak in gst-utils.c (leak pads from iterator)
1133       * 343598 : undefined symbol in coreindexers when using --disable-loa...
1134       * 336929 : GstCollectPads does not clear/reset segment info after fl...
1135       * 337100 : [fakesink] add " preroll-handoff " signal
1136       * 339918 : GstTagSetter merge-mode description unclear, and implemen...
1137       * 340501 : [filesrc] give primary rank
1138       * 341662 : gst-launch print_tags() fix
1139       * 342238 : API: gst_element_seek_simple
1140       * 342321 : GST_QUERY_POSITION fails if GstBaseSrc in get_range mode
1141       * 342777 : rebuilding the registry leaves all plugins in memory
1142       * 342820 : gstnetclientclock.c(453): servaddr used before set
1143       * 343057 : gst-launch-0.10 segfaults when passed gst-plugin-path and...
1144       * 343341 : [API] add GST_TAG_PREVIEW_IMAGE
1145       * 343827 : leak in gst_index_gtype_resolver
1146       * 343929 : Use of // in public header
1147       * 343988 : data protocol needs extending to handle events better
1148       * 341479 : Too many plugins loaded even for up-to-date registry
1149       * 343334 : GstCollectPads testsuite and fixes
1150       * 343538 : GstCollectPads doesn't reset EOS fields when stopped
1151
1152 API added since 0.10.6:
1153
1154       * gst_element_seek_simple()
1155       * GST_FLOW_CUSTOM_SUCCESS
1156       * GST_FLOW_CUSTOM_ERROR
1157       * GST_FLOW_IS_SUCCESS
1158       * gst_collect_pads_set_flushing()
1159       * GST_TAG_PREVIEW_IMAGE
1160       * gst_dp_crc()
1161       * GstDPPacketizer
1162       * GstDPVersion
1163       * GstFakeSink::preroll-handoff
1164       * GstFakeSink::use-mmap
1165
1166 Changes since 0.10.5:
1167
1168       * Fixes for the collectpads helper
1169       * Support for proper time recording on server-trickmode streams
1170         via the applied_rate parameter of the NewSegment event
1171       * Many bug fixes
1172
1173 Bugs fixed since 0.10.5:
1174
1175       * 339808 : [patch] mem-leak of bin in gstbin.c
1176       * 338339 : [patch] registry cache is always written
1177       * 339843 : [patch] fdsink should not handle short writes and non fat...
1178       * 340016 : does not build on opensolaris, must always include config...
1179       * 340079 : gst-launch wrapper fails with 'No version of tool gst-lau...
1180       * 340174 : locking problem in gstbasesink
1181       * 340460 : gst-launch no longer supports --version
1182       * 340508 : remove glib pre 2.8 hacks and compat stuff
1183       * 340604 : gst_mini_object_ref () docs make no mention of writeability
1184       * 340608 : leaking caps in padtemplate
1185       * 340697 : gstsystemclock hangs when outputting to stdout via fdsink 
1186       * 340721 : API: add GST_TAG_IMAGE
1187       * 340772 : [qtdemux] bails out on Meet The Robinsons trailer
1188       * 341556 : gst-launch: print image tags in a human readable form
1189       * 339821 : [patch] serializing a GValue with a NULL buffer crashes
1190
1191 API added since 0.10.5:
1192
1193       * gst_adapter_take_buffer()
1194       * GST_TAG_IMAGE tag added.
1195       * gst_event_new_new_segment_full()
1196       * gst_event_parse_new_segment_full()
1197       * GstSegment::applied_rate field
1198       * gst_segment_set_newsegment_full()
1199
1200 Changes since 0.10.4:
1201
1202       * QoS in BaseTransform
1203       * gcc 4.1 fixes
1204       * BaseTransform reworked
1205       * Bus reworked; signal API added
1206
1207 Bugs fixed since 0.10.4:
1208     
1209       * 131079 : [PATCH] [api] loading a class leaves elementfactory blank
1210       * 317048 : gstreamer Cygwin build fixes
1211       * 325599 : Build fails with GCC 4.1
1212       * 327315 : GStreamer CVS head files to build with GCC 4.1
1213       * 331248 : [basesink] filesink spews warnings when used with flacenc
1214       * 332151 : xml registry loader should use mmap() where possible
1215       * 332390 : [GstQueue/GstPad] queue pauses immediately when linked, p...
1216       * 332986 : Something wrong in caps checking...
1217       * 334109 : pkg-config files must link with the same check library th...
1218       * 334303 : Stale libgnomeui check in configure
1219       * 334434 : Missing functions in def files for dlls
1220       * 335195 : GST_BOILERPLATE_FULL etc isn' optimised
1221       * 335480 : start with debugging disabled
1222       * 335513 : totem goes (and stays) out of sync when running bittorrent
1223       * 336336 : [queue] Queue might block in EOS
1224       * 336945 : [filesink] throws error when writing 0 bytes
1225       * 337103 : small cleanup in gstplugin.c
1226       * 337386 : Pipeline bus is not initially flushing
1227       * 338711 : Internal data flow error with latest updates for FC5 with...
1228       * 326311 : basesink does not call the PAUSED- > PLAYING change_state f...
1229       * 326998 : GstBaseSrc's send_event handler ignores seek requests aft...
1230
1231 API added since 0.10.4:
1232
1233       * gst_controller_unset_all()
1234       * gst_pad_query_peer_position()
1235       * gst_pad_query_peer_duration()
1236       * gst_pad_query_peer_convert()
1237       * GstBaseSink::async_play()
1238       * GstBaseSrc::qos
1239       * gst_base_sink_set_qos_enabled()
1240       * gst_base_sink_is_qos_enabled()
1241       * gst_base_transform_update_qos()
1242       * gst_base_transform_set_qos_enabled()
1243       * gst_base_transform_is_qos_enabled()
1244       * gst_pipeline_get_delay()
1245       * gst_pipeline_set_delay()
1246
1247 Changes since 0.10.3:
1248     
1249       * Parallel installability with 0.8.x series
1250       * Threadsafe design and API
1251       * 33% of library size removed by parse change
1252       * (Experimental) QoS features (use max-lateness on BaseSink subclasses to enable)
1253
1254 Bugs fixed since 0.10.3:
1255     
1256       * 323542 : GStreamer 0.10 hangs at EOS for all songs
1257       * 320340 : triggering a gst_task_join from the streaming task can de...
1258       * 322628 : document thread-unsafety of gst_value_foo() + gst_value_r...
1259       * 324186 : Smarter (deterministic!) typefind decisions
1260       * 324398 : varargs/valist functions aren't bindable
1261       * 328873 : only one gst_bin_recalc_state allowed at a time
1262       * 330899 : CVS directory in make dist tarball
1263       * 330906 : API: add GST_QUERY_TYPE_NAME and GST_MESSAGE_TYPE_NAME
1264       * 330996 : basesrc emits EOS unconditionally when going to READY
1265       * 331255 : Shrinking gst_parse_launch bloat
1266       * 331898 : Basetranform is not reusable
1267       * 332045 : API: GstPipeline needs API to disable  flushing of its bu...
1268       * 332277 : [filesrc] seek does not correct read position in non-mmap...
1269       * 332611 : [basesrc] needs way to prevent expensive start/stop in ch...
1270       * 332723 : New API: gst_type_find_helper_for_buffer
1271       * 333042 : New API: gst_type_find_helper_get_range
1272       * 333266 : Registry file writing rewrite
1273       * 333272 : tests should set G_SLICE=always-malloc now
1274       * 333417 : GST_BOILERPLATE_WITH_INTERFACE can't be used in C++ code
1275       * 333669 : Add pad accessor defines for GstBaseTransform
1276       * 333779 : New API: add gst_uri_has_protocol
1277       * 324818 : gst_registry_get_default doesn't sink newly created registry
1278       * 330125 : _pad_send_event does not check flushing correctly
1279       * 330684 : Add ability to emit sync-message without messing with the...
1280  
1281 API added since 0.10.3:
1282     
1283       * gst_pipeline_set_auto_flush_bus()
1284       * gst_pipeline_get_auto_flush_bus()
1285       * gst_uri_has_protocol()
1286       * gst_pipeline_set_max_lateness()
1287       * gst_pipeline_get_max_lateness()
1288       * gst_pipeline_get_sync()
1289       * gst_pipeline_do_sync()
1290       * GST_BASE_TRANSFORM_SRC_PAD()
1291       * GST_BASE_TRANSFORM_SINK_PAD()
1292       * GstBaseSrc::check_get_range()
1293       * GstBaseSink::max-lateness
1294       * gst_type_find_helper_get_range()
1295       * gst_type_find_helper_for_buffer()
1296       * GST_MESSAGE_TYPE_NAME()
1297       * GST_QUERY_TYPE_NAME()
1298       * gst_bus_enable_sync_message_emission()
1299       * gst_bus_disable_sync_message_emission()
1300
1301 Changes since 0.10.2:
1302
1303       * Documentation updates
1304       * Bug fixes
1305       * Base class improvements
1306       * Extra utility API
1307       * More elements ported from 0.8
1308       * Fixes for win32 build.
1309
1310 Changes since 0.10.1:
1311     
1312       * documentation updates
1313       * bug fixes
1314
1315 Bugs fixed since 0.10.1:
1316     
1317       * 325429 : GST_BOILERPLATE_FULL can't be used when compiling with -W...
1318       * 316086 : MinGW compilation: fileindexer depends on mmap
1319
1320 Changes since 0.10.0:
1321     
1322       * element factory leak fixes
1323       * tests cleanup
1324       * BaseSrc seeking in other format than BYTES
1325       * collectpad fixes
1326
1327 Bugs fixed since 0.10.0:
1328     
1329       * 322441 : getcontext() in common/m4/gst-mcsc.m4 uses incorrect stac...
1330       * 323041 : [BASESRC] basesrc does not handle a seek to non-bytes for...
1331       * 323870 : [tools] gst-feedback needs updating for 0.9/0.10
1332       * 323882 : gst-launch manpage needs updates
1333       * 323905 : use return val of g_list_append
1334
1335 API added since 0.10.0:
1336      
1337       * GST_TYPE_STATIC_CAPS
1338       * GST_TYPE_STATIC_PAD_TEMPLATE
1339       * GstNetTimeProvider::active
1340       * gst_base_src_set_format
1341
1342 Changes from the 0.8 series to 0.10 series:
1343
1344       * Refcounting and API revised for thread safety, see rules in
1345         docs/design/part-MT-refcounting.txt
1346
1347       * Scheduling is now done by the elements, they start/stop
1348         processing threads themselves. This removes the need for 
1349         a separate scheduler.
1350
1351       * State changes now happen from sink to source. This makes sure
1352         that downstream elements are ready to process data when upstream
1353         starts producing.
1354
1355       * EOS/ERROR/... does not change the state of elements anymore. This
1356         means that when the application sets the state on an element, it
1357         remains in this state.
1358
1359       * GMainLoop integration. Information on the state of the pipeline
1360         is now received in the mainloop via the GstBus.
1361
1362       * Events move separate from the datastream, this allows for both
1363         in and out of sync delivery of events.
1364
1365       * Generic _pull() replaced by _pull_region() so that random access
1366         can be made faster.
1367
1368       * data passing happens from PAUSED, called the preroll phase. In this
1369         state no data is rendered but it is queued in the sinks.
1370
1371       * negotiation simplified. Caps are now attached to buffers and travel
1372         along with the datastream. 
1373
1374       * GstBuffer is now subclassable.
1375
1376       * Ghostpads now look and feel like real pads.
1377
1378       * New Seeking/flushing policy.
1379
1380       * Addition of base classes and helper functions in the core to abstract
1381         away the harder parts of plugin development.
1382
1383 Changes since 0.9.7:
1384
1385       * added Traditional Chinese translation
1386
1387 Bugs fixed since 0.9.7:
1388     
1389       * 322874 : [PAD] pad_alloc_buffer should not call set_caps
1390       * 323222 : GStreamer 0.9.7 still checks in dirs containing 0.9
1391       * 323250 : [collectpads] debug category should be called 'collectpad...
1392
1393 Changes since 0.9.6:
1394     
1395       * bumped major/minor to 0.10
1396       * API cleanup
1397       * PluginFeature and TypeFind leak fixes
1398       * cleaned up source tree
1399       * added plugin documentation for core elements
1400       * fixes for stripped core
1401
1402 Bugs fixed since 0.9.6:
1403     
1404       * 320529 : [API] gst_event_new_segment mentions " stream_time " as an ...
1405       * 321917 : quicktime with two video tracks and extra foo, makes tote...
1406       * 322257 : Fix gstnet library name
1407       * 322427 : gst-compprep aborts with 'double free or corruption'
1408       * 322429 : Filesink seeking problem
1409       * 322626 : Strings in gst-launch.c adn gstdebug.c are horrid
1410       * 322708 : gst_plugin_load_file leaks a reference to a GstPlugin
1411       * 322751 : gst_ghost_pad_get_target borks on pads without target
1412       * 322842 : GStreamer-CRITICAL in GstBaseSink and GstBaseTransform
1413
1414 Changes since 0.9.5:
1415     
1416       * API changes and clean-up
1417       * Extensive documentation updates
1418       * remove GLib 2.4 compatibility
1419       * added clock selection
1420       * added network clocking
1421       * added fd:// URI handler
1422       * added more fraction functionality
1423
1424 Bugs fixed since 0.9.5:
1425     
1426       * 143472 : [api] gst_tag_list_foreach() takes a non-const GstTagList*
1427       * 156633 : [API] don't use same API for arrays as for normal lists
1428       * 164168 : circular pipeline fails to negotiate
1429       * 165650 : [API] gst_value_deserialize doesn't work correctly for NU...
1430       * 168438 : [API] GstIndexFilter doesn't receive user_data
1431       * 168494 : [API] gst_index_add_object() does nothing
1432       * 305291 : Obnoxious bug-filing request
1433       * 311489 : Possible gstghostpad locking problems
1434       * 319178 : [API] finish filler events and support them in GstCollect...
1435       * 319388 : 0.9 API changes tracker
1436       * 319389 : state change updates obsolete some functions
1437       * 319392 : GstEventType is not bindings-friendly
1438       * 319395 : Macro name/visibility API bugs
1439       * 319940 : Use GLIB macros for GCC extensions
1440       * 320060 : add a CORE error category for missing ELEMENTS/PLUGINS
1441       * 320097 : GST_BUFFER_FLAG_ORIGINAL should die
1442       * 320113 : [API] duration message changes
1443       * 320299 : gst_pad_send_event should take stream lock for serialized...
1444       * 320324 : [API] GST_FOURCC_FORMAT should drop leading '%'
1445       * 320423 : [API] padding for GstCollectData
1446       * 320766 : [API] collect pads API changes
1447       * 321061 : GstURI not used
1448       * 321235 : [API] GST_PAD_IS_USABLE should be removed
1449       * 321386 : [SEGFAULT] basetransform when doing reverse caps negotiation
1450       * 321452 : GstPad's " template " property is b0rked
1451       * 321528 : capsfilter: assertion `caps != NULL' failed
1452       * 321595 : GstBin doesn't clean the message queue when changing stat...
1453       * 321638 : Don't use // style comments in headers
1454       * 321648 : Wrong type check in gst_message_parse_clock_lost
1455       * 321710 : GstClock resolution functions should take a GstClockTime
1456       * 321712 : GstClock adjust function changes
1457       * 321875 : gst_plugin_check_file disappeared
1458       * 321950 : gst_registry_scan_paths lacks implementation
1459       * 321962 : [easyfix] gst_value_is_fixed uses gst_value_list_* on GST...
1460       * 322027 : [API] Rename gst_caps_structure_fixate_* to gst_structure...
1461       * 322034 : Elements should be updated not to take the stream lock in...
1462       * 322069 : Names of GstTagSetter methods should be more descriptive
1463       * 322134 : API master/slave clocks
1464       * 322139 : our elements are confused about GEnumValue and which is t...
1465   
1466 Changes since 0.9.4:
1467     
1468       * gst_bus_poll and signal watch now see the same messages
1469       * clock sync in BaseSrc class
1470       * API documentation updates
1471       * Bus reworked; signal API added
1472
1473 Bugs fixed since 0.9.4:
1474     
1475       * 317341 : after linking ghost pads, one target pad does not have a ...
1476       * 320774 : basesrc commit broke typefinding
1477
1478 Changes since 0.9.3:
1479
1480       * state lock redefined
1481       * Extensive documentation updates
1482       * BaseTransform reworked
1483       * Bus reworked; signal API added
1484
1485 Bugs fixed since 0.9.3:
1486
1487       * 111146 : new GstThread fails on pipeline with errors
1488       * 169772 : [PATCH] GOption command-line parsing
1489       * 170777 : use GST_TYPE_DATE for GST_TAG_DATE
1490       * 315050 : [API] consider using GstClockTime instead of GTimeVal in ...
1491       * 315126 : filesrc + forced caps should be possible
1492       * 315383 : gst-launch shouldn't run broken pipelines
1493       * 317041 : GstObject flags should be made real flags
1494       * 318447 : gst_bin_iterate_sorted: Invalid call to gst_iterator_new
1495
1496 Changes since 0.9.2:
1497
1498       * gst-register has been removed
1499       * Extensive documentation updates
1500       * BaseTransform reworked
1501       * Bus reworked; signal API added
1502
1503 Bugs fixed since 0.9.2:
1504
1505       * 102980 : support incremental gst-register/compprep updates
1506       * 313897 : [0.9] registry rewrite
1507       * 314710 : gst_buffer_create_sub doesn't copy the GST_BUFFER_FLAGS
1508       * 315895 : gst_pad_query_convert src_val check
1509       * 316155 : MinGW compilation: glib-mkenums root path subtitution pro...
1510       * 316157 : MinGW compilation: Plugin exports
1511
1512 This is GStreamer 0.9.2, "South".
1513
1514 Bugs fixed since 0.9.1:
1515
1516       * 121015 : [api] gst_clock_entry_new() seems broken
1517       * 134227 : [api] gst_clock_id_wait_async, wrong return code for defa...
1518       * 142209 : [build] Large file support broken
1519       * 154785 : Clock does not run if audio stream lacks data for a short...
1520       * 305256 : [API] Change gst_element_seek to not mix enum/flags types
1521       * 309253 : GST_DEBUG_FUNCPTR macro does illegal casting from functio...
1522       * 311004 : ghostpad bugginess
1523       * 311009 : valgrind shows undesired messages
1524       * 311848 : Renegotiation broken
1525       * 314708 : filesrc doesn't set GST_BUFFER_FLAG_READONLY on mmaped bu...