ae5454342361544a9b965d110a2fc433a8a01b31
[glsdk/gstreamer0-10.git] / ChangeLog
1 2005-09-27  Stefan Kost  <ensonic@users.sf.net>
3         * docs/gst/gstreamer-sections.txt:
4         * gst/base/gstbasesrc.h:
5         * gst/gstelement.h:
6         * gst/gstevent.h:
7         * gst/gstobject.h:
8         * gst/gstpad.h:
9         * gst/gstpipeline.c:
10         * gst/gstpipeline.h:
11         * gst/gstutils.h:
12         * gst/gstxml.h:
13           added two new functions to the docs
14                 documents all undocumented GstXXXFlags
15                 completed some incomplete docs 
17 2005-09-27  Thomas Vander Stichele  <thomas at apestaart dot org>
19         * gst/gstbin.c: (gst_bin_dispose):
20         * gst/gstelement.c: (gst_element_dispose):
21           remove now useless and leaky resurrection code in dispose
22         * gst/base/gstbasesrc.c: (gst_base_src_init):
23         * gst/gstelementfactory.c: (gst_element_factory_create):
24         * gst/gstobject.c: (gst_object_set_parent):
25           add some debugging
27 2005-09-27  Wim Taymans  <wim@fluendo.com>
29         * docs/design/part-TODO.txt:
30         Update TODO.
32         * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
33         (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
34         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
35         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
36         (gst_bin_change_state):
37         * gst/gstelement.h:
38         Remove element variable, we keep element info in the iterator now.
40 2005-09-27  Andy Wingo  <wingo@pobox.com>
42         * libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return
43         values.
45 2005-09-27  Wim Taymans  <wim@fluendo.com>
47         * check/gst/gstbin.c: (GST_START_TEST):
48         Enable check that works now.
50         * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
51         (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
52         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
53         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
54         (gst_bin_change_state):
55         * gst/gstbin.h:
56         Redid the state change algorithm using a topological sort algo.
57         Handles all cases correctly.
58         Exposed iterator for state change order.
60         * gst/gstelement.h:
61         Temp storage for state changes. Need to get rid of this soon.
63 2005-09-27  Wim Taymans  <wim@fluendo.com>
65         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_do_push):
66         * gst/gstutils.c: (intersect_caps_func), (gst_pad_proxy_getcaps),
67         (link_fold_func), (gst_pad_proxy_setcaps):
68         Leak fixes, the fold functions need to unref the passed object and
69         _get_parent_*() returns ref to parent.
71 2005-09-27  Tim-Philipp Müller  <tim at centricular dot net>
73         * check/gst/gstbuffer.c: (test_make_writable):
74           Plug leak in test case and fix 'make check-valgrind'
76 2005-09-27  Tim-Philipp Müller  <tim at centricular dot net>
78         * gst/gstbuffer.c: (gst_subbuffer_init):
79           Set READONLY flag on subbuffers, so that gst_buffer_make_writable()
80           works correctly in all circumstances (we could have just copied
81           the parent buffer's readonly flag, but conceptually it seems
82           cleaner to mark all subbuffers as read-only). (based on patch
83           by Alessandro Decina, #314710).
84         
85         * check/gst/gstbuffer.c: (create_read_only_buffer),
86         (test_make_writable), (test_subbuffer_make_writable),
87         (gst_test_suite):
88           Add some tests for gst_buffer_make_writable().
90 2005-09-27  Wim Taymans  <wim@fluendo.com>
92         * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_change_state):
93         use gst_object_has_ancestor().
95         * gst/gstobject.c: (gst_object_has_ancestor):
96         * gst/gstobject.h:
97         gst_object_has_ancestor() copied from gstbin.c as it is a
98         usefull function.
100         * tests/instantiate/create.c: (create_all_elements):
101         * tests/lat.c: (handoff_src), (handoff_sink):
102         * tests/sched/runxml.c: (main):
103         * tests/seeking/seeking1.c: (main):
104         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
105         (main):
106         Fix compilation of some tests.
108 2005-09-27  Tim-Philipp Müller  <tim at centricular dot net>
110         * gst/gsterror.h:
111           Remove comment. GST_TYPE_G_ERROR is here to stay,
112           G_TYPE_ERROR has been WONTFIX'ed by the GLib folks
113           (#316961, #300610).
115 2005-09-26  Wim Taymans  <wim@fluendo.com>
117         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
118         Added check that shows error in state change order.
120 2005-09-26  Wim Taymans  <wim@fluendo.com>
122         * gst/gstbin.c: (gst_bin_change_state):
123         Make state change function use 3 queues again, we were
124         adding elements in the wrong order.
126         * gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
127         Some debug info,
129         * gst/gstpad.c: (gst_pad_dispose):
130         Added some debug info first.
132 2005-09-26  Tim-Philipp Müller  <tim at centricular dot net>
134         * docs/design/draft-push-pull.txt:
135         * docs/design/part-events.txt:
136         * docs/design/part-overview.txt:
137         * docs/design/part-scheduling.txt:
138           Replace all _pull_region() with _pull_range()
139           
140 2005-09-26  Andy Wingo  <wingo@pobox.com>
142         * gst/gstvalue.c (_gst_value_initialize): Better fakeout.
144         * check/gst-libs/controller.c: Update for controller api change.
146         * configure.ac: 
147         * tests/Makefile.am:
148         * tests/memchunk: Remove memchunk benchmark stuff, this is taken
149         over by GLib bug 118439.
150         
151         * gst/base/gstbasesink.c (gst_base_sink_wait): Factor out the wait
152         routines to a function.
154         * docs/libs/gstreamer-libs-sections.txt: I am a good person today.
156         * libs/gst/controller/gsthelper.c:
157         * libs/gst/controller/gstcontroller.h (gst_controller_sync_values)
158         (gst_object_sync_values): Renamed from sink_values. Ugh.
160         * libs/gst/controller/gsthelper.c: Update for __gst_controller_key.
162         * libs/gst/controller/gstcontroller.c (__gst_controller_key):
163         Renamed from controller_key, as it is exported.
165         * gst/gstvalue.c (_gst_value_initialize): Fake out the compiler.
167 2005-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
169         * gst/Makefile.am:
170         * gst/gst.h:
171         * gst/gstpad.h:
172         * gst/gstpadtemplate.h:
173         * gst/gstquery.c:
174         * gst/gstquery.h:
175         * gst/gstqueryutils.c:
176         * gst/gstqueryutils.h:
177           remove queryutils headers after moving the two used functions
178           to gstquery.  also fixes build problem for gstsiddec
180 2005-09-26  Michael Smith <msmith@fluendo.com>
182         * tools/gst-launch.1.in:
183         Correct documentation in manpage of debug syntax
185 2005-09-26  Wim Taymans  <wim@fluendo.com>
187         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
188         (gst_base_src_is_seekable), (gst_base_src_change_state):
189         Some more debugging info.
191 2005-09-25  Stefan Kost  <ensonic@users.sf.net>
193         * docs/gst/gstreamer-sections.txt:
194         * gst/base/gstbasetransform.h:
195         * gst/gstindex.h:
196           added more docs
198 2005-09-25  Stefan Kost  <ensonic@users.sf.net>
200         * docs/gst/.cvsignore:
201         * docs/gst/tmpl/.cvsignore:
202         * docs/gst/tmpl/gstpipeline.sgml:
203         * docs/gst/tmpl/gstplugin.sgml:
204         * gst/gstpipeline.c:
205         * gst/gstplugin.c:
206         * gst/gstplugin.h:
207           inlined the last two docs files
208           removed the tmpl directory from cvs (no more conflicts here!)
210 2005-09-25  Stefan Kost  <ensonic@users.sf.net>
212         * docs/gst/gstreamer-sections.txt:
213         * docs/gst/tmpl/.cvsignore:
214         * docs/gst/tmpl/gstpad.sgml:
215         * docs/gst/tmpl/gstpadtemplate.sgml:
216         * gst/Makefile.am:
217         * gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
218         (gst_pad_finalize), (gst_pad_set_pad_template):
219         * gst/gstpad.h:
220         * gst/gstpadtemplate.c: (gst_pad_template_get_type),
221         (gst_pad_template_class_init), (gst_pad_template_init),
222         (gst_pad_template_dispose), (name_is_valid),
223         (gst_static_pad_template_get), (gst_pad_template_new),
224         (gst_static_pad_template_get_caps), (gst_pad_template_get_caps),
225         (gst_pad_template_pad_created):
226         * gst/gstpadtemplate.h:
227           inlined two more docs
228           factored gstpadtemplate out of gstpad
230 2005-09-24  Tim-Philipp Müller  <tim at centricular dot net>
232         * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
233         (test_children_state_change_order_semi_sink):
234           Fix test case: we can't rely on a fixed state change order when
235           going from READY => PAUSED because the sink might commit its 
236           new state first when the first buffer created by the source 
237           reaches the sink before the source has finished its change state.
238           (Test case still fails at times, see #316856, comment 5 onwards)
240 2005-09-24  Wim Taymans  <wim@fluendo.com>
242         * docs/design/part-events.txt:
243         * docs/design/part-gstbus.txt:
244         * docs/design/part-gstpipeline.txt:
245         * docs/design/part-messages.txt:
246         * docs/design/part-overview.txt:
247         * docs/design/part-segments.txt:
248         * gst/gstbin.c:
249         * gst/gstbuffer.c:
250         * gst/gstclock.c:
251         * gst/gstelement.c:
252         * gst/gstevent.c:
253         * gst/gstfilter.c:
254         * gst/gstiterator.c:
255         Various documentation updates.
257 2005-09-24  Thomas Vander Stichele  <thomas at apestaart dot org>
259         * gst/gstclock.h:
260           Well, that's embarassing.  Luckily we weren't using
261           GST_CLOCK_DIFF anywhere.
263 2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>
265         * common/gtk-doc.mak:
266           don't fail on building XML, FC4 slave shows a bunch of doc
267           missing bits that I don't get
268         * gst/gstpad.c:
269         * gst/gstpipeline.c:
270         * gst/gststructure.c:
271           some doc updates
273 2005-09-23  Tim-Philipp Müller  <tim at centricular dot net>
275         * docs/design/part-gstbin.txt:
276         * docs/design/part-gstbus.txt:
277         * gst/gstbus.c:
278           Add blurb about how the bus goes into flushing mode and
279           drops all messages when its bin goes from READY into NULL 
280           state.
282 2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>
284         * docs/gst/gstreamer-sections.txt:
285         * gst/gststructure.c: (gst_structure_get_clock_time):
286         * gst/gststructure.h:
287           add a method to get a GstClockTime out of a structure
289 2005-09-23  Tim-Philipp Müller  <tim at centricular dot net>
291         * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
292         (test_children_state_change_order_semi_sink), (gst_bin_suite):
293           Added test to check state change order in bins (can still be made
294           to fail here under heavy disk load; bails out with 'Push on pad
295           fakesink:sink0, but it was not activated in push mode').
297         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_change_state):
298           Fix state change order when there is only a semi sink (#316856)
300         * gst/gstbus.c: (gst_bus_class_init):
301           Use _class_peek_parent(), not _class_ref(); fix docs to say
302           'default main context' instead of 'mainloop' where that is
303           what's meant.
305         * gst/gstelement.c: (gst_element_commit_state),
306         (gst_element_set_state):
307           Fix typos in debug messages
309 2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>
311         * docs/README:
312         * gst/gstpad.c: (gst_pad_class_init), (gst_pad_chain):
313         * gst/gstpluginfeature.c:
314         * gst/gstutils.c:
315           various doc updates
316         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
317           change an assert into an error until it gets fixed properly
319 2005-09-23  Stefan Kost  <ensonic@users.sf.net>
321         * docs/gst/gstreamer-sections.txt:
322         * docs/gst/tmpl/.cvsignore:
323         * docs/gst/tmpl/gstelement.sgml:
324         * docs/gst/tmpl/gstinfo.sgml:
325         * docs/gst/tmpl/gstobject.sgml:
326         * gst/gstelement.c:
327         * gst/gstelement.h:
328         * gst/gstinfo.c:
329         * gst/gstinfo.h:
330         * gst/gstobject.c: (gst_object_class_init):
331         * gst/gstobject.h:
332           inlined 3 more biiiig doc files and added some missing docs on the fly
334 2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>
336         * check/gst/.cvsignore:
337         * check/gst/gstplugin.c: (GST_START_TEST), (gst_plugin_suite):
338         * gst/gstregistryxml.c: (load_plugin),
339         (gst_registry_xml_save_plugin):
340           put back source in registry.  add checks for find_plugin.
341         * testsuite/states/bin.c: (assert_state), (empty_bin),
342         (test_adding_one_element), (main):
343         * testsuite/states/locked.c: (main):
344           some compile/run fixes
346 2005-09-22  Thomas Vander Stichele  <thomas at apestaart dot org>
348         * check/gst/gstvalue.c: (GST_START_TEST):
349           fix leaks in the test itself
351 2005-09-22  Wim Taymans  <wim@fluendo.com>
353         * gst/base/gstbasesink.c: (gst_base_sink_class_init),
354         (gst_base_sink_send_event), (gst_base_sink_peer_query),
355         (gst_base_sink_query):
356         Prepare for more accurate position reporting and query
357         handling.
359         * gst/gstelement.c: (gst_element_send_event),
360         (gst_element_set_state):
361         Add some comment.
363 2005-09-22  Wim Taymans  <wim@fluendo.com>
365         * gst/gstquery.c: (gst_query_new_segment), (gst_query_set_segment),
366         (gst_query_parse_segment):
367         * gst/gstquery.h:
368         More documentation.
369         Add segment query for future use.
371 2005-09-22  Wim Taymans  <wim@fluendo.com>
373         * gst/gstbin.c: (gst_bin_add_func):
374         Some more debug info.
376         * gst/gstelement.c: (gst_element_send_event):
377         Simplify send_event
379         * gst/gstelement.h:
380         Don't know how flags got broken.
382         * gst/gstquery.h:
383         Added new query.
385 2005-09-22  Tim-Philipp Müller  <tim at centricular dot net>
387         * check/gst/gstvalue.c: (test_date), (gst_value_suite):
388           Add simplistic test suite for GST_TYPE_DATE serialisation and
389           deserialisation.
391 2005-09-22  Tim-Philipp Müller  <tim at centricular dot net>
393         * docs/gst/gstreamer-sections.txt:
394         * gst/gststructure.c: (gst_structure_set_valist),
395         (gst_structure_get_date):
396         * gst/gststructure.h:
397         * gst/gstvalue.c: (gst_value_set_date), (gst_value_get_date),
398         (gst_date_copy), (gst_value_compare_date),
399         (gst_value_serialize_date), (gst_value_deserialize_date),
400         (gst_value_transform_date_string),
401         (gst_value_transform_string_date), (_gst_value_initialize):
402         * gst/gstvalue.h:
403           Add GST_TYPE_DATE, a boxed type that wraps GDate, and the usual
404           bunch of utility functions along with a hack that checks that
405           developers don't accidentally use G_TYPE_DATE where GST_TYPE_DATE
406           is required. Part of the grand scheme in #170777.
408 2005-09-22  Andy Wingo  <wingo@pobox.com>
410         * gst/gstconfig.h.in: Psych out gtk-doc.
412         * docs/gst/gstreamer-sections.txt: Add GST_HAVE_GLIB_2_8.
414         * check/Makefile.am (check_PROGRAMS): Add gstplugin to the tests.
416         * tools/gst-inspect.c (print_element_list): Plug some
417         inconsequential leaks.
419         * gst/gstregistry.c (gst_registry_get_default): Doc.
421         * check/gst/gstplugin.c: 
422         * gst/gsttypefindfactory.c (gst_type_find_factory_call_function):
423         * gst/gstelementfactory.c (gst_element_factory_create): 
424         * gst/gstindexfactory.c (gst_index_factory_create): Update for
425         refcount changes.
427         * gst/gstpluginfeature.c (gst_plugin_feature_list_free): Doc.
428         (gst_plugin_feature_load): Doc, don't eat refs.
430         * gst/gstplugin.c (gst_plugin_load): Doc, don't eat refs.
431         (gst_plugin_list_free): Doc.
432         (gst_plugin_load_file): Doc updates.
434         * gst/gstbuffer.c (gst_buffer_get_caps): Like all our _get
435         accessors returning refcounted objects, return a ref.
437         * check/gst/gstbuffer.c (GST_START_TEST): Use refcount-idempotent
438         accessor for caps. IDEMPOTENCE. Oh yes.
440 2005-09-21  Francis Labonte  <francis_labonte at hotmail dot com>
442         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
444         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
445         (_gst_debug_register_funcptr):
446           Add mutex to serialise access to the hash table with
447           the function pointer => function name string mapping;
448           make that hash table static scope (#316809).
450         * gst/registries/.cvsignore:
451           Remove left-over file.
453 2005-09-21  Tim-Philipp Müller  <tim at centricular dot net>
455         * docs/pwg/appendix-porting.xml:
456           And something about newsegment events and caps-on-buffers to
457           the porting guide (feel free to improve).
459 2005-09-21  Andy Wingo  <wingo@pobox.com>
461         * check/gst/gstutils.c (test_buffer_probe_n_times): Add tests for
462         data and event probes on the same pad.
463         (test_buffer_probe_once): Test that removing probes from within
464         the probe functions works.
466 2005-09-21  Andy Wingo  <wingo@pobox.com>
468         * check/gst/gstutils.c: New file.
469         (test_buffer_probe_n_times): A simple buffer probe test. More to
470         come, foolios.
472         * gst/gstutils.c (gst_pad_add_buffer_probe): Connect to
473         have-data::buffer, not have-data.
474         (gst_pad_add_event_probe): Likewise for have-data::event.
475         (gst_pad_add_data_probe): More docs. The part about 'resolving the
476         peer' isn't quite right yet though.
477         (gst_pad_remove_buffer_probe, gst_pad_remove_event_probe) 
478         (gst_pad_remove_data_probe): Change to take the guint handler_id
479         as their arg, not the function+data, which is more glib-like.
481         * gst/gstpad.c (gst_pad_emit_have_data_signal): Add a detail to
482         the signal emission to indicate if the data is a buffer or an
483         event.
484         (gst_pad_get_type): Initialize buffer and event quarks.
485         (gst_pad_class_init): have-data is now a detailed signal, yes it
486         is.
488 2005-09-21  Tim-Philipp Müller  <tim at centricular dot net>
490         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
491         * gst/gstutils.c: (gst_util_set_value_from_string),
492         (gst_util_set_object_arg):
493           Don't put functional code in g_return_if_fail() or
494           g_return_val_if_fail() statements, otherwise things will 
495           break when G_DISABLE_CHECKS is defined during compilation.
497 2005-09-21  Stefan Kost  <ensonic@users.sf.net>
499         * docs/gst/tmpl/.cvsignore:
500         * docs/gst/tmpl/gstvalue.sgml:
501         * gst/gstvalue.c:
502         * gst/gstvalue.h:
503           inlied another one and added  some obvious docs
505 2005-09-21  Wim Taymans  <wim@fluendo.com>
507         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
508         (gst_fdsrc_init), (gst_fdsrc_start), (gst_fdsrc_stop),
509         (gst_fdsrc_unlock), (gst_fdsrc_set_property),
510         (gst_fdsrc_get_property), (gst_fdsrc_create):
511         * gst/elements/gstfdsrc.h:
512         Properly implement fdsrc. Removed signal and timeout,
513         better implemented somewhere else.
515 2005-09-21  Stefan Kost  <ensonic@users.sf.net>
517         * docs/gst/tmpl/.cvsignore:
518         * docs/gst/tmpl/gstimplementsinterface.sgml:
519         * gst/gstinterface.c:
520           inlined more docs
522 2005-09-21  Stefan Kost  <ensonic@users.sf.net>
524         * docs/gst/gstreamer-sections.txt:
525         * docs/gst/tmpl/.cvsignore:
526         * docs/gst/tmpl/gstenumtypes.sgml:
527           remove obsolete doc file
529 2005-09-21  David Schleef  <ds@schleef.org>
531         * gst/gstelementfactory.c: (gst_element_factory_make): Drink a
532         little beer, fix a little leak.
534 2005-09-21  Stefan Kost  <ensonic@users.sf.net>
536         * docs/gst/gstreamer-docs.sgml:
537         * docs/gst/gstreamer-sections.txt:
538         * docs/gst/tmpl/.cvsignore:
539         * gst/Makefile.am:
540         * gst/gst.h:
541         * gst/gstbin.c:
542         * gst/gstelement.h:
543         * gst/gstindex.c: (gst_index_class_init):
544         * gst/gstindex.h:
545         * gst/gstindexfactory.c: (gst_index_factory_get_type),
546         (gst_index_factory_class_init), (gst_index_factory_init),
547         (gst_index_factory_finalize), (gst_index_factory_new),
548         (gst_index_factory_destroy), (gst_index_factory_find),
549         (gst_index_factory_create), (gst_index_factory_make):
550         * gst/gstindexfactory.h:
551         * gst/gstpluginfeature.c:
552         * gst/gstpluginfeature.h:
553         * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
554           more docs inlined, splitted gstindex.{c,h}
556 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
558         * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
559           fix a leak
561 2005-09-20  Tim-Philipp M??ller  <tim at centricular dot net>
563         * gst/elements/gstfilesink.c: (gst_file_sink_init):
564           Set sync to FALSE by default.
566 2005-09-20  Wim Taymans  <wim@fluendo.com>
568         * gst/base/gstbasesink.c: (gst_base_sink_class_init),
569         (gst_base_sink_init):
570         Make sync property settable from subclass.
572         * gst/elements/gstfakesink.c: (gst_fake_sink_init),
573         (gst_fake_sink_change_state):
574         Set sync to FALSE by default.
576 2005-09-20  Wim Taymans  <wim@fluendo.com>
578         * gst/gstbus.c: (poll_func), (poll_timeout), (gst_bus_poll):
579         * tools/gst-launch.c: (main):
580         The timeout handler should have lower priority than the source
581         so we don't timeout before popping a message with 0 timeout.
582         Dump error messages after failed state change.
584 2005-09-20  Tim-Philipp M??ller  <tim at centricular dot net>
586         * tools/gst-inspect.c: (print_element_properties_info):
587           Fix two typos.
589 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
591         * check/gst/gstevent.c:
592         * gst/elements/gstfakesink.c:
593         * gst/elements/gstfakesink.h:
594           remove the sync property from fakesink.
595           has the side effect of setting sync TRUE
596           for fakesink, which is a change.  Anyone who knows how
597           to fix this nicely in a GObject-y way, feel free.
599 2005-09-20  Stefan Kost  <ensonic@users.sf.net>
601         * docs/gst/gstreamer-docs.sgml:
602           remove probe refsection
604 2005-09-20  Stefan Kost  <ensonic@users.sf.net>
606         * check/Makefile.am:
607           disable valgrinding the controller test again
608         * docs/gst/gstreamer-sections.txt:
609           update for api-changes
611 2005-09-20  Wim Taymans  <wim@fluendo.com>
613         * gst/base/gstbasesink.c: (gst_base_sink_class_init),
614         (gst_base_sink_set_property), (gst_base_sink_get_property),
615         (gst_base_sink_do_sync):
616         * gst/base/gstbasesink.h:
617         Added sync property to basesink to disable clock sync.
619 2005-09-20  Andy Wingo  <wingo@pobox.com>
621         * gst/gstelementfactory.c (gst_element_factory_create): Avoid
622         eating the caller's refcount.
624         * gst/gstobject.h (GST_OBJECT_REFCOUNT) 
625         (GST_OBJECT_REFCOUNT_VALUE): Conditionally fondle the right
626         refcount.
628         * gst/gstconfig.h.in (GST_HAVE_GLIB_2_8):
629         * configure.ac (GST_HAVE_GLIB_2_8_DEFINE): Make the availability
630         of GLib 2.8 public, so we can know which refcount to check in
631         tests.
633         * gst/gstobject.c: Use the GST_HAVE_GLIB_2_8 define.
634         (gst_object_init): Only set the gst refcount if we're going ahead
635         with the refcount hack.
637 2005-09-20  Stefan Kost  <ensonic@users.sf.net>
639         * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
640         * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
641           more leaks plumbed, added more debug-logging
642         * gst/gstmacros.h:
643           whitespace fix
645 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
647         * gst/gstmessage.c:
648           remove include of gstmemchunk.h
650 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
652         * gst/gstclock.c: (_gst_clock_id_free):
653           Commit from the Political Party For More Atomic CVS Commits,
654           so that people don't waste too much of their day fishing
655           out obvious leaks out of massive commits.
656           Oh, and fix a pretty damn obvious leak in the memchunk
657           removal code.
659 2005-09-20  Stefan Kost  <ensonic@users.sf.net>
661         * check/Makefile.am:
662         * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
663           plug mem-leak, re-add to valgrindable tests
665 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
667         * gst/gstplugin.h:
668           unbreak the build for those who have chronic arthritis
669           and typing "make check" is just too taxing on the hands
671 2005-09-20  Andy Wingo  <wingo@pobox.com>
673         * gst/gst.h: Re-add marshal to gst.h's include list -- if we
674         really want it out, you should fix plugins at the same time.
676 2005-09-19  Stefan Kost  <ensonic@users.sf.net>
678         * configure.ac:
679         * docs/gst/gstreamer-sections.txt:
680         * gst/gstobject.c:
681           added missing symbols to api docs
682           disable ref-count hack if we have glib >= 2.8
684 2005-09-19  David Schleef  <ds@schleef.org>
686         * docs/gst/Makefile.am: Ignore a few more internal headers
687         * docs/gst/gstreamer-docs.sgml: Remove old sections
688         * docs/gst/gstreamer-sections.txt: Remove old sections
689         * docs/gst/tmpl/gstobject.sgml: update
690         * docs/gst/tmpl/gstplugin.sgml: update
691         * docs/gst/tmpl/gstpluginfeature.sgml: update
692         * docs/random/ds/0.9-suggested-changes: update.
693         * gst/Makefile.am: remove memchunk and trashstack, since they're
694           not used.
695         * gst/gst.c: (gst_deinit): rename gst_registry_deinit to _cleanup
696         * gst/gst.h: don't include some headers
697         * gst/gstchildproxy.c: add gstmarshal.h
698         * gst/gstclock.c: Don't use memchunks
699         * gst/gstminiobject.c: Add some docs
700         * gst/gstobject.c: remove DESTROYED flag, since it's redundant
701         * gst/gstobject.h: same
702         * gst/gstplugin.c: include gstmacros.h
703         * gst/gstplugin.h: don't include gstmacros.h, since it's private
704         * gst/gstquery.c: don't use memchunks
705         * gst/gstregistry.c: rename gst_registry_deinit()
706         * gst/gstregistry.h: same
708 2005-09-19  David Schleef  <ds@schleef.org>
710         * docs/libs/gstreamer-libs-docs.sgml: Remove docs for getbits
711         * docs/libs/gstreamer-libs-sections.txt:
712         * docs/libs/tmpl/gstgetbits.sgml:
713         * docs/libs/tmpl/gstputbits.sgml:
715 2005-09-19  Tim-Philipp M??ller  <tim at centricular dot net>
717         * win32/gstenumtypes.c:
718         * win32/gstenumtypes.h:
719           Update.
721 2005-09-19  Wim Taymans  <wim@fluendo.com>
723         * gst/gstpipeline.c: (do_pipeline_seek), (gst_pipeline_send_event):
724         Automatically PAUSE and RESUME a pipeline when a flushing seek
725         is performed.
727 2005-09-19  Andy Wingo  <wingo@pobox.com>
729         * gst/gstregistry.h: Spacing fixen.
731 2005-09-19  Wim Taymans  <wim@fluendo.com>
733         * gst/base/gstbasesrc.c: (gst_base_src_change_state):
734         Handle state change failure more correctly.
736 2005-09-19  Thomas Vander Stichele  <thomas at apestaart dot org>
738         * check/Makefile.am:
739         * check/pipelines/cleanup.c: (run_pipeline):
740         * check/pipelines/simple_launch_lines.c: (run_pipeline),
741         (GST_START_TEST):
742           enable cleanup again after fixing the leak
743         * docs/README:
744           some more info on docs
746 2005-09-19  Thomas Vander Stichele  <thomas at apestaart dot org>
748         * check/Makefile.am:
749           re-enable tests now that leaks are plugged
750         * check/gst/gst.c:
751         * check/gst/gstbin.c:
752         * check/gst/gstpipeline.c:
753           add some more tests while fixing leaks
754         * common/check.mak:
755           make sure binaries are uptodate when valgrinding/gdbing
756         * gst/gst.c:
757         * gst/gstelementfactory.c:
758           remove a ref too many, and add a FIXME for when we get
759           round to disposing of classes
760         * gst/gstplugin.c:
761           fix the refcounting when loading a plugin from a file and
762           the code pretends that the pointer is the same even though
763           of course it can change
764         * gst/gstpluginfeature.c:
765           unref plugins marked cached (a bit confusing as a name)
766           as the docs state should be done
767           various doc additions to explain refcounting
768         * gst/gstregistry.c:
769         * gst/gstregistryxml.c:
770           debugging
772 2005-09-19  Wim Taymans  <wim@fluendo.com>
774         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
775         * check/gst/gstbus.c: (message_func_eos), (message_func_app),
776         (send_messages), (GST_START_TEST), (gstbus_suite):
777         * check/gst/gstpipeline.c: (GST_START_TEST):
778         * check/pipelines/cleanup.c: (run_pipeline):
779         * check/pipelines/simple_launch_lines.c: (run_pipeline),
780         (GST_START_TEST):
781         * gst/gstbus.c: (gst_bus_have_pending), (gst_bus_source_prepare),
782         (gst_bus_source_check), (gst_bus_source_dispatch),
783         (gst_bus_create_watch), (gst_bus_add_watch_full),
784         (gst_bus_add_watch), (poll_func), (poll_timeout), (gst_bus_poll):
785         * gst/gstbus.h:
786         * tools/gst-launch.c: (event_loop):
787         * tools/gst-md5sum.c: (event_loop):
788         GstBusHandler -> GstBusFunc, return value has the same meaning as
789         any other GSource (FALSE == remove source).
790         _add_watch() and _add_watch_full() now take a MessageType mask to
791         only handle specific types of messages.
792         _poll() returns the GstMessage instead of the message type to avoid
793         race conditions.
794         _have_pending() takes a MessageType mask now too.
795         Added testsuite for multiple bus watches.
796         Fix testsuites and applications for new bus API.
798 2005-09-19  Thomas Vander Stichele  <thomas at apestaart dot org>
800         * check/Makefile.am:
801           mark a bunch of the tests as to fix until we fix them
803 2005-09-18  Thomas Vander Stichele  <thomas at apestaart dot org>
805         * common/check.mak:
806           use GST_PLUGIN settings for valgrind tests as well, so we're
807           valgrinding the correct thing
808         * gst/gst.c: (init_post):
809           plug another leak
811 2005-09-18  Thomas Vander Stichele  <thomas at apestaart dot org>
813         * gst/gst.c: (init_post), (gst_deinit):
814         * gst/gstelementfactory.c: (gst_element_factory_class_init),
815         (gst_element_factory_finalize), (gst_element_factory_cleanup):
816         * gst/gstindex.c: (gst_index_factory_class_init),
817         (gst_index_factory_finalize):
818         * gst/gstobject.c: (gst_object_dispose):
819         * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
820         (gst_plugin_load_file), (gst_plugin_desc_free):
821         * gst/gstpluginfeature.c: (gst_plugin_feature_class_init),
822         (gst_plugin_feature_finalize):
823         * gst/gstregistry.c: (gst_registry_class_init),
824         (gst_registry_init), (gst_registry_finalize),
825         (gst_registry_get_default), (gst_registry_deinit):
826         * gst/gstregistry.h:
827         * gst/gstregistryxml.c: (load_feature), (load_plugin):
828           various cleanups and memleak plugging.  make valgrind is happy now.
830 2005-09-18  Thomas Vander Stichele  <thomas at apestaart dot org>
832         * common/check.mak:
833           add a check-valgrind target
835 2005-09-18  David Schleef  <ds@schleef.org>
837         * tools/gst-inspect.c: Revert the GOption code.
839 2005-09-17  David Schleef  <ds@schleef.org>
841         * check/Makefile.am: Fix environment variables.
842         * check/gst/gstplugin.c: Fix for API changes.
843         * tools/gst-inspect.c: Fix for API changes.
844         * tools/gst-xmlinspect.c: Fix for API changes.
845         * gst/gstelementfactory.c:
846         * gst/gstplugin.c:
847         * gst/gstplugin.h:
848         * gst/gstpluginfeature.c:
849         * gst/gstpluginfeature.h:
850         * gst/gstregistry.c:
851         * gst/gstregistry.h:
852         * gst/gstregistryxml.c:
853         * gst/gsttypefind.c:
854         * gst/gsttypefindfactory.c:
855         * gst/indexers/gstfileindex.c:
856         * gst/indexers/gstmemindex.c:
857         * gst/schedulers/Makefile.am:
858           Change registry to keep track of both plugins and features,
859           removing the feature tracking from plugins themselves.
861 2005-09-16  Thomas Vander Stichele  <thomas at apestaart dot org>
863         * check/Makefile.am:
864         * tools/gst-register.1.in:
865           remove gst-register
867 2005-09-15  David Schleef  <ds@schleef.org>
869         * check/gst/gstplugin.c:
870         * gst/gstelementfactory.c:
871         * gst/gstplugin.c:
872         * gst/gstpluginfeature.c:
873         * gst/gstregistry.c:
874           Getting tired of debugging.  Disabled all the unreffing of
875           plugins and features, which fixes the segfaults, but of
876           course leaks like crazy.  At least playbin works.
878 2005-09-15  David Schleef  <ds@schleef.org>
880         * check/gst/gstplugin.c: (register_check_elements),
881         (GST_START_TEST), (peek), (suggest), (gst_plugin_suite):
882         More testing
883         * gst/elements/gsttypefindelement.c: Fix refcounting.
884         * gst/gsttypefind.c:
885         * gst/gsttypefindfactory.c:
886         * gst/gsttypefindfactory.h:
888 2005-09-15  David Schleef  <ds@schleef.org>
890         * gst/gstindex.c: get refcounting correct.
891         * gst/gstregistry.c: Handle the case where a feature/plugin is
892           not found.
894 2005-09-15  David Schleef  <ds@schleef.org>
896         * check/Makefile.am:
897         * check/gst/gstplugin.c: Add test
898         * gst/gstplugin.c: Fix problems noticed by testsuite
899         * gst/gstplugin.h:
900         * gst/gstregistry.c: 
901         * gst/gstregistry.h:
903 2005-09-15  David Schleef  <ds@schleef.org>
905         * gst/gstplugin.c: Implement semi-decent recounting and locking
906           in plugins and plugin features.
907         * gst/gstplugin.h:
908         * gst/gstpluginfeature.c:
909         * gst/gstpluginfeature.h:
910         * gst/gstregistry.c:
912 2005-09-15  Michael Smith <msmith@fluendo.com>
914         * gst/gstregistry.c: (gst_registry_get_feature_list):
915           Implement this. Makes oggdemux work; decodebin still broken.
917 2005-09-14  David Schleef  <ds@schleef.org>
919         * configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
920           #316076)
921         * gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
922         * gst/check/Makefile.am:
923         * libs/gst/controller/Makefile.am:
924         * libs/gst/dataprotocol/Makefile.am:
926 2005-09-14  David Schleef  <ds@schleef.org>
928         * configure.ac: Remove getbits library.  Nothing uses it, and
929           it should be in something like liboil if someone did want
930           to use it.
931         * libs/gst/Makefile.am:
932         * libs/gst/getbits/Makefile.am:
933         * libs/gst/getbits/gbtest.c:
934         * libs/gst/getbits/getbits.c:
935         * libs/gst/getbits/getbits.h:
936         * libs/gst/getbits/gstgetbits_generic.c:
937         * libs/gst/getbits/gstgetbits_i386.s:
938         * libs/gst/getbits/gstgetbits_inl.h:
940 2005-09-14  David Schleef  <ds@schleef.org>
942         * gst/Makefile.am: Dist glib-compat.h
944 2005-09-14  David Schleef  <ds@schleef.org>
946         * configure.ac: Remove gst/registries, since it's no longer used.
947         * gst/registries/Makefile.am:
948         * gst/registries/gstlibxmlregistry.c:
949         * gst/registries/gstlibxmlregistry.h:
950         * gst/registries/gstxmlregistry.c:
951         * gst/registries/gstxmlregistry.h:
952         * gst/registries/registrytest.c:
954 2005-09-14  David Schleef  <ds@schleef.org>
956         * gst/glib-compat.h:
957         * gst/gstregistryxml.c:
958           Convergence is near.  Seriously.
960 2005-09-14  David Schleef  <ds@schleef.org>
962         * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
963         * gst/glib-compat.h:
964           Attempt #4 to appease the buildbots.
966 2005-09-14  David Schleef  <ds@schleef.org>
968         * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
969           Attempt #3.
971 2005-09-14  David Schleef  <ds@schleef.org>
973         * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
974         Attempt #2.
976 2005-09-14  David Schleef  <ds@schleef.org>
978         * gst/Makefile.am: Oh yeah, libgstreamer.so needs to contain
979           the new functions.
981 2005-09-14  David Schleef  <ds@schleef.org>
983         * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
984         * gst/glib-compat.h: Add some functions that are in newer versions
985           of glib than we care to require.
986         * gst/gstregistryxml.c: Use them.
988 2005-09-14  David Schleef  <ds@schleef.org>
990         * po/POTFILES.in: remove gst-register.c
992 2005-09-14  David Schleef  <ds@schleef.org>
994         * docs/gst/gstreamer-docs.sgml:
995         * docs/gst/gstreamer-sections.txt:
996         * docs/gst/gstreamer.types:
997         * docs/gst/tmpl/gstelement.sgml:
998         * docs/gst/tmpl/gstplugin.sgml:
999         * docs/gst/tmpl/gstpluginfeature.sgml:
1000           Documentation updates for registry changes.
1002 2005-09-14  David Schleef  <ds@schleef.org>
1004         * gst/gstregistryxml.c: Copy g_mkdir_with_parent() from glib,
1005           because we don't require glib-2.8.
1007 2005-09-14  David Schleef  <ds@schleef.org>
1009         * gst/gstregistryxml.c: Added.  Essentially moved out of the
1010           registries directory.
1012 2005-09-14  David Schleef  <ds@schleef.org>
1014         * check/Makefile.am:
1015         * check/generic/states.c:
1016         * gst/Makefile.am:
1017         * gst/gst.c:
1018         * gst/gst.h:
1019         * gst/gst_private.h:
1020         * gst/gstelementfactory.c:
1021         * gst/gstindex.c:
1022         * gst/gstinfo.c:
1023         * gst/gstplugin.c:
1024         * gst/gstplugin.h:
1025         * gst/gstpluginfeature.c:
1026         * gst/gstpluginfeature.h:
1027         * gst/gstregistry.c:
1028         * gst/gstregistry.h:
1029         * gst/gstregistrypool.c: remove
1030         * gst/gstregistrypool.h: remove
1031         * gst/gsttypefind.c:
1032         * gst/gsttypefindfactory.c:
1033         * gst/gsturi.c:
1034         * tools/Makefile.am:
1035         * tools/gst-compprep.c:
1036         * tools/gst-inspect.c:
1037         * tools/gst-register.c: remove
1038         * tools/gst-xmlinspect.c:
1039           Registry rewrite.  Changes registry from being a file created
1040           by a tool into a simple cache file created automatically by 
1041           libgstreamer.  Removed gst-register (because it's no longer
1042           needed).  Remove registry pools, because we only have one
1043           registry implementation (XML).  Fix up other subsystems as
1044           necessary.
1046 2005-09-13  Michael Smith <msmith@fluendo.com>
1048         * gst/gstconfig.h.in:
1049           Don't Use windows linking attributes for MinGW. Fixes #316157
1051 2005-09-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1053         * gst/gstutils.c: (set_state_async_thread_func),
1054         (gst_element_set_state_async):
1055           Apparently people think it's better if this function doesn't
1056           try to set the state to whatever state was asked for on the first
1057           call to this function for any object.  Seriously.
1059 2005-09-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1061         * check/gst/gstpipeline.c: (GST_START_TEST):
1062         * docs/gst/gstreamer-sections.txt:
1063         * gst/gstutils.c: (set_state_async_thread_func),
1064         (gst_element_set_state_async):
1065         * gst/gstutils.h:
1066           add a "gst_element_set_state_async" method that
1067           sets the state and starts a thread to make sure the state
1068           change completes as best as it can
1070 2005-09-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1072         * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
1073           codify design+behaviour in testsuite after discussion
1075 2005-09-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1077         * docs/gst/tmpl/gstelement.sgml:
1078         * docs/manual/appendix-quotes.xml:
1079           add a quote
1080         * gst/gstelement.c: (gst_element_set_state):
1081           add some debug
1083 2005-09-12  Jan Schmidt  <thaytan@mad.scientist.com>
1085         * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
1086         (gst_base_transform_prepare_output_buf),
1087         (gst_base_transform_handle_buffer):
1088         * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip),
1089         (gst_capsfilter_prepare_buf):
1090           Remove the requirement for sub-classes to call the parent
1091           implementation of prepare_output_buffer with a wrapper function.
1092           
1093         * gst/gsttaglist.h:
1094         * gst/gsttagsetter.h:
1095           Fix #define wrapper
1097 2005-09-11  Stefan Kost  <ensonic@users.sf.net>
1099         * docs/gst/gstreamer-sections.txt:
1100           more doc cleanups
1102 2005-09-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1104         * docs/gst/gstreamer-sections.txt:
1105         * docs/gst/tmpl/gstelement.sgml:
1106         * docs/gst/tmpl/gstplugin.sgml:
1107         * gst/gstminiobject.c:
1108         * gst/gstvalue.h:
1109           docs now stop throwing warnings
1111 2005-09-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1113         * docs/gst/gstreamer-sections.txt:
1114         * docs/gst/gstreamer.types:
1115         * docs/gst/tmpl/gstpad.sgml:
1116         * docs/gst/tmpl/gsttypes.sgml:
1117         * gst/base/gstadapter.h:
1118         * gst/base/gstbasesink.h:
1119         * gst/base/gstbasesrc.h:
1120         * gst/gstbin.h:
1121         * gst/gstbuffer.h:
1122         * gst/gstbus.h:
1123         * gst/gstcaps.h:
1124         * gst/gstclock.h:
1125         * gst/gstelement.h:
1126         * gst/gstevent.h:
1127         * gst/gstmessage.h:
1128         * gst/gstpad.h:
1129         * gst/gststructure.c:
1130         * gst/registries/gstlibxmlregistry.h:
1131           various documentation fixes
1133 2005-09-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1135         * docs/gst/gstreamer-sections.txt:
1136         * docs/gst/tmpl/gstvalue.sgml:
1137           rearrange gstvalue section
1138         * gst/gstutils.c: (gst_element_state_get_name):
1139           NONE -> VOID
1140         * gst/gstvalue.c: (_gst_value_initialize):
1141         * gst/gstvalue.h:
1142           doc updates
1144 2005-09-10  Jan Schmidt  <thaytan@mad.scientist.com>
1146         * check/gst-libs/controller.c:
1147           Header include fix.
1148         * gst/base/gstbasetransform.c:
1149         (gst_base_transform_default_prepare_buf),
1150         (gst_base_transform_handle_buffer):
1151         * gst/base/gstbasetransform.h:
1152           Some more basetransform changes and fixes to enable sub-classes
1153           that modify buffer metadata only.
1154         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
1155         (gst_capsfilter_init), (gst_capsfilter_transform_ip),
1156         (gst_capsfilter_prepare_buf):
1157           If the output pad has fixed allowed caps and input buffers 
1158           don't have any, set the fixed caps on outgoing buffers.
1160 2005-09-09  Jan Schmidt  <thaytan@mad.scientist.com>
1161         * check/elements/identity.c: (GST_START_TEST):
1162           Make the error a little clearer when the test fails because
1163           identity made a copy of the buffer.
1164         * docs/gst/gstreamer-sections.txt:
1165           New symbols in gstbasetransform.h
1166         * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
1167         (gst_base_transform_init), (gst_base_transform_transform_size),
1168         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1169         (gst_base_transform_default_prepare_buf),
1170         (gst_base_transform_get_unit_size),
1171         (gst_base_transform_buffer_alloc),
1172         (gst_base_transform_handle_buffer), (gst_base_transform_chain),
1173         (gst_base_transform_change_state),
1174         (gst_base_transform_set_passthrough),
1175         (gst_base_transform_set_in_place),
1176         (gst_base_transform_is_in_place):
1177         * gst/base/gstbasetransform.h:
1178           Change BaseTransform to separate in_place operate from same_caps
1179           output. in_place implies that the element can perform the transform
1180           on incoming buffers in-place, even if the caps on the output are
1181           different.
1182           Sub-class elements can now implement special buffer allocation
1183           methods for outgoing buffers if they wish to.
1184           Big documentation addition.
1185         * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip):
1186         * gst/elements/gstelements.c:
1187           Changes for basetransform modifications.
1188         * gst/elements/Makefile.am:
1189         * gst/elements/gstfdsrc.c: (gst_fdsrc_init), (gst_fdsrc_create):
1190           Compile fix. Extra debug output.
1192 2005-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1194         * check/gst/gstpad.c: (GST_START_TEST), (name_is_valid),
1195         (gst_pad_suite):
1196           add tests for valid pad naming
1197         * gst/check/gstcheck.c: (gst_check_log_message_func),
1198         (gst_check_log_critical_func):
1199           add ASSERT_WARNING
1200           remove printing of code, it is fragile when the code contains
1201           % and the line number is enough info
1202         * gst/check/gstcheck.h:
1203         * gst/gstpad.c: (gst_pad_template_new):
1204           fix memleaks
1206 2005-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1208         * configure.ac:
1209           say what CHECK flags we use
1210         * docs/libs/gstreamer-libs.types:
1211         * libs/gst/controller/Makefile.am:
1212         * libs/gst/controller/gst-controller.c:
1213         * libs/gst/controller/gst-controller.h:
1214         * libs/gst/controller/gst-helper.c:
1215         * libs/gst/controller/gst-interpolation.c:
1216         * libs/gst/controller/gstcontroller.c:
1217         * libs/gst/controller/gsthelper.c:
1218         * libs/gst/controller/gstinterpolation.c:
1219         * tools/gst-inspect.c: (print_plugin_info):
1220           we don't use dashes in header names
1222 2005-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1224         * check/Makefile.am:
1225         * check/gst/.cvsignore:
1226         * check/gst/gstpipeline.c: (pop_messages), (GST_START_TEST),
1227         (gst_pipeline_suite), (main):
1228           adding a test for pipelines and state changes
1229         * gst/gstutils.c: (get_state_func):
1230           add some debugging
1231         * gstreamer.spec.in:
1232           fix up spec file
1234 2005-09-08  Michael Smith <msmith@fluendo.com>
1236         * gst/elements/gstfilesrc.c: (gst_file_src_map_region),
1237         (gst_file_src_map_small_region), (gst_file_src_create_mmap),
1238         (gst_file_src_is_seekable), (gst_file_src_get_size),
1239         (gst_file_src_start):
1240         * gst/elements/gstfilesrc.h:
1241           Various fixes for unseekable, unmmapable, and non-normal files, so
1242           that fallback to read() rather than mmap() works.
1243         * gst/gstevent.c: (gst_event_new_newsegment):
1244           Allow newsegment events with segment_start == segment_end, as will
1245           correctly happen if you use filesrc on a zero-size file, for
1246           example.
1248 2005-09-07  Jan Schmidt  <thaytan@mad.scientist.com>
1250         * gst/gstplugin.c: (gst_plugin_load_file):
1251           Call g_module_close when we don't load the module
1253         * gst/registries/gstlibxmlregistry.c:
1254         (gst_xml_registry_get_property):
1255           Port leak fix from 0.8
1257 2005-09-07  Stefan Kost  <ensonic@users.sf.net>
1259         * docs/gst/gstreamer-docs.sgml:
1260         * docs/gst/tmpl/.cvsignore:
1261         * docs/gst/tmpl/gsttrace.sgml:
1262         * docs/gst/tmpl/gsttrashstack.sgml:
1263         * gst/Makefile.am:
1264         * gst/gst.h:
1265         * gst/gstelement.h:
1266         * gst/gstevent.h:
1267         * gst/gstmessage.c:
1268         * gst/gstmessage.h:
1269         * gst/gsttag.c:
1270         * gst/gsttag.h:
1271         * gst/gsttaginterface.c:
1272         * gst/gsttaginterface.h:
1273         * gst/gsttaglist.c:
1274         * gst/gsttaglist.h:
1275         * gst/gsttagsetter.c:
1276         * gst/gsttagsetter.h:
1277         * gst/gsttrace.c:
1278         * gst/gsttrace.h:
1279         * gst/gsttrashstack.c:
1280           renamed gsttag -> gsttaglist, gsttaginterface -> gsttagsetter
1281           inlined docs for gsttrace, gsttrashstack
1283 2005-09-07  Stefan Kost  <ensonic@users.sf.net>
1285         * gst/Makefile.am:
1286         * gst/elements/gstbufferstore.h:
1287         * gst/elements/gsttypefindelement.c:
1288         * gst/elements/gsttypefindelement.h:
1289         * gst/gst.h:
1290         * gst/gsttypefind.c:
1291         * gst/gsttypefind.h:
1292         * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type),
1293         (gst_type_find_factory_class_init), (gst_type_find_factory_init),
1294         (gst_type_find_factory_dispose),
1295         (gst_type_find_factory_unload_thyself),
1296         (gst_type_find_load_plugin), (gst_type_find_factory_get_list),
1297         (gst_type_find_factory_get_caps),
1298         (gst_type_find_factory_get_extensions),
1299         (gst_type_find_factory_call_function):
1300         * gst/gsttypefindfactory.h:
1301         * gst/registries/gstlibxmlregistry.c:
1302         * gst/registries/gstxmlregistry.c:
1303           splitted gsttypefind into gsttypefind, gsttypefindfactory
1305 2005-09-07  Andy Wingo  <wingo@pobox.com>
1307         * gst/base/gstbasesink.c (gst_base_sink_activate_pull): Fix a race
1308         condition whereby the pad's task function is entered before the
1309         pad_mode variable was set.
1311 2005-09-07  Jan Schmidt  <thaytan@mad.scientist.com>
1313         * gst/gstpad.c: (gst_pad_alloc_buffer):
1314           Catch misbehaving pad_alloc functions that don't
1315           set up caps and do it for them.
1317 2005-09-07  Stefan Kost  <ensonic@users.sf.net>
1319         * check/pipelines/simple_launch_lines.c: (run_pipeline):
1320           test for pipe!=NULL
1321         * docs/gst/tmpl/.cvsignore:
1322         * docs/gst/tmpl/gstmemchunk.sgml:
1323         * docs/gst/tmpl/gstparse.sgml:
1324         * docs/gst/tmpl/gsttaglist.sgml:
1325         * docs/gst/tmpl/gsttagsetter.sgml:
1326         * docs/gst/tmpl/gsttypefind.sgml:
1327         * docs/gst/tmpl/gsttypefindfactory.sgml:
1328         * gst/gstmemchunk.c:
1329         * gst/gstparse.c:
1330         * gst/gsttag.c:
1331         * gst/gsttaginterface.c:
1332         * gst/gsttypefind.c:
1333         * gst/gsttypefind.h:
1334           inlined more docs
1336 === release 0.9.2 ===
1338 2005-09-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1340         * NEWS:
1341         * RELEASE:
1342         * configure.ac:
1343           releasing 0.9.2, "South"
1345 2005-09-05  Andy Wingo  <wingo@pobox.com>
1347         * gst/registries/gstxmlregistry.h:
1348         * gst/registries/gstxmlregistry.c: Um... resurrect...
1349         
1350         * gst/registries/gstxmlregistry.h:
1351         * gst/registries/gstxmlregistry.c: and update to newer API.
1352         Incidentally they should be a bit faster now that they don't have
1353         to parse the caps.
1354         
1355 2005-09-05  Andy Wingo  <wingo@pobox.com>
1357         * gst/registries/gstxmlregistry.h:
1358         * gst/registries/gstxmlregistry.c: Remove from CVS, they were
1359         replaced by the libxml registry a while back
1361 2005-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1363         * docs/gst/tmpl/gstplugin.sgml:
1364         * gst/elements/gstelements.c:
1365         * gst/gst.c:
1366         * gst/gstplugin.c: (gst_plugin_register_func),
1367         (gst_plugin_desc_copy), (gst_plugin_desc_free),
1368         (gst_plugin_get_source):
1369         * gst/gstplugin.h:
1370         * gst/registries/gstlibxmlregistry.c: (load_plugin),
1371         (gst_xml_registry_save_plugin):
1372         * gst/registries/gstxmlregistry.c: (gst_xml_registry_parse_plugin),
1373         (gst_xml_registry_save_plugin):
1374         * tools/gst-inspect.c: (print_plugin_info):
1375           add a "source" plugin description field, to represent the source
1376           module this plugin is a part of.  By default GST_PLUGIN_DEFINE
1377           will set it to PACKAGE, which is automake's idea of the name of
1378           the source project.
1380 2005-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1382         * Makefile.am:
1383         * autogen.sh:
1384         * configure.ac:
1385         * docs/Makefile.am:
1386         * docs/faq/Makefile.am:
1387         * docs/gst/tmpl/gstelement.sgml:
1388         * docs/gst/tmpl/gsttypes.sgml:
1389         * docs/htmlinstall.mak:
1390         * docs/manual/Makefile.am:
1391         * docs/pwg/Makefile.am:
1392           reorganize doc build a little
1393           split out docbook and gtk-doc stuff
1394           have two separate --enable's and enable them through autogen
1395           but disable by default in configure (to be similar to other
1396           projects)
1397         * gstreamer.spec.in:
1398           clean up docs install
1399         * po/af.po:
1400         * po/az.po:
1401         * po/ca.po:
1402         * po/cs.po:
1403         * po/de.po:
1404         * po/en_GB.po:
1405         * po/fr.po:
1406         * po/it.po:
1407         * po/nb.po:
1408         * po/nl.po:
1409         * po/ru.po:
1410         * po/sq.po:
1411         * po/sr.po:
1412         * po/sv.po:
1413         * po/tr.po:
1414         * po/uk.po:
1415         * po/vi.po:
1416           translation updates
1418 2005-09-03  Tim-Philipp M??ller  <tim at centricular dot net>
1420         * gst/base/gstbasesink.c: (gst_base_sink_pad_buffer_alloc):
1421           Add comment.
1422           
1423         * gst/elements/gstfakesink.c: (gst_fake_sink_init),
1424         (gst_fake_sink_change_state):
1425           Make state change function thread-safe.
1426           
1427         * gst/gstpad.c: (gst_pad_alloc_buffer):
1428           Set offset on generic buffer allocated by fallback.
1430 2005-09-03  Stefan Kost  <ensonic@users.sf.net>
1432         * docs/gst/gstreamer-sections.txt:
1433         * docs/gst/tmpl/gstelement.sgml:
1434         * gst/gstpad.c:
1435         * libs/gst/controller/gst-controller.c:
1436         (gst_controlled_property_set_interpolation_mode),
1437         (gst_controlled_property_new),
1438         (gst_controller_find_controlled_property):
1439          run the wingo-magic script against the docs
1441 2005-09-02  Stefan Kost  <ensonic@users.sf.net>
1443         * docs/gst/gstreamer-docs.sgml:
1444         * docs/gst/gstreamer-sections.txt:
1445         * docs/gst/tmpl/.cvsignore:
1446         * docs/gst/tmpl/gstelementdetails.sgml:
1447         * docs/gst/tmpl/gstelementfactory.sgml:
1448         * gst/gst.c:
1449         * gst/gstbus.c:
1450         * gst/gstelementfactory.c:
1451         * gst/gstelementfactory.h:
1452           merged elementdetails docs into elementfactory docs
1453           inlined both
1455 2005-09-02  Andy Wingo  <wingo@pobox.com>
1457         * gst/gstelement.h: Add magical pixie dust to make glib-mkenums
1458         consider this enum an enum and not a flags.
1460 2005-09-02  Stefan Kost  <ensonic@users.sf.net>
1462         * docs/gst/gstreamer-docs.sgml:
1463         * docs/gst/tmpl/.cvsignore:
1464         * docs/gst/tmpl/gstghostpad.sgml:
1465         * docs/gst/tmpl/gstiterator.sgml:
1466         * docs/gst/tmpl/gstmacros.sgml:
1467         * docs/gst/tmpl/gstrealpad.sgml:
1468         * docs/gst/tmpl/gstregistry.sgml:
1469         * docs/gst/tmpl/gstregistrypool.sgml:
1470         * docs/gst/tmpl/gststructure.sgml:
1471         * docs/gst/tmpl/gstsystemclock.sgml:
1472         * docs/gst/tmpl/gsttrace.sgml:
1473         * gst/gstghostpad.c:
1474         * gst/gstmacros.h:
1475         * gst/gstmemchunk.c:
1476         * gst/gstmemchunk.h:
1477         * gst/gstqueue.c:
1478         * gst/gstregistry.c:
1479         * gst/gstregistrypool.c:
1480         * gst/gststructure.c:
1481         * gst/gstsystemclock.c:
1482           more docs inlined
1484 2005-09-02  Andy Wingo  <wingo@pobox.com>
1486         * gst/gstelement.h (GstState): Renamed from GstElementState,
1487         changed to be a normal enum instead of flags.
1488         (GstStateChangeReturn): Renamed from GstElementStateReturn, names
1489         munged to be GST_STATE_CHANGE_*.
1490         (GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
1491         work with the new state representation.
1492         (GstStateChange): New enumeration of possible state transitions.
1493         Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
1494         (GstElementClass::change_state): Pass the GstStateChange along as
1495         an argument. Helps language bindings, so they don't have to use
1496         tricky lock-needing macros like GST_STATE_CHANGE ().
1498         * scripts/update-states (file): New script. Run it on a file to
1499         update it for state naming and API changes. Updates files in
1500         place.
1502         * All files updated for the new API.
1504 2005-09-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1506         * gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
1507         * gst/gstutils.c: (gst_util_set_value_from_string),
1508         (gst_util_set_object_arg):
1509           fix a bunch of unchecked return values
1510         * tools/gst-complete.c: (main):
1511         * gstreamer.spec.in:
1512           clean up a little
1514 2005-09-01  Wim Taymans  <wim@fluendo.com>
1516         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1517         (gst_base_sink_event), (gst_base_sink_do_sync),
1518         (gst_base_sink_handle_event):
1519         * gst/base/gstbasesink.h:
1520         Handle newsegments more correctly.
1522         * gst/gstbus.c:
1523         Fix docs.
1525         * gst/gstevent.c: (gst_event_new_newsegment):
1526         A newsegment cannot have a start_time of -1
1528 2005-09-01  Tim-Philipp M??ller  <tim at centricular dot net>
1530         * win32/gstenumtypes.c:
1531         * win32/gstenumtypes.h:
1532           Update
1534 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
1536         * libs/gst/controller/gst-controller.c:
1537         (gst_controlled_property_set_interpolation_mode),
1538         (gst_controlled_property_new):
1539          fixed boolean again
1541 2005-08-31  Thomas Vander Stichele  <thomas at apestaart dot org>
1543         * docs/faq/gst-uninstalled:
1544           add -good
1545         * gst/gstevent.c:
1546         * gst/gstevent.h:
1547           remove wrong docs
1548         * gst/gstutils.c: (gst_element_link_filtered):
1549         * gst/gstutils.h:
1550           add gst_element_link_filtered
1552 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
1554         * docs/gst/gstreamer-docs.sgml:
1555         * docs/gst/gstreamer-sections.txt:
1556         * docs/gst/tmpl/.cvsignore:
1557         * docs/gst/tmpl/gsterror.sgml:
1558         * docs/gst/tmpl/gstfilter.sgml:
1559         * docs/gst/tmpl/gsturihandler.sgml:
1560         * docs/gst/tmpl/gsturitype.sgml:
1561         * docs/gst/tmpl/gstutils.sgml:
1562         * docs/gst/tmpl/gstxml.sgml:
1563         * gst/gsterror.c:
1564         * gst/gsterror.h:
1565         * gst/gstfilter.c:
1566         * gst/gsturi.c:
1567         * gst/gsturitype.c:
1568         * gst/gstutils.c:
1569         * gst/gstxml.c:
1570           inlined more docs, fixed double id-ref
1572 2005-08-31  Wim Taymans  <wim@fluendo.com>
1574         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
1575         (gst_base_transform_handle_buffer):
1576         Passthrough elements don't need the caps as they don't care.
1578 2005-08-31  Wim Taymans  <wim@fluendo.com>
1580         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
1581         (gst_base_transform_handle_buffer), (gst_base_transform_chain):
1582         Don't leak refcounts on buffers.
1584 2005-08-31  Wim Taymans  <wim@fluendo.com>
1586         * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
1587         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
1588         (gst_base_transform_chain), (gst_base_transform_change_state):
1589         * gst/base/gstbasetransform.h:
1590         Handle the case where we are not negotiated more gracefully.
1592 2005-08-31  Tim-Philipp M??ller  <tim at centricular dot net>
1594         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
1595         (gst_file_src_map_region):
1596           Set READONLY flag on mmap'ed buffers, otherwise
1597           gst_buffer_make_writable() won't work properly (#314708).
1599 2005-08-31  Wim Taymans  <wim@fluendo.com>
1601         * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
1602         passthrough elements can even do inplace on non writable
1603         buffers (as they don't touch them).
1605 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
1607         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
1608         (gst_test_mono_source_set_property),
1609         (gst_test_mono_source_class_init), (GST_START_TEST),
1610         (gst_controller_suite):
1611           more tests (hehe I have the most)
1612         * gst/gstbus.c:
1613           describe popping messages whenusing mulltiple sources
1614         * libs/gst/controller/gst-controller.c:
1615         (gst_controlled_property_set_interpolation_mode),
1616         (gst_controlled_property_new):
1617         * libs/gst/controller/gst-controller.h:
1618         * libs/gst/controller/gst-interpolation.c:
1619           implement boolean properties
1621 2005-08-31  Wim Taymans  <wim@fluendo.com>
1623         * gst/gstminiobject.c: (gst_mini_object_ref):
1624         Cannot assert that the refcount has to be positive
1625         since a disposed object can be resurrected.
1627 2005-08-31  Wim Taymans  <wim@fluendo.com>
1629         * gst/gstpad.c: (gst_pad_init):
1630         Revert change, need to first fix badly behaving 
1631         apps.
1633 2005-08-30  Wim Taymans  <wim@fluendo.com>
1635         * check/elements/fakesrc.c: (setup_fakesrc):
1636         * check/elements/identity.c: (setup_identity):
1637         Activate pads before using them.
1639 2005-08-30  Wim Taymans  <wim@fluendo.com>
1641         * gst/base/gstadapter.c: (gst_adapter_flush):
1642         Flushing out 0 bytes is ok for this function.
1644         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1645         no newsegment gives a warning and sets the start/stop to 
1646         invalid.
1648         * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
1649         (gst_base_transform_set_passthrough):
1650         Some debug info.
1652         * gst/gstminiobject.c: (gst_mini_object_ref):
1653         Check refcount here too.
1655         * gst/gstpad.c: (gst_pad_init):
1656         Pads are initially flushing and refusing data.
1658         * gst/gstutils.c: (gst_element_link_pads_filtered):
1659         When adding a capsfilter element make sure it has the
1660         same state as the parent bin.
1662 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
1664         * docs/gst/tmpl/.cvsignore:
1665         * docs/gst/tmpl/gstformat.sgml:
1666         * docs/gst/tmpl/gstversion.sgml:
1667         * gst/gstbus.h:
1668         * gst/gstformat.c:
1669         * gst/gstformat.h:
1670         * gst/gstversion.h.in:
1671           more docs and two more inlined
1673 2005-08-30  Wim Taymans  <wim@fluendo.com>
1675         * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
1676         Don't sync to clock.
1678 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
1680         * docs/gst/gstreamer-sections.txt:
1681           ultral33t func10ns deserve to appear in the docs actually
1682         * docs/gst/tmpl/.cvsignore:
1683         * docs/gst/tmpl/gstcompat.sgml:
1684         * docs/gst/tmpl/gstconfig.sgml:
1685         * gst/check/gstcheck.c:
1686         * gst/gstcompat.h:
1687         * gst/gstconfig.h.in:
1688           inlined more docs
1690 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
1692         * docs/gst/tmpl/.cvsignore:
1693         * docs/gst/tmpl/gstquery.sgml:
1694         * docs/gst/tmpl/gstutils.sgml:
1695         * gst/gstquery.c:
1696         * gst/gstquery.h:
1697           inlined and extended docs
1699 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
1701         * check/gst-libs/controller.c: (GST_START_TEST),
1702         (gst_controller_suite):
1703           more tests
1704         * docs/gst/tmpl/gstutils.sgml:
1705         * docs/libs/gstreamer-libs-sections.txt:
1706         * docs/libs/tmpl/gstdataprotocol.sgml:
1707           include path fixes
1708         * examples/controller/audio-example.c: (main):
1709           controller example works now
1710         * gst/gstclock.h:
1711           doc fixes
1712         * tools/gst-inspect.c: (print_element_properties_info):
1713           show param spec flags
1715 2005-08-29  Andy Wingo  <wingo@pobox.com>
1717         * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
1719 2005-08-28  Andy Wingo  <wingo@pobox.com>
1721         * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
1722         as having two arguments instead of just one. Allows superclasses
1723         to access information on subclasses -- see the terrible for() loop
1724         in gtype.c:g_type_create_instance for the reason why. All callers
1725         changed.
1727 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
1729         * docs/design/part-messages.txt:
1730           update info
1731         * docs/gst/tmpl/.cvsignore:
1732         * docs/gst/tmpl/gstcaps.sgml:
1733         * docs/gst/tmpl/gstclock.sgml:
1734         * gst/gstbus.c:
1735         * gst/gstcaps.c:
1736         * gst/gstcaps.h:
1737         * gst/gstclock.c:
1738         * gst/gstclock.h:
1739         * gst/gstmessage.c:
1740           added descriptions for bus and message
1741           inline caps and clock docs
1743 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
1745         * gst/gstmessage.c:
1746         * gst/gstmessage.h:
1747           doc fixes
1749 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
1751         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
1752           fix div-by-zero
1754 2005-08-26  Andy Wingo  <wingo@pobox.com>
1756         * check/pipelines/simple_launch_lines.c (run_pipeline): Check
1757         element_set_state's return val.
1758         (test_2_elements): Add test that's been disabled for months.
1760         * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
1761         can-activate-pull properties.
1763         * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
1764         can-activate-pull properties. Implement is_seekable so fakesrc can
1765         operate in pull mode.
1767         * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
1768         properties.
1769         (gst_base_sink_activate, gst_base_sink_activate_pull)
1770         (gst_base_sink_activate_push): Make activation mode choosing work.
1771         Cleanups.
1772         (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
1773         is right. Make pull mode work. Post an eos before pausing in pull
1774         mode.
1775         (gst_base_sink_change_state): Pay attention to the core's
1776         change_state() return val.
1777         
1778         * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
1779         has-getrange properties. Cleanups.
1780         
1781         * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
1782         has_getrange and replace with can_activate_pull and
1783         can_activate_push.
1785         * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
1786         locking comments. Remove has_loop, has_chain and replace with
1787         can_activate_pull and can_activate_push.
1789 2005-08-26  Jan Schmidt  <thaytan@mad.scientist.com>
1791         * configure.ac:
1792         * examples/Makefile.am:
1793         * examples/metadata/Makefile.am:
1794         * examples/metadata/read-metadata.c: (message_loop),
1795         (have_pad_handler), (make_pipeline), (print_tag), (main):
1796           Add metadata reading example that loops over a list of filenames,
1797           dumping any tags found.
1799         * gst/gstbus.c: (gst_bus_dispose):
1800         * gst/gstelement.c: (gst_element_dispose):
1801           Release a few potentially-held references in dispose.
1803 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
1805         * docs/gst/tmpl/gstminiobject.sgml:
1806           do *not* add tmpl/*.sgml files to CVS!
1808 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
1810         * libs/gst/bytestream/.cvsignore:
1811         * libs/gst/bytestream/Makefile.am:
1812         * libs/gst/bytestream/adapter.c:
1813         * libs/gst/bytestream/adapter.h:
1814         * libs/gst/bytestream/bytestream.c:
1815         * libs/gst/bytestream/bytestream.h:
1816         * libs/gst/bytestream/filepad.c:
1817         * libs/gst/bytestream/filepad.h:
1818           removing obsolete files
1820 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
1822         * docs/gst/gstreamer-docs.sgml:
1823         * docs/libs/gstreamer-libs-docs.sgml:
1824           disabed additional index entries again, as this makes docs-gen just
1825           slow and they aren't useful yet
1826         * docs/libs/gstreamer-libs-sections.txt:
1827           little -section.txt cleanup for libs
1829 2005-08-26  Thomas Vander Stichele  <thomas at apestaart dot org>
1831         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1832         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
1833           fix up some debugging
1834         (gst_base_transform_get_unit_size),
1835         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
1836         (gst_base_transform_handle_buffer):
1837         * gst/base/gstbasetransform.h:
1838           handle and store timed NEWSEGMENT events so that subclasses that
1839           calculate time by counting samples have a segment_start time they
1840           need to add to their timestamps - see audioresample
1842 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
1844         * gst/gstbin.h:
1845           removed ';' from the end of macro defs
1846         * docs/gst/gstreamer-docs.sgml:
1847         * docs/gst/gstreamer-sections.txt:
1848         * docs/gst/tmpl/.cvsignore:
1849         * gst/gstbus.h:
1850         * gst/gstelement.c: (gst_element_class_init),
1851         (gst_element_set_state), (activate_pads),
1852         (gst_element_save_thyself):
1853         * gst/gstevent.c: (gst_event_new_newsegment):
1854         * gst/gstevent.h:
1855         * gst/gstiterator.c:
1856         * gst/gstiterator.h:
1857         * gst/gstpad.c:
1858         * gst/gstprobe.h:
1859         * gst/gstutils.c: (gst_pad_query_convert):
1860         * gst/gstutils.h:
1861           fixed parameter name mismatches between source, header and docs
1862           added some more docs, resolved the last batch of unused elements in
1863           docs (now someone needs to doc them)
1865 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
1867         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
1868         * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
1869           don't walk through the plugins backwards.  Where is all this
1870           reversed logic coming from ?
1872 2005-08-25  Wim Taymans  <wim@fluendo.com>
1874         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1875         (gst_base_transform_transform_size),
1876         (gst_base_transform_configure_caps),
1877         (gst_base_transform_get_unit_size),
1878         (gst_base_transform_buffer_alloc),
1879         (gst_base_transform_change_state):
1880         * gst/base/gstbasetransform.h:
1881         Cache caps unit_size.
1882         Make sure we cannot negotiate up and downstream at the
1883         same time.
1885 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
1887         * gst/gst.c: (init_pre), (init_post):
1888           register the installed plugin path after the env var
1889         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
1890         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
1891           don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
1892           directories, so the tests can prefer uninstalled over installed
1894 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
1896         * gst/base/gstbasetransform.h:
1897           comment
1898         * gst/gstpad.c:
1899           add to docs
1901 2005-08-25  Wim Taymans  <wim@fluendo.com>
1903         * gst/gstbin.c: (bin_bus_handler):
1904         Be a bit more conservative about the posted message.
1905         
1906         * gst/gstbus.c: (gst_bus_post):
1907         Some cleanups, warn wrong return values.
1909 2005-08-25  Jan Schmidt  <thaytan@mad.scientist.com>
1911         * check/gst/gstbin.c: (GST_START_TEST):
1912         * gst/gstbin.c: (bin_bus_handler):
1913         * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
1914         (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
1915         (gst_message_new_warning), (gst_message_new_tag),
1916         (gst_message_new_state_changed), (gst_message_new_segment_start),
1917         (gst_message_new_segment_done), (gst_message_new_custom):
1918         * gst/gstmessage.h:
1919         * tools/gst-launch.c: (event_loop):
1920         * tools/gst-md5sum.c: (event_loop):
1921           Revert unpopular change for GST_MESSAGE_SRC to GObject.
1923 2005-08-25  Wim Taymans  <wim@fluendo.com>
1925         * check/generic/states.c: (GST_START_TEST):
1926         Cleanup can be done at the end.
1928         * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
1929         (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
1930         (gst_task_get_state), (gst_task_start), (gst_task_pause):
1931         Oh boy.. Thanks for finding this, Thomas. 
1933 2005-08-25  Stefan Kost  <ensonic@users.sf.net>
1935         * docs/gst/gstreamer.types:
1936           added missing types
1938 2005-08-25  Stefan Kost  <ensonic@users.sf.net>
1940         * docs/gst/gstreamer-docs.sgml:
1941         * docs/gst/gstreamer-sections.txt:
1942         * docs/gst/tmpl/.cvsignore:
1943         * gst/gstbin.c:
1944         * gst/gstiterator.c:
1945         * gst/gstutils.c:
1946         * gst/registries/gstxmlregistry.h:
1947           added missing classes and symbols (123 more to go)
1948           removed removed symbols from section file
1949           fixed many doc-comments
1951 2005-08-24  Wim Taymans  <wim@fluendo.com>
1953         * check/generic/states.c: (GST_START_TEST):
1954         Make sure all tasks are stopped.
1956         * check/gst/gstbin.c: (GST_START_TEST):
1957         Unref after usage for proper valgrinding.
1959         * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
1960         Really wait for the task to stop before destroying the
1961         mutex.
1963         * gst/gstqueue.c: (gst_queue_sink_activate_push),
1964         (gst_queue_src_activate_push):
1965         Small cleanups. Don't stop the task when we did not start
1966         it.
1968         * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
1969         (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
1970         (gst_task_get_state), (gst_task_start), (gst_task_pause),
1971         (gst_task_join):
1972         * gst/gsttask.h:
1973         Protect the stream lock with the object lock.
1974         Disallow setting the stream lock when running.
1975         Add cleanup_all to wait for the threadpool to finish.
1976         Remove code to autoallocate a mutex if none was provided.
1977         Add _join() to wait for a task to stop.
1978         Protect the thread pool with a global lock.
1980 2005-08-24  Wim Taymans  <wim@fluendo.com>
1982         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1983         (gst_base_sink_get_times), (gst_base_sink_do_sync),
1984         (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
1985         * gst/base/gstbasesink.h:
1986         Handle newsegment events correctly.
1987         Drop buffers out of the segment range.
1989 2005-08-22  Andy Wingo  <wingo@pobox.com>
1991         * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
1992         macro, implements an interface and gstimplementsinterface for a
1993         new type.
1995 2005-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1997         * check/Makefile.am:
1998         * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
1999           add a test that does a bunch of state changes on elements
2000           needs some fixing for valgrind
2001         * check/states/sinks.c: (gst_object_suite):
2002           whitespace
2003         * gst/gstcaps.h:
2004           add prototype for gst_caps_is_equal_fixed
2005         * gst/gstplugin.c:
2006         * gst/gstregistrypool.c:
2007           doc fixes
2009 2005-08-24  Andy Wingo  <wingo@pobox.com>
2011         * gst/gstquery.c (gst_query_new_convert): Spew if we try to
2012         convert a negative value. Doesn't make much sense. Mostly this is
2013         here to force callers to ensure -1 maps to -1.
2015 2005-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
2017         * docs/pwg/advanced-types.xml:
2018           Well done to Michael for catching my deliberate introduction
2019           of this spelling mistake. 
2020         * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
2021         * gst/gstelement.h:
2022           Add GST_ELEMENT_UNPARENTING to prevent races so that we can
2023           unlink pads before removing the element from the bin.
2025 2005-08-24  Andy Wingo  <wingo@pobox.com>
2027         * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
2028         the same thing as GST_DEBUG=*:4.
2029         (parse_debug_level, parse_debug_category): New helper parsers.
2031 2005-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2033         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
2034         (gst_base_transform_transform_size), (gst_base_transform_getcaps),
2035         (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
2036         (gst_base_transform_buffer_alloc),
2037         (gst_base_transform_handle_buffer):
2038           use gboolean return values and pointers to size so we can use the
2039           full GST_BUFFER_SIZE range (guint) for buffer sizes
2040           use GstPadDirection for transform_caps
2041         * gst/base/gstbasetransform.h:
2042           rename get_size to get_unit_size since that's what it is
2043         * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
2044           use GstPadDirection for transform_caps
2045         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
2046         * gst/gstutils.h:
2047           cleanup and debugging
2049 2005-08-24  Stefan Kost  <ensonic@users.sf.net>
2051         * gst/gstelement.c: (gst_element_class_init),
2052         (gst_element_set_state), (activate_pads),
2053         (gst_element_save_thyself):
2054         * tools/gst-compprep.c: (main):
2055         * tools/gst-inspect.c: (print_element_properties_info):
2056         * tools/gst-xmlinspect.c: (print_element_properties):
2057           Fixed long standing mem-leak
2059 2005-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
2061         * check/gst/gstbin.c: (GST_START_TEST):
2062         * gst/gstbin.c: (bin_bus_handler):
2063         * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
2064         (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
2065         (gst_message_new_warning), (gst_message_new_tag),
2066         (gst_message_new_state_changed), (gst_message_new_segment_start),
2067         (gst_message_new_segment_done), (gst_message_new_custom):
2068         * gst/gstmessage.h:
2069         * tools/gst-launch.c: (event_loop):
2070         * tools/gst-md5sum.c: (event_loop):
2071           Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
2072           that applications can sensibly post custom messages with references
2073           to their own objects.
2075 2005-08-24  Andy Wingo  <wingo@pobox.com>
2077         * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
2078         already.
2080 2005-08-24  Wim Taymans  <wim@fluendo.com>
2082         * gst/base/gstbasetransform.c: (gst_base_transform_init),
2083         (gst_base_transform_transform_caps),
2084         (gst_base_transform_transform_size),
2085         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
2086         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
2087         (gst_base_transform_handle_buffer):
2088         * gst/base/gstbasetransform.h:
2089         Many fixes and new features added by Thomas. Can now also do
2090         transforms with variable sizes and a custom fixate_caps function.
2092 2005-08-24  Wim Taymans  <wim@fluendo.com>
2094         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
2095         Some debugging.
2097         * gst/gstclock.h:
2098         Cast to ClockTime before formatting to time.
2100         * gst/gstutils.h:
2101         Cleanups.
2103 2005-08-24  Stefan Kost  <ensonic@users.sf.net>
2105         * check/gst-libs/controller.c: (GST_START_TEST),
2106         (gst_controller_suite):
2107         * docs/gst/tmpl/gstcaps.sgml:
2108         * docs/gst/tmpl/gstghostpad.sgml:
2109         * docs/gst/tmpl/gstquery.sgml:
2110         * docs/gst/tmpl/gstutils.sgml:
2111         * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
2112         (gst_object_sink_values), (gst_object_get_value_arrays),
2113         (gst_object_get_value_array):
2114           gracefully handle helper method calls to objects that are not beeing
2115           controlled, added test case for that          
2117 2005-08-23  Wim Taymans  <wim@fluendo.com>
2119         * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
2120         (gst_event_new_newsegment), (gst_event_parse_newsegment),
2121         (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
2122         (gst_event_parse_qos), (gst_event_new_seek),
2123         (gst_event_parse_seek):
2124         * gst/gstevent.h:
2125         Some more debugging output and doc cleanups.
2127         * gst/gstqueue.c: (gst_queue_handle_sink_event):
2128         Fix possible deadlock.
2130 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
2132         * docs/gst/gstreamer-docs.sgml:
2133         * docs/gst/gstreamer-sections.txt:
2134         * docs/gst/gstreamer.types:
2135         * docs/gst/tmpl/.cvsignore:
2136         * gst/gstbin.h:
2137         * gst/gstbus.c:
2138         * gst/gstelement.c:
2139         * gst/gstevent.h:
2140           added 100 symbols from gstreamer-unused.txt to the right sections
2141           fixed more broken comments
2142           added GstBus to docs
2144 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
2146         * docs/gst/gstreamer-sections.txt:
2147         * docs/gst/tmpl/.cvsignore:
2148         * docs/gst/tmpl/gstbin.sgml:
2149         * docs/gst/tmpl/gstbuffer.sgml:
2150         * gst/base/gstbasesrc.c:
2151         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
2152         * gst/gstbuffer.c:
2153         * gst/gstbuffer.h:
2154         * tools/gst-launch.1.in:
2155           inlined more doc comments, added missing comments and fixed comments
2156           fixed typos
2158 2005-08-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2160         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
2161           some debugging
2162         * gst/gstcaps.h:
2163           whitespace fixes
2164         * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
2165           more debugging
2166         * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
2167         * gst/gststructure.h:
2168           add a fixate function for booleans; add a FIXME that these func
2169           names should probably be gst_structure_fixate_*
2171 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
2173         * docs/gst/gstreamer-docs.sgml:
2174         * docs/gst/gstreamer-sections.txt:
2175         * gst/Makefile.am:
2176         * gst/gstbin.c: (gst_bin_get_type),
2177         (gst_bin_child_proxy_get_child_by_index),
2178         (gst_bin_child_proxy_get_children_count),
2179         (gst_bin_child_proxy_init):
2180         * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
2181         (gst_child_proxy_get_child_by_index),
2182         (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
2183         (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
2184         (gst_child_proxy_get), (gst_child_proxy_set_property),
2185         (gst_child_proxy_set_valist), (gst_child_proxy_set),
2186         (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
2187         (gst_child_proxy_base_init), (gst_child_proxy_get_type):
2188         * gst/gstchildproxy.h:
2189         * gst/parse/grammar.y:
2190         * tools/gst-inspect.c: (print_interfaces),
2191         (print_element_properties_info), (print_element_info):
2192           ported gstchildproxy over from 0.8
2193           ported gst-inspect fixes and enhancements over from 0.8
2195 2005-08-22  Wim Taymans  <wim@fluendo.com>
2197         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
2198         (gst_base_transform_handle_buffer):
2199         Also call the transform function if we have ANY caps.
2201         * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
2202         Fix debug info.
2204 2005-08-22  Jan Schmidt  <thaytan@mad.scientist.com>
2206         * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
2207           Don't pretend to handle seek events if the source is not seekable
2209 2005-08-22  Jan Schmidt  <thaytan@mad.scientist.com>
2211         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2212           Remove extra parameter to debug output
2214         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
2215         (gst_base_src_do_seek), (gst_base_src_activate_push):
2216           Fix seek event handling.
2218         * gst/gstpipeline.c: (gst_pipeline_change_state):
2219         * gst/gstqueue.c: (gst_queue_handle_sink_event),
2220         (gst_queue_src_activate_push):
2221           Don't start the src pad task on FLUSH_STOP if the pad
2222           isn't linked.
2223           Debug changes.
2225 2005-08-22  Wim Taymans  <wim@fluendo.com>
2227         * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
2228         Added check for gst_static_caps_get() refcounting.
2230 2005-08-22  Wim Taymans  <wim@fluendo.com>
2232         * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
2233         Make _static_caps_get() refcounting sane.
2234         
2235         * gst/gstelement.c: (gst_element_set_state):
2236         Add g_return_val_if_fail() to protect against segfaults.
2238 2005-08-22  Stefan Kost  <ensonic@users.sf.net>
2240         * docs/gst/tmpl/gstevent.sgml:
2241         * gst/gstevent.c:
2242         * gst/gstevent.h:
2243           inlined remaining docs, added missing doc comments
2245 2005-08-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2247         * check/gst/gstbin.c: (GST_START_TEST):
2248           since we don't know when preroll is done, use refcount range
2249           check for the sink
2250         * gst/check/gstcheck.h:
2251           add macro for checking refcount range
2253 2005-08-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2255         * check/Makefile.am:
2256           clean up environment for when registry gets built versus
2257           when actual tests are run; valgrind seems to not report
2258           leaks if GST_PLUGIN_PATH is set to some specific values
2259         * check/gst/gstbin.c: (GST_START_TEST):
2260           add more refcounting checks; maybe this exposes a
2261           preroll lock bug ?
2262         * common/check.mak:
2263         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2264         * gst/check/gstcheck.h:
2265         * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
2266         (gst_bin_change_state):
2267         * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
2268           add/fix debugging/whitespace
2270 2005-08-21  Jan Schmidt  <thaytan@mad.scientist.com>
2272         * check/gst/gstevent.c: (event_probe), (test_event),
2273         (GST_START_TEST):
2274          Er, don't call gst_bin_watch_for_state_change you idiot.
2276 2005-08-21  Jan Schmidt  <thaytan@mad.scientist.com>
2278         * check/Makefile.am:
2279           Use CHECK_CFLAGS and CHECK_LIBS
2280         * check/gst/gstevent.c: (event_probe), (test_event),
2281         (GST_START_TEST):
2282           Don't leak events.
2283         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
2284         (gst_base_src_start), (gst_base_src_stop),
2285         (gst_base_src_activate_push), (gst_base_src_activate_pull),
2286         (gst_base_src_change_state):
2287           Sprinkle gst_base_src_stop liberally around error paths to fix
2288           problems reusing a source after failed state changes.
2289         * gst/base/gsttypefindhelper.c: (helper_find_peek),
2290         (helper_find_suggest), (gst_type_find_helper):
2291           Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
2292         * gst/gstevent.h:
2293         * docs/gst/tmpl/gstevent.sgml:
2294           Migrate part of the docs from the SGML file. Wait for ensonic to
2295           tell me how I did it wrong ;)
2296         * tools/gst-typefind.c: (main):
2297           Extra robustness to state changes between files.
2299 2005-08-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2301         * check/Makefile.am:
2302           don't valgrind the controller test - it's leaking - Stefan, HELP
2303         * gst/check/gstcheck.c: (gst_check_message_error),
2304         (gst_check_chain_func), (gst_check_setup_element),
2305         (gst_check_teardown_element), (gst_check_setup_src_pad),
2306         (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
2307         (gst_check_teardown_sink_pad):
2308         * gst/check/gstcheck.h:
2309           add a bunch of methods to set up elements, and src and sink pads
2310         * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
2311         * check/elements/identity.c: (setup_identity), (cleanup_identity),
2312         (GST_START_TEST):
2313           use them
2314         * gst/gstmessage.c:
2315         * gst/gsttag.h:
2316           whitespace/doc fixes
2318 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
2320         * gst/gstelement.h:
2321           make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
2322           be handled by the application and not always printed as well
2324 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
2326         * check/Makefile.am:
2327           set GST_TOOLS_DIR
2328         * gst/check/gstcheck.c: (gst_check_message_error):
2329         * gst/check/gstcheck.h:
2330           add a fail_unless_equals_int
2331           add fail_unless for error messages
2333 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
2335         * check/Makefile.am:
2336         * check/gst.supp:
2337         * common/Makefile.am:
2338         * common/check.mak:
2339         * common/gst.supp:
2340           factor out some of the common stuff so we can use it
2342 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
2344         * check/Makefile.am:
2345         * check/gst/gstiterator.c: (GST_START_TEST):
2346         * check/gst/gstsystemclock.c: (GST_START_TEST),
2347         (gst_systemclock_suite):
2348         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
2349         * gst/gstclock.c:
2350           valgrind more tests
2352 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
2354         * check/elements/.cvsignore:
2355         * check/elements/gstfakesrc.c:
2356           rename to name of element
2357         * check/elements/identity.c: (chain_func), (event_func),
2358         (setup_identity), (cleanup_identity), (GST_START_TEST),
2359         (identity_suite), (main):
2360           add a test for identity
2361         * check/Makefile.am:
2362         * pkgconfig/Makefile.am:
2363         * pkgconfig/gstreamer-check.pc.in:
2364         * pkgconfig/gstreamer-check-uninstalled.pc.in:
2365         * gst/check:
2366         * gst/Makefile.am:
2367         * configure.ac:
2368           move the check stuff to a library that gets installed
2369         * check/gst-libs/controller.c: (GST_START_TEST):
2370         * check/gst-libs/gdp.c:
2371         * check/gst/gst.c: (GST_START_TEST):
2372         * check/gst/gstbin.c:
2373         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
2374         * check/gst/gstbus.c:
2375         * check/gst/gstcaps.c: (GST_START_TEST):
2376         * check/gst/gstelement.c:
2377         * check/gst/gstghostpad.c:
2378         * check/gst/gstiterator.c:
2379         * check/gst/gstmessage.c:
2380         * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
2381         * check/gst/gstobject.c:
2382         * check/gst/gstpad.c: (GST_START_TEST):
2383         * check/gst/gststructure.c: (GST_START_TEST):
2384         * check/gst/gstsystemclock.c: (GST_START_TEST),
2385         (gst_systemclock_suite):
2386         * check/gst/gsttag.c: (gst_tag_suite):
2387         * check/gst/gstvalue.c:
2388         * check/pipelines/cleanup.c:
2389         * check/pipelines/simple_launch_lines.c:
2390         * check/states/sinks.c:
2391           change include statement
2393         * docs/gst/gstreamer-sections.txt:
2394         * docs/gst/tmpl/gstpad.sgml:
2395           document more pad stuff
2396         * gst/gstminiobject.c: (gst_mini_object_ref),
2397         (gst_mini_object_unref):
2398           debug refcounting
2400 2005-08-19  Stefan Kost  <ensonic@users.sf.net>
2402         * docs/gst/tmpl/gst.sgml:
2403         * gst/gst.c:
2404           eliminate another tmpl file, fix spelling in the long-description
2406 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
2408         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
2409         (test_event), (timediff), (gstevents_suite):
2410           Should fix build on 64-bit arch's
2412 2005-08-18  Andy Wingo  <wingo@pobox.com>
2414         Make sure that when a pipeline goes to PLAYING, that data has
2415         actually hit the sink.
2417         * check/states/sinks.c (test_sink): A sink that doesn't get any
2418         data shouldn't return SUCCESS for going to either PLAYING or
2419         PAUSED. Test also the return values on the way back down.
2421         * gst/gstelement.c (gst_element_set_state): When changing the
2422         state of an element currently changing state asynchronously, go to
2423         lost-state after commiting the pending state. Makes future calls
2424         to get_state continue to return ASYNC.
2426         * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
2427         ASYNC when going to PLAYING if we still don't have preroll, as can
2428         happen with live sources.
2430 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
2432         * docs/pwg/advanced-types.xml:
2433           Hack long paragraph into 2 chunks as a workaround for buggy
2434           jadetex version in sid and breezy that loops infinitely and
2435           eats all RAM.
2437 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
2439         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
2440         (test_event), (timediff), (gstevents_suite):
2441           Provide more error margin in clock measurements to allow for 
2442           g_get_current_time inaccuracies.
2444 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
2446         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
2447         (test_event), (timediff), (gstevents_suite):
2448            Fix error message output so I might be able to tell why the
2449            test works here but fails on the build farm.
2451 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
2453         * check/Makefile.am:
2454         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
2455         (test_event), (timediff), (gstevents_suite), (main):
2456           I wrote a test!
2458         * docs/design/part-seeking.txt:
2459           Spelling correction
2461         * docs/gst/tmpl/gstevent.sgml:
2462         * docs/gst/tmpl/gstfakesrc.sgml:
2463           Docs updates.
2465         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2466           Treat a buffer-without-newsegment the same as a receiving 
2467           a newsegment not in time format, and disable syncing to the clock
2468           with a warning.
2470         * gst/gstbus.c: (gst_bus_set_sync_handler):
2471           Assert if anyone tries to replace the existing sync_handler for bus, 
2472           as only the owner should be setting it.
2474         * gst/gstevent.h:
2475           Have a fixed set of custom event enums with events identified by
2476           their structure name (as in 0.8), rather than a free-for-all
2477           allowing collisions between enum values from different plugins.
2479         * gst/gstpad.c: (gst_pad_class_init):
2480           Docs change.
2481           
2482         * gst/gstqueue.c: (gst_queue_handle_sink_event):
2483           Handle out-of-band downstream events from the sending thread.
2485 2005-08-17  Andy Wingo  <wingo@pobox.com>
2487         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
2488         play-timeout==0 to mean no timeout at all. In that case, don't
2489         bother with a get_state or a warning, just return directly, even
2490         if it's ASYNC.
2492         * gst/base/gstbasetransform.c: Debug changes.
2494         * gst/gstutils.h:
2495         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
2496         ensure bins post state change messages. A bit of a hack but I can't
2497         think of a way to avoid it.
2499         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
2501 2005-08-16  Andy Wingo  <wingo@pobox.com>
2503         * gst/base/gstadapter.h:
2504         * gst/base/gstadapter.c (gst_adapter_take): New function, like
2505         peek() but you own the data. Not terribly efficient atm.
2507 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2509         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
2510         (gst_element_found_tags):
2511         * gst/gstutils.h:
2512           Add two utility functions for tag handling.
2514 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2516         * docs/manual/advanced-dataaccess.xml:
2517         * docs/manual/basics-helloworld.xml:
2518           Fix docs to use _bin_add() before _link(), which fixes the examples
2519           with recent core versions (reported by Madhan Raj M
2520           <raj_madan@rediffmail.com>, #313199).
2522 2005-08-16  Wim Taymans  <wim@fluendo.com>
2524         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
2525         Added subtract checks.
2527         * docs/design/part-events.txt:
2528         Some more docs about newsegment
2530         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
2531         Fix FIXME
2533         * gst/gstcaps.c: (gst_caps_to_string):
2534         Add comments, cleanups.
2535         
2536         * gst/gstelement.c: (gst_element_save_thyself):
2537         cleanups
2538         
2539         * gst/gstvalue.c: (gst_value_collect_int_range),
2540         (gst_string_unwrap), (gst_value_union_int_int_range),
2541         (gst_value_union_int_range_int_range),
2542         (gst_value_intersect_int_int_range),
2543         (gst_value_intersect_int_range_int_range),
2544         (gst_value_intersect_double_double_range),
2545         (gst_value_intersect_double_range_double_range),
2546         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
2547         (gst_value_subtract_int_range_int),
2548         (gst_value_subtract_double_range_double),
2549         (gst_value_subtract_double_range_double_range),
2550         (gst_value_subtract_from_list), (gst_value_subtract_list),
2551         (gst_value_can_compare), (gst_value_compare_fraction):
2552         Cleanups, add comments, remove unneeded asserts.
2554 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
2556         * tools/gst-launch.c: (event_loop):
2557           don't convert NULL structures to strings
2559 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
2561         * docs/gst/gstreamer-sections.txt:
2562           made some defines private
2563         * docs/gst/tmpl/gstconfig.sgml:
2564         * docs/gst/tmpl/gstqueue.sgml:
2565         * docs/gst/tmpl/gsttaglist.sgml:
2566         * docs/gst/tmpl/gsttypes.sgml:
2567         * docs/gst/tmpl/gstutils.sgml:
2568         * docs/pwg/appendix-porting.xml:
2569         * gst/base/gstbasesink.h:
2570         * gst/base/gstbasesrc.c:
2571         * gst/base/gstbasesrc.h:
2572         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
2573         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
2574         * gst/gstelement.c: (gst_element_class_init):
2575         * gst/gstpad.c: (gst_pad_class_init):
2576         * gst/gstqueue.c: (gst_queue_class_init):
2577         * gst/gstxml.c: (gst_xml_class_init):
2578           documented all undocumented signal inline
2579         * libs/gst/controller/gst-controller.h:
2580           added padding
2582 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2584         * docs/pwg/appendix-porting.xml:
2585           Document _set_link_function -> _set_setcaps_function.
2587 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
2589         * check/Makefile.am:
2590           add a .check target for running the check
2591         * check/gst-libs/controller.c: (GST_START_TEST):
2592           cosmetic fixups
2593         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
2594           complete checks for gstbuffer; would be nice if I could get the
2595           gcov stuff to work so I can see if I actually completed gstbuffer.c
2596         * check/gstcheck.h:
2597           add ASSERT_BUFFER_REFCOUNT
2599 2005-08-13  Tim-Philipp M??ller  <tim at centricular dot net>
2601         * docs/gst/gstreamer-sections.txt:
2602         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
2603         * gst/gsttag.h:
2604           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
2605           spew out a warning if a tag that is already registered
2606           is re-registered, unless it is re-registered with a 
2607           different type (#308438).
2609 2005-08-12  Tim-Philipp M??ller  <tim at centricular dot net>
2611         * docs/pwg/appendix-porting.xml:
2612         * docs/pwg/building-state.xml:
2613           Add some paragraphs about state changes in 0.9 to the PWG
2614           and the porting guide, in particular about the new meaning
2615           of GST_STATE_PAUSED and how to write state change functions
2616           with concurrent access by multiple threads in mind.
2618 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
2620         * docs/gst/gstreamer-docs.sgml:
2621         * docs/libs/gstreamer-libs-docs.sgml:
2622           added deprecation and since indexes
2623         * libs/gst/controller/gst-controller.c:
2624         * libs/gst/controller/gst-helper.c:
2625           added since tags
2628 2005-08-11  Wim Taymans  <wim@fluendo.com>
2630         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
2631         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
2632         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
2633         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
2634         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
2635         (gst_ghost_pad_set_target):
2636         Actually implement (re)setting the target on a ghostpad
2637         as described in the docs.
2639 2005-08-10  Tim-Philipp M??ller  <tim at centricular dot net>
2641         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
2642           Check whether GST_DEBUG_NO_COLOR environment variable is
2643           set and disable coloured debug output if that is the case.
2645 2005-08-10  Tim-Philipp M??ller  <tim at centricular dot net>
2647         * gst/base/gsttypefindhelper.c: (helper_find_peek),
2648         (gst_type_find_helper):
2649           The memory returned by gst_type_find_peek() needs to
2650           stay valid until the end of a typefind function, and
2651           typefind functions may keep results from different 
2652           offsets around, so we can't just unref the buffer from
2653           the previous _peek(), but have to save all buffers 
2654           returned by _peek() until typefinding is done and only
2655           free them then.
2657 2005-08-09  Tim-Philipp M??ller  <tim at centricular dot net>
2659         * docs/gst/gstreamer-sections.txt:
2660         * gst/gstutils.h:
2661           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
2663 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2665         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
2666           Fix a pretty good memleak.
2668 2005-08-08  Tim-Philipp M??ller  <tim at centricular dot net>
2670         * gst/gstiterator.h:
2671           Fix wrong include and 'make distcheck'.
2673 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2675         * gst/gstbin.c: (bin_bus_handler):
2676           Use gst_element_post_message() instead.
2678 2005-08-08  Tim-Philipp M??ller  <tim at centricular dot net>
2680         * gst/base/gstadapter.h:
2681         * gst/base/gstbasesink.h:
2682         * gst/base/gstbasesrc.h:
2683         * gst/base/gstbasetransform.h:
2684         * gst/base/gstcollectpads.h:
2685         * gst/base/gstpushsrc.h:
2686         * gst/gstiterator.h:
2687           Add padding to our base elements' class and instance structs and
2688           to GstIterator (you will need to rebuild all plugins and apps!)
2690 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2692         * gst/gstbin.c: (bin_bus_handler):
2693           Make default message forwarding from child->bus to bin->bus
2694           threadsafe and make it not emit warnings if the parent has no bus.
2696 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2698         * gst/gstelement.c: (activate_pads):
2699           On paused->ready, set pad->caps to NULL, as is the documented
2700           behaviour in this state change. Fixes playback of series of
2701           media files when visualization is enabled in Totem.
2703 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2705         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2706           Allow NULL as filter-caps (which means "any").
2708 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
2710         * docs/libs/gstreamer-libs-sections.txt:
2711         * libs/gst/controller/gst-controller.c:
2712         * libs/gst/controller/gst-controller.h:
2713         * libs/gst/controller/gst-helper.c:
2714           adding more entries to the docs and fix small doc-bugs
2716 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
2718         * docs/gst/gstreamer-docs.sgml:
2719         * docs/gst/gstreamer-sections.txt:
2720         * docs/gst/gstreamer.types:
2721         * docs/gst/tmpl/gstbasesink.sgml:
2722         * docs/gst/tmpl/gstbasesrc.sgml:
2723         * docs/gst/tmpl/gstbasetransform.sgml:
2724         * docs/gst/tmpl/gstfakesrc.sgml:
2725         * gst/base/gstcollectpads.c:
2726         * gst/base/gstcollectpads.h:
2727         * libs/gst/controller/gst-controller.c:
2728         * libs/gst/controller/gst-controller.h:
2729         * libs/gst/controller/gst-helper.c:
2730         * libs/gst/controller/gst-interpolation.c:
2731         * libs/gst/controller/lib.c:
2732           added long/short desc for controller docs
2733           added collectpads base class docs
2734           added correct includes to base-class docs
2736 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
2738         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
2739         (gst_test_mono_source_set_property),
2740         (gst_test_mono_source_class_init), (GST_START_TEST),
2741         (gst_controller_suite):
2742         * docs/gst/gstreamer-docs.sgml:
2743         * docs/gst/gstreamer-sections.txt:
2744         * docs/gst/gstreamer.types:
2745         * docs/libs/gstreamer-libs-docs.sgml:
2746         * docs/libs/gstreamer-libs-sections.txt:
2747         * gst/base/gstadapter.c:
2748         * libs/gst/controller/gst-controller.c:
2749         (gst_controlled_property_new), (gst_controlled_property_free),
2750         (gst_controller_new_valist),
2751         (gst_controller_remove_properties_valist),
2752         (gst_controller_sink_values), (_gst_controller_finalize):
2753         * libs/gst/controller/gst-controller.h:
2754         * libs/gst/controller/gst-helper.c:
2755         (gst_object_control_properties), (gst_object_uncontrol_properties),
2756         (gst_object_get_controller), (gst_object_set_controller),
2757         (gst_object_sink_values), (gst_object_get_value_arrays),
2758         (gst_object_get_value_array):
2759           more tests (and fixes) for the controller
2760           more docs for the controller
2761           integrated companies docs for the adapter 
2763 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
2765         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
2766         (GST_START_TEST), (fakesrc_suite):
2767           add tests for sizetype
2769 2005-08-04  Andy Wingo  <wingo@pobox.com>
2771         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
2772         fixes buffer_alloc proxying among other things.
2774         * gst/base/gstbasetransform.c:
2775         * gst/base/gstbasetransform.h:
2776         Revert patch to gstbasetransform from 7-28 removing
2777         delay_configure.
2779         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
2780         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
2781         Semantics changed, should return not the size of the output buffer
2782         but the byte size of a buffer with a given caps.
2784         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
2785         debug object.
2786         (gst_base_transform_configure_caps): Don't set out_size here: (in,
2787         out) are not the pad caps until setcaps finishes.
2788         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
2789         not-in-place case as well. Deal with changing from in-place to
2790         not-in-place within calling pad_alloc_buffer. Still a bit
2791         concerned about the overhead here...
2793 2005-08-03  Andy Wingo  <wingo@pobox.com>
2795         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
2796         fixating is an error.
2798 2005-08-04  Edward Hervey  <edward@fluendo.com>
2800         * gst/base/gstadapter.h: 
2801         Added gst_adapter_get_type() to the header
2803 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
2805         * check/Makefile.am:
2806         * check/gst-libs/controller.c:
2807         * libs/gst/controller/gst-controller.c:
2808         (gst_controller_new_valist):
2809           added check test suite for the controller
2810         * gst/base/gstpushsrc.c:
2811           fixed a doc typo
2813 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
2815         * docs/gst/Makefile.am:
2816         * docs/gst/gstreamer-docs.sgml:
2817         * docs/gst/gstreamer-sections.txt:
2818         * docs/gst/gstreamer.types:
2819         * docs/gst/tmpl/gstfakesrc.sgml:
2820         * gst/base/README:
2821         * gst/base/gstbasesink.c:
2822         * gst/base/gstbasesink.h:
2823         * gst/base/gstbasesrc.c:
2824         * gst/base/gstbasesrc.h:
2825         * gst/base/gstbasetransform.c:
2826         * gst/base/gstpushsrc.c:
2827         * gst/base/gstpushsrc.h:
2828           add short/long description docs to base classes
2829           add pushsrc to the docs
2830           remove consolidated doc fragments
2832 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
2834         * configure.ac:
2835         * docs/libs/Makefile.am:
2836         * docs/libs/gstreamer-libs-docs.sgml:
2837         * docs/libs/gstreamer-libs-sections.txt:
2838         * docs/libs/gstreamer-libs.types:
2839         * examples/Makefile.am:
2840         * examples/controller/.cvsignore:
2841         * examples/controller/Makefile.am:
2842         * examples/controller/audio-example.c: (main):
2843         * libs/gst/Makefile.am:
2844         * libs/gst/controller/.cvsignore:
2845         * libs/gst/controller/Makefile.am:
2846         * libs/gst/controller/gst-controller.c:
2847         (on_object_controlled_property_changed), (gst_timed_value_compare),
2848         (gst_timed_value_find),
2849         (gst_controlled_property_set_interpolation_mode),
2850         (gst_controlled_property_new), (gst_controlled_property_free),
2851         (gst_controller_find_controlled_property),
2852         (gst_controller_new_valist), (gst_controller_new),
2853         (gst_controller_remove_properties_valist),
2854         (gst_controller_remove_properties), (gst_controller_set),
2855         (gst_controller_set_from_list), (gst_controller_unset),
2856         (gst_controller_get), (gst_controller_get_all),
2857         (gst_controller_sink_values), (gst_controller_get_value_arrays),
2858         (gst_controller_get_value_array),
2859         (gst_controller_set_interpolation_mode),
2860         (_gst_controller_finalize), (_gst_controller_init),
2861         (_gst_controller_class_init), (gst_controller_get_type):
2862         * libs/gst/controller/gst-controller.h:
2863         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
2864         (g_object_uncontrol_properties), (g_object_get_controller),
2865         (g_object_set_controller), (g_object_sink_values),
2866         (g_object_get_value_arrays), (g_object_get_value_array):
2867         * libs/gst/controller/gst-interpolation.c:
2868         (gst_controlled_property_find_timed_value_node),
2869         (interpolate_none_get), (interpolate_trigger_get),
2870         (interpolate_trigger_get_value_array):
2871         * libs/gst/controller/lib.c: (gst_controller_init):
2872         * pkgconfig/Makefile.am:
2873         * pkgconfig/gstreamer-control-uninstalled.pc.in:
2874         * pkgconfig/gstreamer-control.pc.in:
2875         * testsuite/Makefile.am:
2876         * testsuite/controller/.cvsignore:
2877         * testsuite/controller/Makefile.am:
2878         * testsuite/controller/interpolator.c: (main):
2879           added controller code
2880           removed dparam pc files
2882 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
2883         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
2884         (gst_collectpads_stop):
2885           Broadcast the condition when shutting down, to make sure we wake all
2886           threads up. Shut down pads on finalize, for safety.
2888 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
2889         * gst/base/gstbasetransform.c: (gst_base_transform_init),
2890         (gst_base_transform_handle_buffer),
2891         (gst_base_transform_change_state):
2892           Handle PAUSED->READY->PAUSED transition after negotiation
2893           occurred already.
2894         * gst/gstmessage.c: (gst_message_init):
2895           Extra piece of debug for new messages.
2897 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
2899         * configure.ac:
2900         * docs/gst/tmpl/gstbasesrc.sgml:
2901         * docs/gst/tmpl/gstelement.sgml:
2902         * docs/gst/tmpl/gstevent.sgml:
2903         * docs/gst/tmpl/gstfakesrc.sgml:
2904         * docs/gst/tmpl/gstformat.sgml:
2905         * docs/gst/tmpl/gstghostpad.sgml:
2906         * docs/gst/tmpl/gstpad.sgml:
2907         * docs/gst/tmpl/gstquery.sgml:
2908         * docs/gst/tmpl/gststructure.sgml:
2909         * docs/gst/tmpl/gsttaglist.sgml:
2910         * docs/gst/tmpl/gstvalue.sgml:
2911         * docs/libs/gstreamer-libs-docs.sgml:
2912         * docs/libs/gstreamer-libs-sections.txt:
2913         * docs/libs/gstreamer-libs.types:
2914         * libs/gst/Makefile.am:
2915         * libs/gst/control/.cvsignore:
2916         * libs/gst/control/Makefile.am:
2917         * libs/gst/control/control.c:
2918         * libs/gst/control/control.h:
2919         * libs/gst/control/dparam.c:
2920         * libs/gst/control/dparam.h:
2921         * libs/gst/control/dparam_smooth.c:
2922         * libs/gst/control/dparam_smooth.h:
2923         * libs/gst/control/dparamcommon.h:
2924         * libs/gst/control/dparammanager.c:
2925         * libs/gst/control/dparammanager.h:
2926         * libs/gst/control/dplinearinterp.c:
2927         * libs/gst/control/dplinearinterp.h:
2928         * libs/gst/control/unitconvert.c:
2929         * libs/gst/control/unitconvert.h:
2930         * testsuite/Makefile.am:
2931         * testsuite/dynparams/.cvsignore:
2932         * testsuite/dynparams/Makefile.am:
2933         * testsuite/dynparams/dparamstest.c:
2934         * tools/Makefile.am:
2935         * tools/gst-inspect.c: (print_element_info), (main):
2936         * tools/gst-xmlinspect.c: (print_element_info), (main):
2937           deactivate and remove dparams (libgstcontrol)
2939 2005-08-01  Tim-Philipp M??ller  <tim at centricular dot net>
2941         * gst/elements/gsttypefindelement.c:
2942         (gst_type_find_element_have_type), (gst_type_find_element_init),
2943         (stop_typefinding), (gst_type_find_element_handle_event),
2944         (gst_type_find_element_chain), (gst_type_find_element_getrange):
2945         * gst/elements/gsttypefindelement.h:
2946           Set caps on all outgoing buffers, not just the first one.
2948 2005-08-01  Tim-Philipp M??ller  <tim at centricular dot net>
2950         * gst/elements/gsttypefindelement.c:
2951         (gst_type_find_element_have_type),
2952         (gst_type_find_element_check_set_buffer_caps),
2953         (gst_type_find_element_init), (stop_typefinding),
2954         (gst_type_find_element_handle_event),
2955         (gst_type_find_element_chain), (gst_type_find_element_getrange):
2956         * gst/elements/gsttypefindelement.h:
2957           Set caps on first outgoing buffer when we've found the type.
2959 2005-08-01  Tim-Philipp M??ller  <tim at centricular dot net>
2961         * docs/gst/gstreamer-docs.sgml:
2962         * docs/gst/gstreamer-sections.txt:
2963         * docs/gst/tmpl/gstscheduler.sgml:
2964         * docs/gst/tmpl/gstschedulerfactory.sgml:
2965           Remove some old cruft from docs.
2967 2005-07-31  Tim-Philipp M??ller  <tim at centricular dot net>
2969         * gst/gstpad.h:
2970           Fix inline docs for GstPadLinkReturn.
2971           
2972         * gst/gststructure.c: (gst_structure_has_name):
2973         * gst/gststructure.h:
2974         * docs/gst/gstreamer-sections.txt:
2975           New API: gst_structure_has_name().
2977 2005-07-30  Tim-Philipp M??ller  <tim at centricular dot net>
2979         * configure.ac:
2980           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
2981           and _LARGEFILE_SOURCE in config.h as required. Do not 
2982           export those flags in our .pc files any longer (#142209).
2984           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
2986         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
2987         (gst_file_sink_do_seek), (gst_file_sink_event),
2988         (gst_file_sink_get_current_offset), (gst_file_sink_render):
2989           Redo seek/tell calls with large file support in mind; add some
2990           debugging messages; add log message that tells us when large
2991           file support is unavailable or not enabled for some reason.
2993         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
2994           Add log message that tells us when large file support 
2995           is unavailable or not enabled for some reason.
2997 2005-07-29  Wim Taymans  <wim@fluendo.com>
2999         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
3000         Added test for removing an element with ghostpad from a bin.
3001         Fixed test as current implementation does the right thing.
3003         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
3004         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
3005         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
3006         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
3007         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
3008         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
3009         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
3010         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
3011         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
3012         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
3013         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
3014         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
3015         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
3016         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
3017         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
3018         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
3019         * gst/gstghostpad.h:
3020         Clean up ghostpads, remove properties for internal stuff.
3021         Make threadsafe.
3022         Fix refcounting.
3023         Prepare for switching targets, not all use cases work yet.
3025 2005-07-29  Wim Taymans  <wim@fluendo.com>
3027         * docs/design/part-gstghostpad.txt:
3028         Small update.
3030         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
3031         (gst_bin_remove_func):
3032         Unlinking pads while holding the bin LOCK is not a good
3033         idea.
3035         * gst/gstpad.c: (gst_pad_class_init),
3036         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
3037         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
3038         No prob setting template after creating the pad.
3040 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
3042         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
3043         (gst_bus_peek), (gst_bus_source_dispatch),
3044         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
3045         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
3046           gst_bus_poll may be called from other threads. Handle
3047           this nicely by not making poll_data disappear off the
3048           stack once gst_bus_poll returns.
3049           gst_bus_peek now increments the refcount on the returned
3050           message.
3052 2005-07-29  Wim Taymans  <wim@fluendo.com>
3054         * docs/design/part-gstghostpad.txt:
3055         Overview of current GhostPad datastructures and use
3056         cases for changing the target.
3058 2005-07-28  Wim Taymans  <wim@fluendo.com>
3060         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
3061         Added checks for hierarchy consistency whan adding linked
3062         elements to bins.
3064         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
3065         Added check to test element scheduling without bin/pipeline.
3067         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
3068         First add elements to bin, then link.
3069         
3070         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
3071         (gst_bin_remove_func):
3072         Unlink pads from elements added/removed from bin to maintain
3073         hierarchy consistency.
3075 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3077         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
3078         (gst_base_transform_handle_buffer):
3079         * gst/base/gstbasetransform.h:
3080           Remove broken delay_configure (fixes renegotiation of software
3081           scaling pipelines); remove some leftover printf()s.
3083 2005-07-28  Wim Taymans  <wim@fluendo.com>
3085         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
3086         Added some more tests for wrong hierarchy
3088         * docs/design/part-overview.txt:
3089         Some updates.
3091         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
3092         Cleanups.
3094         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
3095         (gst_element_dispose):
3096         Some more cleanups.
3098         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
3099         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
3100         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
3101         (gst_pad_set_caps), (gst_pad_send_event):
3102         Check for correct hierarchy when linking pads. Moving to
3103         strict requirement for ghostpads when linking elements in
3104         different bins.
3106         * gst/gstpad.h:
3107         Clean ups. Added WRONG_HIERARCHY return value.
3109 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3111         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
3112           Better debug if no transform is possible.
3114 2005-07-27  Wim Taymans  <wim@fluendo.com>
3116         * docs/random/wtay/network-transp:
3117         Some old doc I had.
3119 2005-07-27  Wim Taymans  <wim@fluendo.com>
3121         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
3122         (gst_dp_event_from_packet):
3123         Fix serialization of seek events.
3125 2005-07-27  Wim Taymans  <wim@fluendo.com>
3127         * check/gst-libs/gdp.c: (GST_START_TEST):
3128         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
3129         Fix compilation and fix event serialization.
3131 2005-07-27  Wim Taymans  <wim@fluendo.com>
3133         * CHANGES-0.9:
3134         * docs/design/part-TODO.txt:
3135         * docs/design/part-events.txt:
3136         Some docs updates
3138         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3139         (gst_base_sink_event), (gst_base_sink_do_sync),
3140         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
3141         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
3142         (gst_base_src_do_seek), (gst_base_src_event_handler),
3143         (gst_base_src_loop):
3144         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
3145         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
3146         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
3147         (gst_base_transform_event), (gst_base_transform_handle_buffer),
3148         (gst_base_transform_set_passthrough),
3149         (gst_base_transform_is_passthrough):
3150         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
3151         * gst/elements/gstfilesink.c: (gst_file_sink_event):
3152         Event updates.
3154         * gst/gstbuffer.h:
3155         Use faster casts.
3157         * gst/gstelement.c: (gst_element_seek):
3158         * gst/gstelement.h:
3159         Update gst_element_seek.
3161         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
3162         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
3163         (gst_event_new_flush_start), (gst_event_new_flush_stop),
3164         (gst_event_new_eos), (gst_event_new_newsegment),
3165         (gst_event_parse_newsegment), (gst_event_new_tag),
3166         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
3167         (gst_event_parse_qos), (gst_event_new_seek),
3168         (gst_event_parse_seek), (gst_event_new_navigation):
3169         * gst/gstevent.h:
3170         Make GstEvent use GstStructure. Add parsing code, make sure the
3171         API is sufficiently generic.
3172         Mark possible directions of events and serialization.
3174         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
3175         (_gst_message_copy), (gst_message_new_segment_start),
3176         (gst_message_new_segment_done), (gst_message_new_custom),
3177         (gst_message_parse_segment_start),
3178         (gst_message_parse_segment_done):
3179         Small cleanups.
3181         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
3182         (gst_pad_set_caps), (gst_pad_send_event):
3183         Update for new events. 
3184         Catch events sent in wrong directions.
3186         * gst/gstqueue.c: (gst_queue_link_src),
3187         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
3188         (gst_queue_handle_src_query):
3189         Event updates.
3191         * gst/gsttag.c:
3192         * gst/gsttag.h:
3193         Remove event code from this file.
3195         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
3196         (gst_dp_event_from_packet):
3197         Event updates.
3199 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3201         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
3202         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
3203         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
3204           Make debugging actually useful.
3206 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3208         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
3209         (gst_pad_fixate_caps):
3210           Implement default fixation once again, so that gst_pad_fixate()
3211           actually does anything at all. This probably needs to be some
3212           sort of a last resort, and use profile-based fixation first, but
3213           since that doesn't exist yet, this is the best we have. Fixes
3214           visualization in Totem.
3216 2005-07-22  Wim Taymans  <wim@fluendo.com>
3218         * docs/design/part-events.txt:
3219         Small update.
3221         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3222         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
3223         (gst_base_sink_activate_pull):
3224         Some more comments.
3226         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
3227         (gst_fake_src_create):
3228         Fix handoff marshall.
3230         * gst/elements/gstidentity.c: (gst_identity_class_init),
3231         (gst_identity_transform_ip):
3232         We're a real inplace element.
3234         * gst/gstbus.c: (gst_bus_post):
3235         Added some comments.
3237         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
3238         * tests/muxing/case1.c: (main):
3239         * tests/sched/dynamic-pipeline.c: (main):
3240         * tests/sched/interrupt1.c: (main):
3241         * tests/sched/interrupt2.c: (main):
3242         * tests/sched/interrupt3.c: (main):
3243         * tests/sched/runxml.c: (main):
3244         * tests/sched/sched-stress.c: (main):
3245         * tests/seeking/seeking1.c: (event_received), (main):
3246         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
3247         (main):
3248         * tests/threadstate/threadstate3.c: (main):
3249         * tests/threadstate/threadstate4.c: (main):
3250         * tests/threadstate/threadstate5.c: (main):
3251         Fix the tests.
3253 2005-07-21  Wim Taymans  <wim@fluendo.com>
3255         * docs/design/part-seeking.txt:
3256         Some small additions.
3258         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3259         (gst_base_sink_get_times), (gst_base_sink_do_sync),
3260         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
3261         * gst/base/gstbasesink.h:
3262         discont values are gint64, handle the math correctly.
3264         * gst/base/gstbasesrc.c: (gst_base_src_loop):
3265         Make the basesrc report error if the source pad is not linked.
3267         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
3268         (gst_queue_loop), (gst_queue_handle_src_query),
3269         (gst_queue_src_activate_push):
3270         Make queue collect data even if the srcpad is not linked.
3271         Start pushing out data as soon as it is linked.
3273         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
3274         * gst/gstutils.h:
3275         Added gst_flow_get_name() to ease error reporting.
3277 2005-07-20  Wim Taymans  <wim@fluendo.com>
3279         * gst/gstmessage.c: (gst_message_new_segment_start),
3280         (gst_message_new_segment_done), (gst_message_parse_segment_start),
3281         (gst_message_parse_segment_done):
3282         * gst/gstmessage.h:
3283         Added a bunch of messages for advanced seeking.
3285         * gst/parse/grammar.y:
3286         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
3287         (gst_dpman_state_changed):
3288         Fix some new-pad -> pad-added signals
3290 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3292         * docs/manual/appendix-porting.xml:
3293         * docs/pwg/appendix-porting.xml:
3294           Document new-pad/state-change signal renames and the FixedList
3295           type rename.
3297 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3299         * docs/manual/advanced-autoplugging.xml:
3300         * docs/manual/basics-helloworld.xml:
3301         * docs/manual/basics-pads.xml:
3302         * docs/random/ds/0.9-suggested-changes:
3303         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
3304         * gst/gstelement.h:
3305         * gst/gstevent.h:
3306         * gst/gstformat.h:
3307         * gst/gstquery.h:
3308         * gst/gststructure.c: (gst_structure_value_get_generic_type),
3309         (gst_structure_parse_array), (gst_structure_parse_value):
3310         * gst/gstvalue.c: (gst_type_is_fixed),
3311         (gst_value_list_prepend_value), (gst_value_list_append_value),
3312         (gst_value_list_get_size), (gst_value_list_get_value),
3313         (gst_value_transform_array_string), (gst_value_serialize_array),
3314         (gst_value_deserialize_array), (gst_value_intersect_array),
3315         (gst_value_is_fixed), (_gst_value_initialize):
3316         * gst/gstvalue.h:
3317           GstElement::new-pad -> pad-added, GstElement::state-change ->
3318           state-changed, GstValueFixedList -> GstValueArray, add format and
3319           flags as their own arguments in gst_element_seek() (should improve
3320           "bindeability"), remove function generators since they don't work
3321           under a whole bunch of compilers (they were deprecated already
3322           anyway).
3324 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3326         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
3327         (_gst_debug_register_funcptr):
3328         * gst/gstinfo.h:
3329           Fix illegal cast on some platforms (#309253).
3331 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3333         * gst/gstmessage.c: (gst_message_new_custom):
3334         * gst/gstmessage.h:
3335           Add _new_custom, make _new_application a macro to _new_custom.
3337 2005-07-20  Wim Taymans  <wim@fluendo.com>
3339         * gst/base/gstbasesrc.c: (gst_base_src_init),
3340         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
3341         * gst/base/gstbasesrc.h:
3342         Add a gboolean to decide when to push out a discont.
3344         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3345         (gst_queue_loop), (gst_queue_handle_src_query),
3346         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
3347         (gst_queue_set_property), (gst_queue_get_property):
3348         Some cleanups.
3350         * tests/threadstate/threadstate1.c: (main):
3351         Make a thread test compile and run... very silly..
3354 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3356         * docs/manual/appendix-porting.xml:
3357           Mention removal of libgstgconf-0.9.la and existence of gconf
3358           elements.
3360 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3362         * docs/pwg/advanced-clock.xml:
3363         * docs/pwg/appendix-porting.xml:
3364         * docs/pwg/intro-preface.xml:
3365         * docs/pwg/other-base.xml:
3366         * docs/pwg/other-manager.xml:
3367         * docs/pwg/other-nton.xml:
3368         * docs/pwg/other-ntoone.xml:
3369         * docs/pwg/other-oneton.xml:
3370         * docs/pwg/pwg.xml:
3371           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
3372           demuxer), remove n-to-n (was never written), fix some code examples
3373           and links and update the porting section to include all this.
3375 2005-07-19  Wim Taymans  <wim@fluendo.com>
3377         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
3378         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
3379         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
3380         (gst_queue_src_activate_push), (gst_queue_change_state),
3381         (gst_queue_get_property):
3382         * gst/gstqueue.h:
3383         Propagate GstFlowReturn more intelligently upstream and output
3384         an ERROR/EOS when streaming stopped due to fatal error.
3386 2005-07-19  Wim Taymans  <wim@fluendo.com>
3388         * tools/gst-launch.c: (check_intr), (event_loop), (main):
3389         Don't block forever for the state change to complete, the
3390         pipeline already did with a sensible timeout.
3392 2005-07-19  Wim Taymans  <wim@fluendo.com>
3394         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
3395         Make sure we never call the create function is we
3396         got deactivated.
3398 2005-07-19  Andy Wingo  <wingo@pobox.com>
3400         * gst/parse/parse.l: Attempt to solve bug #172815.
3402 2005-07-19  Wim Taymans  <wim@fluendo.com>
3404         * docs/design/part-clocks.txt:
3405         * docs/design/part-events.txt:
3406         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
3407         Small docs updates.
3408         Only update the seeking values when we are not
3409         busy streaming.
3411 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
3413         * gst/base/gstbasesrc.c: (gst_base_src_loop):
3414           Oops, ignore the result of gst_pad_push_event here.
3416 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
3418         * gst/base/gstbasesrc.c: (gst_base_src_loop),
3419         (gst_base_src_activate_push):
3420           Send discont event from the loop function, as pads
3421           aren't activated yet in the activate_push handler.
3423         * gst/gstbin.c: (bin_bus_handler):
3424           Don't leak element name.
3426 2005-07-18  Andy Wingo  <wingo@pobox.com>
3428         * configure.ac: Use AS_LIBTOOL_TAGS.
3430 2005-07-18  Wim Taymans  <wim@fluendo.com>
3432         * docs/gst/gstreamer.types:
3433         Remove deleted types.
3435 2005-07-18  Wim Taymans  <wim@fluendo.com>
3437         * check/elements/gstfakesrc.c: (GST_START_TEST):
3438         * configure.ac:
3439         * gst/Makefile.am:
3440         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
3441         (init_popt_callback):
3442         * gst/gst.h:
3443         * gst/gst_private.h:
3444         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
3445         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
3446         * gst/gstbin.h:
3447         * gst/gstbus.h:
3448         * gst/gstconfig.h.in:
3449         * gst/gstelement.c: (gst_element_class_init),
3450         (gst_element_set_base_time), (gst_element_get_base_time),
3451         (iterator_fold_with_resync), (gst_element_change_state),
3452         (gst_element_dispose), (gst_element_get_bus):
3453         * gst/gstelement.h:
3454         * gst/gstelementfactory.h:
3455         * gst/gsterror.c: (_gst_core_errors_init):
3456         * gst/gsterror.h:
3457         * gst/gstevent.h:
3458         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
3459         * gst/gstindex.c:
3460         * gst/gstinfo.c: (_gst_debug_init):
3461         * gst/gstmessage.c: (_gst_message_copy):
3462         * gst/gstmessage.h:
3463         * gst/gstminiobject.h:
3464         * gst/gstobject.c:
3465         * gst/gstobject.h:
3466         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
3467         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
3468         * gst/gstpad.h:
3469         * gst/gstparse.h:
3470         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
3471         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
3472         (gst_pipeline_get_last_stream_time):
3473         * gst/gstpipeline.h:
3474         * gst/gstpluginfeature.h:
3475         * gst/gstquery.h:
3476         * gst/gstscheduler.c:
3477         * gst/gstscheduler.h:
3478         * gst/gststructure.h:
3479         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
3480         (gst_task_finalize), (gst_task_func), (gst_task_create),
3481         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
3482         (gst_task_stop), (gst_task_pause):
3483         * gst/gsttask.h:
3484         * gst/gsttypefind.h:
3485         * gst/gsttypes.h:
3486         * gst/registries/gstlibxmlregistry.c: (load_feature),
3487         (gst_xml_registry_load), (gst_xml_registry_save_feature):
3488         * gst/registries/gstxmlregistry.c:
3489         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
3490         * gst/schedulers/threadscheduler.c:
3491         * libs/gst/control/dparammanager.h:
3492         * tools/gst-inspect.c: (print_element_list),
3493         (print_plugin_features), (print_element_features):
3494         * tools/gst-xmlinspect.c: (print_element_list),
3495         (print_plugin_info), (main):
3496         Removed plugable schedulers.
3497         Removed Scheduler/Manager from elements.
3498         Removed gsttypes.h, rearranged includes.
3499         Removed dependency pad<->element, element<>pipeline, and
3500         various others,  fix includes.
3501         implement gst_pad_get_parent() with gst_object_get_parent()
3502         Make GstTask sefcontained.
3503         Fix _get_state() on GstBin, it did not return ASYNC with a 0
3504         timeout.
3505         Fix endless loop in iterator_fold_with_resync.
3508 2005-07-18  Wim Taymans  <wim@fluendo.com>
3510         * gst/Makefile.am:
3511         * gst/gstarch.h:
3512         Remove old file.
3514 2005-07-18  Wim Taymans  <wim@fluendo.com>
3516         * gst/Makefile.am:
3517         No more cothreads.h
3519 2005-07-18  Wim Taymans  <wim@fluendo.com>
3521         * gst/cothreads.c:
3522         * gst/cothreads.h:
3523         Let's remove these.
3525 2005-07-18  Wim Taymans  <wim@fluendo.com>
3527         * docs/design/part-dynamic.txt:
3528         * docs/design/part-events.txt:
3529         * docs/design/part-seeking.txt:
3530         Some more docs in the works.
3532         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
3533         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
3534         (gst_base_transform_setcaps), (gst_base_transform_get_size),
3535         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
3536         (gst_base_transform_handle_buffer),
3537         (gst_base_transform_sink_activate_push),
3538         (gst_base_transform_src_activate_pull),
3539         (gst_base_transform_set_passthrough),
3540         (gst_base_transform_is_passthrough):
3541         Refcounting fixes.
3543         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
3544         Cleanups.
3546         * gst/gstevent.c: (gst_event_finalize):
3547         Set SRC to NULL.
3549         * gst/gstutils.c: (gst_element_unlink),
3550         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
3551         (gst_pad_proxy_setcaps):
3552         * gst/gstutils.h:
3553         Add _get_parent_element() to get a pads parent as an element.
3555 2005-07-18  Wim Taymans  <wim@fluendo.com>
3557         * check/gst/gstbin.c: (GST_START_TEST):
3558         Remove bogus test.
3560 2005-07-18  Wim Taymans  <wim@fluendo.com>
3562         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
3563         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
3564         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
3565         (gst_base_sink_event), (gst_base_sink_do_sync),
3566         (gst_base_sink_chain), (gst_base_sink_loop),
3567         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
3568         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
3569         Refcounting fixes.
3570         Fix logic for returning ASYNC when not prerolled.
3572 2005-07-18  Wim Taymans  <wim@fluendo.com>
3574         * gst/gstqueue.c: (gst_queue_handle_sink_event):
3575         Fix nasty refcount bug.
3577 2005-07-16 Philippe Khalaf <burger@speedy.org>
3579         * gst/elements/gstfdsrc.c:
3580         * gst/elements/gstfdsrc.h:
3581         * gst/elements/gstelements.c:
3582         * gst/elements/Makefile.am:
3583         Ported fdsrc to 0.9.
3585 2005-07-16  Wim Taymans  <wim@fluendo.com>
3587         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3588         (gst_base_sink_do_sync):
3589         Fix compile error.
3591 2005-07-16  Wim Taymans  <wim@fluendo.com>
3593         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3594         (gst_base_sink_event), (gst_base_sink_get_times),
3595         (gst_base_sink_do_sync), (gst_base_sink_change_state):
3596         * gst/base/gstbasesink.h:
3597         Store and use discont values when syncing buffers as described
3598         in design docs.
3599         
3600         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
3601         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
3602         (gst_base_src_activate_push):
3603         Push discont event when starting.
3605         * gst/elements/gstidentity.c: (gst_identity_transform):
3606         Small cleanups.
3608         * gst/gstbin.c: (gst_bin_change_state):
3609         Small cleanups in base_time  distribution.
3611         * gst/gstelement.c: (gst_element_set_base_time),
3612         (gst_element_get_base_time), (gst_element_change_state):
3613         * gst/gstelement.h:
3614         Added methods for the base_time of the element.
3615         Some MT fixes.
3617         * gst/gstpipeline.c: (gst_pipeline_send_event),
3618         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
3619         (gst_pipeline_get_last_stream_time):
3620         * gst/gstpipeline.h:
3621         MT fixes.
3622         Handle seeking as described in design doc, remove stream_time
3623         hack.
3624         Cleanups clock and stream_time selection code. Added accessors
3625         for the stream_time.
3626         
3628 2005-07-16  Andy Wingo  <wingo@pobox.com>
3630         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
3631         (#305291).
3633 2005-07-16  Wim Taymans  <wim@fluendo.com>
3635         * check/gst/gstbin.c: (GST_START_TEST):
3636         Make elements silent as the deep_notify refs the
3637         parent, which might make the test fail.
3639         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
3640         Don't hold the lock for too long.
3642 2005-07-16  Tim-Philipp M??ller  <tim at centricular dot net>
3644         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
3645           Don't unref the caps we passed to gst_caps_make_writable() after
3646           passing them. gst_caps_make_writable() will do that for us.
3648 2005-07-15  Andy Wingo  <wingo@pobox.com>
3650         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
3651         (#157311).
3653         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
3654         own marshalling function for the handoff signal. Properly type the
3655         buffer as a buffer. Fixes some warnings. Should do a more general
3656         solution.
3657         (gst_identity_class_init): Plug into the right marshaller.
3659 2005-07-15  Wim Taymans  <wim@fluendo.com>
3661         * docs/design/part-TODO.txt:
3662         * docs/design/part-clocks.txt:
3663         * docs/design/part-element-sink.txt:
3664         * docs/design/part-events.txt:
3665         * docs/design/part-gstpipeline.txt:
3666         Updated docs, mostly DISCONT related.
3668 2005-07-15  Tim-Philipp M??ller  <tim at centricular dot net>
3670         * docs/pwg/building-pads.xml:
3671           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
3673 2005-07-15  Andy Wingo  <wingo@pobox.com>
3675         * tools/gst-typefind.c: Update, add copyright block.
3677         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
3678         Normalize and truncate caps before fixation.
3680         * gst/gstcaps.h:
3681         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
3682         discards all but the first structure from its argument.
3684 2005-07-15  Wim Taymans  <wim@fluendo.com>
3686         * gst/base/gstbasetransform.c: (gst_base_transform_init),
3687         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
3688         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
3689         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
3690         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
3691         (gst_base_transform_chain), (gst_base_transform_change_state),
3692         (gst_base_transform_set_passthrough),
3693         (gst_base_transform_is_passthrough):
3694         * gst/base/gstbasetransform.h:
3695         Make passthrough work using the bufferpools.
3696         Changed API a bit, subclasses have to write into a buffer
3697         provided by the base class.
3698         More debug info in nego functions.
3699         
3700         * gst/elements/gstidentity.c: (gst_identity_init),
3701         (gst_identity_transform):
3702         Port to new base class.
3704 2005-07-15  Wim Taymans  <wim@fluendo.com>
3706         * gst/gstmessage.c: (gst_message_new_state_changed):
3707         * tools/gst-launch.c: (event_loop), (main):
3708         Totally dump messages in -launch with the -m option.
3709         Fix message name for State messages,
3711 2005-07-14  Wim Taymans  <wim@fluendo.com>
3713         * gst/base/gstbasesrc.c: (gst_base_src_loop):
3714         Post error messages on errors.
3716 2005-07-14  Wim Taymans  <wim@fluendo.com>
3718         * gst/gstcaps.c: (gst_caps_do_simplify):
3719         Remove debug info.
3721         * gst/gsterror.h:
3722         Define error for stream stopped.
3724         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
3725         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
3726         Do proper return values.
3728         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
3729         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
3730         (gst_pad_get_range):
3731         Better return values.
3733         * gst/gstpad.h:
3734         Reorganise return values, add macro to check for fatal errors.
3736         * gst/gstqueue.c: (gst_queue_chain):
3737         Return proper GstFlowReturn values,
3739 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
3741         * docs/gst/gstreamer-sections.txt:
3742         * docs/gst/gstreamer.types:
3743         * docs/gst/tmpl/gst.sgml:
3744         * docs/gst/tmpl/gstbasesink.sgml:
3745         * docs/gst/tmpl/gstbasesrc.sgml:
3746         * docs/gst/tmpl/gstbasetransform.sgml:
3747         * docs/gst/tmpl/gstbin.sgml:
3748         * docs/gst/tmpl/gstbuffer.sgml:
3749         * docs/gst/tmpl/gstcaps.sgml:
3750         * docs/gst/tmpl/gstclock.sgml:
3751         * docs/gst/tmpl/gstcompat.sgml:
3752         * docs/gst/tmpl/gstconfig.sgml:
3753         * docs/gst/tmpl/gstelement.sgml:
3754         * docs/gst/tmpl/gstelementdetails.sgml:
3755         * docs/gst/tmpl/gstelementfactory.sgml:
3756         * docs/gst/tmpl/gstenumtypes.sgml:
3757         * docs/gst/tmpl/gsterror.sgml:
3758         * docs/gst/tmpl/gstevent.sgml:
3759         * docs/gst/tmpl/gstfakesink.sgml:
3760         * docs/gst/tmpl/gstfakesrc.sgml:
3761         * docs/gst/tmpl/gstfilesink.sgml:
3762         * docs/gst/tmpl/gstfilesrc.sgml:
3763         * docs/gst/tmpl/gstfilter.sgml:
3764         * docs/gst/tmpl/gstformat.sgml:
3765         * docs/gst/tmpl/gstghostpad.sgml:
3766         * docs/gst/tmpl/gstimplementsinterface.sgml:
3767         * docs/gst/tmpl/gstindex.sgml:
3768         * docs/gst/tmpl/gstindexfactory.sgml:
3769         * docs/gst/tmpl/gstinfo.sgml:
3770         * docs/gst/tmpl/gstiterator.sgml:
3771         * docs/gst/tmpl/gstmacros.sgml:
3772         * docs/gst/tmpl/gstmemchunk.sgml:
3773         * docs/gst/tmpl/gstminiobject.sgml:
3774         * docs/gst/tmpl/gstobject.sgml:
3775         * docs/gst/tmpl/gstpad.sgml:
3776         * docs/gst/tmpl/gstpadtemplate.sgml:
3777         * docs/gst/tmpl/gstparse.sgml:
3778         * docs/gst/tmpl/gstpipeline.sgml:
3779         * docs/gst/tmpl/gstplugin.sgml:
3780         * docs/gst/tmpl/gstpluginfeature.sgml:
3781         * docs/gst/tmpl/gstquery.sgml:
3782         * docs/gst/tmpl/gstqueue.sgml:
3783         * docs/gst/tmpl/gstregistry.sgml:
3784         * docs/gst/tmpl/gstregistrypool.sgml:
3785         * docs/gst/tmpl/gstscheduler.sgml:
3786         * docs/gst/tmpl/gstschedulerfactory.sgml:
3787         * docs/gst/tmpl/gststructure.sgml:
3788         * docs/gst/tmpl/gstsystemclock.sgml:
3789         * docs/gst/tmpl/gsttaglist.sgml:
3790         * docs/gst/tmpl/gsttagsetter.sgml:
3791         * docs/gst/tmpl/gsttrace.sgml:
3792         * docs/gst/tmpl/gsttrashstack.sgml:
3793         * docs/gst/tmpl/gsttypefind.sgml:
3794         * docs/gst/tmpl/gsttypefindfactory.sgml:
3795         * docs/gst/tmpl/gsttypes.sgml:
3796         * docs/gst/tmpl/gsturihandler.sgml:
3797         * docs/gst/tmpl/gsturitype.sgml:
3798         * docs/gst/tmpl/gstutils.sgml:
3799         * docs/gst/tmpl/gstvalue.sgml:
3800         * docs/gst/tmpl/gstversion.sgml:
3801         * docs/gst/tmpl/gstxml.sgml:
3802         * docs/libs/tmpl/gstcontrol.sgml:
3803         * docs/libs/tmpl/gstdataprotocol.sgml:
3804         * docs/libs/tmpl/gstdparam.sgml:
3805         * docs/libs/tmpl/gstdplinint.sgml:
3806         * docs/libs/tmpl/gstdpman.sgml:
3807         * docs/libs/tmpl/gstdpsmooth.sgml:
3808         * docs/libs/tmpl/gstgetbits.sgml:
3809         * docs/libs/tmpl/gstunitconvert.sgml:
3810         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
3811         (gst_push_src_base_init), (gst_push_src_class_init),
3812         (gst_push_src_init), (gst_push_src_create):
3813         * gst/base/gstpushsrc.h:
3814         * gst/elements/gstelements.c:
3815         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
3816         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
3817         (gst_fake_sink_init), (gst_fake_sink_set_property),
3818         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
3819         (gst_fake_sink_event), (gst_fake_sink_preroll),
3820         (gst_fake_sink_render), (gst_fake_sink_change_state):
3821         * gst/elements/gstfakesink.h:
3822         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
3823         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
3824         (gst_fake_src_base_init), (gst_fake_src_class_init),
3825         (gst_fake_src_init), (gst_fake_src_event_handler),
3826         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
3827         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
3828         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
3829         (gst_fake_src_create_buffer), (gst_fake_src_create),
3830         (gst_fake_src_start), (gst_fake_src_stop):
3831         * gst/elements/gstfakesrc.h:
3832         * gst/elements/gstfilesink.c: (_do_init),
3833         (gst_file_sink_base_init), (gst_file_sink_class_init),
3834         (gst_file_sink_init), (gst_file_sink_dispose),
3835         (gst_file_sink_set_location), (gst_file_sink_set_property),
3836         (gst_file_sink_get_property), (gst_file_sink_open_file),
3837         (gst_file_sink_close_file), (gst_file_sink_query),
3838         (gst_file_sink_event), (gst_file_sink_render),
3839         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
3840         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
3841         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
3842         * gst/elements/gstfilesink.h:
3843         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
3844         (gst_file_src_class_init), (gst_file_src_init),
3845         (gst_file_src_finalize), (gst_file_src_set_location),
3846         (gst_file_src_set_property), (gst_file_src_get_property),
3847         (gst_file_src_map_region), (gst_file_src_map_small_region),
3848         (gst_file_src_create_mmap), (gst_file_src_create_read),
3849         (gst_file_src_create), (gst_file_src_is_seekable),
3850         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
3851         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
3852         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
3853         (gst_file_src_uri_handler_init):
3854         * gst/elements/gstfilesrc.h:
3855           more autistic cleanliness in functions/names/defines
3857 2005-07-13  Andy Wingo  <wingo@pobox.com>
3859         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
3860         source couldn't negotiate.
3862         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
3863         connections again.
3865         * gst/gstutils.h:
3866         * gst/gstutils.c (gst_element_link_pads_filtered): New old
3867         function. I am channeling Hades. Put your boots on suckers!!!
3869 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3871         * testsuite/caps/Makefile.am:
3872         * testsuite/caps/value_compare.c:
3873         * testsuite/caps/value_intersect.c:
3874         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
3875           move two testsuite apps over to the check dir
3877 2005-07-12  Wim Taymans  <wim@fluendo.com>
3879         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
3880         Added more debug info in the negotiate process.
3882         * gst/gstmessage.h:
3883         Prepare for segment playback.
3885         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
3886         Better debugging.
3888         * gst/gstutils.c:
3889         Some more docs.
3891         * tools/gst-launch.c: (main):
3892         NULL pipeline on errors.
3894 2005-07-12  Andy Wingo  <wingo@pobox.com>
3896         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
3897         not it comes from a malloc region. Make sure our copy gets freed.
3899 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
3901         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
3902         * check/gst/gstmessage.c: (GST_START_TEST):
3903         * check/gst/gststructure.c: (GST_START_TEST),
3904         (gst_structure_suite), (main):
3905           more testing
3906         * gst/gstelement.c: (gst_element_message_full):
3907           clean up GError and debug string now that they get copied
3908         * gst/gstmessage.c: (gst_message_new_error),
3909         (gst_message_new_warning), (gst_message_parse_error),
3910         (gst_message_parse_warning):
3911           use GST_TYPE_G_ERROR for structure_new, and take copies of
3912           arguments, so that we don't mess up refcounting
3914 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
3916         * check/Makefile.am:
3917           add per-test valgrind targets
3918         * check/gst-libs/gdp.c: (GST_START_TEST),
3919         (gst_data_protocol_suite), (main):
3920           clean up
3922 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
3924         * check/Makefile.am:
3925           instate more valgrindable tests
3926         * check/elements/gstfakesrc.c: (chain_func), (event_func),
3927         (GST_START_TEST), (fakesrc_suite):
3928         * check/gst/gstpad.c: (GST_START_TEST):
3929         * check/gst/gststructure.c: (GST_START_TEST):
3930           fix test leaks
3931         * docs/gst/tmpl/gstminiobject.sgml:
3932         * gst/gstpad.c: (gst_pad_finalize):
3933           fix the static mutex leak
3935 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3937         * check/Makefile.am:
3938           add two more tests for valgrinding
3939         * check/gst/gstvalue.c: (GST_START_TEST):
3940           test refcount of deserialized buffer, found a leak
3941         * docs/gst/gstreamer-docs.sgml:
3942         * docs/gst/gstreamer-sections.txt:
3943         * docs/gst/gstreamer.types:
3944         * docs/gst/tmpl/gstminiobject.sgml:
3945           add miniobject to docs
3946         * gst/gstminiobject.c:
3947           add some docs
3948         * gst/gstvalue.c: (gst_value_deserialize_buffer),
3949         (gst_string_unwrap):
3950           fix a hard-to-find invalid write for one of the tests
3951           fix a leak for deserialized buffers
3953 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3955         * docs/pwg/advanced-events.xml:
3956         * docs/pwg/advanced-request.xml:
3957         * docs/pwg/advanced-scheduling.xml:
3958         * docs/pwg/appendix-porting.xml:
3959         * docs/pwg/building-boiler.xml:
3960         * docs/pwg/intro-preface.xml:
3961         * docs/pwg/other-ntoone.xml:
3962           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
3963           of example code and explanation for pad activation, loop() and
3964           getrange() functions and a bit more. Remove old comments pointing
3965           to loop-functions.
3966         * examples/pwg/Makefile.am:
3967           Add loop/getrange examples.
3969 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3971         * configure.ac:
3972           check for valgrind binary + some fixes
3973         * check/gst.supp:
3974           valgrind suppressions for the tests
3975         * check/Makefile.am:
3976           add a valgrind: target that valgrinds the unit tests
3977         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
3978         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
3979         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
3980         * check/gst/gstghostpad.c:
3981           added some cleanup
3982         * check/gst/gstdata.c:
3983           removed
3984         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
3985         (thread_unref), (gst_mini_object_suite), (main):
3986           added
3987         * gst/gst.c: (gst_deinit):
3988         * gst/gst.h:
3989           add a method to clean up.
3990         * gst/gstsystemclock.c: (gst_system_clock_dispose),
3991         (gst_system_clock_obtain):
3992           allow for disposing the system clock.
3993         * tools/gst-launch.c: (main):
3994           deinit
3996 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3998         * docs/gst/tmpl/gstbasesrc.sgml:
3999         * docs/gst/tmpl/gstfakesrc.sgml:
4000         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
4001         (gst_base_src_init), (gst_base_src_set_property),
4002         (gst_base_src_get_property), (gst_base_src_get_range),
4003         (gst_base_src_start):
4004         * gst/base/gstbasesrc.h:
4005           add num-buffers property
4006         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4007         (gst_fakesrc_init), (gst_fakesrc_set_property),
4008         (gst_fakesrc_get_property), (gst_fakesrc_create),
4009         (gst_fakesrc_start):
4010           remove num-buffers property
4012 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4014         * docs/gst/gstreamer-sections.txt:
4015         * docs/gst/tmpl/gstbasesink.sgml:
4016         * docs/gst/tmpl/gstbasesrc.sgml:
4017         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
4018         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
4019         (gst_base_sink_finalize), (gst_base_sink_set_clock),
4020         (gst_base_sink_set_property), (gst_base_sink_get_property),
4021         (gst_base_sink_handle_object), (gst_base_sink_event),
4022         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
4023         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
4024         (gst_base_sink_loop), (gst_base_sink_deactivate),
4025         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
4026         (gst_base_sink_change_state):
4027         * gst/base/gstbasesink.h:
4028         * gst/base/gstbasesrc.h:
4029         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
4030         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
4031         (gst_filesink_init):
4032           more macro splitting
4034 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4036         * gst/gstelement.c: (gst_element_get_bus):
4037           add debug
4038         * tools/gst-launch.c: (check_intr), (event_loop):
4039           fix bus leaks
4041 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4043         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
4044           fix a caps leak
4046 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4048         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
4049         (gst_base_src_finalize):
4050           add finalize method and clean up properly
4051         * gst/gstpipeline.c: (gst_pipeline_dispose):
4052           add debug
4054 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4056         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
4057         (gst_bin_suite):
4058           add more things to check
4059         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
4060         * gst/gstelement.c:
4061           more debug
4063 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4065         * check/elements/gstfakesrc.c: (chain_func), (event_func),
4066         (GST_START_TEST), (fakesrc_suite):
4067         * check/gst-libs/gdp.c: (GST_START_TEST):
4068         * check/gst/gst.c: (GST_START_TEST):
4069         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
4070         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
4071         * check/gst/gstbus.c: (GST_START_TEST):
4072         * check/gst/gstcaps.c: (GST_START_TEST):
4073         * check/gst/gstdata.c: (GST_START_TEST):
4074         * check/gst/gstelement.c: (GST_START_TEST):
4075         * check/gst/gstghostpad.c: (GST_START_TEST):
4076         * check/gst/gstiterator.c: (GST_START_TEST):
4077         * check/gst/gstmessage.c: (GST_START_TEST):
4078         * check/gst/gstobject.c: (GST_START_TEST):
4079         * check/gst/gstpad.c: (GST_START_TEST):
4080         * check/gst/gststructure.c: (GST_START_TEST):
4081         * check/gst/gstsystemclock.c: (GST_START_TEST),
4082         (gst_systemclock_suite):
4083         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
4084         * check/gst/gstvalue.c: (GST_START_TEST):
4085         * check/pipelines/cleanup.c: (GST_START_TEST):
4086         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
4087         * check/states/sinks.c: (GST_START_TEST):
4088         * check/gstcheck.c: (gst_check_init):
4089         * check/gstcheck.h:
4090           add debugging category
4091           use GST_START_TEST now, so we add a debug line
4093 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4095         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
4096           add test for state change message on a bin
4097         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
4098           add another test
4099         * gst/gstbin.c: (gst_bin_init):
4100         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
4101         * gst/gstelement.c: (gst_element_post_message),
4102         (gst_element_set_state):
4103         * gst/gstelementfactory.c: (gst_element_factory_create):
4104         * gst/gstmessage.c: (gst_message_new):
4105         * gst/gstscheduler.c:
4106           various debugging additions and cleanups
4108 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4110         * check/Makefile.am:
4111         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
4112         (main):
4113           adding tests for elements
4114         * gst/gstelement.c: (gst_element_dispose):
4116 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4118         * gst/registries/gstlibxmlregistry.c: (load_feature):
4119           plug more leaks.  A simple gst_init() now is leakfree, yay.
4121 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4123         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
4124         (gst_xml_registry_load):
4125           plug another memleak
4127 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4129         * configure.ac:
4130           use GST_SET_ERROR_CFLAGS
4131         * docs/faq/cvs.xml:
4132           change to ERROR_CFLAGS
4134 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4136         * configure.ac:
4137           make GST_ERROR_CFLAGS overridable and re-enable Werror
4138         * docs/faq/cvs.xml:
4139           add a note about error CFLAGS
4140         * docs/gst/tmpl/gstfakesrc.sgml:
4141         * gst/elements/gstfakesrc.c:
4142           comment out some unused code
4143         * gst/gst.c: (split_and_iterate):
4144         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
4145         (load_feature):
4146           plug some memleaks
4148 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4150         * common/Makefile.am:
4151         * common/gtk-doc.mak:
4152         * docs/gst/Makefile.am:
4153           factor out gtk-doc.mak
4155 2005-07-07  Wim Taymans  <wim@fluendo.com>
4157         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
4158         (gst_thread_scheduler_dispose):
4159         Unlock the STREAM_LOCK completely.
4161 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4163         * check/Makefile.am:
4164         * check/elements/.cvsignore: