.cvsignore: Ignore more.
[glsdk/gstreamer0-10.git] / ChangeLog
1 2006-07-07  Tim-Philipp Müller  <tim at centricular dot net>
3         * .cvsignore:
4           Ignore more.
6 2006-07-07  Tim-Philipp Müller  <tim at centricular dot net>
8         * Makefile.am:
9         * configure.ac:
10         * gst-element-check.m4:
11         * gst-element-check.m4.in:
12           Make gst-element-check-$VERSION.m4 call gst-inspect-$VERSION
13           instead of the unversioned gst-inspect (#324176, #168659).
15 2006-07-06  Wim Taymans  <wim@fluendo.com>
17         * gst/gstmessage.h:
18         Use a valid int for the _MESSAGE_ANY enum value to avoid compiler
19         warnings.
21 2006-07-06  Wim Taymans  <wim@fluendo.com>
23         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
24         (gst_base_src_wait), (gst_base_src_update_length),
25         (gst_base_src_get_range), (gst_base_src_default_check_get_range),
26         (gst_base_src_check_get_range), (gst_base_src_pad_check_get_range),
27         (gst_base_src_loop), (gst_base_src_start),
28         (gst_base_src_activate_pull):
29         Update docs.
30         blocksize == 0 now means the default blocksize when working in push
31         based mode.
32         Remove some pointless asserts in _wait function.
33         Fix offset/length calculations and EOS handling. We can now pull 0
34         bytes as well, which is allowed.
35         use _check_get_range() to decide if we can operate in _pull based
36         mode.
37         Fix refcounting leak when check_get_range function was not 
38         implemented.
39         API GstBaseSrc::blocksize range can be 0 too now (default)
41         * tests/check/elements/filesrc.c: (GST_START_TEST),
42         (filesrc_suite):
43         Added check to test _get_range() behaviour.
45 2006-07-06  Wim Taymans  <wim@fluendo.com>
47         * gst/gstpad.c: (gst_pad_chain_unchecked), (gst_pad_chain),
48         (gst_pad_push), (gst_pad_check_pull_range), (gst_pad_get_range),
49         (gst_pad_pull_range):
50         * gst/gstpad.h:
51         Lots of comments and docs added to the pad functions.
52         Flesh out the expected behaviour of the get_range() functions.
54 2006-07-06  Wim Taymans  <wim@fluendo.com>
56         * gst/gstbus.h:
57         * gst/gstclock.h:
58         * gst/gstevent.h:
59         * gst/gstiterator.h:
60         * gst/gstpad.h:
61         * gst/gstplugin.h:
62         * gst/gsttask.h:
63         Remove comma at end of enumerator list. 
65 2006-07-05  Sebastien Moutte  <sebastien@moutte.net>
67         * win32/common/libgstbase.def:
68         * win32/common/libgstdataprotocol.def:
69         * win32/common/libsgtreamer.def:
70         Add new exported functions.
72 2006-07-05  Wim Taymans  <wim@fluendo.com>
74         * libs/gst/base/gstpushsrc.c: (gst_push_src_check_get_range):
75         Add some more docs here and there.
77 2006-07-05  Wim Taymans  <wim@fluendo.com>
79         * libs/gst/base/gstbasesink.c: (gst_base_sink_preroll_object),
80         (gst_base_sink_loop), (gst_base_sink_get_position):
81         When operating in pull mode update the offset so that we
82         read sequentially.
84 2006-07-05  Wim Taymans  <wim@fluendo.com>
86         * gst/gstregistryxml.c: (read_string):
87         Avoid strdup. (will happen in libxml, but hey!)
89         * gst/gsturi.c:
90         Add some more docs.
92 2006-07-05  Wim Taymans  <wim@fluendo.com>
94         * gst/gstbuffer.c: (_gst_buffer_copy), (gst_buffer_create_sub):
95         * tests/check/gst/gstbuffer.c: (GST_START_TEST),
96         (gst_buffer_suite):
97         No point in checking if the size of the subbuffer > 0, the
98         code handles it correclty as demonstrated by unit test.
99         Also add a unit test for the zero sized _new_and_alloc and
100         _copy. Fixes #346663.
102 2006-07-05  Wim Taymans  <wim@fluendo.com>
104         * libs/gst/base/gstbasetransform.c:
105         (gst_base_transform_prepare_output_buffer),
106         (gst_base_transform_buffer_alloc),
107         (gst_base_transform_handle_buffer):
108         Make sure the buffer we pass to transform_ip has a refcount of
109         1 and thus is writable. Fixes #343196
111 2006-07-04  Jan Schmidt  <thaytan@mad.scientist.com>
113         * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
114         (gst_file_src_init), (gst_file_src_set_property),
115         (gst_file_src_get_property), (gst_file_src_map_region):
116         * plugins/elements/gstfilesrc.h:
117         Add "sequential" property, off by default, to use madvise and hint
118         to the kernel that sequential access is desired.
119         Touch all retrieved pages by default to ensure they are pulled
120         into memory. (Closes #345720)
122 2006-07-03  Wim Taymans  <wim@fluendo.com>
124         * docs/design/part-block.txt:
125         * docs/design/part-dynamic.txt:
126         Small docs updates.
128 2006-07-03  Wim Taymans  <wim@fluendo.com>
130         * gst/gstcaps.c: (gst_caps_new_empty), (_gst_caps_free),
131         (gst_caps_unref), (gst_static_caps_get),
132         (gst_caps_append_structure):
133         * gst/gstclock.c: (gst_clock_entry_new), (_gst_clock_id_free):
134         Use GSlice when the glib we build against is >= 2.10
136 2006-07-03  Wim Taymans  <wim@fluendo.com>
138         * gst/gstelement.c: (gst_element_pads_activate):
139         Small cleanup in pad activation code.
141 2006-07-03  Wim Taymans  <wim@fluendo.com>
143         Patch by: Peter Kjellerstedt <pkj at axis dot com>
145         * gst/gst-i18n-app.h:
146         * gst/gst-i18n-lib.h:
147         * tools/gst-inspect.c: (print_signal_info):
148         The attached patch will make the inclusion of gettext.h unconditional in
149         gst/gst-i18n-app.h and gst/gst-i18n-lib.h, and it will remove the inclusion of
150         libintl.h in tools/gst-inspect.c.
151         This allows use of --disable-nls again and fixes #344642.
153 2006-07-03  Edward Hervey  <edward@fluendo.com>
155         * gst/gstpad.c: (handle_pad_block), (gst_pad_push_event):
156         Implement pad blocking on events according to part-block.txt.
157         More comments on behaviour.
158         * tests/check/gst/gstevent.c: (test_event):
159         Send event to peer pad of blocked pad (else it will block).
161 2006-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
163         * libs/gst/check/gstcheck.c: (gst_check_message_error),
164         (gst_check_run_suite):
165           if we get the wrong message, give us the types as string
166         * plugins/elements/gstfilesrc.c: (gst_file_src_start):
167           Fix a translatable
168         * tests/check/elements/filesrc.c: (GST_START_TEST):
169           add a test for trying to open a non-existing file
171 2006-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
173         * tests/check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
174           add a test for adding self
176 2006-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
178         * libs/gst/check/gstcheck.h:
179           add some assert_ as alias for fail_unless_*
180         * tests/check/gst/gst.c: (GST_START_TEST), (gst_suite):
181           increase test coverage
183 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
185         * Makefile.am:
186           include lcov.mak for lcov coverage generation
187         * tools/Makefile.am:
188           add to CLEANFILES
190 2006-07-02  Edward Hervey  <edward@fluendo.com>
192         * tests/check/elements/.cvsignore:
193         moaping
195 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
197         * configure.ac:
198           don't set CFLAGS and friends for gcov, done from GST_GCOV now
199         * tests/check/Makefile.am:
200           clean up gcov files
202 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
204         * gst/gstcaps.c: (gst_caps_remove_and_get_structure):
205           remove gst_caps_simplify; it was not declared and not used
206           and deprecated in 0.8
208 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
210         * docs/faq/gst-uninstalled:
211           don't put empty paths on PYTHONPATH
212         * docs/gst/gstreamer-sections.txt:
213           remove some symbols that are not there
215 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
217         * gst/gstcaps.c: (gst_caps_compare_structures):
218           whitespace fixes
219         * tests/check/gst/gstbuffer.c: (GST_START_TEST):
220         * tests/check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
221           add more tests
223 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
225         * libs/gst/dataprotocol/Makefile.am:
226           build dataprotocol test by linking to the lib, instead of
227           compiling the source, so we get coverage
228         * tests/check/Makefile.am:
229         * tests/check/elements/filesrc.c: (event_func), (setup_filesrc),
230         (cleanup_filesrc), (GST_START_TEST), (filesrc_suite):
231           add a test for filesrc
233 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
235         * tests/check/gst/gststructure.c: (GST_START_TEST),
236         (gst_structure_suite):
237           Push coverage from 59.04% to 70.00%
239 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
241         * tests/check/Makefile.am:
242           gst-inspect every element; this makes sure that we also get
243           coverage on element's get/set functions
245 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
247         * configure.ac:
248           set CFLAGS and friends to -O0 if gcov is being used
249           add GCOV LIBS
250         * gst/Makefile.am:
251         * libs/gst/base/Makefile.am:
252         * libs/gst/check/Makefile.am:
253         * libs/gst/controller/Makefile.am:
254         * libs/gst/dataprotocol/Makefile.am:
255         * libs/gst/net/Makefile.am:
256         * plugins/elements/Makefile.am:
257         * plugins/indexers/Makefile.am:
258           add makefile rules to generate gcov data and clean up
259         * tests/check/Makefile.am:
260           add a coverage target that generates an html overview
261           of coverage data
263 2006-07-01  Thomas Vander Stichele  <thomas at apestaart dot org>
265         * tests/check/elements/fakesink.c:
266         * tests/check/elements/fakesrc.c:
267         * tests/check/elements/fdsrc.c:
268         * tests/check/elements/identity.c:
269         * tests/check/generic/sinks.c: (gst_sinks_suite):
270         * tests/check/generic/states.c:
271         * tests/check/gst/gst.c:
272         * tests/check/gst/gstabi.c:
273         * tests/check/gst/gstbin.c:
274         * tests/check/gst/gstbuffer.c: (gst_buffer_suite):
275         * tests/check/gst/gstbus.c: (gst_bus_suite):
276         * tests/check/gst/gstcaps.c: (GST_START_TEST):
277         * tests/check/gst/gstelement.c:
278         * tests/check/gst/gstevent.c: (gst_event_suite):
279         * tests/check/gst/gstghostpad.c:
280         * tests/check/gst/gstiterator.c: (gst_iterator_suite):
281         * tests/check/gst/gstmessage.c: (gst_message_suite):
282         * tests/check/gst/gstminiobject.c:
283         * tests/check/gst/gstobject.c:
284         * tests/check/gst/gstpad.c:
285         * tests/check/gst/gstpipeline.c:
286         * tests/check/gst/gstplugin.c:
287         * tests/check/gst/gstquery.c: (gst_query_suite):
288         * tests/check/gst/gstsegment.c: (gst_segment_suite):
289         * tests/check/gst/gststructure.c:
290         * tests/check/gst/gstsystemclock.c:
291         * tests/check/gst/gsttag.c:
292         * tests/check/gst/gsttask.c: (gst_task_suite):
293         * tests/check/gst/gstutils.c:
294         * tests/check/gst/gstvalue.c:
295         * tests/check/libs/adapter.c:
296         * tests/check/libs/basesrc.c:
297         * tests/check/libs/collectpads.c:
298         * tests/check/libs/controller.c:
299         * tests/check/libs/gdp.c: (gst_dp_suite):
300         * tests/check/libs/gstnetclientclock.c:
301         * tests/check/libs/gstnettimeprovider.c:
302         * tests/check/libs/libsabi.c: (libsabi_suite):
303         * tests/check/libs/typefindhelper.c:
304         * tests/check/pipelines/cleanup.c:
305         * tests/check/pipelines/parse-launch.c:
306         * tests/check/pipelines/simple-launch-lines.c:
307         * tests/check/pipelines/stress.c: (stress_suite):
308           use the new macro
310 2006-07-01  Thomas Vander Stichele  <thomas at apestaart dot org>
312         * libs/gst/check/gstcheck.c: (gst_check_run_suite):
313         * libs/gst/check/gstcheck.h:
314           create a macro and function so that the simple unit test
315           case can be just one macro to create main()
317 2006-06-30  Tim-Philipp Müller  <tim at centricular dot net>
319         * gst/gstbin.c: (gst_bin_restore_thyself):
320         * gst/gstxml.c: (gst_xml_make_element):
321           Fix deserialisation from XML. Set parent manually
322           instead of using gst_bin_add(), since gst_bin_add()
323           will unlink all pads of the element being added.
324           Fixes #341667.
326 2006-06-28  Tim-Philipp Müller  <tim at centricular dot net>
328         Patch by: Peter Kjellerstedt <pkj at axis com>
330         * gst/gst.c: (prepare_for_load_plugin_func), (split_and_iterate):
331           Fix missing g_strdup() and double free when using the
332           --gst-plugin-load command line option (#346097).
334 2006-06-23  Tim-Philipp Müller  <tim at centricular dot net>
336         * gst/gstinfo.c:
337           Promote GST_DEBUG_CATEGORY_STATIC in example in docs.
339         * libs/gst/net/gstnetclientclock.c:
340         * libs/gst/net/gstnettimeprovider.c:
341           Use GST_DEBUG_CATEGORY_STATIC here too (#342503).
343 2006-06-23  Tim-Philipp Müller  <tim at centricular dot net>
345         * docs/manual/advanced-dataaccess.xml:
346           Fix buffer probe example compilation in
347           ADM (#345708).
348         
349 2006-06-22  Edward Hervey  <edward@fluendo.com>
351         * gst/gstelement.c: (gst_element_pads_activate):
352         We need to deactivate src pads first and then sink pads.
353         The reason is the src pads might be blocking while holding the streaming
354         lock, so we need to deactivate them first so that deactivating the sink
355         pads doesn't block (since it will require the streaming lock).
357 2006-06-22  Wim Taymans  <wim@fluendo.com>
359         * libs/gst/base/gstbasetransform.c:
360         (gst_base_transform_buffer_alloc):
361         Forgot to remove two unneeded unrefs.
362         Simplify a check _is_equal allready checks the obvious case.
364 2006-06-22  Wim Taymans  <wim@fluendo.com>
366         * docs/design/part-block.txt:
367         Some docs about what pad_block should do.
369 2006-06-22  Wim Taymans  <wim@fluendo.com>
371         * gst/gstcaps.c: (gst_caps_replace):
372         Fix crasher when passed NULL. Doc clarification.
373         Optimize for the trivial case.
375         * gst/gstpipeline.c: (gst_pipeline_change_state):
376         Small cleanups.
378         * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
379         Small documentation cleanup.
381         * libs/gst/base/gstbasetransform.c:
382         (gst_base_transform_buffer_alloc):
383         Don't use silly gst_pad_get_negotiated_caps, GST_PAD_CAPS
384         is what we need and it avoids a whole lot of redundant 
385         refcount operations.
387 2006-06-22  Tim-Philipp Müller  <tim at centricular dot net>
389         Patch by: Philip Jägenstedt  <philip at lysator liu se>
391         * docs/manual/advanced-dataaccess.xml:
392           Fix 'Embedding static elements' section to use
393           GST_PLUGIN_DEFINE_STATIC (#345607).
395 2006-06-21  Tim-Philipp Müller  <tim at centricular dot net>
397         * tests/check/pipelines/simple-launch-lines.c: (test_stop_from_app):
398           Attempt to 'fix' spuriously failing test case: it seems like the
399           timeout of half a second is simply too small when the system is under
400           load otherwise, and the timeout doesn't really seem to serve any
401           particular purpose here. Give the pipeline a few seconds to preroll
402           first, and then give it another half a second to go from PAUSED to
403           PLAYING and marshal the message into the main thread.
405 2006-06-21  Tim-Philipp Müller  <tim at centricular dot net>
407         * tools/gst-feedback-m.m:
408           Don't only use unversioned tools, try versioned tools as well
409           (#345086).
411 2006-06-21  Tim-Philipp Müller  <tim at centricular dot net>
413         * gst/gstbus.c: (gst_bus_class_init):
414           Fix some typos, make docs more explicit.
416 2006-06-20  Wim Taymans  <wim@fluendo.com>
418         * tests/check/gst/gstghostpad.c: (block_callback),
419         (GST_START_TEST), (gst_ghost_pad_suite):
420         Added some more ghostpad tests, mainly blocking
421         and probes.
423 2006-06-16  Wim Taymans  <wim@fluendo.com>
425         * plugins/elements/gstfilesink.c: (gst_file_sink_open_file),
426         (gst_file_sink_close_file), (gst_file_sink_do_seek),
427         (gst_file_sink_event), (gst_file_sink_render):
428         * plugins/elements/gstfilesink.h:
429         Check if we can seek in the file instead of assuming
430         we always can. Post an error when we are asked to seek in a
431         non-seekable file (like a fifo). Fixes #343312.
432         Some cleanups.
434 2006-06-16  Tim-Philipp Müller  <tim at centricular dot net>
436         * tools/gst-launch.1.in:
437           Un-garble (fourcc) bit in filtered caps section.
439 2006-06-16  Tim-Philipp Müller  <tim at centricular dot net>
441         * docs/manual/advanced-autoplugging.xml:
442         * docs/manual/basics-helloworld.xml:
443         * docs/manual/highlevel-components.xml:
444           Don't leak bus reference in sample code.
446 2006-06-15  Tim-Philipp Müller  <tim at centricular dot net>
448         * autogen.sh:
449           Add default for new --enable-plugin-docs switch.
451         * configure.ac:
452           Use new GST_PLUGIN_DOCS macro to check for pyxml etc.
453           Fixes #344039.
455         * docs/Makefile.am:
456           Use new ENABLE_PLUGIN_DOCS conditional.
458 2006-06-14  Wim Taymans  <wim@fluendo.com>
460         * gst/gstbin.c: (bin_query_duration_done), (gst_bin_query):
461         Make it clear with a FIXME and a real define what the #if 0
462         previously disabled.
464 2006-06-14  Wim Taymans  <wim@fluendo.com>
466         * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
467         (gst_base_sink_preroll_object), (gst_base_sink_get_position):
468         * libs/gst/base/gstbasetransform.c:
469         (gst_base_transform_sink_eventfunc):
470         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
471         Don't randomly and silently reset a segment when the format 
472         changes as this is a bug somewhere upstream. Fixes #330379.
474 2006-06-14  Tim-Philipp Müller  <tim at centricular dot net>
476         Patch by: Wouter Paesen  <wouter at kangaroot net>
478         * libs/gst/controller/gstcontroller.c:
479         (gst_controlled_property_new):
480           Fix controlling of float properties (#344849).
482         * tests/check/libs/controller.c:
483         (gst_test_mono_source_get_property),
484         (gst_test_mono_source_set_property),
485         (gst_test_mono_source_class_init), (GST_START_TEST):
486           While we're at it, add some float stuff to unit test.
488 2006-06-13  Thomas Vander Stichele  <thomas at apestaart dot org>
490         * docs/README:
491         * docs/images/gdp-header.svg:
492           add a gdp image
493         * docs/libs/Makefile.am:
494         * docs/libs/gdp-header.png:
495         * libs/gst/dataprotocol/dataprotocol.c:
496           add it to the API docs
497         * docs/manual/intro-motivation.xml:
498           fix typo
500 2006-06-13  Tim-Philipp Müller  <tim at centricular dot net>
502         * gst/gst.c: (scan_and_update_registry), (init_post):
503           If the fork()'ed child process can't write the updated registry cache
504           file to disk for some reason, make it exit with a failure exit code,
505           so that the parent can then re-scan the plugins itself and update the
506           registry structures in memory and work with that (rather than failing
507           when creating elements because seemingly no plugins are available).
508           Refactor registry scanning code into separate function for this and
509           also separate fork() and non-fork() code paths. Fixes #344748.
511 2006-06-13  Wim Taymans  <wim@fluendo.com>
513         * docs/manual/advanced-dataaccess.xml:
514         Fix wrong PluginDesc. Fixes #344755.
516 2006-06-13  Tim-Philipp Müller  <tim at centricular dot net>
518         * gst/gstregistryxml.c: (gst_registry_xml_write_cache):
519           Fix silly bug that prevented us from creating
520           ~/.gstreamer-0.10 and writing the registry in one
521           go (the first call to g_mkstemp() would overwrite the
522           placeholder in the template string, so the second call
523           to g_mkstemp() after creating the missing directory
524           would then error out with 'invalid argument').
526 2006-06-13  Edward Hervey  <edward@fluendo.com>
528         * gst/gst.c: (init_post):
529         Free string.
531 2006-06-13  Thomas Vander Stichele  <thomas at apestaart dot org>
533         * gst/glib-compat-private.h:
534         * gst/glib-compat.c:
535         * gst/glib-compat.h:
536         * gst/gstvalue.c: (gst_value_serialize_flags):
537           remove GLib 2.6 compatibility code
539 2006-06-12  Tim-Philipp Müller  <tim at centricular dot net>
541         * gst/parse/Makefile.am:
542           Fix build with 'make -j N' even more (#340016).
544 2006-06-12  Wim Taymans  <wim@fluendo.com>
546         * docs/gst/gstreamer-sections.txt:
547         Fix docs.
549 2006-06-12  Wim Taymans  <wim@fluendo.com>
551         * gst/gstsegment.c: (gst_segment_set_duration),
552         (gst_segment_set_last_stop), (gst_segment_set_seek),
553         (gst_segment_set_newsegment_full), (gst_segment_to_stream_time),
554         (gst_segment_to_running_time), (gst_segment_clip):
555         Use G_UNLIKELY to help the compiler a bit.
557 2006-06-12  Wim Taymans  <wim@fluendo.com>
559         Patch by: Stefan Kost <ensonic at sonicpulse dot de>
561         * gst/gstevent.c: (gst_event_get_type):
562         * gst/gstmessage.c:
563         * gst/gstpad.c: (gst_pad_chain_unchecked), (gst_pad_chain),
564         (gst_pad_push):
565         constify quark registration strings. Fixes #344115
566         Avoid unneeded type checking is _pad_push() by internally
567         calling gst_pad_chain_unchecked().
569 2006-06-12  Wim Taymans  <wim@fluendo.com>
571         * gst/gstbuffer.c: (gst_buffer_get_type), (gst_buffer_finalize),
572         (_gst_buffer_copy), (gst_buffer_is_metadata_writable),
573         (gst_subbuffer_finalize), (gst_buffer_create_sub),
574         (gst_buffer_is_span_fast), (gst_buffer_span):
575         Init _type for consistency.
576         Use _FLAGS macro to avoid type check.
577         Avoid unneeded type checks in subbufer code.
579 2006-06-12  Wim Taymans  <wim@fluendo.com>
581         * gst/gst.c: (gst_debug_help):
582         * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_list_free):
583         * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
584         (gst_plugin_feature_list_free):
585         * gst/gstregistry.c: (gst_registry_add_plugin),
586         (gst_registry_add_feature), (gst_registry_plugin_filter),
587         (gst_registry_feature_filter), (gst_registry_find_plugin),
588         (gst_registry_find_feature), (gst_registry_get_plugin_list),
589         (gst_registry_lookup_feature_locked), (gst_registry_lookup_locked):
590         * gst/gstregistryxml.c: (load_feature),
591         (gst_registry_xml_read_cache), (gst_registry_xml_write_cache):
592         * gst/gstminiobject.c: (gst_mini_object_unref),
593         (gst_mini_object_replace), (gst_value_mini_object_free),
594         (gst_value_mini_object_copy):
595         Use _CAST macros to avoid unneeded type checking.
596         Added some more G_UNLIKELY.
598 2006-06-12  Wim Taymans  <wim@fluendo.com>
600         * gst/gstbuffer.h:
601         Avoid unneeded type checking.
602         API: GST_BUFFER_IS_DISCONT
604         * gst/gstminiobject.h:
605         Avoid type check in flag accessor.
607         * gst/gstelementfactory.h:
608         * gst/gstplugin.h:
609         * gst/gstpluginfeature.h:
610         Add _CAST macros.
611         API: GST_ELEMENT_FACTORY_CAST
612         API: GST_PLUGIN_CAST
613         API: GST_PLUGIN_FEATURE_CAST
615 2006-06-12  Wim Taymans  <wim@fluendo.com>
617         * gst/gstobject.c: (gst_object_get_type), (gst_object_ref),
618         (gst_object_unref):
619         Add G_UNLIKELY in type registration.
620         Avoid type check in _ref/_unref since that is also
621         done in glib.
623 2006-06-12  Wim Taymans  <wim@fluendo.com>
625         * gst/gsterror.c: (gst_g_error_get_type):
626         * gst/gstpadtemplate.c: (gst_pad_template_get_type),
627         (gst_static_pad_template_get_type):
628         * gst/gsttaglist.c: (gst_tag_list_get_type):
629         * gst/gsttagsetter.c: (gst_tag_setter_get_type):
630         * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type):
631         * gst/gsturi.c: (gst_uri_handler_get_type):
632         * gst/gstvalue.c: (gst_date_get_type):
633         * gst/gstxml.c: (gst_xml_get_type):
634         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_type),
635         (gst_base_sink_preroll_object), (gst_base_sink_get_position):
636         * libs/gst/base/gstbasesrc.c: (gst_base_src_get_type):
637         Add G_UNLIKELY in type registration.
639 2006-06-12  Wim Taymans  <wim@fluendo.com>
641         * tools/gst-inspect.c: (print_signal_info):
642         Properly print enum values.
644 2006-06-12  Wim Taymans  <wim@fluendo.com>
646         * gst/gstinfo.c: (gst_debug_set_active),
647         (gst_debug_category_set_threshold), (_gst_debug_nameof_funcptr):
648         * gst/gstinfo.h:
649         Add some G_[UN]LIKELY.
650         Maintain __gst_debug_min to avoid formatting the arguments of
651         debug messages that will be dropped anyway to avoid a lot of 
652         overhead from the debugging system.
654 2006-06-11  Stefan Kost  <ensonic@users.sf.net>
656         * po/POTFILES.in:
657         * po/POTFILES.skip:
658           add missing files containing translatable strings, tell intltool about
659           one exception
661 2006-06-11  Stefan Kost  <ensonic@users.sf.net>
663         * tests/check/libs/.cvsignore:
664         add test-binary to ignore list
666 2006-06-11  Stefan Kost  <ensonic@users.sf.net>
668         * docs/libs/gstreamer-libs-docs.sgml:
669         reorder (put dp into a chapter) and indent
671 2006-06-10  Thomas Vander Stichele  <thomas at apestaart dot org>
673         * configure.ac:
674           back to HEAD
676 === release 0.10.8 ===
678 2006-06-10  Thomas Vander Stichele <thomas at apestaart dot org>
680         * configure.ac:
681           releasing 0.10.8, "Soepeke, ik zie ou nog altijd nie"
683 2006-06-10  Thomas Vander Stichele  <thomas at apestaart dot org>
685         * gst/gst.c: (init_post):
686           move pid declaration to declaration block
688 2006-06-10  Thomas Vander Stichele  <thomas at apestaart dot org>
690         * gst/gst.c: (init_post):
691           use _exit() instead of exit() in our forked child; this ensures
692           that none of the registered exit handlers from whatever is using
693           GStreamer get executed.  This fixes gnome-mixer-applet failing
694           to load, because ORBit would shut down.
695           Spotted by: Edward Hervey  <edward@fluendo.com>
696           Fix suggested by: Tim-Philipp Müller  <tim at centricular dot net>
697           Fixes #344474
699 2006-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
701         * configure.ac:
702           back to TRUNK
704 === release 0.10.7 ===
706 2006-06-09  Thomas Vander Stichele <thomas at apestaart dot org>
708         * configure.ac:
709           releasing 0.10.7, "Soepeke, ik zie ou"
711 2006-06-07  Thomas Vander Stichele  <thomas at apestaart dot org>
713         * configure.ac:
714         * po/af.po:
715         * po/az.po:
716         * po/bg.po:
717         * po/ca.po:
718         * po/cs.po:
719         * po/de.po:
720         * po/en_GB.po:
721         * po/fr.po:
722         * po/it.po:
723         * po/nb.po:
724         * po/nl.po:
725         * po/ru.po:
726         * po/sq.po:
727         * po/sr.po:
728         * po/sv.po:
729         * po/tr.po:
730         * po/uk.po:
731         * po/vi.po:
732         * po/zh_CN.po:
733         * po/zh_TW.po:
734         * win32/common/config.h:
735           0.10.6.2 prerelease
737 2006-06-07  Wim Taymans  <wim@fluendo.com>
739         * gst/gstindex.c: (gst_index_gtype_resolver):
740         * tools/gst-xmlinspect.c: (print_plugin_info):
741         Fix leak spotted by coverity checker. Fixes #343827
742         Fix another other leak found by paolo borelli.
744 2006-06-06  Thomas Vander Stichele  <thomas at apestaart dot org>
746         * libs/gst/dataprotocol/dataprotocol.c:
747         (gst_dp_header_from_buffer_any), (gst_dp_packet_from_caps_any),
748         (gst_dp_version_get_type), (gst_dp_init),
749         (gst_dp_header_from_buffer), (gst_dp_header_from_buffer_1_0),
750         (gst_dp_packet_from_caps), (gst_dp_packet_from_caps_1_0),
751         (gst_dp_packet_from_event), (gst_dp_packet_from_event_1_0),
752         (gst_dp_event_from_packet_0_2), (gst_dp_event_from_packet_1_0),
753         (gst_dp_event_from_packet), (gst_dp_packetizer_new),
754         (gst_dp_packetizer_free):
755         * libs/gst/dataprotocol/dataprotocol.h:
756           API: add a GstDPPacketizer object, and create/free functions
757           API: add GstDPVersion enum
758           Add 1.0 event function that uses the string serialization
759           Serialize more useful buffer flags
760           Fixes #343988
762 2006-06-06  Thomas Vander Stichele  <thomas at apestaart dot org>
764         * tests/check/Makefile.am:
765         * tests/check/gst/gstabi.c:
766         * tests/check/gst/struct_ppc64.h:
767         * tests/check/libs/libsabi.c:
768         * tests/check/libs/struct_ppc64.h:
769           add ppc64 structure sizes
771 2006-06-06  Thomas Vander Stichele  <thomas at apestaart dot org>
773         * tests/check/Makefile.am:
774         * tests/check/gst/gstabi.c:
775         * tests/check/gst/struct_x86_64.h:
776         * tests/check/libs/libsabi.c:
777         * tests/check/libs/struct_x86_64.h:
778           generate and add structure size lists for x86_64
780 2006-06-06  Thomas Vander Stichele  <thomas at apestaart dot org>
782         * libs/gst/check/gstcheck.c: (gst_check_abi_list):
783         * libs/gst/check/gstcheck.h:
784           factor out the method from tests that checks size of structures,
785           and add code to generate the header containing these sizes
786         * tests/check/gst/gstabi.c: (GST_START_TEST):
787         * tests/check/gst/struct_i386.h:
788         * tests/check/libs/libsabi.c: (GST_START_TEST):
789         * tests/check/libs/struct_i386.h:
790           use it
792 2006-06-06  Michael Smith  <msmith@fluendo.com>
794         * gst/gstsegment.h:
795           Don't use c++-style comments, fixes #343929
797 2006-06-05  Edward Hervey  <edward@fluendo.com>
799         * gst/gst.c:
800         plugin_paths is not used if we build without registry support.
802         * gst/gstsegment.c: (gst_segment_copy): 
803         _copy() was always returning NULL...
805 2006-06-02  Thomas Vander Stichele  <thomas at apestaart dot org>
807         * libs/gst/dataprotocol/dataprotocol.c:
808         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
809         (gst_dp_packet_from_event):
810           factor out CRC code
812 2006-06-02  Thomas Vander Stichele  <thomas at apestaart dot org>
814         * libs/gst/check/gstcheck.c: (gst_check_teardown_src_pad):
815           make sure we unset caps
817 2006-06-02  Michael Smith  <msmith@fluendo.com>
819         * libs/gst/check/gstcheck.c: (gst_check_init),
820         (gst_check_chain_func):
821         * libs/gst/check/gstcheck.h:
822           Add a cond/mutex to the check support lib, signal this whenever we
823           add to the buffers list. This will allow tests to not busy-wait on
824           the buffer-list.
826 2006-06-02  Thomas Vander Stichele  <thomas at apestaart dot org>
828         * libs/gst/dataprotocol/dataprotocol.c:
829         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
830         (gst_dp_packet_from_event):
831           factor out some common header init code
833 2006-06-02  Thomas Vander Stichele  <thomas at apestaart dot org>
835         * docs/libs/gstreamer-libs-sections.txt:
836         * docs/libs/tmpl/gstdataprotocol.sgml:
837         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
838         * libs/gst/dataprotocol/dataprotocol.h:
839           API: make gst_dp_crc() public
841 2006-06-01  Stefan Kost  <ensonic@users.sf.net>
843         * plugins/indexers/gstindexers.c: (plugin_init):
844         conditionally register fileindexer (fixes #343598)
846 2006-06-01  Stefan Kost  <ensonic@users.sf.net>
848         * gst/gsttagsetter.h:
849         Can't cast ifaces to a class
851         * libs/gst/net/gstnetclientclock.h:
852         * libs/gst/net/gstnettimeprovider.h:
853         * plugins/elements/gstfakesink.h:
854         * plugins/elements/gstfakesrc.h:
855         * plugins/elements/gstfdsink.h:
856         * plugins/elements/gstfdsrc.h:
857         * plugins/elements/gstfilesink.h:
858         * plugins/elements/gstfilesrc.h:
859         * plugins/elements/gstidentity.h:
860         * plugins/elements/gstqueue.h:
861         * plugins/elements/gsttee.h:
862         * plugins/indexers/gstfileindex.c:
863         * plugins/indexers/gstmemindex.c:
864         * tests/old/examples/plugins/example.h:
865         Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
867 2006-06-01  Thomas Vander Stichele  <thomas at apestaart dot org>
869         * libs/gst/dataprotocol/dataprotocol.c:
870         (gst_dp_header_from_buffer):
871           make sure we zero the whole ABI-compatible area
873 2006-06-01  Wim Taymans  <wim@fluendo.com>
875         Patch by: Alessandro Decina <alessandro at nnva dot org>
877         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop):
878         Make sure the EOS flag is cleared from pads after a flush
879         or stop. Fixes #343538.
881         * tests/check/libs/collectpads.c: (GST_START_TEST),
882         (gst_collect_pads_suite):
883         Added test for collectpads reusage after EOS.
885 2006-05-30  Sebastien Moutte  <sebastien@moutte.net>
887         * gst/gst.c:
888          set #include <sys/wait.h> in a #ifdef #ifdef HAVE_FORK
889         * win32/common/libgstbase.def:
890          export gst_collect_pads_set_flushing
891         * win32/common/libgstreamer.def:
892          export gst_pad_set_acceptcaps_function, gst_structure_empty_new,
893          gst_value_fraction_multiply
894         * win32/vs6/gst_inspect.dsp:
895          add a link to intl.lib
897 2006-05-30  Wim Taymans  <wim@fluendo.com>
899         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
900         (gst_collect_pads_chain):
901         Handle the case where a pad is removed from the collection
902         that could cause the other pads to become collectable.
904 2006-05-30  Wim Taymans  <wim@fluendo.com>
906         * gst/gstelement.c:
907         Clarify the use of _release_request_pad() and
908         _get_request_pad() a bit better.
910         * libs/gst/base/gstadapter.c: (gst_adapter_peek),
911         (gst_adapter_take_buffer):
912         Fix some doc and comment typos.
914 2006-05-30  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
916         * docs/gst/gstreamer-sections.txt:
917         * docs/libs/gstreamer-libs-sections.txt:
918           add declared symbols
920 2006-05-30  Jan Schmidt  <thaytan@mad.scientist.com>
922         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
923         Add debug that can be enabled using a #define at the top of the file,
924         for dumping stats about how late/early we were when waking up from
925         waiting on the clock.
927 2006-05-30  Wim Taymans  <wim@fluendo.com>
929         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_check_pads):
930         When rebuilding the pad list, don't leak the previous list.
932 2006-05-30  Wim Taymans  <wim@fluendo.com>
934         Patch by: Lutz Mueller <lutz at topfrose dot de>
936         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
937         (gst_base_src_get_query_types), (gst_base_src_update_length):
938         Publish supported query types.
939         Update last_stop field in get_range mode so the position
940         query works. Fixes #342321.
942 2006-05-30  Tim-Philipp Müller  <tim at centricular dot net>
944         * docs/gst/gstreamer-sections.txt:
945         * gst/gsttaglist.c: (_gst_tag_initialize):
946         * gst/gsttaglist.h:
947           API: add GST_TAG_PREVIEW_IMAGE (#343341).
949 2006-05-30  Wim Taymans  <wim@fluendo.com>
951         Patch by: Alessandro Decina <alessandro at nnva dot org>
953         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad):
954         Unlock mutex when removing an unknown pad.
955         Fixes #343334.
957         * tests/check/Makefile.am:
958         * tests/check/libs/collectpads.c: (collected_cb), (push_buffer),
959         (push_event), (setup), (teardown), (GST_START_TEST),
960         (gst_collect_pads_suite), (main):
961         Added collecpads check, disabled for now as check crashes for
962         some reason.
964 2006-05-29  Wim Taymans  <wim@fluendo.com>
966         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize):
967         Don't leak pads lists.
969 2006-05-29  Wim Taymans  <wim@fluendo.com>
971         * docs/libs/gstreamer-libs-sections.txt:
972         * libs/gst/base/gstcollectpads.c:
973         (gst_collect_pads_set_flushing_unlocked),
974         (gst_collect_pads_set_flushing), (gst_collect_pads_start),
975         (gst_collect_pads_stop):
976         * libs/gst/base/gstcollectpads.h:
977         API: gst_collect_pads_set_flushing()
978         Added api to set the pads to flushing, useful for seeking
979         code in elements using collectpads.
980         Clear segment when receiving a flush.
982 2006-05-29  Tim-Philipp Müller  <tim at centricular dot net>
984         * gst/gst.c: (add_path_func), (init_post):
985           Don't scan registry paths passed via --gst-plugin-path immediately
986           (will crash, because absolutely nothing is set up and no types are
987           registered etc.); do this later in init_post(). Fixes #343057.
989 2006-05-28  Thomas Vander Stichele  <thomas at apestaart dot org>
991         * gst/gst.c: (init_post):
992           if we have fork, fork while reading/rebuilding the registry
993           so the parent doesn't take the hit of having all plugins loaded
994           in memory.  Fixes #342777.
995         * configure.ac:
996           Check if we have fork()
997         * win32/common/config.h.in:
998           no fork() on win32
1000 2006-05-26  Jan Schmidt  <thaytan@mad.scientist.com>
1002         * plugins/elements/gstelements.c:
1003         * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
1004         (gst_file_src_init), (gst_file_src_set_property),
1005         (gst_file_src_get_property), (gst_file_src_start):
1006         * plugins/elements/gstfilesrc.h:
1007           API: GstFileSrc::use-mmap
1009         Add a use-mmap property to enable easier testing of all code paths.
1010         Bump rank to PRIMARY, so filesrc is the preferred file reader and used
1011         in the absence of gnomevfssrc. (Closes #340501)
1013 2006-05-26  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
1015         * tools/gst-inspect.c:
1016         Add missing include, removes warning of ngettext not being defined on
1017         some arches.
1019 2006-05-26  Jan Schmidt  <thaytan@mad.scientist.com>
1021         * gst/gstvalue.c: (gst_value_deserialize_fraction):
1022         Handle NULL input and output pointers silently as a failed conversion,
1023         rather than g_warnings.
1025 2006-05-25  Wim Taymans  <wim@fluendo.com>
1027         * libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_start):
1028         Initialize variable before using. Fixes #342820.
1030 2006-05-24  Tim-Philipp Müller  <tim at centricular dot net>
1032         * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek):
1033           Fix off-by-one bug that would only allow peeks of N-1 bytes
1034           from the start even if the buffer to typefind on contains
1035           in fact N bytes of data (makes vorbis typefinding from a
1036           vorbis identification header buffer work).
1038         * tests/check/Makefile.am:
1039         * tests/check/libs/.cvsignore:
1040         * tests/check/libs/typefindhelper.c: (GST_START_TEST),
1041         (gst_typefindhelper_suite), (main), (foobar_typefind),
1042         (plugin_init):
1043           Add very basic unit test for gst_type_find_helper_for_buffer()
1044           that checks for the problem fixed above.
1046 2006-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1048         * tools/gst-inspect.c: (print_interfaces),
1049         (print_element_properties_info), (print_element_list), (main):
1050           add more translatable strings
1052 2006-05-23  Tim-Philipp Müller  <tim at centricular dot net>
1054         Patch by: Julien Moutte  <julien at moutte net>
1056         * docs/gst/gstreamer-sections.txt:
1057           Make new GST_FLOW_IS_SUCCESS macro visible in docs.
1058           
1059         * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init),
1060         (gst_fake_sink_preroll):
1061         * plugins/elements/gstfakesink.h:
1062           API: Add new GstFakeSink::preroll-handoff signal (#337100).
1064 2006-05-23  Wim Taymans  <wim@fluendo.com>
1066         * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark):
1067         * gst/gstpad.h:
1068         Added _CUSTOM error and success GstFlowReturn that can be
1069         used be elements internally. 
1070         Added macro to check for SUCCESS flowreturns.
1071         API: GST_FLOW_CUSTOM_SUCCESS
1072         API: GST_FLOW_CUSTOM_ERROR
1073         API: GST_FLOW_IS_SUCCESS
1075         * tests/check/gst/gstpad.c: (GST_START_TEST), (gst_pad_suite):
1076         Added check for GstFlowReturn sanity.
1078 2006-05-23  Wim Taymans  <wim@fluendo.com>
1080         Patch by: Mark Nauwelaerts <manauw at skynet dot be>
1082         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
1083         (gst_collect_pads_event):
1084         clear/reset segment info in FLUSH_STOP.
1085         Fixes #336929.
1087 2006-05-22  Stefan Kost  <ensonic@users.sf.net>
1089         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop),
1090         (gst_collect_pads_check_collected):
1091         Flush queued buffer on _stop(), fixes playing again (#342454)
1093 2006-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1095         * tests/check/gst/gststructure.c: (GST_START_TEST),
1096         (gst_structure_suite):
1097           add a test for a complete structure
1099 2006-05-19  Tim-Philipp Müller  <tim at centricular dot net>
1101         * docs/faq/developing.xml:
1102         * docs/faq/faq.xml:
1103         * docs/faq/troubleshooting.xml:
1104         * docs/faq/using.xml:
1105           Some minor FAQ updates that won't change the fact that
1106           our FAQ is badly structured, full of information hardly
1107           anyone new to GStreamer needs to know and lacking lots
1108           of information people constantly ask for.
1109           
1110 2006-05-19  Jan Schmidt  <thaytan@mad.scientist.com>
1112         * gst/gstpad.c: (gst_pad_set_caps):
1113           Short-circuit gst_pad_set_caps if setting the existing
1114           caps pointer again, and avoid printing debug and 
1115           reffing/unreffing the caps.
1117         * plugins/elements/gstqueue.c: (gst_queue_push_one):
1118           There's actually no need to set the caps before pushing -
1119           the acceptcaps method will handle it anyway.
1121 2006-05-19  Tim-Philipp Müller  <tim at centricular dot net>
1123         * docs/gst/gstreamer-sections.txt:
1124         * win32/common/libgstreamer.def:
1125         * gst/gstutils.c: (gst_element_seek_simple):
1126         * gst/gstutils.h:
1127           API: add gst_element_seek_simple() (#342238).
1129 2006-05-18  Edward Hervey  <edward@fluendo.com>
1131         * gst/gsttypefind.c: (gst_type_find_get_type):
1132         * gst/gsttypefind.h:
1133         Added GST_TYPE_TYPE_FIND and gst_type_find_get_type() so a GType gets
1134         registered for GstTypeFind pointers. This allows wrapping the structure
1135         in bindings (i.e. gst-python).
1137 2006-05-18  Tim-Philipp Müller  <tim at centricular dot net>
1139         * gst/gsttagsetter.c:
1140           Docs additions and fixes (see #339918).
1142 2006-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
1144         * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
1145         The caps intersection algorithm can produce multiple copies of the
1146         caps. Until that is fixed, we need to simplify the result to be
1147         sure whether the allowed caps are fixed or not.
1149         * plugins/elements/gstqueue.c: (gst_queue_init),
1150         (gst_queue_bufferalloc), (gst_queue_acceptcaps),
1151         (gst_queue_push_one):
1152         Proxied buffer alloc should not set the caps on the source pad.
1153         When pushing buffers, we always accept the caps change that triggers.
1154         This prevents negotiation errors caused by caps changing mid-stream 
1155         and then being refused on our source pad (because upstream is now
1156         refusing those caps).
1158 2006-05-18  Tim-Philipp Müller  <tim at centricular dot net>
1160         * tests/examples/helloworld/helloworld.c: (main):
1161           Must plug audioconvert and audioresample between decoder
1162           and audio sink.
1164 2006-05-17  Jan Schmidt  <thaytan@mad.scientist.com>
1166         * gst/gstregistryxml.c: (read_string), (load_pad_template),
1167         (load_feature), (load_plugin):
1168         Allow empty strings for some of the plugin fields so we don't 
1169         drop valid plugin entries that were written out correctly
1170         (Fixes #341479)
1172 2006-05-17  Sebastien Moutte  <sebastien@moutte.net>
1173         
1174         * gst/gstregistryxml.c: (gst_registry_xml_write_cache):
1175           Use g_remove and g_rename instead of remove and rename that don't 
1176           handle utf8 characters. rename was failing for users who had specific
1177           characters in their name then the registry was built at each 
1178           gstreamer init.
1179         * win32/vs6/gst_inspect.dsp:
1180         * win32/vs6/gst_launch.dsp:
1181         * win32/vs6/libgstbase.dsp:
1182         * win32/vs6/libgstcoreelements.dsp:
1183         * win32/vs6/libgstreamer.dsp:
1184           Use a debug version of libxml2 (libxml2D.lib,libxml2D.dll) for DEBUG 
1185           build of libgstreamer and clean unused libraries in projects link 
1186           settings.
1188 2006-05-17  Edward Hervey  <edward@fluendo.com>
1190         * plugins/elements/gstqueue.c: (gst_queue_push_one):
1191         The queue is not responsible for pushing an EOS when receiving a fatal
1192         flow error. It's up to the real element driving the pipeline to do that.
1194 2006-05-16  Edward Hervey  <edward@fluendo.com>
1196         * plugins/elements/gstqueue.c: (gst_queue_push_one):
1197         The queue was posting a non-needed GST_MESSAGE_ERROR when pushing a
1198         buffer returned a fatal error. It should just send an EOS and stop
1199         its task.
1200         Upstream elements will then properly receive the GST_FLOW_UNEXPECTED
1201         when pushing buffers on the queue and will be able to handle the event.
1203 2006-05-16  Tim-Philipp Müller  <tim at centricular dot net>
1205         * docs/manual/basics-bins.xml:
1206         * docs/manual/basics-init.xml:
1207           Fix typos and minor errors in sample code (#341856).
1209 2006-05-16  Wim Taymans  <wim@fluendo.com>
1211         * docs/design/part-qos.txt:
1212         Fix indexes in formulas to make more sense.
1214 2006-05-15  Wim Taymans  <wim@fluendo.com>
1216         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
1217         Don't report POSITION based on clock time if sync is
1218         disabled in a sink.
1220 2006-05-15  Tim-Philipp Müller  <tim at centricular dot net>
1222         * gst/gstobject.h:
1223           Add cast to make compiler happy - refcount variable was a gint
1224           in GstObject but is a guint in GObject and g_atomic_int_get()
1225           wants a gint *.
1227 2006-05-15  Thomas Vander Stichele  <thomas at apestaart dot org>
1229         * gst/parse/Makefile.am:
1230           chain commands using &&, which also makes parallel make work
1232 2006-05-14  Tim-Philipp Müller  <tim at centricular dot net>
1234         * docs/gst/gstreamer-sections.txt:
1235         * gst/gstevent.c:
1236         * gst/gstevent.h:
1237         * gst/gstmessage.h:
1238           Minor docs fixes.
1240 === release 0.10.6 ===
1242 2006-05-14  Jan Schmidt <thaytan@mad.scientist.com>
1244         * configure.ac:
1245           releasing 0.10.6, "Take the cannoli"
1247 2006-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1249         * tools/gst-launch.c: (print_tag):
1250           Fix use of uninitialized variable in the hypothetical
1251           case that some broken plugin creates a GST_TAG_IMAGE
1252           tag containing a NULL buffer (#341667).
1254 2006-05-12  Tim-Philipp Müller  <tim at centricular dot net>
1256         * tools/gst-launch.c: (print_tag):
1257           Print something more intelligible for image tags when
1258           using the -t switch (#341556).
1260 2006-05-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1262         * Makefile.am:
1263           updates for win32
1264         * configure.ac:
1265           define GST_MAJORMINOR so we have it available in win32/common/config.h
1266           Possibly remove it from our Makefile.am files later
1267         * win32/common/config.h:
1268         * win32/common/config.h.in:
1269           added GST_MAJORMINOR
1270         * win32/common/gstenumtypes.c: (register_gst_resource_error):
1271         * win32/common/gstversion.h:
1272           updated
1274 2006-05-12  Sebastien Moutte  <sebastien@moutte.net>
1276         * win32/MANIFEST:
1277           Update win32 files listing.
1278         * win32/common/gstversion.h:
1279           Add GST_MAJORMINOR definition.
1280         * win32/common/libgstreamer.def:
1281           Add new exported functions.
1282           
1283 2006-05-12  Michael Smith  <msmith@fluendo.com>
1285         * gst/gstplugin.c: (gst_plugin_load_file):
1286           If an so file has no plugin entry point, unload the module.
1288 2006-05-11  Wim Taymans  <wim@fluendo.com>
1290         * plugins/elements/gstqueue.c: (gst_queue_chain), (gst_queue_loop),
1291         (gst_queue_set_property):
1292         Don't forget to signal the _chain or _loop function 
1293         when the queue size or thresholds change since that might
1294         cause them to make progres again.
1296 2006-05-11  Stefan Kost  <ensonic@users.sf.net>
1298         * gst/gstclock.c: (gst_clock_class_init):
1299         * gst/gstindex.c: (gst_index_class_init):
1300         * gst/gstobject.c: (gst_object_class_init):
1301         * gst/gstpad.c: (gst_pad_class_init):
1302         * gst/gstpipeline.c: (gst_pipeline_class_init):
1303         * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
1304         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init):
1305         * libs/gst/base/gstbasetransform.c:
1306         (gst_base_transform_class_init):
1307         * libs/gst/net/gstnetclientclock.c:
1308         (gst_net_client_clock_class_init):
1309         * libs/gst/net/gstnettimeprovider.c:
1310         (gst_net_time_provider_class_init):
1311         * plugins/elements/gstcapsfilter.c: (gst_capsfilter_class_init):
1312         * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init):
1313         * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init):
1314         * plugins/elements/gstfdsink.c: (gst_fd_sink_class_init):
1315         * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
1316         * plugins/elements/gstfilesink.c: (gst_file_sink_class_init):
1317         * plugins/elements/gstfilesrc.c: (gst_file_src_class_init):
1318         * plugins/elements/gstidentity.c: (gst_identity_class_init):
1319         * plugins/elements/gsttee.c: (gst_tee_class_init):
1320         * tests/old/examples/plugins/example.c: (gst_example_class_init):
1321         * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
1322           G_OBJECT_CLASS macro usage batch cleanup, fixes #337747 for core
1324 2006-05-11  Wim Taymans  <wim@fluendo.com>
1326         * gst/gstbuffer.c: (_gst_buffer_initialize):
1327         Register subbufer along with the buffer type so that
1328         it does not accidentally gets registered from N
1329         different streaming threads in a non threadsafe way.
1331 2006-05-10  Tim-Philipp Müller  <tim at centricular dot net>
1333         * gst/gstbuffer.h:
1334         * gst/gstevent.h:
1335         * gst/gstmessage.h:
1336           Make gtk-doc generate docs for our inlined gst_buffer_ref(),
1337           gst_event_ref() and gst_message_ref() functions again
1338           (ugly hack, please do fix if there's a better way besides
1339           overrides.txt, which doesn't seem to work).
1341 2006-05-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1343         * libs/gst/check/gstcheck.h:
1344           add an assert for setting state to avoid lots of repetitive code
1345           in the future
1347 2006-05-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1349         * gst/gstvalue.c: (gst_value_serialize_flags):
1350           fix a leak if no flags are set
1351         * tests/check/gst/gstvalue.c: (GST_START_TEST):
1352           fix leak in tests
1354 2006-05-10  Tim-Philipp Müller  <tim at centricular dot net>
1356         * docs/manual/basics-pads.xml:
1357           Expand a bit on caps and filtered links and update
1358           examples that were still using the no longer existing
1359           gst_pad_link_filtered() (#338206).
1361 2006-05-10  Wim Taymans  <wim@fluendo.com>
1363         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
1364         (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
1365         (gst_collect_pads_set_flushing), (gst_collect_pads_start),
1366         (gst_collect_pads_stop):
1367         * libs/gst/base/gstcollectpads.h:
1368         No need to call _stop in _finalize.
1369         Iterate the main pad list in _finalize.
1370         Added some more debug.
1371         Free lists and data in the right order.
1372         Also free data whem doing _remove_pad when stopped for
1373         backward compatibility protect ::started with PAD_LOCK as
1374         well.
1376 2006-05-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1378         * gst/gststructure.c: (gst_structure_gtype_from_abbr),
1379         (gst_structure_parse_value):
1380           add some comments
1381           rename a method so that it actually says what it does better
1383 2006-05-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1385         * gst/gstevent.c: (_gst_event_initialize):
1386         * gst/gstformat.c: (_gst_format_initialize):
1387           make sure some essential types used by events are registered
1388           as part of gst_init()
1389         * gst/gstvalue.c: (gst_value_serialize_flags):
1390           if no flags are set, serialize them to a value that represents NONE
1391           so that deserializing them works
1392         * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1393           add tests for serialization and deserialization of flags
1395 2006-05-10  Wim Taymans  <wim@fluendo.com>
1397         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_collect),
1398         (gst_collect_pads_collect_range), (gst_collect_pads_available),
1399         (gst_collect_pads_check_pads), (gst_collect_pads_check_collected),
1400         (gst_collect_pads_event), (gst_collect_pads_chain):
1401         Update docs.
1402         Better debug info.
1403         Catch and return errors from the collect function
1404         Refuse data on eos pads.
1406 2006-05-10  Edward Hervey  <edward@fluendo.com>
1408         * gst/gstinterface.h:
1409         GST_IMPLEMENTS_INTERFACE and GST_IS_IMPLEMENTS_INTERFACE use the normal
1410         GInterface type checking.
1411         They were previously using non-defined macros.
1413 2006-05-09  Wim Taymans  <wim@fluendo.com>
1415         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_init),
1416         (gst_collect_pads_finalize), (gst_collect_pads_add_pad),
1417         (gst_collect_pads_remove_pad), (gst_collect_pads_set_flushing),
1418         (gst_collect_pads_start), (gst_collect_pads_stop),
1419         (gst_collect_pads_peek), (gst_collect_pads_pop),
1420         (gst_collect_pads_available), (gst_collect_pads_read),
1421         (gst_collect_pads_flush), (gst_collect_pads_check_pads),
1422         (gst_collect_pads_is_collected), (gst_collect_pads_event),
1423         (gst_collect_pads_chain):
1424         * libs/gst/base/gstcollectpads.h:
1425         Clean up the mess that is collectpads, add comments and
1426         FIXMEs where needed.
1427         Maintain a separate pad list so we can add pads while
1428         collecting the other ones. For this we need a new separate 
1429         lock (see comics).
1430         Fix memory leak in finalize.
1431         Refactor some weird code to set/unset pad flushing flags, mark
1432         with comments.
1433         Don't crash in _available, _read, _flush when we're EOS.
1435         * tests/check/libs/.cvsignore:
1436         Ignore adapter check binary.
1438 2006-05-09  Tim-Philipp Müller  <tim at centricular dot net>
1440         * gst/gstindex.c: (gst_index_resolver_get_type):
1441         * plugins/elements/gstfakesink.c:
1442         (gst_fake_sink_state_error_get_type):
1443         * plugins/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1444         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type):
1445         * plugins/elements/gstqueue.c: (queue_leaky_get_type):
1446           Const-ify GEnumValue arrays.
1448 2006-05-09  Tim-Philipp Müller  <tim at centricular dot net>
1450         * tests/check/gst/gstbuffer.c: (GST_START_TEST):
1451           Add test case for flags + gst_buffer_make_metadata_writable().
1453 2006-05-09  Tim-Philipp Müller  <tim at centricular dot net>
1455         * gst/gstbuffer.c: (gst_buffer_make_metadata_writable):
1456           gst_buffer_make_metadata_writable() should maintain the
1457           buffer flags (those that make sense at least) (see #340859).
1459 2006-05-09  Tim-Philipp Müller  <tim at centricular dot net>
1461         * tools/gst-inspect.c:
1462         * tools/gst-launch.c:
1463         * tools/gst-typefind.c:
1464         * tools/gst-xmlinspect.c:
1465         * tools/tools.h:
1466           Fix up includes: need to include stdlib.h in tools.h for exit().
1468 2006-05-09  Tim-Philipp Müller  <tim at centricular dot net>
1470         * gst/gsttaglist.c: (_gst_tag_initialize):
1471         * gst/gsttaglist.h:
1472           API: add GST_TAG_IMAGE tag (#340721).
1474 2006-05-08  Wim Taymans  <wim@fluendo.com>
1476         * gst/gstquery.c:
1477         Added some docs for the segment query.
1479 2006-05-08  Wim Taymans  <wim@fluendo.com>
1481         * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
1482         (gst_base_src_loop), (gst_base_src_change_state):
1483         Always push non-flushing serialized events in the streaming 
1484         thread.
1486 2006-05-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1488         * gst/gsterror.c: (_gst_stream_errors_init):
1489           Add a missing error string.
1491 2006-05-08  Jan Schmidt  <thaytan@mad.scientist.com>
1493         * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment):
1494         Add applied_rate to the debug
1496         * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek):
1497         Copy applied_rate into the outgoing NEWSEGMENT event
1499 2006-05-08  Wim Taymans  <wim@fluendo.com>
1501         Patch by: Philippe Rouquier <philippero at libertysurf dot fr>
1503         * libs/gst/base/gstbasesink.c: (gst_base_sink_set_flushing),
1504         (gst_base_sink_change_state):
1505         call ::unlock before taking the PREROLL_LOCK so we can safely
1506         handle elements that lock in ::render.
1507         Fixes #340174.
1509 2006-05-08  Edward Hervey  <edward@fluendo.com>
1511         * autogen.sh: (CONFIGURE_DEF_OPT): 
1512         Darwin's libtoolize is in fact called glibtoolize.
1513         Adding glibtoolize to the list of accepted names for libtoolize.
1515 2006-05-08  Wim Taymans  <wim@fluendo.com>
1517         * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
1518         Unify error handling, don't post an error message
1519         when a push() returns EOS but perform our normal EOS
1520         handling code. Fixes #340772.
1522 2006-05-08  Wim Taymans  <wim@fluendo.com>
1524         * docs/design/part-overview.txt:
1525         Make upsteam/downstream concepts more clear.
1526         Give an example of serialized/non-serialized events.
1528         * docs/design/part-events.txt:
1529         * docs/design/part-streams.txt:
1530         Mention applied_rate.
1532         * docs/design/part-trickmodes.txt:
1533         Mention applied rate, flesh out some more use cases.
1535         * gst/gstevent.c: (gst_event_new_new_segment),
1536         (gst_event_parse_new_segment), (gst_event_new_new_segment_full),
1537         (gst_event_parse_new_segment_full), (gst_event_new_tag),
1538         (gst_event_parse_tag), (gst_event_new_buffer_size),
1539         (gst_event_parse_buffer_size), (gst_event_new_qos),
1540         (gst_event_parse_qos), (gst_event_parse_seek),
1541         (gst_event_new_navigation):
1542         * gst/gstevent.h:
1543         Add applied_rate field to NEWSEGMENT event.
1544         API: gst_event_new_new_segment_full()
1545         API: gst_event_parse_new_segment_full()
1547         * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_seek),
1548         (gst_segment_set_newsegment), (gst_segment_set_newsegment_full),
1549         (gst_segment_to_stream_time), (gst_segment_to_running_time):
1550         * gst/gstsegment.h:
1551         Add applied_rate to GstSegment structure.
1552         Make calculation of stream_time and running_time more correct
1553         wrt rate/applied_rate.
1554         Add some more docs.
1555         API: GstSegment::applied_rate field
1556         API: gst_segment_set_newsegment_full();
1558         * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
1559         (gst_base_sink_get_sync_times), (gst_base_sink_get_position):
1560         * libs/gst/base/gstbasetransform.c:
1561         (gst_base_transform_sink_eventfunc),
1562         (gst_base_transform_handle_buffer):
1563         Parse and use applied_rate in the GstSegment field.
1565         * tests/check/gst/gstevent.c: (GST_START_TEST):
1566         Add check for applied_rate field.
1568         * tests/check/gst/gstsegment.c: (GST_START_TEST),
1569         (gstsegments_suite):
1570         Add more checks for various GstSegment operations.
1572 2006-05-08  Wim Taymans  <wim@fluendo.com>
1574         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
1575         (gst_base_sink_do_sync), (gst_base_sink_chain_unlocked),
1576         (gst_base_sink_get_position), (gst_base_sink_change_state):
1577         Store the sync time of the buffer end position separatly in a
1578         new variable eos_rtime so we can properly sync the EOS event.
1579         Fixes #340697.
1580         Fix the docs for gst_base_sink_set_qos_enabled().
1581         Don't set segment start to invalid value when we receive a 
1582         non TIME newsegment.
1583         get closer to handling position reporting for negative rates 
1584         correctly.
1586 2006-05-07  Stefan Kost  <ensonic@users.sf.net>
1588         * gst/gstcaps.c:
1589         Docs about how to print caps for debug purposes.
1591         * gst/gstpadtemplate.c: (gst_static_pad_template_get):
1592         use gst_caps_make_writable instead of gst_caps_copy, Fixes #340608
1594 2006-05-07  Stefan Kost  <ensonic@users.sf.net>
1596         * gst/gstelement.c:
1597           use full enum names and preprend a '%' in docs strings to make recent 
1598           gtk-doc turn that into a link
1600 2006-05-05  Tim-Philipp Müller  <tim at centricular dot net>
1602         * docs/manual/basics-bins.xml:
1603         * docs/manual/basics-bus.xml:
1604         * docs/manual/basics-pads.xml:
1605           Some typo fixes, some additions, some clarifications. 
1607 2006-05-05  Tim-Philipp Müller  <tim at centricular dot net>
1609         * tools/gst-inspect.c: (main):
1610         * tools/gst-launch.c: (main):
1611         * tools/gst-run.c: (main):
1612         * tools/gst-typefind.c: (main):
1613         * tools/gst-xmlinspect.c: (main):
1614           Use the string passed to g_option_context_new() for
1615           what it's intended for - the program name is already
1616           printed elsewhere.
1618 2006-05-05  Tim-Philipp Müller  <tim at centricular dot net>
1620         * tools/Makefile.am:
1621         * tools/gst-inspect.c: (main):
1622         * tools/gst-launch.c: (main):
1623         * tools/gst-xmlinspect.c: (main):
1624         * tools/tools.h:
1625           Add back --version command line option (#340460).
1627         * tools/gst-typefind.c: (have_type_handler), (typefind_file), (main):
1628           Add --version option and use GOption for argument parsing; refactor a
1629           bit; accept directories as arguments and recurse into them; lastly,
1630           print a decent error message when things go wrong.
1632 2006-05-05  Maciej Katafiasz  <mathrick@freedesktop.org>
1634         * docs/manual/basics-bins.xml:
1635         Don't mention GstThread (#340611)
1636         * docs/manual/basics-elements.xml:
1637         Update link to GObject tutorial (#340607)
1638         
1639 2006-05-05  Wim Taymans  <wim@fluendo.com>
1641         * gst/gstbuffer.h:
1642         * gst/gstminiobject.c:
1643         Add note about refcounting and miniobject/buffer writeability
1644         to docs. Fixes #340604
1646         * gst/gstelementfactory.h:
1647         Added some explanation about @klass.
1649 2006-05-05  Maciej Katafiasz  <mathrick@freedesktop.org>
1651         * docs/manual/intro-motivation.xml:
1652         * docs/manual/manual.xml:
1653         Avoid CORBA & Bonobo references (#340598)
1655 2006-05-05  Maciej Katafiasz  <mathrick@freedesktop.org>
1657         * docs/manual/basics-bus.xml:
1658         * docs/manual/basics-pads.xml:
1659         Fix up some inaccuracies and omissions (#340609)
1660         
1661 2006-05-05  Maciej Katafiasz  <mathrick@freedesktop.org>
1663         * gst/gstghostpad.c:
1664           Small typo in docs (#340625)
1666 2006-05-05  Tim-Philipp Müller  <tim at centricular dot net>
1668         * gst/parse/Makefile.am:
1669           Make 'make -j' proof (see #340698).
1671 2006-05-05  Tim-Philipp Müller  <tim at centricular dot net>
1673         * configure.ac:
1674           Require GLib-2.8 here as well.
1676 2006-05-05  Wim Taymans  <wim@fluendo.com>
1678         * gst/glib-compat.c:
1679         * gst/gst.c: (init_pre):
1680         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1681         (gst_object_unref), (gst_object_replace), (gst_object_dispose),
1682         (gst_object_dispatch_properties_changed):
1683         * gst/gstobject.h:
1684         * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
1685         * gst/gststructure.c: (gst_structure_set_valist):
1686         * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
1687         Remove pre glib2.8 compatibility, fixes #340508
1689 2006-05-04  Tim-Philipp Müller  <tim at centricular dot net>
1691         * gst/gsttaglist.h:
1692           Mention type of tags in doc blurbs.
1694 2006-05-04  Jan Schmidt  <thaytan@mad.scientist.com>
1696         * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
1697         (gst_pad_configure_src), (gst_pad_push):
1698         Restore acceptcaps checking behaviour now that good plugins have
1699         been released.
1701 2006-05-04  Tim-Philipp Müller  <tim at centricular dot net>
1703         Patch by: James Andrewartha <trs80 at tartarus uwa edu au>
1705         * gst/gst.c:
1706         * gst/gstbus.c:
1707         * gst/gstclock.c:
1708         * gst/gstevent.c:
1709         * gst/gstformat.c:
1710         * gst/gstmessage.c:
1711         * gst/gstparse.c:
1712         * gst/gstquery.c:
1713         * gst/gstutils.c:
1714         * gst/parse/Makefile.am:
1715         * libs/gst/base/gstadapter.c:
1716         * libs/gst/base/gstbasesrc.c:
1717         * libs/gst/base/gstpushsrc.c:
1718         * libs/gst/base/gsttypefindhelper.c:
1719         * plugins/elements/gstfakesrc.c:
1720         * plugins/elements/gstidentity.c:
1721           Make sure gstprivate.h and/or config.h are
1722           always included first, otherwise some of our
1723           defines (like _FILE_OFFSET_BITS) might be
1724           redefined in the system headers. Fixes build
1725           on opensolaris (#340016).
1727 2006-05-04  Wim Taymans  <wim@fluendo.com>
1729         * docs/libs/gstreamer-libs-sections.txt:
1730         API: addition: gst_adapter_take_buffer()
1731         
1732         * libs/gst/base/gstadapter.c: (gst_adapter_push),
1733         (gst_adapter_peek), (gst_adapter_take), (gst_adapter_take_buffer),
1734         (gst_adapter_available_fast):
1735         * libs/gst/base/gstadapter.h:
1736         Prepare for optimizing the hell out of this hugely inefficient
1737         piece of code. 
1738         Added gst_adapter_take_buffer() so we can at least start thinking
1739         about subbuffering and merging.
1740         Added some comments.
1742         * tests/check/Makefile.am:
1743         * tests/check/libs/adapter.c: (GST_START_TEST),
1744         (gst_adapter_suite), (main):
1745         Added GstAdapter check.
1747 2006-05-04  Wim Taymans  <wim@fluendo.com>
1749         * docs/design/part-overview.txt:
1750         Fix some typos, add blurb about buffer flags.
1752 2006-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1754         * docs/libs/gstreamer-libs-sections.txt:
1755           make sure GstBaseTransformClass shows up in the docs
1756         * libs/gst/base/gstbasetransform.c:
1757         * libs/gst/base/gstbasetransform.h:
1758           move docs so gtk-doc picks it up now
1760 2006-05-02  Stefan Kost  <ensonic@users.sf.net>
1762         * docs/libs/gstreamer-libs-sections.txt:
1763           add missing symbols to docs
1765 2006-05-02  Stefan Kost  <ensonic@users.sf.net>
1767         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
1768           back out the newsegment handling change, see #340060 for ongoing
1769           discussion
1771 2006-04-30  Tim-Philipp Müller  <tim at centricular dot net>
1773         * tools/gst-run.c: (get_candidates), (main):
1774           Fix wrong g_file_test() usage (see glib docs for why it doesn't
1775           work); fix typo in error message. Fixes #340079.
1777 2006-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1779         * common/Makefile.am:
1780         * docs/Makefile.am:
1781         * docs/faq/Makefile.am:
1782         * docs/gst/Makefile.am:
1783         * docs/libs/Makefile.am:
1784         * docs/manual/Makefile.am:
1785         * docs/plugins/Makefile.am:
1786         * docs/pwg/Makefile.am:
1787         * docs/slides/Makefile.am:
1788         * docs/upload.mak:
1789         * common/upload.mak:
1790           move upload.mak to common
1792 2006-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1794         * tests/check/gst/gstghostpad.c: (GST_START_TEST):
1795           add more asserts on refcounts
1796           do more cleanup at end of tests
1797           fix test leaks showing in FC5
1799 2006-04-29  Stefan Kost  <ensonic@users.sf.net>
1801         * plugins/elements/gsttypefindelement.c:
1802         (gst_type_find_element_handle_event):
1803         reverted wrong change and reflowed code to avoid others falling into
1804         this trap
1806 2006-04-28  Stefan Kost  <ensonic@users.sf.net>
1808         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
1809           fix changelog entry about last collectpads change,
1810           add notes about proper fix
1812 2006-04-28  Stefan Kost  <ensonic@users.sf.net>
1814         * gst/gst.c:
1815         * gst/gstregistry.c: (gst_registry_scan_path_level),
1816         (gst_registry_scan_path):
1817         * gst/gstregistry.h:
1818           only write out registry if it has changed, fixes #338339
1820 2006-04-28  Stefan Kost  <ensonic@users.sf.net>
1822         * gst/gstbin.c:
1823         * gst/gstpipeline.c:
1824         * plugins/elements/gstcapsfilter.c:
1825         * plugins/elements/gstfakesink.c:
1826         * plugins/elements/gstfakesrc.c:
1827         * plugins/elements/gstfdsink.c:
1828         * plugins/elements/gstfdsrc.c:
1829         * plugins/elements/gstfilesink.c:
1830         * plugins/elements/gstfilesrc.c:
1831         * plugins/elements/gstidentity.c:
1832         * plugins/elements/gstqueue.c:
1833         * plugins/elements/gsttee.c:
1834         * plugins/elements/gsttypefindelement.c:
1835         (gst_type_find_element_handle_event):
1836           make GstElementDetails const
1838 2006-04-28  Stefan Kost  <ensonic@users.sf.net>
1840         * libs/gst/base/gstbasesink.c: (gst_base_sink_event):
1841         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
1842         (gst_collect_pads_is_collected), (gst_collect_pads_event):
1843           more detailed debug and formatting cleanup,
1844           forward newsegments to src-pad (so that e.g. adder not eats them)
1846 2006-04-28  Stefan Kost  <ensonic@users.sf.net>
1848         * gst/gstutils.c: (gst_element_link_pads):
1849           cleanup double code
1851 2006-04-28  Stefan Kost  <ensonic@users.sf.net>
1853         * libs/gst/controller/gstcontroller.c:
1854         (gst_controller_sync_values):
1855           some little tuning
1856         * tests/check/libs/controller.c: (GST_START_TEST),
1857         (gst_controller_suite):
1858           a new test for live value handling
1860 2006-04-28  Wim Taymans  <wim@fluendo.com>
1862         * gst/gstutils.c: (push_and_ref):
1863         Added some more docs.
1864         Fix refcount issue whith gst_element_found_tags() helper 
1865         function. Fixes #338335
1867         * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
1868         Added testsuite for gst_element_found_tags().
1870 2006-04-28  Michael Smith  <msmith@fluendo.com>
1872         * gst/gstvalue.c: (gst_value_serialize_flags):
1873           Avoid NULL dereference when trying to serialize flags containing
1874           invalid values.
1876 2006-04-28  Michael Smith  <msmith@fluendo.com>
1878         * plugins/elements/gsttypefindelement.c:
1879         (gst_type_find_element_handle_event):
1880           If we get EOS before any data is accumulated, don't use
1881           uninitialised local variables.
1883 2006-04-28  Michael Smith  <msmith@fluendo.com>
1885         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
1886         (gst_dp_event_from_packet):
1887           Fixes in reading/writing events over GDP (not currently used?) - 
1888           dereferencing NULL events for unknown/invalid event types, memory
1889           leak, and change g_warning to GST_WARNING.
1891 2006-04-28  Wim Taymans  <wim@fluendo.com>
1893         * libs/gst/base/gstbasesink.c: (gst_base_sink_is_too_late),
1894         (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
1895         (gst_base_sink_get_position), (gst_base_sink_change_state):
1896         When frame dropping is enabled, we should not ignore frames
1897         without a duration.
1898         Update some documentation.
1900 2006-04-28  Wim Taymans  <wim@fluendo.com>
1902         * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
1903         (gst_base_src_send_event), (gst_base_src_change_state):
1904         Documentation updates.
1906 2006-04-28  Wim Taymans  <wim@fluendo.com>
1908         * plugins/elements/gstfdsink.c: (gst_fd_sink_render),
1909         (gst_fd_sink_check_fd), (gst_fd_sink_update_fd):
1910         handle EAGAIN, EINTR and short writes correctly. Also clean
1911         up some error cases, avoid a deadlock on bad file descriptors and
1912         use GST_DEBUG_OBJECT.
1913         Fixes #339843
1915 2006-04-28  Wim Taymans  <wim@fluendo.com>
1917         * gst/gstvalue.c: (gst_value_serialize_buffer),
1918         (gst_value_deserialize_buffer):
1919         Don't try to serialize a GValue with a NULL buffer. 
1920         Fixes #339821.
1922         * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1923         Added check for serialisation of NULL buffers.
1925 2006-04-28  Wim Taymans  <wim@fluendo.com>
1927         * gst/gstminiobject.c: (gst_value_take_mini_object):
1928         Taking a NULL miniobject is valid, fix the case where
1929         we try to unref the NULL miniobject.
1931 2006-04-28  Wim Taymans  <wim@fluendo.com>
1933         Patch by: Stefan Kost <ensonic at sonicpulse dot de>
1935         * gst/gstbin.c: (gst_bin_handle_message_func):
1936         Update docs.
1937         Don't leak bin refcount when a state recalc is
1938         in progress and we delay another one #339808.
1940 2006-04-28  Wim Taymans  <wim@fluendo.com>
1942         * docs/design/part-TODO.txt:
1943         Mention QoS as an ongoing work item.
1945         * docs/design/part-buffering.txt:
1946         New doc about buffering that needs to be fleshed out
1947         at some point.
1949         * docs/design/part-qos.txt:
1950         More QoS policy for decoders/demuxers/transforms
1952         * docs/design/part-trickmodes.txt:
1953         Small update.
1955 2006-04-28  Thomas Vander Stichele  <thomas at apestaart dot org>
1957         * configure.ac:
1958           back to HEAD
1960 === release 0.10.5 ===
1962 2006-04-28  Thomas Vander Stichele <thomas at apestaart dot org>
1964         * configure.ac:
1965           releasing 0.10.5, "Fogo"
1967 2006-04-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1969         patch by: Wim Taymans
1971         * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
1972         (gst_pad_configure_src), (gst_pad_push):
1973         * gst/gstpipeline.c: (gst_pipeline_init):
1974           Fix internal data flow errors.  Fixes #338711.
1976 2006-04-12  Wim Taymans  <wim@fluendo.com>
1978         * tests/check/gst/gstelement.c: (GST_START_TEST):
1979         Don't leak the factory.
1981 2006-04-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1983         * configure.ac:
1984         * win32/common/config.h:
1985           prerelease
1987 2006-04-12  Tim-Philipp Müller  <tim at centricular dot net>
1989         * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
1990         (gst_controller_unset_all):
1991           Free allocated GstTimedValues when freeing list nodes.
1992           Should fix leaks 'make check-valgrind' complains about.
1994         * win32/common/libgstcontroller.def:
1995           Add gst_controller_unset_all.
1997 2006-04-11  Stefan Kost  <ensonic@users.sf.net>
1999         * docs/libs/gstreamer-libs-sections.txt:
2000         * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
2001         (gst_controller_unset_all):
2002         * libs/gst/controller/gstcontroller.h:
2003         API: Added new method gst_controller_unset_all()
2004         fixed gst_controller_unset()
2005         * tests/check/libs/controller.c: (GST_START_TEST),
2006         (gst_controller_suite):
2007         Added two testcases for new and fixed method
2009 2006-04-11  Tim-Philipp Müller  <tim at centricular dot net>
2011         * libs/gst/net/gstnettimepacket.c: (gst_net_time_packet_send):
2012           MSG_DONTWAIT is not defined on Cygwin, so work
2013           around that (fixes #317048).
2014           
2015 2006-04-11  Wim Taymans  <wim@fluendo.com>
2017         * gst/gstelementfactory.c: (gst_element_register),
2018         (gst_element_factory_create), (gst_element_factory_make):
2019         Some cleanups.
2020         Fixed a FIXME.
2021         Updated docs (Fixes #131079)
2023         * gst/gstpluginfeature.c: (gst_plugin_feature_load):
2024         Small cleanups.
2026         * tests/check/gst/gstelement.c: (GST_START_TEST),
2027         (gst_element_suite):
2028         Added testcase for elementfactory class field.
2030 2006-04-10  Wim Taymans  <wim@fluendo.com>
2032         * gst/gstsegment.c:
2033         Added some more docs.
2035         * libs/gst/base/gstbasesink.c: (gst_base_sink_perform_qos),
2036         (gst_base_sink_reset_qos):
2037         Calculate more accurate rate values.
2039 2006-04-09  Sebastien Moutte  <sebastien@moutte.net>
2041         * gst/gst_private.h:
2042           add a new #ifdef to use __declspec(dllimport) only for
2043           other modules and not for gstreamer core
2044         * gst/gstbasesink.c: (gst_base_sink_perform_qos):
2045           use gst_guint64_to_gdouble for conversion
2046         * win32/common/libgstreamer.def:
2047           add new exported functions
2048         * win32/vs6/gst_inspect.dsp:
2049         * win32/vs6/gst_launch.dsp:
2050         * win32/vs6/libgstbase.dsp:
2051         * win32/vs6/libgstcontroller.dsp:
2052         * win32/vs6/libgstcoreelements.dsp:
2053         * win32/vs6/libgstdataprotocol.dsp:
2054         * win32/vs6/libgstnet.dsp:
2055           update project files
2057 2006-04-08  Stefan Kost  <ensonic@users.sf.net>
2059         * gst/gstbuffer.c: (gst_subbuffer_class_init):
2060         * gst/gstclock.c: (gst_clock_class_init):
2061         * gst/gstelement.c: (gst_element_class_init):
2062         * gst/gstindex.c: (gst_index_class_init):
2063         * gst/gstindexfactory.c: (gst_index_factory_class_init):
2064         * gst/gstobject.c: (gst_object_class_init),
2065         (gst_signal_object_class_init):
2066         * gst/gstpad.c: (gst_pad_class_init):
2067         * gst/gstpadtemplate.c: (gst_pad_template_class_init):
2068         * gst/gstpluginfeature.c: (gst_plugin_feature_class_init):
2069         * gst/gstregistry.c: (gst_registry_class_init):
2070         * gst/gstsystemclock.c: (gst_system_clock_class_init):
2071         * gst/gsttask.c: (gst_task_class_init):
2072         * gst/gstxml.c: (gst_xml_class_init):
2073         * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
2074         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
2075         (gst_base_src_loop):
2076         * libs/gst/controller/gstcontroller.c:/
2077         (_gst_controller_class_init):
2078         * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
2079         * plugins/indexers/gstfileindex.c: (gst_file_index_class_init):
2080         * plugins/indexers/gstmemindex.c: (gst_mem_index_class_init):
2081         * tests/old/examples/plugins/example.c: (gst_example_class_init):
2082         * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
2083         Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
2085 2006-04-08  Tim-Philipp Müller  <tim at centricular dot net>
2087         * gst/gstpad.c: (gst_pad_link):
2088           Must set peer pads before calling the link function, otherwise
2089           a task started from a link function might get a flow-not-linked
2090           result when trying to push because the other thread where the
2091           linking happens hasn't had a chance to set the peers yet. This
2092           might happen for example when a queue gets linked to a downstream
2093           element, as queue starts a streaming task when its source pad
2094           gets linked. Happens in real life when playing back flac/musepack
2095           files in playbin (#332390).
2096           
2097 2006-04-08  Stefan Kost  <ensonic@users.sf.net>
2099         * gst/gstindex.h:
2100         * gst/gstxml.h:
2101         * libs/gst/base/gstadapter.h:
2102         * libs/gst/base/gstbasesink.h:
2103         * libs/gst/base/gstbasesrc.h:
2104         * libs/gst/base/gstbasetransform.h:
2105         * libs/gst/base/gstcollectpads.h:
2106         * libs/gst/base/gstpushsrc.h:
2107         Fix broken GObject macros
2109 2006-04-07  Wim Taymans  <wim@fluendo.com>
2111         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2112         Initialize start and stop times, thanks valgrind.
2114 2006-04-07  Wim Taymans  <wim@fluendo.com>
2116         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2117         Be a bit nicer to badly behaving upstream elements that expect
2118         us to deal with non TIME segments and timestamps (such as fakesrc
2119         in the testsuite).
2121 2006-04-07  Wim Taymans  <wim@fluendo.com>
2123         * gst/gstbus.c:
2124         Small documentation clarification about the signal watch.
2126         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
2127         (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
2128         (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
2129         (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
2130         (gst_base_sink_get_position_last),
2131         (gst_base_sink_get_position_paused), (gst_base_sink_change_state):
2132         Convert and store timestamps in stream time and running time, the
2133         raw timestamps are not usefull, also document this better.
2134         Use different window sizes for good and bad QoS observations so
2135         we react to badness a little quicker.
2136         Keep track of the amount of rendered and dropped buffers.
2137         Send QoS timestamps in running time.
2139         * libs/gst/base/gstbasetransform.c:
2140         (gst_base_transform_sink_eventfunc),
2141         (gst_base_transform_handle_buffer):
2142         Compare QoS timestamps against running time.
2144 2006-04-06  Tim-Philipp Müller  <tim at centricular dot net>
2146         * gst/gstpad.c:
2147           Typo fixes in docs.
2149 2006-04-06  Michael Smith  <msmith@fluendo.com>
2151         * gst/gstpad.c: (gst_pad_set_property):
2152           Use g_value_get_object() instead of g_value_dup_gst_object(),
2153           to avoid double-reffing the pad template (which we then sink,
2154           so this worked previously if (and only if) the pad template
2155           was floating.
2157         * gst/gstpadtemplate.c: (gst_pad_template_init),
2158         (gst_pad_template_pad_created):
2159           Never return floating references to pad templates, create
2160           them as initially-sunken.
2162           Document an extra function (and make this stop sinking our
2163           pad template, since that is now guaranteed to do nothing,
2164           since we created it sunken).
2166         * gst/gstghostpad.c:
2167           Fix docs typo.
2169 2006-04-06  Tim-Philipp Müller  <tim at centricular dot net>
2171         * gst/gstinfo.c: (__gst_in_valgrind):
2172           Add some newlines.
2174         * plugins/elements/gsttypefindelement.c:
2175         (gst_type_find_element_chain):
2176           Don't leak buffer caps.
2178 2006-04-06  Michael Smith  <msmith@fluendo.com>
2180         * gst/parse/grammar.y:
2181           Fix a leak in parse-launch for any source-or-sink named element 
2182           references used.
2184         * tests/check/pipelines/parse-launch.c: (expected_fail_pipe):
2185           Unref the pipeline if it exists after we've failed parsing.
2187 2006-04-05  Michael Smith  <msmith@fluendo.com>
2189         * gst/gstpipeline.c: (gst_pipeline_init):
2190           When we create a pipeline bus, initially create it in flushing mode.
2191           Fixes leaks in at least one test, and makes a new pipeline work the
2192           same as one that has gone to READY and then back to NULL.
2194         * gst/gstelement.c:
2195           Typo fix in docs.
2197 2006-04-05  Michael Smith  <msmith@fluendo.com>
2199         * tests/check/gst/gstghostpad.c: (GST_START_TEST):
2200           Unref a pad we reffed.
2201         * tests/check/gst/gstutils.c: (GST_START_TEST):
2202           Unref bins
2204 2006-04-05  Michael Smith  <msmith@fluendo.com>
2206         * gst/gstquery.c: (gst_query_set_formats),
2207         (gst_query_set_formatsv):
2208           Fix leaking GValues in queries, as shown by valgrind/testsuite.
2210 2006-04-05  Michael Smith  <msmith@fluendo.com>
2212         * tests/check/generic/sinks.c: (GST_START_TEST):
2213           Fix a variety of memleaks in sinks check, which are only sometimes 
2214           shown by running the tests under valgrind (weird?).
2216 2006-04-05  Jan Schmidt  <thaytan@mad.scientist.com>
2218         * docs/version.entities.in:
2219           Fix the substituted entity name after thomas' changes on the
2220           weekend.
2222 2006-04-05  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2224         * gst/gstinfo.c: (__gst_in_valgrind): Use printf instead of
2225         VALGRIND_PRINTF
2226         
2227 2006-04-05  Andy Wingo  <wingo@pobox.com>
2229         * gst/gstpad.c (gst_pad_set_blocked_async): More debug.
2231         * libs/gst/base/gstbasetransform.c
2232         (gst_base_transform_sink_eventfunc): When resetting our segment on
2233         FLUSH_STOP, also update the flag saying we haven't seen a
2234         newsegment.
2236 2006-04-04  Tim-Philipp Müller  <tim at centricular dot net>
2238         Patch by: Paolo Borelli  <pborelli at katamail dot com>
2240         * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
2241         (gst_plugin_check_license):
2242           minor clean-ups: G_DEFINE_TYPE already takes care of the
2243           parent_class stuff, no need to do it twice. Mark array of
2244           license strings as constant. (#337103)
2245           
2246 2006-04-04  Michael Smith  <msmith@fluendo.com>
2248         * tools/gst-inspect.c: (print_element_list):
2249           Free the right plugin list; fixes a memory leak.
2251 2006-04-04  Tim-Philipp Müller  <tim at centricular dot net>
2253         Patch by: Mark Nauwelaerts  <manauw at skynet dot be>
2255         * plugins/elements/gstfilesink.c: (gst_file_sink_render):
2256           Don't error out on empty buffers (#336945).
2257           
2258 2006-04-04  Jan Schmidt  <thaytan@mad.scientist.com>
2260         * docs/libs/gstreamer-libs-sections.txt:
2261         * gst/gsttaglist.c:
2262         * libs/gst/base/gstbasesink.c:
2263         * libs/gst/base/gstbasesink.h:
2264         * libs/gst/base/gstbasesrc.c:
2265         * libs/gst/base/gstbasesrc.h:
2266           Documentation updates. Make BaseSink and BaseSrc docs contain the
2267           class structure so that people can actually see the prototypes for
2268           virtual functions they're supposed to be overriding.
2270 2006-04-04  Tim-Philipp Müller  <tim at centricular dot net>
2272         * plugins/elements/gsttypefindelement.c:
2273         (gst_type_find_element_chain):
2274           More debug info; when skipping typefinding, send cached
2275           events in all cases.
2277 2006-04-01  Thomas Vander Stichele  <thomas at apestaart dot org>
2279         * configure.ac:
2280           use new AS_VERSION and AS_NANO macros
2281         * gst/gst-i18n-lib.h:
2282         * gst/gst.c:
2283         * gst/gsterror.c:
2284         * gst/gstversion.h.in:
2285         * win32/common/config.h:
2286         * win32/common/config.h.in:
2287           update accordingly
2289 2006-03-31  Michael Smith  <msmith@fluendo.com>
2291         * plugins/elements/gsttypefindelement.c:
2292         (gst_type_find_element_chain):
2293           Do not typefind content if the buffers already have caps.
2294           Neccesary for icydemux (#333657), and the right thing to do anyway.
2296 2006-03-30  Wim Taymans  <wim@fluendo.com>
2298         * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
2299         (gst_base_sink_finalize), (gst_base_sink_set_qos_enabled),
2300         (gst_base_sink_is_qos_enabled), (gst_base_sink_do_sync),
2301         (gst_base_sink_record_qos_observation),
2302         (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
2303         (gst_base_sink_is_too_late), (gst_base_sink_render_object),
2304         (gst_base_sink_change_state):
2305         More QoS measurements as described in the design doc.
2306         Get rid of ringbuffer with observations, running average is
2307         more simple and equally good.
2308         Calculates valid proportion now.
2309         Added beginning of flood measurement.
2311 2006-03-29  Wim Taymans  <wim@fluendo.com>
2313         * docs/design/part-qos.txt:
2314         * gst/gstclock.c:
2315         Small documentation updates and additions.
2317 2006-03-29  Wim Taymans  <wim@fluendo.com>
2319         * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
2320         (gst_base_src_send_event), (gst_base_src_loop),
2321         (gst_base_src_change_state):
2322         Perform the EOS logic when we reach the segment stop position.
2323         Fix compilation on gcc4.1
2325 2006-03-29  Wim Taymans  <wim@fluendo.com>
2327         Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com>
2329         * plugins/elements/gstqueue.c: (gst_queue_init),
2330         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2331         (gst_queue_set_property):
2332         * plugins/elements/gstqueue.h:
2333         In queue, when EOS is received, if minimum threshold > max_size -
2334         current_level, there is chance that queue blocks forever in conditional
2335         item del wait. This is because the queue is not emptied completely due
2336         to minimum threshold.  Here is another approach. Instead of setting
2337         cur_levels to max in EOS, just zero all minimum threshold levels. This
2338         should make sure that queue gives out all data. When going to READY
2339         (stop) state, just reset the original minimum threshold levels.
2340         Fixes #336336.
2342 2006-03-29  Tim-Philipp Müller  <tim at centricular dot net>
2344         * plugins/elements/gsttypefindelement.c: (stop_typefinding),
2345         (gst_type_find_element_handle_event),
2346         (gst_type_find_element_send_cached_events),
2347         (gst_type_find_element_change_state):
2348         * plugins/elements/gsttypefindelement.h:
2349           When typefinding is done in push mode, we should cache
2350           events we receive during typefinding instead of just
2351           dropping them (e.g. newsegment, custom events from
2352           dvdreadsrc etc.) and then send them out once we've
2353           determined the type of the stream (and decodebin
2354           has had a chance to plug in a decoder/demuxer).
2355           
2356 2006-03-27  Wim Taymans  <wim@fluendo.com>
2358         * docs/design/part-qos.txt:
2359         First QoS ideas.
2361 2006-03-27  Wim Taymans  <wim@fluendo.com>
2363         Inspired by a patch of: Lutz Mueller <lutz at topfrose dot de>
2365         * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
2366         (gst_base_src_send_event), (gst_base_src_change_state):
2367         Handle element seek correctly when we are streaming.
2368         Fixes #326998.
2370 2006-03-24  Michael Smith  <msmith@fluendo.com>
2372         * docs/faq/gst-uninstalled:
2373           Set up LD_LIBRARY_PATH to point at all the gstreamer libs. This will
2374           allow you to correctly run intalled applications built against old 
2375           core, using plugins that require updated core (e.g. running
2376           installed totem against a full uninstalled gstreamer stack)
2378 2006-03-24  Stefan Kost  <ensonic@users.sf.net>
2380         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
2381         more debug details
2383 2006-03-24  Wim Taymans  <wim@fluendo.com>
2385         * docs/gst/gstreamer-sections.txt:
2386         Rearrange the order of the methods so that related methods
2387         are grouped together in sections.
2389 2006-03-24  Stefan Kost  <ensonic@users.sf.net>
2391         * gst/gstelement.c:
2392           Little clarification in the docs
2394 2006-03-24  Stefan Kost  <ensonic@users.sf.net>
2396         * docs/README:
2397         formatting fix
2398         * plugins/elements/gstidentity.c:
2399         * plugins/elements/gstqueue.c:
2400         * plugins/elements/gsttee.c:
2401         * plugins/elements/gsttypefindelement.c:
2402         GST_ELEMENT_DETAILS formatting
2404 2006-03-24  Wim Taymans  <wim@fluendo.com>
2406         * libs/gst/base/gstbasesink.h:
2407         Only add fields, not insert or we break ABI.
2409 2006-03-23  Tim-Philipp Müller  <tim at centricular dot net>
2411         * win32/common/libgstbase.def:
2412         * win32/common/libgstreamer.def:
2413           Update, add recently added functions.
2415 2006-03-23  Tim-Philipp Müller  <tim at centricular dot net>
2417         * docs/gst/gstreamer-sections.txt:
2418         * gst/gstutils.c: (gst_pad_query_peer_position),
2419         (gst_pad_query_peer_duration), (gst_pad_query_peer_convert):
2420         * gst/gstutils.h:
2421           API: add some new utility functions:
2422            - gst_pad_query_peer_position()
2423            - gst_pad_query_peer_duration()
2424            - gst_pad_query_peer_convert()
2425           
2426 2006-03-23  Wim Taymans  <wim@fluendo.com>
2428         * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
2429         (gst_base_sink_init), (gst_base_sink_finalize),
2430         (gst_base_sink_set_qos_enabled), (gst_base_sink_is_qos_enabled),
2431         (gst_base_sink_set_property), (gst_base_sink_get_property),
2432         (gst_base_sink_commit_state), (gst_base_sink_get_sync_times),
2433         (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
2434         (gst_base_sink_add_qos_observation), (gst_base_sink_send_qos),
2435         (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
2436         (gst_base_sink_is_too_late), (gst_base_sink_render_object),
2437         (gst_base_sink_preroll_object), (gst_base_sink_event),
2438         (gst_base_sink_chain_unlocked), (gst_base_sink_get_position_last),
2439         (gst_base_sink_get_position_paused), (gst_base_sink_get_position),
2440         (gst_base_sink_query), (gst_base_sink_change_state):
2441         Decouple max-lateness and the fact that QoS messages are generated
2442         with a new property (qos).
2443         added API: GstBaseSink::async_play()
2444         Add vmethod so subclasses can be notified of ASYNC playing
2445         state changes.
2446         Collect timestamp start and stop to report better current
2447         position in EOS/PLAYING/PAUSED/READY/NULL.
2448         Refactor QoS/frame dropping and other measurements.
2449         API: GstBaseSrc::qos
2450         Fixes #326311
2452         * libs/gst/base/gstbasesink.h:
2453         Added Private struct.
2454         API: gst_base_sink_set_qos_enabled()
2455         API: gst_base_sink_is_qos_enabled()
2457 2006-03-23  Tim-Philipp Müller  <tim at centricular dot net>
2459         * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
2460           If compiling against GLib-2.8 or newer, try to read the
2461           registry file using GMappedFile first before falling back
2462           to fopen() + fread() (#332151).
2464 2006-03-22  Wim Taymans  <wim@fluendo.com>
2466         * gst/gstinfo.c: (gst_debug_set_active),
2467         (gst_debug_category_set_threshold):
2468         Disable debugging unless explicitly activated.
2469         Fixes #335480.
2471 2006-03-22  Wim Taymans  <wim@fluendo.com>
2473         * gst/gstelement.c: (gst_element_set_locked_state),
2474         (gst_element_dispose):
2475         Cleanup the error case.
2477         * gst/gstobject.c: (gst_object_dispose):
2478         print a critical when some object was disposed with
2479         a parent, also revive the object since it might
2480         crash the parent.
2482 2006-03-22  Tim-Philipp Müller  <tim at centricular dot net>
2484         * tools/gst-launch.1.in:
2485           Fix another typo.
2487 2006-03-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2489         * configure.ac:
2490         * tests/check/Makefile.am:
2491           disable some tests when we don't have a registry
2492         * tests/check/gst/gstutils.c: (gst_utils_suite):
2493           don't build the part that needs parsing
2495 2006-03-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2497         * gst/Makefile.am
2498         * tests/examples/Makefile.am:
2499           fix --disable-parse build
2501 2006-03-21  Tim-Philipp Müller  <tim at centricular dot net>
2503         * tools/gst-feedback.1.in:
2504           Fix typo: s/feeback/feedback/ (#133494).
2506 2006-03-21  Tim-Philipp Müller  <tim at centricular dot net>
2508         * tools/Makefile.am:
2509         * tools/gst-launch.1.in:
2510           Add FILES section and correct entry about GST_REGISTRY_PATH
2511           environment variable (#133495; #133494).
2513 2006-03-21  Tim-Philipp Müller  <tim at centricular dot net>
2515         * tools/Makefile.am:
2516         * tools/gst-md5sum.1.in:
2517         * tools/gst-md5sum.c:
2518           Remove gst-md5sum and man page (the md5sink element
2519           required was removed ages ago)
2521 2006-03-21  Tim-Philipp Müller  <tim at centricular dot net>
2523         * gst/gststructure.c: (gst_structure_id_set_value):
2524           Make sure that string fields in structures/taglists
2525           contain valid UTF-8 - we don't want to pass rubbish to
2526           applications because of a buggy plugin (cp. #334167).
2528 2006-03-21  Edward Hervey  <edward@fluendo.com>
2530         * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
2531         (gst_bin_handle_message_func):
2532         * gst/gstclock.c: (gst_clock_dispose), (gst_clock_set_master):
2533         * gst/gstelement.c: (gst_element_set_clock), (gst_element_dispose),
2534         (gst_element_set_bus_func):
2535         * gst/gstghostpad.c: (gst_proxy_pad_dispose):
2536         * gst/gstminiobject.c: (gst_value_set_mini_object),
2537         (gst_value_take_mini_object):
2538         * gst/gstpad.c: (gst_pad_set_pad_template):
2539         * gst/gstpipeline.c: (gst_pipeline_dispose),
2540         (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
2541         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop),
2542         (gst_collect_pads_chain):
2543         * libs/gst/net/gstnettimeprovider.c:
2544         (gst_net_time_provider_set_property):
2545         Series of fixes for dereferenced pointers that gcc 4.1 complains about.
2546         It's in fact all issues with gst_*object_replace().
2548 2006-03-21  Tim-Philipp Müller  <tim at centricular dot net>
2550         Patch by: Loïc Minier  <lool + gnome at via dot ecp dot fr>
2551         
2552         * pkgconfig/gstreamer-check-uninstalled.pc.in:
2553         * pkgconfig/gstreamer-check.pc.in:
2554           Use @CHECK_LIBS@ here instead of hard-coding -lcheck (#334109).
2556 2006-03-21  Edward Hervey  <edward@fluendo.com>
2558         * gst/gstbuffer.h:
2559         * gst/gstevent.h:
2560         * gst/gstmessage.h:
2561         gst_[buffer|event|message]_ref() macros are replaced by a static
2562         inline functions because gcc-4.1 will about if the return value
2563         isn't used.
2564         * tests/check/gst/gstevent.c: (event_probe):
2565         gst_event_ref now has to be given a GstEvent* , fix check accordingly.
2567 2006-03-20  Jan Schmidt  <thaytan@mad.scientist.com>
2569         * gst/gstutils.h:
2570         Add G_UNLIKELY to our boilerplate to optimise the 'already registered
2571         the type' case. (Closes: #335195 for now). In the future, when we
2572         depend on GLib 2.10, we could also intern the type name using
2573         g_intern_static_string()
2575 2006-03-20  Wim Taymans  <wim@fluendo.com>
2577         * gst/gstbin.c: (gst_bin_handle_message_func),
2578         (bin_query_max_init), (bin_query_position_fold),
2579         (bin_query_position_done), (gst_bin_query):
2580         Position query should also take max of all streams.
2582 2006-03-20  Wim Taymans  <wim@fluendo.com>
2584         * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
2585         (gst_fake_src_finalize):
2586         Fix leaks in fakesrc.
2588         * tests/check/pipelines/parse-launch.c: (GST_START_TEST):
2589         Fix leaks in the testcase.
2591 2006-03-19  Sebastien Moutte  <sebastien@moutte.net>
2593         * gst/gst_private.h:
2594           add win32 specific import decoration(__declspec(dllimport)) 
2595           for all extern GstDebugCategory * variables
2596         * win32/common/libgstbase.def:
2597         * win32/common/libgstcontroller.def:
2598         * win32/common/libgstreamer.def:
2599           Add some exports, remove empty lines
2600         * win32/common/libgstdataprotocol.def:
2601         * win32/common/libgstdataprotocol.dsp:
2602         * win32/common/libgstnet.def:
2603         * win32/common/libgstnet.dsp:
2604           new project files and exportation files added
2605         
2606 2006-03-19  Wim Taymans  <wim@fluendo.com>
2608         * tests/check/libs/basesrc.c: (eos_event_counter):
2609         Use proper return value for probe.
2611 2006-03-17  Wim Taymans  <wim@fluendo.com>
2613         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
2614         (gst_pad_push):
2615         Don't leak buffers, caps and pads on negotiation errors.
2617 2006-03-16  Stefan Kost  <ensonic@users.sf.net>
2619         * docs/faq/cvs.xml:
2620         * docs/faq/dependencies.xml:
2621         * docs/faq/developing.xml:
2622         * docs/faq/faq.xml:
2623         * docs/faq/general.xml:
2624         * docs/faq/getting.xml:
2625         * docs/faq/legal.xml:
2626         * docs/faq/troubleshooting.xml:
2627         * docs/faq/using.xml:
2628         Faq review and update.
2630 2006-03-16  Jan Schmidt  <thaytan@mad.scientist.com>
2632         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
2633         (gst_pad_push):
2634         Don't pound the cpu to pieces by checking get_caps when accept_caps
2635         is called with the same caps as the pad already has.
2636         Use GST_DEBUG_OBJECT when outputting caps change information.
2638 2006-03-15  Wim Taymans  <wim@fluendo.com>
2640         * gst/gstclock.c: (gst_clock_class_init):
2641         Fix docs.
2643 2006-03-15  Jan Schmidt  <thaytan@mad.scientist.com>
2645         * gst/gstbuffer.h:
2646         Documentation fix.
2648         * gst/gstpad.c: (gst_pad_init), (gst_pad_acceptcaps_default),
2649         (gst_pad_accept_caps), (gst_pad_configure_sink),
2650         (gst_pad_configure_src), (gst_pad_chain), (gst_pad_push):
2651         Make the default acceptcaps behaviour be to check the requested 
2652         caps against the gst_pad_get_caps output. 
2654         Ensure that gst_pad_accept_caps is used to check caps when a pad
2655         doesn't have a setcaps function, so that pads automatically refuse 
2656         caps that they don't allow in their pad template. (Fixes #332986)
2658         When a buffer with attached caps is pushed, ensure that the source 
2659         pad receives those caps even if the element didn't call
2660         gst_pad_set_caps first.
2662 2006-03-15  Wim Taymans  <wim@fluendo.com>
2664         * libs/gst/base/gstadapter.c:
2665         Add some docs.
2667 2006-03-15  Tim-Philipp Müller  <tim at centricular dot net>
2669         * win32/common/libgstbase.def:
2670         * win32/common/libgstcontroller.def:
2671         * win32/common/libgstreamer.def:
2672           Add a whole bunch of missing functions (#334434).
2674 2006-03-14  Wim Taymans  <wim@fluendo.com>
2676         * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
2677         (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
2678         (gst_base_sink_do_sync), (gst_base_sink_do_qos):
2679         Better debug info when we receive a segment event.
2680         Reorganize a bit so we can pass the get_times() results around.
2681         Use the segment format when calculating the running time.
2682         Don't do QoS is sync is disabled or we have no clock or the
2683         element does not want us to sync to the clock.
2684         Don't drop buffers if QoS is disabled for now.
2686 2006-03-14  Wim Taymans  <wim@fluendo.com>
2688         * gst/gstclock.c: (gst_clock_class_init), (do_linear_regression):
2689         Marked the stats property as unimplemented so people don't get
2690         wild ideas.
2691         Add debug message when regression goes wrong.
2692         Added some more docs.
2694 2006-03-14  Wim Taymans  <wim@fluendo.com>
2696         * gst/gstsegment.c: (gst_segment_to_stream_time):
2697         Return correct return type in case of errors.
2699 2006-03-14  Wim Taymans  <wim@fluendo.com>
2701         * gst/gstformat.c: (gst_format_get_name), (gst_format_to_quark):
2702           Don't segfault on invalid formats.
2704 2006-03-14  Tim-Philipp Müller  <tim at centricular dot net>
2706         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2707           Can't use gst_segment_to_running_time() when the segment
2708           is not in GST_TIME_FORMAT (like with filesink, for example).
2709           Stops flac encoding pipelines from spewing critical warnings
2710           at EOS (#331248).
2711           
2712 2006-03-14  Tim-Philipp Müller  <tim at centricular dot net>
2714         * gst/gstpipeline.c: (gst_pipeline_class_init):
2715           Add 'Since: 0.10.5' to gtk-doc blurb for added property.
2717         * plugins/elements/gsttypefindelement.c:
2718         (gst_type_find_element_handle_event):
2719           Don't try to typefind empty streams.
2721 2006-03-14  Wim Taymans  <wim@fluendo.com>
2723         * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
2724         (gst_base_sink_do_qos):
2725         Separate QoS calculation.
2726         Only drop buffers when lateness is bigger than the 
2727         duration of the buffer.
2729 2006-03-13  Wim Taymans  <wim@fluendo.com>
2731         * gst/gstpipeline.c: (gst_pipeline_set_property),
2732         (gst_pipeline_get_property), (do_pipeline_seek),
2733         (gst_pipeline_change_state), (gst_pipeline_set_delay),
2734         (gst_pipeline_get_delay):
2735         Don't deadlock when reading properties.
2737 2006-03-13  Wim Taymans  <wim@fluendo.com>
2739         * libs/gst/base/gstbasetransform.c:
2740         (gst_base_transform_class_init), (gst_base_transform_init),
2741         (gst_base_transform_sink_event),
2742         (gst_base_transform_sink_eventfunc),
2743         (gst_base_transform_src_event), (gst_base_transform_src_eventfunc),
2744         (gst_base_transform_handle_buffer), (gst_base_transform_chain),
2745         (gst_base_transform_set_property),
2746         (gst_base_transform_get_property),
2747         (gst_base_transform_change_state), (gst_base_transform_update_qos),
2748         (gst_base_transform_set_qos_enabled),
2749         (gst_base_transform_is_qos_enabled):
2750         * libs/gst/base/gstbasetransform.h:
2751         Make basetransform virtual method for src events too.
2752         Handle QOS in basetransform.
2753         API: gst_base_transform_update_qos()
2754         API: gst_base_transform_set_qos_enabled()
2755         API: gst_base_transform_is_qos_enabled()
2757 2006-03-13  Wim Taymans  <wim@fluendo.com>
2759         * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
2760         (gst_base_sink_do_sync):
2761         Small cleanups.
2762         Use QOS debug category.
2764 2006-03-13  Wim Taymans  <wim@fluendo.com>
2766         * plugins/elements/gstqueue.c:
2767         Very small doc update.
2769 2006-03-13  Wim Taymans  <wim@fluendo.com>
2771         * gst/gst_private.h:
2772         * gst/gstinfo.c: (_gst_debug_init):
2773         Added QOS debug category
2775 2006-03-13  Wim Taymans  <wim@fluendo.com>
2777         * docs/gst/gstreamer-sections.txt:
2778         * gst/gstbin.c: (bin_bus_handler), (gst_bin_handle_message_func):
2779         * gst/gstbin.h:
2780         * gst/gstbus.c: (gst_bus_class_init):
2781         * gst/gstbus.h:
2782         * gst/gstclock.c:
2783         * gst/gstelement.c: (gst_element_set_locked_state):
2784         * gst/gstsegment.c:
2785         Documentation updates.
2787         * gst/gstpipeline.c: (gst_pipeline_get_type),
2788         (gst_pipeline_class_init), (gst_pipeline_init),
2789         (gst_pipeline_dispose), (gst_pipeline_set_property),
2790         (gst_pipeline_get_property), (do_pipeline_seek),
2791         (gst_pipeline_send_event), (gst_pipeline_change_state),
2792         (gst_pipeline_provide_clock_func), (gst_pipeline_set_delay),
2793         (gst_pipeline_get_delay):
2794         * gst/gstpipeline.h:
2795         Added methods for setting the delay.
2796         API: gst_pipeline_set_delay()
2797         API: gst_pipeline_get_delay()
2798         Add pipeline debug category
2799         Various cleanups.
2800         Updated docs.
2801         Don't reset stream time when seek failed.
2803 2006-03-13  Wim Taymans  <wim@fluendo.com>
2805         * docs/design/draft-klass.txt:
2806         * docs/design/part-clocks.txt:
2807         * docs/design/part-events.txt:
2808         * docs/design/part-gstbin.txt:
2809         * docs/design/part-gstpipeline.txt:
2810         * docs/design/part-messages.txt:
2811         * docs/design/part-negotiation.txt:
2812         * docs/design/part-overview.txt:
2813         * docs/design/part-preroll.txt:
2814         * docs/design/part-seeking.txt:
2815         * docs/design/part-states.txt:
2816         * docs/design/part-streams.txt:
2817         Documentation updates.
2819 2006-03-12  Julien MOUTTE  <julien@moutte.net>
2821         * gst/gsttaglist.c: Fix rubbish docs that are encouraging
2822         us to leak strings...
2824 2006-03-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2826         * libs/gst/net/gstnettimeprovider.c:
2827           fix docs
2828         * win32/common/config.h:
2829           update
2831 2006-03-12  Tim-Philipp Müller  <tim at centricular dot net>
2833         Patch by: Julio M. Merino Vidal <jmmv at netbsd org>
2835         * configure.ac:
2836           Don't check for libgnomeui (leftover from old examples
2837           that aren't built or disted any longer) (#334303).
2838           
2839 2006-03-11  Tim-Philipp Müller  <tim at centricular dot net>
2841         * plugins/elements/gstfdsink.c: (gst_fd_sink_render):
2842         * plugins/elements/gstfilesink.c: (gst_file_sink_render):
2843           Emit RESOURCE_NO_SPACE_LEFT error here as well when
2844           there's no space left on the device.
2846 2006-03-10  Tim-Philipp Müller  <tim at centricular dot net>
2848         * gst/gstclock.h:
2849           Fix GST_CLOCK_TIME_IS_VALID signedness issues - we need
2850           to cast the input to GstClockTime before comparing with
2851           another GstClockTime value.
2853 2006-03-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2855         * configure.ac:
2856           back to trunk
2858 === release 0.10.4 ===
2860 2006-03-10  Thomas Vander Stichele <thomas at apestaart dot org>
2862         * configure.ac:
2863           releasing 0.10.4, "Light"
2865 2006-03-10  Michael Smith  <msmith@fluendo.com>
2867         * libs/gst/dataprotocol/dataprotocol.c:
2868           Fix docs for dataprocotol to not get the return types completely
2869           wrong for a few functions.
2871 2006-03-09  Tim-Philipp Müller  <tim at centricular dot net>
2873         * docs/gst/gstreamer-sections.txt:
2874         * gst/gstpipeline.c: (gst_pipeline_class_init),
2875         (gst_pipeline_init), (gst_pipeline_set_property),
2876         (gst_pipeline_get_property), (gst_pipeline_change_state),
2877         (gst_pipeline_set_auto_flush_bus),
2878         (gst_pipeline_get_auto_flush_bus):
2879         * gst/gstpipeline.h:
2880           Add new API: gst_pipeline_set_auto_flush_bus() and
2881           gst_pipeline_get_auto_flush_bus() to disable automatic
2882           flushing of the pipeline's GstBus when going from READY
2883           to NULL state (#332045).
2885 2006-03-09  Tim-Philipp Müller  <tim at centricular dot net>
2887         * docs/gst/gstreamer-sections.txt:
2888         * gst/gsturi.c: (gst_uri_has_protocol):
2889         * gst/gsturi.h:
2890            Add new API: gst_uri_has_protocol() (#333779).
2892 2006-03-09  Wim Taymans  <wim@fluendo.com>
2894         * gst/gstclock.c: (gst_clock_entry_new),
2895         (gst_clock_id_compare_func), (gst_clock_id_wait),
2896         (gst_clock_id_wait_async), (gst_clock_id_unschedule),
2897         (gst_clock_init), (gst_clock_get_internal_time),
2898         (gst_clock_set_master), (do_linear_regression),
2899         (gst_clock_add_observation), (gst_clock_set_property):
2900         * gst/gstclock.h:
2901         Review docs.
2902         Small cleanups.
2903         Fix a possible segfault when the window-size is made smaller.
2904         Calculate jitter before performing the clock wait. Ideally
2905         the clock implementation should calculate jitter but we need
2906         API breakage for that.
2908         * gst/gstsystemclock.c: (gst_system_clock_init):
2909         Docs review.
2910         
2911         * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
2912         Remove leftover else
2914         * tests/check/gst/gstsystemclock.c: (GST_START_TEST),
2915         (gst_systemclock_suite):
2916         Added check to test GST_CLOCK_DIFF.
2918 2006-03-09  Tim-Philipp Müller  <tim at centricular dot net>
2920         * libs/gst/base/gsttypefindhelper.c: (helper_find_get_length),
2921         (gst_type_find_helper_get_range):
2922           If we are provided with the size, we should implement
2923           GstTypeFind::get_length, so that typefind functions who
2924           want to can actually peek at the middle of a file.
2926 2006-03-08  Tim-Philipp Müller  <tim at centricular dot net>
2928         * docs/manual/advanced-dataaccess.xml:
2929           Add some very very basic error checking.
2931         * docs/pwg/appendix-checklist.xml:
2932           Some updates to the list of things to check when writing an element.
2934 2006-03-08  Wim Taymans  <wim@fluendo.com>
2936         * docs/design/part-element-transform.txt:
2937         Added some docs about the design of tranform elements.
2939         * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
2940         (gst_base_src_loop), (gst_base_src_change_state):
2941         Mark buffers with the DISCONT flag.
2943 2006-03-08  Michael Smith  <msmith@fluendo.com>
2945         * gst/gstregistry.h:
2946         * gst/gstregistryxml.c: (gst_registry_save),
2947         (gst_registry_save_escaped), (gst_registry_xml_save_caps),
2948         (gst_registry_xml_save_pad_template),
2949         (gst_registry_xml_save_feature), (gst_registry_xml_save_plugin),
2950         (gst_registry_xml_write_cache):
2951           Rewrite registry-saving to avoid race conditions and check for
2952           failed writes.
2954 2006-03-08  Wim Taymans  <wim@fluendo.com>
2956         * libs/gst/base/gstbasetransform.c:
2957         (gst_base_transform_transform_caps),
2958         (gst_base_transform_transform_size),
2959         (gst_base_transform_prepare_output_buffer),
2960         (gst_base_transform_get_unit_size),
2961         (gst_base_transform_buffer_alloc),
2962         (gst_base_transform_handle_buffer),
2963         (gst_base_transform_change_state):
2964         Cleanups, separate normal flow from errors, add sensible
2965         DEBUG lines.
2966         Don't try to renegotiate when allocating an output buffer.
2967         Also copy DISCONT buffer flag when copying a buffer.
2968         Reset the transform after we finish streaming, not during.
2970 2006-03-08  Wim Taymans  <wim@fluendo.com>
2972         * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
2973         Use last buffer timestamp in qos message.
2975 2006-03-07  Wim Taymans  <wim@fluendo.com>
2977         Patch by: Christophe Fergeau
2979         * docs/pwg/advanced-tagging.xml:
2980         * docs/pwg/building-pads.xml:
2981           fixes #333416
2983 2006-03-07  Wim Taymans  <wim@fluendo.com>
2985         * docs/libs/gstreamer-libs-sections.txt:
2986         Added basesink new methods.
2988         * gst/gstevent.c:
2989         * gst/gstevent.h:
2990         Docs updates. Flesh out the QoS docs.
2992         * libs/gst/base/gstadapter.c:
2993         Small doc clarification about ownership and flushing.
2995         * libs/gst/base/gstbasesink.c: (gst_base_sink_set_sync),
2996         (gst_base_sink_get_sync), (gst_base_sink_set_max_lateness),
2997         (gst_base_sink_get_max_lateness), (gst_base_sink_set_property),
2998         (gst_base_sink_get_property), (gst_base_sink_do_sync):
2999         * libs/gst/base/gstbasesink.h:
3000         API additions: 
3001         Added new methods to allow subclass to control max-lateness 
3002         and sync.
3003         Generate very basic QoS events based on last sync observation.
3004         Updated docs, fix typo, added some QoS blurb.
3006         * libs/gst/base/gstbasesrc.c:
3007         Remove obsolete _get_state() calls from docs.
3009 2006-03-07  Wim Taymans  <wim@fluendo.com>
3011         * docs/libs/gstreamer-libs-sections.txt:
3012         * libs/gst/base/gstbasetransform.h:
3013         API addition: Fix #333669, Add pad accessor defines for GstBaseTransform
3014         Fix docs for GstBaseSrc.
3016 2006-03-07  Wim Taymans  <wim@fluendo.com>
3018         * docs/gst/gstreamer-sections.txt:
3019         * gst/gstbuffer.h:
3020         * gst/gstvalue.c:
3021         * libs/gst/base/gstbasetransform.h:
3022         Small documentation fixes.
3024 2006-03-07  Tim-Philipp Müller  <tim at centricular dot net>
3026         * gst/gstvalue.c:
3027           Document thread-unsafety of gst_value_register_foo_func()
3028           when used at the same time as gst_value_foo() (#322628).
3030 2006-03-07  Tim-Philipp Müller  <tim at centricular dot net>
3032         * libs/gst/base/gstpushsrc.c: (gst_push_src_class_init),
3033         (gst_push_src_check_get_range):
3034           Push sources don't support pull mode by default.
3036 2006-03-06  Tim-Philipp Müller  <tim at centricular dot net>
3038         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
3039         (gst_base_src_init), (gst_base_src_pad_check_get_range),
3040         (gst_base_src_default_check_get_range):
3041         * libs/gst/base/gstbasesrc.h:
3042           API addition:  Add ::check_get_range() vfunc to GstBaseSrc (#332611),
3043           provide default implementation, and rename
3044           gst_base_src_check_get_range() to
3045           gst_base_src_pad_check_get_range() for clarity.
3047 2006-03-06  Wim Taymans  <wim@fluendo.com>
3049         * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
3050         Make property overridable.
3052 2006-03-06  Wim Taymans  <wim@fluendo.com>
3054         * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
3055         (gst_base_sink_init), (gst_base_sink_set_property),
3056         (gst_base_sink_get_property), (gst_base_sink_do_sync):
3057         * libs/gst/base/gstbasesink.h:
3058         API addition: Make max-lateness a property.
3060 2006-03-06  Wim Taymans  <wim@fluendo.com>
3062         * libs/gst/base/gstbasesink.c: (gst_base_sink_wait_clock),
3063         (gst_base_sink_do_sync), (gst_base_sink_render_object):
3064         Don't ever draw a frame that is >10ms late.
3066 2006-03-06  Michael Smith  <msmith@fluendo.com>
3068         * gst/gstmessage.c: (_gst_message_copy):
3069           When copying a message, set the parent_refcount of the enclosed
3070           structure to point at the copy, not the original message.
3072 2006-03-06  Tim-Philipp Müller  <tim at centricular dot net>
3074         Patch by: Christophe Fergeau
3076         * gst/gstutils.h:
3077           Do proper cast here to make GST_BOILERPLATE_WITH_INTERFACE
3078           usable in c++ code (#333417)
3080 2006-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3082         * gst/gstclock.h:
3083           Show GST_CLOCK_TIME_NONE as 99:99:99.999999999
3085 2006-03-05  Tim-Philipp Müller  <tim at centricular dot net>
3087         * libs/gst/base/gstbasetransform.c:
3088         (gst_base_transform_transform_caps):
3089           Make sure caps are writable before passing them to
3090           gst_caps_append().
3092 2006-03-04  Tim-Philipp Müller  <tim at centricular dot net>
3094         * gst/gsterror.h:
3095           Fix some minor docs errors.
3097 2006-03-04  Tim-Philipp Müller  <tim at centricular dot net>
3099           Patch by: Ross Burton <ross at burtonini dot com>
3101         * gst/gsterror.c: (_gst_resource_errors_init):
3102         * gst/gsterror.h:
3103           Add GST_RESOURCE_ERROR_NO_SPACE_LEFT (for #333352;
3105 2006-03-03  Jan Schmidt  <thaytan@mad.scientist.com>
3107         * gst/gst.c:
3108         Add a check and output a g_warning when GStreamer is built
3109         against GLib 2.6 but running against 2.8 or higher, and vice 
3110         versa. (Closes: #323542)
3112 2006-03-03  Jan Schmidt  <thaytan@mad.scientist.com>
3114         * gst/parse/parse.l:
3115           Commit patch for parse_launch syntax from #331255. Removes 
3116           support for quoted strings and mimetypes when writing filtered 
3117           caps. See the bug report for more details - I'm pretty sure this
3118           obscure feature is not in use by _anyone_ anywhere.
3120           With this simple change, the size of the gstreamer.so here 
3121           drops from 2193KB to 1565KB.
3123 2006-03-03  Tim-Philipp Müller  <tim at centricular dot net>
3125         * plugins/elements/gsttypefindelement.h:
3126         * plugins/elements/gsttypefindelement.c:
3127         (gst_type_find_element_src_event), (start_typefinding),
3128         (stop_typefinding), (gst_type_find_element_handle_event),
3129         (gst_type_find_element_chain),
3130         (gst_type_find_element_chain_do_typefinding):
3131           Use gst_type_find_helper_for_buffer() for chain-based
3132           typefinding.
3134 2006-03-03  Tim-Philipp Müller  <tim at centricular dot net>
3136         * plugins/elements/gsttypefindelement.c:
3137         (gst_type_find_element_class_init),
3138         (gst_type_find_element_set_property),
3139         (gst_type_find_element_get_property):
3140           Deprecate "maximum" property (not only was it only taken into
3141           account for typefinding in push-mode anyway, it also was never
3142           actually possible to set it in the first place because the
3143           property was registered with the numeric property ID for the
3144           "minimum" property). Register "maximum" property correctly,
3145           for the sake of future copy'n'pasters. Remove some cruft
3146           from property get/set functions.
3148 2006-03-03  Tim-Philipp Müller  <tim at centricular dot net>
3150         * plugins/elements/gsttypefindelement.c:
3151         (gst_type_find_element_activate):
3152           Use gst_type_find_helper_get_range() here, so we
3153           can honour the "minimum" property and also emit
3154           the signal with the correct probability of the found caps.
3156 2006-03-02  Tim-Philipp Müller  <tim at centricular dot net>
3158         * docs/libs/gstreamer-libs-sections.txt:
3159         * libs/gst/base/gsttypefindhelper.c: (helper_find_peek),
3160         (helper_find_suggest), (gst_type_find_helper_get_range),
3161         (gst_type_find_helper):
3162         * libs/gst/base/gsttypefindhelper.h:
3163           New API: gst_type_find_helper_get_range() (#333042).
3165 2006-03-02  Michael Smith  <msmith@fluendo.com>
3167         * gst/gstregistryxml.c: (load_feature):
3168           Asserting on a failure to read part of the registry is Not Cool.
3169           Just log a warning and return NULL (which is already handled)
3171 2006-02-28  Sebastien Moutte  <sebastien@moutte.net>
3173         * win32/common/libgstbase.def:
3174           added export of gst_type_find_helper_for_buffer
3175         * win32/common/libgstbase.def:
3176           added some exports : gst_bin_iterate_elements, gst_iterator_resync,
3177           gst_ghost_pad_get_target
3179 2006-02-28  Wim Taymans  <wim@fluendo.com>
3181         * docs/design/draft-klass.txt:
3182         We use Filter now.
3183         Added Connector to mark elements that are only used to
3184         allow pipeline connections.
3185         Moved Debug to extra feature since most of them are 
3186         functionally something else.
3188 2006-02-28  Wim Taymans  <wim@fluendo.com>
3190         * docs/design/draft-klass.txt:
3191         Some updates and clarifications.
3193 2006-02-28  Wim Taymans  <wim@fluendo.com>
3195         * docs/design/draft-klass.txt:
3196         Proposal for klass field values.
3198         * docs/design/part-streams.txt:
3199         Start of a doc describing stream anatomy.
3201 2006-02-28  Wim Taymans  <wim@fluendo.com>
3203         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_handle_message_func):
3204         Help the compiler a bit with type registration.
3205         Use existing forward cod path instead of duplicating it when 
3206         handling a message.
3207         
3208         * gst/gstbus.c: (gst_bus_get_type):
3209         * gst/gstcaps.c: (gst_caps_get_type), (gst_static_caps_get_type):
3210         * gst/gstchildproxy.c: (gst_child_proxy_get_type):
3211         * gst/gstclock.c: (gst_clock_get_type):
3212         * gst/gstelement.c: (gst_element_get_type),
3213         * gst/gstelementfactory.c: (gst_element_factory_get_type):
3214         * gst/gstindexfactory.c: (gst_index_factory_get_type):
3215         * gst/gstminiobject.c: (gst_mini_object_get_type):
3216         * gst/gstpad.c: (gst_pad_get_type):
3217         * gst/gstsegment.c: (gst_segment_get_type):
3218         * gst/gststructure.c: (gst_structure_get_type):
3219         * gst/gstsystemclock.c: (gst_system_clock_get_type):
3220         * gst/gsttask.c: (gst_task_get_type), (gst_task_join):
3221         * gst/gstvalue.c:
3222         Help compiler with type registration.
3224         * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event):
3225         Small doc update.
3227 2006-02-27  Tim-Philipp Müller  <tim at centricular dot net>
3229         * plugins/elements/gsttypefindelement.c:
3230         (gst_type_find_element_handle_event):
3231           When we get an EOS event and have not found a type yet
3232           (most likely because we had not yet accumulated
3233           TYPE_FIND_MIN_SIZE of data yet), try to determine the
3234           type given the data we have so far. Fixes typefinding
3235           for very short streams again, most notably quicktime
3236           redirections as used on Apple's trailer site (#331701).
3238 2006-02-27  Tim-Philipp Müller  <tim at centricular dot net>
3240         * libs/gst/base/gsttypefindhelper.c: (type_find_factory_rank_cmp),
3241         (gst_type_find_helper):
3242           Try typefinding factories with the highest rank first.
3244 2006-02-27  Tim-Philipp Müller  <tim at centricular dot net>
3246         * docs/libs/gstreamer-libs-docs.sgml:
3247         * docs/libs/gstreamer-libs-sections.txt:
3248         * libs/gst/base/gsttypefindhelper.c:
3249           Add section for typefind helper and add documentation
3250           for the old and the new function.
3252 2006-02-27  Tim-Philipp Müller  <tim at centricular dot net>
3254         * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek),
3255         (buf_helper_find_suggest), (type_find_factory_rank_cmp),
3256         (gst_type_find_helper_for_buffer):
3257         * libs/gst/base/gsttypefindhelper.h:
3258           New API: gst_type_find_helper_for_buffer() (#332723).
3259           
3260 2006-02-27  Michael Smith  <msmith@fluendo.com>
3262         Patch by: Loïc Minier
3264         * configure.ac:
3265         * docs/Makefile.am:
3266         * docs/slides/Makefile.am:
3267           prevent CVS directories getting disted.
3269 2006-02-27  Tim-Philipp Müller  <tim at centricular dot net>
3271         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref):
3272           Use the REFCOUNTING category for caps refcounting.
3273           
3274 2006-02-26  Tim-Philipp Müller  <tim at centricular dot net>
3276         * plugins/elements/gsttypefindelement.c: (stop_typefinding):
3277           This should be 0 not GST_CLOCK_TIME_NONE (see #331701).
3279 2006-02-26  Tim-Philipp Müller  <tim at centricular dot net>
3281         * plugins/elements/gsttypefindelement.c:
3282         (gst_type_find_element_activate):
3283           Use gst_pad_check_pull_range() before _activate_pull()
3284           to avoid unnecessary open/close (see #331690).
3286 2006-02-24  Tim-Philipp Müller  <tim at centricular dot net>
3288         * gst/gstutils.c:
3289           Docs enhancement: make it crystal clear what the
3290           gst_pad_add_*_probe() callbacks should look like.
3292 2006-02-24  Tim-Philipp Müller  <tim at centricular dot net>
3294         * libs/gst/base/gstbasesrc.c:
3295           Document how applications can stop recording from
3296           live sources (see #330996).
3298 2006-02-23  Tim-Philipp Müller  <tim at centricular dot net>
3300         * tests/check/Makefile.am:
3301         * tests/check/libs/basesrc.c: (eos_event_counter),
3302         (basesrc_eos_events_pull), (basesrc_eos_events_push),
3303         (basesrc_eos_events_push_live_op), (basesrc_eos_events_pull_live_op),
3304         (gst_basesrc_suite), (main):
3305           ... and add some tests for the base source EOS stuff.
3307 2006-02-23  Tim-Philipp Müller  <tim at centricular dot net>
3309         * tests/check/gst/gstutils.c: (test_buffer_probe_n_times):
3310           Test case originally showed the problem fixed below,
3311           but was then amended. Add checks back at the place
3312           where they used to be.
3314 2006-02-23  Tim-Philipp Müller  <tim at centricular dot net>
3316         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
3317         (gst_base_src_init), (gst_base_src_loop),
3318         (gst_base_src_activate_push), (gst_base_src_activate_pull),
3319         (gst_base_src_change_state):
3320         * libs/gst/base/gstbasesrc.h:
3321           Don't unconditionally send EOS when going from PAUSED to
3322           READY state, esp. make sure we don't send two EOS events
3323           in some cases (e.g. one when reaching EOS and one when
3324           going from PAUSED to READY). Also, we don't want to send
3325           EOS events when operating in pull mode. However, we do
3326           want to send an EOS event when shutting down a live
3327           source explicitly, for example (fixes #330996).
3328           
3329 2006-02-23  Tim-Philipp Müller  <tim at centricular dot net>
3331         * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
3332           Update src->read_position after a seek when not using mmap.
3333           Fixes #332277, patch by: Renchi Raju <renchi gmail com>
3335 2006-02-21  Jan Schmidt  <thaytan@mad.scientist.com>
3337         * gst/Makefile.am:
3338         * gst/gstparse.h:
3339         * gst/gstutils.c:
3340         * gst/gstutils.h:
3341         Make things work with --disable-parse as they do with 
3342         --disable-load-save - the symbols involved disappear, but the
3343         header is still installed and GST_DISABLE_PARSE is included via
3344         gstconfig.h
3346 2006-02-20  Julien MOUTTE  <julien@moutte.net>
3348         * libs/gst/base/gstbasetransform.c:
3349         (gst_base_transform_change_state): Fix a stupid bug. I was 
3350         sure I compiled that.
3352 2006-02-20  Julien MOUTTE  <julien@moutte.net>
3354         * gst/gstpad.c: (gst_pad_set_blocked_async):
3355         * gst/gstutils.c: (gst_pad_add_data_probe),
3356         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
3357         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
3358         (gst_pad_remove_buffer_probe): Make those function act on the
3359         ghostpad target when it's a ghostpad. (Closes #331727)
3361 2006-02-20  Julien MOUTTE  <julien@moutte.net>
3363         * libs/gst/base/gstbasetransform.c:
3364         (gst_base_transform_change_state): Make basetransform reusable.
3365         (Closes #331898)
3367 2006-02-20  Jan Schmidt  <thaytan@mad.scientist.com>
3369         * docs/random/release:
3370         Move the current documentation of how to do a release to the top
3371         of the file.
3373         * gst/gstbin.c: (gst_bin_class_init),
3374         (gst_bin_handle_message_func):
3375         Allow multiple state-recalculation threads. (Closes #328873)
3377 2006-02-19  Julien MOUTTE  <julien@moutte.net>
3379         * gst/gstinfo.h: Add GST_STR_NULL to the second string.
3380         * gst/gstpad.c: (gst_pad_set_event_function),
3381         (gst_pad_set_query_function), (gst_pad_set_query_type_function),
3382         (gst_pad_set_getcaps_function): GST_DEBUG_PAD_NAME evaluates to
3383         2 strings. You can't use the STR_NULL macro on that.
3385 2006-02-19  Sebastien Moutte <sebastien@moutte.net>
3387         * gst/gstpad.c: (gst_pad_set_event_function),
3388         (gst_pad_set_query_function), (gst_pad_set_query_type_function),
3389         (gst_pad_set_getcaps_function)
3390         * gst/parse/grammar.y: (gst_parse_found_pad), (gst_parse_perform_delayed_link)
3391           Fixed NULL pointer used in GST_CAT_DEBUG using GST_STR_NULL macro
3392           So now, we can use --gst-debug-level=5 on Windows
3393         * win32/common/libgstcontroller.def:
3394           Added export of gst_controller_init
3395         * win32/vs6/libgstcontroller.dsp:
3396           Fixed Release post build configuration
3398 2006-02-17  Wim Taymans  <wim@fluendo.com>
3400         * tests/check/gst/gstquery.c: (GST_START_TEST):
3401         Added another check.
3403 2006-02-15  Tim-Philipp Müller  <tim at centricular dot net>
3405         * plugins/elements/gsttypefindelement.c: (find_peek):
3406           We can do peeks at non-zero offsets, as long as they
3407           fall within the buffer we have.
3409 2006-02-15  Jan Schmidt  <thaytan@mad.scientist.com>
3411         * tests/check/Makefile.am:
3412         * tests/check/pipelines/parse-launch.c: (setup_pipeline),
3413         (expected_fail_pipe), (check_pipeline_runs), (GST_START_TEST),
3414         (parse_suite), (main):
3415           Add testsuite for parse launch syntax
3417 2006-02-14  Tim-Philipp Müller  <tim at centricular dot net>
3419         * plugins/elements/gsttypefindelement.c:
3420         (gst_type_find_element_chain):
3421           When typefinding is unsuccessful in the chain function, don't
3422           error out immediately. Only error out with NO_CAPS_FOUND if
3423           the amount of data is at least MAX_TYPEFIND_SIZE bytes,
3424           otherwise simply wait for more data so we can try typefinding
3425           again with more data later. Also, don't attempt to typefind
3426           if we have less than MIN_TYPEFIND_SIZE data available. Overall,
3427           this should improve typefinding from network sources where the
3428           size of the first buffer can be somewhat random.
3430 2006-02-14  Wim Taymans  <wim@fluendo.com>
3432         * docs/gst/gstreamer-sections.txt:
3433         * gst/gstpadtemplate.c:
3434         * gst/gstpadtemplate.h:
3435         Fix padtemplate docs, fixes #328805.
3437 2006-02-14  Wim Taymans  <wim@fluendo.com>
3439         * tools/gst-launch.c: (main):
3440         NO_PREROLL is not an ERROR so don't send confusing messages
3441         to the user.
3443 2006-02-14  Wim Taymans  <wim@fluendo.com>
3445         Patch by: Torsten Schoenfeld
3447         * gst/gstregistry.c: (gst_registry_get_default),
3448         (_gst_registry_cleanup):
3449         Protect default registry with lock and ref/sink it.
3450         Fixes #324818
3452 2006-02-14  Wim Taymans  <wim@fluendo.com>
3454         * gst/gstbuffer.c:
3455         * gst/gstquery.c: (gst_query_list_add_format),
3456         (gst_query_set_formatsv), (gst_query_parse_formats_length),
3457         (gst_query_parse_formats_nth):
3458         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
3459         Docs fixes.
3461 2006-02-14  Wim Taymans  <wim@fluendo.com>
3463         * docs/gst/gstreamer-sections.txt:
3464         Reworked query docs.
3466         * gst/gstquery.c: (gst_query_new_formats),
3467         (gst_query_list_add_format), (gst_query_set_formats),
3468         (gst_query_set_formatsv), (gst_query_parse_formats_length),
3469         (gst_query_parse_formats_nth):
3470         * gst/gstquery.h:
3471         Flesh out formats query, added some new methods.
3472         Fix part of #324398.
3474         * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite):
3475         Added query creation tests.
3477 2006-02-14  Jan Schmidt  <thaytan@mad.scientist.com>
3479         * gst/gstpad.c: (fixate_value):
3480         Add a default fixation for fraction lists.
3482 2006-02-13  Wim Taymans  <wim@fluendo.com>
3484         * gst/gsttask.c: (gst_task_init), (gst_task_func),
3485         (gst_task_set_lock), (gst_task_start), (gst_task_pause),
3486         (gst_task_join):
3487         * gst/gsttask.h:
3488         Detect and warn for obvious deadlocks. fixes #320340
3489         Fix error case where lock was not released.
3491         * tests/check/Makefile.am:
3492         * tests/check/gst/gsttask.c: (task_func2), (GST_START_TEST),
3493         (task_func), (gst_element_suite), (main):
3494         Add task check.
3496 2006-02-13  Wim Taymans  <wim@fluendo.com>
3498         * docs/gst/gstreamer-sections.txt:
3499         * gst/gstbus.c:
3500         Add new functions to docs.
3502 2006-02-13  Wim Taymans  <wim@fluendo.com>
3504         * docs/design/part-TODO.txt:
3505         Updated TODO list, basesrc supports seeking to non-bytes
3506         formats.
3508         * docs/design/part-element-sink.txt:
3509         Update docs.
3511         * gst/gstbin.c: (bin_replace_message),
3512         (gst_bin_handle_message_func):
3513         * gst/gstbus.c: (gst_bus_post), (gst_bus_pop):
3514         * gst/gstevent.c: (gst_event_finalize):
3515         * gst/gstpad.c: (gst_pad_event_default_dispatch),
3516         (gst_pad_send_event):
3517         Use shiny new _TYPE_NAME macros.
3519         * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
3520         Move debug statement up.
3522         * gst/gstelement.c: (gst_element_set_locked_state):
3523         Add some debugging.
3525 2006-02-13  Tim-Philipp Müller  <tim at centricular dot net>
3527         * docs/gst/gstreamer-sections.txt:
3528         * gst/gstmessage.h:
3529         * gst/gstquery.h:
3530           New API: add GST_MESSAGE_TYPE_NAME and GST_QUERY_TYPE_NAME
3531           macros (#330906). Also, document the already existing
3532           GST_QUERY_TYPE macro.
3534 2006-02-13  Wim Taymans  <wim@fluendo.com>
3536         * tests/check/gst/gstutils.c: (data_probe), (buffer_probe),
3537         (event_probe), (GST_START_TEST):
3538         Only events up to the pipeline EOS are counted, there are
3539         some more when going to NULL currently which we don't care
3540         about for now.
3542 2006-02-13  Wim Taymans  <wim@fluendo.com>
3544         * gst/gstpad.c: (gst_pad_send_event):
3545         Correctly check flushing and emit probes. fixes #330125
3547 2006-02-10  Andy Wingo  <wingo@pobox.com>
3549         * gst/gstbus.c (gst_bus_class_init): Declare our private data
3550         structure.
3551         (gst_bus_init): Cache the location of the private data in the
3552         instance structure.
3553         (gst_bus_enable_sync_message_emission) 
3554         (gst_bus_disable_sync_message_emission):