Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't spew out a warning if a tag...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
2
3         * docs/gst/gstreamer-sections.txt:
4         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
5         * gst/gsttag.h:
6           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
7           spew out a warning if a tag that is already registered
8           is re-registered, unless it is re-registered with a 
9           different type (#308438).
10
11 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
12
13         * docs/pwg/appendix-porting.xml:
14         * docs/pwg/building-state.xml:
15           Add some paragraphs about state changes in 0.9 to the PWG
16           and the porting guide, in particular about the new meaning
17           of GST_STATE_PAUSED and how to write state change functions
18           with concurrent access by multiple threads in mind.
19
20 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
21
22         * docs/gst/gstreamer-docs.sgml:
23         * docs/libs/gstreamer-libs-docs.sgml:
24           added deprecation and since indexes
25         * libs/gst/controller/gst-controller.c:
26         * libs/gst/controller/gst-helper.c:
27           added since tags
28
29
30 2005-08-11  Wim Taymans  <wim@fluendo.com>
31
32         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
33         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
34         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
35         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
36         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
37         (gst_ghost_pad_set_target):
38         Actually implement (re)setting the target on a ghostpad
39         as described in the docs.
40
41 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
42
43         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
44           Check whether GST_DEBUG_NO_COLOR environment variable is
45           set and disable coloured debug output if that is the case.
46
47 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
48
49         * gst/base/gsttypefindhelper.c: (helper_find_peek),
50         (gst_type_find_helper):
51           The memory returned by gst_type_find_peek() needs to
52           stay valid until the end of a typefind function, and
53           typefind functions may keep results from different 
54           offsets around, so we can't just unref the buffer from
55           the previous _peek(), but have to save all buffers 
56           returned by _peek() until typefinding is done and only
57           free them then.
58
59 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
60
61         * docs/gst/gstreamer-sections.txt:
62         * gst/gstutils.h:
63           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
64
65 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
66
67         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
68           Fix a pretty good memleak.
69
70 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
71
72         * gst/gstiterator.h:
73           Fix wrong include and 'make distcheck'.
74
75 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
76
77         * gst/gstbin.c: (bin_bus_handler):
78           Use gst_element_post_message() instead.
79
80 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
81
82         * gst/base/gstadapter.h:
83         * gst/base/gstbasesink.h:
84         * gst/base/gstbasesrc.h:
85         * gst/base/gstbasetransform.h:
86         * gst/base/gstcollectpads.h:
87         * gst/base/gstpushsrc.h:
88         * gst/gstiterator.h:
89           Add padding to our base elements' class and instance structs and
90           to GstIterator (you will need to rebuild all plugins and apps!)
91
92 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
93
94         * gst/gstbin.c: (bin_bus_handler):
95           Make default message forwarding from child->bus to bin->bus
96           threadsafe and make it not emit warnings if the parent has no bus.
97
98 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
99
100         * gst/gstelement.c: (activate_pads):
101           On paused->ready, set pad->caps to NULL, as is the documented
102           behaviour in this state change. Fixes playback of series of
103           media files when visualization is enabled in Totem.
104
105 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
106
107         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
108           Allow NULL as filter-caps (which means "any").
109
110 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
111
112         * docs/libs/gstreamer-libs-sections.txt:
113         * libs/gst/controller/gst-controller.c:
114         * libs/gst/controller/gst-controller.h:
115         * libs/gst/controller/gst-helper.c:
116           adding more entries to the docs and fix small doc-bugs
117
118 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
119
120         * docs/gst/gstreamer-docs.sgml:
121         * docs/gst/gstreamer-sections.txt:
122         * docs/gst/gstreamer.types:
123         * docs/gst/tmpl/gstbasesink.sgml:
124         * docs/gst/tmpl/gstbasesrc.sgml:
125         * docs/gst/tmpl/gstbasetransform.sgml:
126         * docs/gst/tmpl/gstfakesrc.sgml:
127         * gst/base/gstcollectpads.c:
128         * gst/base/gstcollectpads.h:
129         * libs/gst/controller/gst-controller.c:
130         * libs/gst/controller/gst-controller.h:
131         * libs/gst/controller/gst-helper.c:
132         * libs/gst/controller/gst-interpolation.c:
133         * libs/gst/controller/lib.c:
134           added long/short desc for controller docs
135           added collectpads base class docs
136           added correct includes to base-class docs
137
138 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
139
140         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
141         (gst_test_mono_source_set_property),
142         (gst_test_mono_source_class_init), (GST_START_TEST),
143         (gst_controller_suite):
144         * docs/gst/gstreamer-docs.sgml:
145         * docs/gst/gstreamer-sections.txt:
146         * docs/gst/gstreamer.types:
147         * docs/libs/gstreamer-libs-docs.sgml:
148         * docs/libs/gstreamer-libs-sections.txt:
149         * gst/base/gstadapter.c:
150         * libs/gst/controller/gst-controller.c:
151         (gst_controlled_property_new), (gst_controlled_property_free),
152         (gst_controller_new_valist),
153         (gst_controller_remove_properties_valist),
154         (gst_controller_sink_values), (_gst_controller_finalize):
155         * libs/gst/controller/gst-controller.h:
156         * libs/gst/controller/gst-helper.c:
157         (gst_object_control_properties), (gst_object_uncontrol_properties),
158         (gst_object_get_controller), (gst_object_set_controller),
159         (gst_object_sink_values), (gst_object_get_value_arrays),
160         (gst_object_get_value_array):
161           more tests (and fixes) for the controller
162           more docs for the controller
163           integrated companies docs for the adapter 
164
165 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
166
167         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
168         (GST_START_TEST), (fakesrc_suite):
169           add tests for sizetype
170
171 2005-08-04  Andy Wingo  <wingo@pobox.com>
172
173         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
174         fixes buffer_alloc proxying among other things.
175
176         * gst/base/gstbasetransform.c:
177         * gst/base/gstbasetransform.h:
178         Revert patch to gstbasetransform from 7-28 removing
179         delay_configure.
180
181         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
182         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
183         Semantics changed, should return not the size of the output buffer
184         but the byte size of a buffer with a given caps.
185
186         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
187         debug object.
188         (gst_base_transform_configure_caps): Don't set out_size here: (in,
189         out) are not the pad caps until setcaps finishes.
190         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
191         not-in-place case as well. Deal with changing from in-place to
192         not-in-place within calling pad_alloc_buffer. Still a bit
193         concerned about the overhead here...
194
195 2005-08-03  Andy Wingo  <wingo@pobox.com>
196
197         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
198         fixating is an error.
199
200 2005-08-04  Edward Hervey  <edward@fluendo.com>
201
202         * gst/base/gstadapter.h: 
203         Added gst_adapter_get_type() to the header
204
205 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
206
207         * check/Makefile.am:
208         * check/gst-libs/controller.c:
209         * libs/gst/controller/gst-controller.c:
210         (gst_controller_new_valist):
211           added check test suite for the controller
212         * gst/base/gstpushsrc.c:
213           fixed a doc typo
214
215 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
216
217         * docs/gst/Makefile.am:
218         * docs/gst/gstreamer-docs.sgml:
219         * docs/gst/gstreamer-sections.txt:
220         * docs/gst/gstreamer.types:
221         * docs/gst/tmpl/gstfakesrc.sgml:
222         * gst/base/README:
223         * gst/base/gstbasesink.c:
224         * gst/base/gstbasesink.h:
225         * gst/base/gstbasesrc.c:
226         * gst/base/gstbasesrc.h:
227         * gst/base/gstbasetransform.c:
228         * gst/base/gstpushsrc.c:
229         * gst/base/gstpushsrc.h:
230           add short/long description docs to base classes
231           add pushsrc to the docs
232           remove consolidated doc fragments
233
234 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
235
236         * configure.ac:
237         * docs/libs/Makefile.am:
238         * docs/libs/gstreamer-libs-docs.sgml:
239         * docs/libs/gstreamer-libs-sections.txt:
240         * docs/libs/gstreamer-libs.types:
241         * examples/Makefile.am:
242         * examples/controller/.cvsignore:
243         * examples/controller/Makefile.am:
244         * examples/controller/audio-example.c: (main):
245         * libs/gst/Makefile.am:
246         * libs/gst/controller/.cvsignore:
247         * libs/gst/controller/Makefile.am:
248         * libs/gst/controller/gst-controller.c:
249         (on_object_controlled_property_changed), (gst_timed_value_compare),
250         (gst_timed_value_find),
251         (gst_controlled_property_set_interpolation_mode),
252         (gst_controlled_property_new), (gst_controlled_property_free),
253         (gst_controller_find_controlled_property),
254         (gst_controller_new_valist), (gst_controller_new),
255         (gst_controller_remove_properties_valist),
256         (gst_controller_remove_properties), (gst_controller_set),
257         (gst_controller_set_from_list), (gst_controller_unset),
258         (gst_controller_get), (gst_controller_get_all),
259         (gst_controller_sink_values), (gst_controller_get_value_arrays),
260         (gst_controller_get_value_array),
261         (gst_controller_set_interpolation_mode),
262         (_gst_controller_finalize), (_gst_controller_init),
263         (_gst_controller_class_init), (gst_controller_get_type):
264         * libs/gst/controller/gst-controller.h:
265         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
266         (g_object_uncontrol_properties), (g_object_get_controller),
267         (g_object_set_controller), (g_object_sink_values),
268         (g_object_get_value_arrays), (g_object_get_value_array):
269         * libs/gst/controller/gst-interpolation.c:
270         (gst_controlled_property_find_timed_value_node),
271         (interpolate_none_get), (interpolate_trigger_get),
272         (interpolate_trigger_get_value_array):
273         * libs/gst/controller/lib.c: (gst_controller_init):
274         * pkgconfig/Makefile.am:
275         * pkgconfig/gstreamer-control-uninstalled.pc.in:
276         * pkgconfig/gstreamer-control.pc.in:
277         * testsuite/Makefile.am:
278         * testsuite/controller/.cvsignore:
279         * testsuite/controller/Makefile.am:
280         * testsuite/controller/interpolator.c: (main):
281           added controller code
282           removed dparam pc files
283
284 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
285         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
286         (gst_collectpads_stop):
287           Broadcast the condition when shutting down, to make sure we wake all
288           threads up. Shut down pads on finalize, for safety.
289
290 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
291         * gst/base/gstbasetransform.c: (gst_base_transform_init),
292         (gst_base_transform_handle_buffer),
293         (gst_base_transform_change_state):
294           Handle PAUSED->READY->PAUSED transition after negotiation
295           occurred already.
296         * gst/gstmessage.c: (gst_message_init):
297           Extra piece of debug for new messages.
298
299 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
300
301         * configure.ac:
302         * docs/gst/tmpl/gstbasesrc.sgml:
303         * docs/gst/tmpl/gstelement.sgml:
304         * docs/gst/tmpl/gstevent.sgml:
305         * docs/gst/tmpl/gstfakesrc.sgml:
306         * docs/gst/tmpl/gstformat.sgml:
307         * docs/gst/tmpl/gstghostpad.sgml:
308         * docs/gst/tmpl/gstpad.sgml:
309         * docs/gst/tmpl/gstquery.sgml:
310         * docs/gst/tmpl/gststructure.sgml:
311         * docs/gst/tmpl/gsttaglist.sgml:
312         * docs/gst/tmpl/gstvalue.sgml:
313         * docs/libs/gstreamer-libs-docs.sgml:
314         * docs/libs/gstreamer-libs-sections.txt:
315         * docs/libs/gstreamer-libs.types:
316         * libs/gst/Makefile.am:
317         * libs/gst/control/.cvsignore:
318         * libs/gst/control/Makefile.am:
319         * libs/gst/control/control.c:
320         * libs/gst/control/control.h:
321         * libs/gst/control/dparam.c:
322         * libs/gst/control/dparam.h:
323         * libs/gst/control/dparam_smooth.c:
324         * libs/gst/control/dparam_smooth.h:
325         * libs/gst/control/dparamcommon.h:
326         * libs/gst/control/dparammanager.c:
327         * libs/gst/control/dparammanager.h:
328         * libs/gst/control/dplinearinterp.c:
329         * libs/gst/control/dplinearinterp.h:
330         * libs/gst/control/unitconvert.c:
331         * libs/gst/control/unitconvert.h:
332         * testsuite/Makefile.am:
333         * testsuite/dynparams/.cvsignore:
334         * testsuite/dynparams/Makefile.am:
335         * testsuite/dynparams/dparamstest.c:
336         * tools/Makefile.am:
337         * tools/gst-inspect.c: (print_element_info), (main):
338         * tools/gst-xmlinspect.c: (print_element_info), (main):
339           deactivate and remove dparams (libgstcontrol)
340
341 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
342
343         * gst/elements/gsttypefindelement.c:
344         (gst_type_find_element_have_type), (gst_type_find_element_init),
345         (stop_typefinding), (gst_type_find_element_handle_event),
346         (gst_type_find_element_chain), (gst_type_find_element_getrange):
347         * gst/elements/gsttypefindelement.h:
348           Set caps on all outgoing buffers, not just the first one.
349
350 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
351
352         * gst/elements/gsttypefindelement.c:
353         (gst_type_find_element_have_type),
354         (gst_type_find_element_check_set_buffer_caps),
355         (gst_type_find_element_init), (stop_typefinding),
356         (gst_type_find_element_handle_event),
357         (gst_type_find_element_chain), (gst_type_find_element_getrange):
358         * gst/elements/gsttypefindelement.h:
359           Set caps on first outgoing buffer when we've found the type.
360
361 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
362
363         * docs/gst/gstreamer-docs.sgml:
364         * docs/gst/gstreamer-sections.txt:
365         * docs/gst/tmpl/gstscheduler.sgml:
366         * docs/gst/tmpl/gstschedulerfactory.sgml:
367           Remove some old cruft from docs.
368
369 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
370
371         * gst/gstpad.h:
372           Fix inline docs for GstPadLinkReturn.
373           
374         * gst/gststructure.c: (gst_structure_has_name):
375         * gst/gststructure.h:
376         * docs/gst/gstreamer-sections.txt:
377           New API: gst_structure_has_name().
378
379 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
380
381         * configure.ac:
382           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
383           and _LARGEFILE_SOURCE in config.h as required. Do not 
384           export those flags in our .pc files any longer (#142209).
385
386           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
387
388         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
389         (gst_file_sink_do_seek), (gst_file_sink_event),
390         (gst_file_sink_get_current_offset), (gst_file_sink_render):
391           Redo seek/tell calls with large file support in mind; add some
392           debugging messages; add log message that tells us when large
393           file support is unavailable or not enabled for some reason.
394
395         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
396           Add log message that tells us when large file support 
397           is unavailable or not enabled for some reason.
398
399 2005-07-29  Wim Taymans  <wim@fluendo.com>
400
401         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
402         Added test for removing an element with ghostpad from a bin.
403         Fixed test as current implementation does the right thing.
404
405         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
406         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
407         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
408         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
409         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
410         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
411         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
412         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
413         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
414         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
415         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
416         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
417         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
418         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
419         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
420         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
421         * gst/gstghostpad.h:
422         Clean up ghostpads, remove properties for internal stuff.
423         Make threadsafe.
424         Fix refcounting.
425         Prepare for switching targets, not all use cases work yet.
426
427 2005-07-29  Wim Taymans  <wim@fluendo.com>
428
429         * docs/design/part-gstghostpad.txt:
430         Small update.
431
432         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
433         (gst_bin_remove_func):
434         Unlinking pads while holding the bin LOCK is not a good
435         idea.
436
437         * gst/gstpad.c: (gst_pad_class_init),
438         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
439         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
440         No prob setting template after creating the pad.
441
442 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
443
444         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
445         (gst_bus_peek), (gst_bus_source_dispatch),
446         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
447         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
448           gst_bus_poll may be called from other threads. Handle
449           this nicely by not making poll_data disappear off the
450           stack once gst_bus_poll returns.
451           gst_bus_peek now increments the refcount on the returned
452           message.
453
454 2005-07-29  Wim Taymans  <wim@fluendo.com>
455
456         * docs/design/part-gstghostpad.txt:
457         Overview of current GhostPad datastructures and use
458         cases for changing the target.
459
460 2005-07-28  Wim Taymans  <wim@fluendo.com>
461
462         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
463         Added checks for hierarchy consistency whan adding linked
464         elements to bins.
465
466         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
467         Added check to test element scheduling without bin/pipeline.
468
469         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
470         First add elements to bin, then link.
471         
472         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
473         (gst_bin_remove_func):
474         Unlink pads from elements added/removed from bin to maintain
475         hierarchy consistency.
476
477 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
478
479         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
480         (gst_base_transform_handle_buffer):
481         * gst/base/gstbasetransform.h:
482           Remove broken delay_configure (fixes renegotiation of software
483           scaling pipelines); remove some leftover printf()s.
484
485 2005-07-28  Wim Taymans  <wim@fluendo.com>
486
487         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
488         Added some more tests for wrong hierarchy
489
490         * docs/design/part-overview.txt:
491         Some updates.
492
493         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
494         Cleanups.
495
496         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
497         (gst_element_dispose):
498         Some more cleanups.
499
500         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
501         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
502         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
503         (gst_pad_set_caps), (gst_pad_send_event):
504         Check for correct hierarchy when linking pads. Moving to
505         strict requirement for ghostpads when linking elements in
506         different bins.
507
508         * gst/gstpad.h:
509         Clean ups. Added WRONG_HIERARCHY return value.
510
511 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
512
513         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
514           Better debug if no transform is possible.
515
516 2005-07-27  Wim Taymans  <wim@fluendo.com>
517
518         * docs/random/wtay/network-transp:
519         Some old doc I had.
520
521 2005-07-27  Wim Taymans  <wim@fluendo.com>
522
523         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
524         (gst_dp_event_from_packet):
525         Fix serialization of seek events.
526
527 2005-07-27  Wim Taymans  <wim@fluendo.com>
528
529         * check/gst-libs/gdp.c: (GST_START_TEST):
530         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
531         Fix compilation and fix event serialization.
532
533 2005-07-27  Wim Taymans  <wim@fluendo.com>
534
535         * CHANGES-0.9:
536         * docs/design/part-TODO.txt:
537         * docs/design/part-events.txt:
538         Some docs updates
539
540         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
541         (gst_base_sink_event), (gst_base_sink_do_sync),
542         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
543         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
544         (gst_base_src_do_seek), (gst_base_src_event_handler),
545         (gst_base_src_loop):
546         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
547         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
548         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
549         (gst_base_transform_event), (gst_base_transform_handle_buffer),
550         (gst_base_transform_set_passthrough),
551         (gst_base_transform_is_passthrough):
552         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
553         * gst/elements/gstfilesink.c: (gst_file_sink_event):
554         Event updates.
555
556         * gst/gstbuffer.h:
557         Use faster casts.
558
559         * gst/gstelement.c: (gst_element_seek):
560         * gst/gstelement.h:
561         Update gst_element_seek.
562
563         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
564         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
565         (gst_event_new_flush_start), (gst_event_new_flush_stop),
566         (gst_event_new_eos), (gst_event_new_newsegment),
567         (gst_event_parse_newsegment), (gst_event_new_tag),
568         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
569         (gst_event_parse_qos), (gst_event_new_seek),
570         (gst_event_parse_seek), (gst_event_new_navigation):
571         * gst/gstevent.h:
572         Make GstEvent use GstStructure. Add parsing code, make sure the
573         API is sufficiently generic.
574         Mark possible directions of events and serialization.
575
576         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
577         (_gst_message_copy), (gst_message_new_segment_start),
578         (gst_message_new_segment_done), (gst_message_new_custom),
579         (gst_message_parse_segment_start),
580         (gst_message_parse_segment_done):
581         Small cleanups.
582
583         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
584         (gst_pad_set_caps), (gst_pad_send_event):
585         Update for new events. 
586         Catch events sent in wrong directions.
587
588         * gst/gstqueue.c: (gst_queue_link_src),
589         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
590         (gst_queue_handle_src_query):
591         Event updates.
592
593         * gst/gsttag.c:
594         * gst/gsttag.h:
595         Remove event code from this file.
596
597         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
598         (gst_dp_event_from_packet):
599         Event updates.
600
601 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
602
603         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
604         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
605         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
606           Make debugging actually useful.
607
608 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
609
610         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
611         (gst_pad_fixate_caps):
612           Implement default fixation once again, so that gst_pad_fixate()
613           actually does anything at all. This probably needs to be some
614           sort of a last resort, and use profile-based fixation first, but
615           since that doesn't exist yet, this is the best we have. Fixes
616           visualization in Totem.
617
618 2005-07-22  Wim Taymans  <wim@fluendo.com>
619
620         * docs/design/part-events.txt:
621         Small update.
622
623         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
624         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
625         (gst_base_sink_activate_pull):
626         Some more comments.
627
628         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
629         (gst_fake_src_create):
630         Fix handoff marshall.
631
632         * gst/elements/gstidentity.c: (gst_identity_class_init),
633         (gst_identity_transform_ip):
634         We're a real inplace element.
635
636         * gst/gstbus.c: (gst_bus_post):
637         Added some comments.
638
639         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
640         * tests/muxing/case1.c: (main):
641         * tests/sched/dynamic-pipeline.c: (main):
642         * tests/sched/interrupt1.c: (main):
643         * tests/sched/interrupt2.c: (main):
644         * tests/sched/interrupt3.c: (main):
645         * tests/sched/runxml.c: (main):
646         * tests/sched/sched-stress.c: (main):
647         * tests/seeking/seeking1.c: (event_received), (main):
648         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
649         (main):
650         * tests/threadstate/threadstate3.c: (main):
651         * tests/threadstate/threadstate4.c: (main):
652         * tests/threadstate/threadstate5.c: (main):
653         Fix the tests.
654
655 2005-07-21  Wim Taymans  <wim@fluendo.com>
656
657         * docs/design/part-seeking.txt:
658         Some small additions.
659
660         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
661         (gst_base_sink_get_times), (gst_base_sink_do_sync),
662         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
663         * gst/base/gstbasesink.h:
664         discont values are gint64, handle the math correctly.
665
666         * gst/base/gstbasesrc.c: (gst_base_src_loop):
667         Make the basesrc report error if the source pad is not linked.
668
669         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
670         (gst_queue_loop), (gst_queue_handle_src_query),
671         (gst_queue_src_activate_push):
672         Make queue collect data even if the srcpad is not linked.
673         Start pushing out data as soon as it is linked.
674
675         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
676         * gst/gstutils.h:
677         Added gst_flow_get_name() to ease error reporting.
678
679 2005-07-20  Wim Taymans  <wim@fluendo.com>
680
681         * gst/gstmessage.c: (gst_message_new_segment_start),
682         (gst_message_new_segment_done), (gst_message_parse_segment_start),
683         (gst_message_parse_segment_done):
684         * gst/gstmessage.h:
685         Added a bunch of messages for advanced seeking.
686
687         * gst/parse/grammar.y:
688         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
689         (gst_dpman_state_changed):
690         Fix some new-pad -> pad-added signals
691
692 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
693
694         * docs/manual/appendix-porting.xml:
695         * docs/pwg/appendix-porting.xml:
696           Document new-pad/state-change signal renames and the FixedList
697           type rename.
698
699 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
700
701         * docs/manual/advanced-autoplugging.xml:
702         * docs/manual/basics-helloworld.xml:
703         * docs/manual/basics-pads.xml:
704         * docs/random/ds/0.9-suggested-changes:
705         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
706         * gst/gstelement.h:
707         * gst/gstevent.h:
708         * gst/gstformat.h:
709         * gst/gstquery.h:
710         * gst/gststructure.c: (gst_structure_value_get_generic_type),
711         (gst_structure_parse_array), (gst_structure_parse_value):
712         * gst/gstvalue.c: (gst_type_is_fixed),
713         (gst_value_list_prepend_value), (gst_value_list_append_value),
714         (gst_value_list_get_size), (gst_value_list_get_value),
715         (gst_value_transform_array_string), (gst_value_serialize_array),
716         (gst_value_deserialize_array), (gst_value_intersect_array),
717         (gst_value_is_fixed), (_gst_value_initialize):
718         * gst/gstvalue.h:
719           GstElement::new-pad -> pad-added, GstElement::state-change ->
720           state-changed, GstValueFixedList -> GstValueArray, add format and
721           flags as their own arguments in gst_element_seek() (should improve
722           "bindeability"), remove function generators since they don't work
723           under a whole bunch of compilers (they were deprecated already
724           anyway).
725
726 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
727
728         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
729         (_gst_debug_register_funcptr):
730         * gst/gstinfo.h:
731           Fix illegal cast on some platforms (#309253).
732
733 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
734
735         * gst/gstmessage.c: (gst_message_new_custom):
736         * gst/gstmessage.h:
737           Add _new_custom, make _new_application a macro to _new_custom.
738
739 2005-07-20  Wim Taymans  <wim@fluendo.com>
740
741         * gst/base/gstbasesrc.c: (gst_base_src_init),
742         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
743         * gst/base/gstbasesrc.h:
744         Add a gboolean to decide when to push out a discont.
745
746         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
747         (gst_queue_loop), (gst_queue_handle_src_query),
748         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
749         (gst_queue_set_property), (gst_queue_get_property):
750         Some cleanups.
751
752         * tests/threadstate/threadstate1.c: (main):
753         Make a thread test compile and run... very silly..
754
755
756 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
757
758         * docs/manual/appendix-porting.xml:
759           Mention removal of libgstgconf-0.9.la and existence of gconf
760           elements.
761
762 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
763
764         * docs/pwg/advanced-clock.xml:
765         * docs/pwg/appendix-porting.xml:
766         * docs/pwg/intro-preface.xml:
767         * docs/pwg/other-base.xml:
768         * docs/pwg/other-manager.xml:
769         * docs/pwg/other-nton.xml:
770         * docs/pwg/other-ntoone.xml:
771         * docs/pwg/other-oneton.xml:
772         * docs/pwg/pwg.xml:
773           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
774           demuxer), remove n-to-n (was never written), fix some code examples
775           and links and update the porting section to include all this.
776
777 2005-07-19  Wim Taymans  <wim@fluendo.com>
778
779         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
780         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
781         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
782         (gst_queue_src_activate_push), (gst_queue_change_state),
783         (gst_queue_get_property):
784         * gst/gstqueue.h:
785         Propagate GstFlowReturn more intelligently upstream and output
786         an ERROR/EOS when streaming stopped due to fatal error.
787
788 2005-07-19  Wim Taymans  <wim@fluendo.com>
789
790         * tools/gst-launch.c: (check_intr), (event_loop), (main):
791         Don't block forever for the state change to complete, the
792         pipeline already did with a sensible timeout.
793
794 2005-07-19  Wim Taymans  <wim@fluendo.com>
795
796         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
797         Make sure we never call the create function is we
798         got deactivated.
799
800 2005-07-19  Andy Wingo  <wingo@pobox.com>
801
802         * gst/parse/parse.l: Attempt to solve bug #172815.
803
804 2005-07-19  Wim Taymans  <wim@fluendo.com>
805
806         * docs/design/part-clocks.txt:
807         * docs/design/part-events.txt:
808         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
809         Small docs updates.
810         Only update the seeking values when we are not
811         busy streaming.
812
813 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
814
815         * gst/base/gstbasesrc.c: (gst_base_src_loop):
816           Oops, ignore the result of gst_pad_push_event here.
817
818 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
819
820         * gst/base/gstbasesrc.c: (gst_base_src_loop),
821         (gst_base_src_activate_push):
822           Send discont event from the loop function, as pads
823           aren't activated yet in the activate_push handler.
824
825         * gst/gstbin.c: (bin_bus_handler):
826           Don't leak element name.
827
828 2005-07-18  Andy Wingo  <wingo@pobox.com>
829
830         * configure.ac: Use AS_LIBTOOL_TAGS.
831
832 2005-07-18  Wim Taymans  <wim@fluendo.com>
833
834         * docs/gst/gstreamer.types:
835         Remove deleted types.
836
837 2005-07-18  Wim Taymans  <wim@fluendo.com>
838
839         * check/elements/gstfakesrc.c: (GST_START_TEST):
840         * configure.ac:
841         * gst/Makefile.am:
842         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
843         (init_popt_callback):
844         * gst/gst.h:
845         * gst/gst_private.h:
846         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
847         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
848         * gst/gstbin.h:
849         * gst/gstbus.h:
850         * gst/gstconfig.h.in:
851         * gst/gstelement.c: (gst_element_class_init),
852         (gst_element_set_base_time), (gst_element_get_base_time),
853         (iterator_fold_with_resync), (gst_element_change_state),
854         (gst_element_dispose), (gst_element_get_bus):
855         * gst/gstelement.h:
856         * gst/gstelementfactory.h:
857         * gst/gsterror.c: (_gst_core_errors_init):
858         * gst/gsterror.h:
859         * gst/gstevent.h:
860         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
861         * gst/gstindex.c:
862         * gst/gstinfo.c: (_gst_debug_init):
863         * gst/gstmessage.c: (_gst_message_copy):
864         * gst/gstmessage.h:
865         * gst/gstminiobject.h:
866         * gst/gstobject.c:
867         * gst/gstobject.h:
868         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
869         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
870         * gst/gstpad.h:
871         * gst/gstparse.h:
872         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
873         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
874         (gst_pipeline_get_last_stream_time):
875         * gst/gstpipeline.h:
876         * gst/gstpluginfeature.h:
877         * gst/gstquery.h:
878         * gst/gstscheduler.c:
879         * gst/gstscheduler.h:
880         * gst/gststructure.h:
881         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
882         (gst_task_finalize), (gst_task_func), (gst_task_create),
883         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
884         (gst_task_stop), (gst_task_pause):
885         * gst/gsttask.h:
886         * gst/gsttypefind.h:
887         * gst/gsttypes.h:
888         * gst/registries/gstlibxmlregistry.c: (load_feature),
889         (gst_xml_registry_load), (gst_xml_registry_save_feature):
890         * gst/registries/gstxmlregistry.c:
891         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
892         * gst/schedulers/threadscheduler.c:
893         * libs/gst/control/dparammanager.h:
894         * tools/gst-inspect.c: (print_element_list),
895         (print_plugin_features), (print_element_features):
896         * tools/gst-xmlinspect.c: (print_element_list),
897         (print_plugin_info), (main):
898         Removed plugable schedulers.
899         Removed Scheduler/Manager from elements.
900         Removed gsttypes.h, rearranged includes.
901         Removed dependency pad<->element, element<>pipeline, and
902         various others,  fix includes.
903         implement gst_pad_get_parent() with gst_object_get_parent()
904         Make GstTask sefcontained.
905         Fix _get_state() on GstBin, it did not return ASYNC with a 0
906         timeout.
907         Fix endless loop in iterator_fold_with_resync.
908
909
910 2005-07-18  Wim Taymans  <wim@fluendo.com>
911
912         * gst/Makefile.am:
913         * gst/gstarch.h:
914         Remove old file.
915
916 2005-07-18  Wim Taymans  <wim@fluendo.com>
917
918         * gst/Makefile.am:
919         No more cothreads.h
920
921 2005-07-18  Wim Taymans  <wim@fluendo.com>
922
923         * gst/cothreads.c:
924         * gst/cothreads.h:
925         Let's remove these.
926
927 2005-07-18  Wim Taymans  <wim@fluendo.com>
928
929         * docs/design/part-dynamic.txt:
930         * docs/design/part-events.txt:
931         * docs/design/part-seeking.txt:
932         Some more docs in the works.
933
934         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
935         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
936         (gst_base_transform_setcaps), (gst_base_transform_get_size),
937         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
938         (gst_base_transform_handle_buffer),
939         (gst_base_transform_sink_activate_push),
940         (gst_base_transform_src_activate_pull),
941         (gst_base_transform_set_passthrough),
942         (gst_base_transform_is_passthrough):
943         Refcounting fixes.
944
945         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
946         Cleanups.
947
948         * gst/gstevent.c: (gst_event_finalize):
949         Set SRC to NULL.
950
951         * gst/gstutils.c: (gst_element_unlink),
952         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
953         (gst_pad_proxy_setcaps):
954         * gst/gstutils.h:
955         Add _get_parent_element() to get a pads parent as an element.
956
957 2005-07-18  Wim Taymans  <wim@fluendo.com>
958
959         * check/gst/gstbin.c: (GST_START_TEST):
960         Remove bogus test.
961
962 2005-07-18  Wim Taymans  <wim@fluendo.com>
963
964         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
965         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
966         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
967         (gst_base_sink_event), (gst_base_sink_do_sync),
968         (gst_base_sink_chain), (gst_base_sink_loop),
969         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
970         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
971         Refcounting fixes.
972         Fix logic for returning ASYNC when not prerolled.
973
974 2005-07-18  Wim Taymans  <wim@fluendo.com>
975
976         * gst/gstqueue.c: (gst_queue_handle_sink_event):
977         Fix nasty refcount bug.
978
979 2005-07-16 Philippe Khalaf <burger@speedy.org>
980         * gst/elements/gstfdsrc.c:
981         * gst/elements/gstfdsrc.h:
982         * gst/elements/gstelements.c:
983         * gst/elements/Makefile.am:
984         Ported fdsrc to 0.9.
985
986 2005-07-16  Wim Taymans  <wim@fluendo.com>
987
988         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
989         (gst_base_sink_do_sync):
990         Fix compile error.
991
992 2005-07-16  Wim Taymans  <wim@fluendo.com>
993
994         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
995         (gst_base_sink_event), (gst_base_sink_get_times),
996         (gst_base_sink_do_sync), (gst_base_sink_change_state):
997         * gst/base/gstbasesink.h:
998         Store and use discont values when syncing buffers as described
999         in design docs.
1000         
1001         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1002         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
1003         (gst_base_src_activate_push):
1004         Push discont event when starting.
1005
1006         * gst/elements/gstidentity.c: (gst_identity_transform):
1007         Small cleanups.
1008
1009         * gst/gstbin.c: (gst_bin_change_state):
1010         Small cleanups in base_time  distribution.
1011
1012         * gst/gstelement.c: (gst_element_set_base_time),
1013         (gst_element_get_base_time), (gst_element_change_state):
1014         * gst/gstelement.h:
1015         Added methods for the base_time of the element.
1016         Some MT fixes.
1017
1018         * gst/gstpipeline.c: (gst_pipeline_send_event),
1019         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1020         (gst_pipeline_get_last_stream_time):
1021         * gst/gstpipeline.h:
1022         MT fixes.
1023         Handle seeking as described in design doc, remove stream_time
1024         hack.
1025         Cleanups clock and stream_time selection code. Added accessors
1026         for the stream_time.
1027         
1028
1029 2005-07-16  Andy Wingo  <wingo@pobox.com>
1030
1031         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
1032         (#305291).
1033
1034 2005-07-16  Wim Taymans  <wim@fluendo.com>
1035
1036         * check/gst/gstbin.c: (GST_START_TEST):
1037         Make elements silent as the deep_notify refs the
1038         parent, which might make the test fail.
1039
1040         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1041         Don't hold the lock for too long.
1042
1043 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
1044
1045         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
1046           Don't unref the caps we passed to gst_caps_make_writable() after
1047           passing them. gst_caps_make_writable() will do that for us.
1048
1049 2005-07-15  Andy Wingo  <wingo@pobox.com>
1050
1051         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
1052         (#157311).
1053
1054         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
1055         own marshalling function for the handoff signal. Properly type the
1056         buffer as a buffer. Fixes some warnings. Should do a more general
1057         solution.
1058         (gst_identity_class_init): Plug into the right marshaller.
1059
1060 2005-07-15  Wim Taymans  <wim@fluendo.com>
1061
1062         * docs/design/part-TODO.txt:
1063         * docs/design/part-clocks.txt:
1064         * docs/design/part-element-sink.txt:
1065         * docs/design/part-events.txt:
1066         * docs/design/part-gstpipeline.txt:
1067         Updated docs, mostly DISCONT related.
1068
1069 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1070
1071         * docs/pwg/building-pads.xml:
1072           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1073
1074 2005-07-15  Andy Wingo  <wingo@pobox.com>
1075
1076         * tools/gst-typefind.c: Update, add copyright block.
1077
1078         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1079         Normalize and truncate caps before fixation.
1080
1081         * gst/gstcaps.h:
1082         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1083         discards all but the first structure from its argument.
1084
1085 2005-07-15  Wim Taymans  <wim@fluendo.com>
1086
1087         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1088         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1089         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1090         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1091         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1092         (gst_base_transform_chain), (gst_base_transform_change_state),
1093         (gst_base_transform_set_passthrough),
1094         (gst_base_transform_is_passthrough):
1095         * gst/base/gstbasetransform.h:
1096         Make passthrough work using the bufferpools.
1097         Changed API a bit, subclasses have to write into a buffer
1098         provided by the base class.
1099         More debug info in nego functions.
1100         
1101         * gst/elements/gstidentity.c: (gst_identity_init),
1102         (gst_identity_transform):
1103         Port to new base class.
1104
1105 2005-07-15  Wim Taymans  <wim@fluendo.com>
1106
1107         * gst/gstmessage.c: (gst_message_new_state_changed):
1108         * tools/gst-launch.c: (event_loop), (main):
1109         Totally dump messages in -launch with the -m option.
1110         Fix message name for State messages,
1111
1112 2005-07-14  Wim Taymans  <wim@fluendo.com>
1113
1114         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1115         Post error messages on errors.
1116
1117 2005-07-14  Wim Taymans  <wim@fluendo.com>
1118
1119         * gst/gstcaps.c: (gst_caps_do_simplify):
1120         Remove debug info.
1121
1122         * gst/gsterror.h:
1123         Define error for stream stopped.
1124
1125         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1126         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1127         Do proper return values.
1128
1129         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1130         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1131         (gst_pad_get_range):
1132         Better return values.
1133
1134         * gst/gstpad.h:
1135         Reorganise return values, add macro to check for fatal errors.
1136
1137         * gst/gstqueue.c: (gst_queue_chain):
1138         Return proper GstFlowReturn values,
1139
1140 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1141
1142         * docs/gst/gstreamer-sections.txt:
1143         * docs/gst/gstreamer.types:
1144         * docs/gst/tmpl/gst.sgml:
1145         * docs/gst/tmpl/gstbasesink.sgml:
1146         * docs/gst/tmpl/gstbasesrc.sgml:
1147         * docs/gst/tmpl/gstbasetransform.sgml:
1148         * docs/gst/tmpl/gstbin.sgml:
1149         * docs/gst/tmpl/gstbuffer.sgml:
1150         * docs/gst/tmpl/gstcaps.sgml:
1151         * docs/gst/tmpl/gstclock.sgml:
1152         * docs/gst/tmpl/gstcompat.sgml:
1153         * docs/gst/tmpl/gstconfig.sgml:
1154         * docs/gst/tmpl/gstelement.sgml:
1155         * docs/gst/tmpl/gstelementdetails.sgml:
1156         * docs/gst/tmpl/gstelementfactory.sgml:
1157         * docs/gst/tmpl/gstenumtypes.sgml:
1158         * docs/gst/tmpl/gsterror.sgml:
1159         * docs/gst/tmpl/gstevent.sgml:
1160         * docs/gst/tmpl/gstfakesink.sgml:
1161         * docs/gst/tmpl/gstfakesrc.sgml:
1162         * docs/gst/tmpl/gstfilesink.sgml:
1163         * docs/gst/tmpl/gstfilesrc.sgml:
1164         * docs/gst/tmpl/gstfilter.sgml:
1165         * docs/gst/tmpl/gstformat.sgml:
1166         * docs/gst/tmpl/gstghostpad.sgml:
1167         * docs/gst/tmpl/gstimplementsinterface.sgml:
1168         * docs/gst/tmpl/gstindex.sgml:
1169         * docs/gst/tmpl/gstindexfactory.sgml:
1170         * docs/gst/tmpl/gstinfo.sgml:
1171         * docs/gst/tmpl/gstiterator.sgml:
1172         * docs/gst/tmpl/gstmacros.sgml:
1173         * docs/gst/tmpl/gstmemchunk.sgml:
1174         * docs/gst/tmpl/gstminiobject.sgml:
1175         * docs/gst/tmpl/gstobject.sgml:
1176         * docs/gst/tmpl/gstpad.sgml:
1177         * docs/gst/tmpl/gstpadtemplate.sgml:
1178         * docs/gst/tmpl/gstparse.sgml:
1179         * docs/gst/tmpl/gstpipeline.sgml:
1180         * docs/gst/tmpl/gstplugin.sgml:
1181         * docs/gst/tmpl/gstpluginfeature.sgml:
1182         * docs/gst/tmpl/gstquery.sgml:
1183         * docs/gst/tmpl/gstqueue.sgml:
1184         * docs/gst/tmpl/gstregistry.sgml:
1185         * docs/gst/tmpl/gstregistrypool.sgml:
1186         * docs/gst/tmpl/gstscheduler.sgml:
1187         * docs/gst/tmpl/gstschedulerfactory.sgml:
1188         * docs/gst/tmpl/gststructure.sgml:
1189         * docs/gst/tmpl/gstsystemclock.sgml:
1190         * docs/gst/tmpl/gsttaglist.sgml:
1191         * docs/gst/tmpl/gsttagsetter.sgml:
1192         * docs/gst/tmpl/gsttrace.sgml:
1193         * docs/gst/tmpl/gsttrashstack.sgml:
1194         * docs/gst/tmpl/gsttypefind.sgml:
1195         * docs/gst/tmpl/gsttypefindfactory.sgml:
1196         * docs/gst/tmpl/gsttypes.sgml:
1197         * docs/gst/tmpl/gsturihandler.sgml:
1198         * docs/gst/tmpl/gsturitype.sgml:
1199         * docs/gst/tmpl/gstutils.sgml:
1200         * docs/gst/tmpl/gstvalue.sgml:
1201         * docs/gst/tmpl/gstversion.sgml:
1202         * docs/gst/tmpl/gstxml.sgml:
1203         * docs/libs/tmpl/gstcontrol.sgml:
1204         * docs/libs/tmpl/gstdataprotocol.sgml:
1205         * docs/libs/tmpl/gstdparam.sgml:
1206         * docs/libs/tmpl/gstdplinint.sgml:
1207         * docs/libs/tmpl/gstdpman.sgml:
1208         * docs/libs/tmpl/gstdpsmooth.sgml:
1209         * docs/libs/tmpl/gstgetbits.sgml:
1210         * docs/libs/tmpl/gstunitconvert.sgml:
1211         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1212         (gst_push_src_base_init), (gst_push_src_class_init),
1213         (gst_push_src_init), (gst_push_src_create):
1214         * gst/base/gstpushsrc.h:
1215         * gst/elements/gstelements.c:
1216         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1217         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1218         (gst_fake_sink_init), (gst_fake_sink_set_property),
1219         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1220         (gst_fake_sink_event), (gst_fake_sink_preroll),
1221         (gst_fake_sink_render), (gst_fake_sink_change_state):
1222         * gst/elements/gstfakesink.h:
1223         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1224         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1225         (gst_fake_src_base_init), (gst_fake_src_class_init),
1226         (gst_fake_src_init), (gst_fake_src_event_handler),
1227         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1228         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1229         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1230         (gst_fake_src_create_buffer), (gst_fake_src_create),
1231         (gst_fake_src_start), (gst_fake_src_stop):
1232         * gst/elements/gstfakesrc.h:
1233         * gst/elements/gstfilesink.c: (_do_init),
1234         (gst_file_sink_base_init), (gst_file_sink_class_init),
1235         (gst_file_sink_init), (gst_file_sink_dispose),
1236         (gst_file_sink_set_location), (gst_file_sink_set_property),
1237         (gst_file_sink_get_property), (gst_file_sink_open_file),
1238         (gst_file_sink_close_file), (gst_file_sink_query),
1239         (gst_file_sink_event), (gst_file_sink_render),
1240         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1241         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1242         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1243         * gst/elements/gstfilesink.h:
1244         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1245         (gst_file_src_class_init), (gst_file_src_init),
1246         (gst_file_src_finalize), (gst_file_src_set_location),
1247         (gst_file_src_set_property), (gst_file_src_get_property),
1248         (gst_file_src_map_region), (gst_file_src_map_small_region),
1249         (gst_file_src_create_mmap), (gst_file_src_create_read),
1250         (gst_file_src_create), (gst_file_src_is_seekable),
1251         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1252         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1253         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1254         (gst_file_src_uri_handler_init):
1255         * gst/elements/gstfilesrc.h:
1256           more autistic cleanliness in functions/names/defines
1257
1258 2005-07-13  Andy Wingo  <wingo@pobox.com>
1259
1260         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1261         source couldn't negotiate.
1262
1263         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1264         connections again.
1265
1266         * gst/gstutils.h:
1267         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1268         function. I am channeling Hades. Put your boots on suckers!!!
1269
1270 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1271
1272         * testsuite/caps/Makefile.am:
1273         * testsuite/caps/value_compare.c:
1274         * testsuite/caps/value_intersect.c:
1275         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1276           move two testsuite apps over to the check dir
1277
1278 2005-07-12  Wim Taymans  <wim@fluendo.com>
1279
1280         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1281         Added more debug info in the negotiate process.
1282
1283         * gst/gstmessage.h:
1284         Prepare for segment playback.
1285
1286         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1287         Better debugging.
1288
1289         * gst/gstutils.c:
1290         Some more docs.
1291
1292         * tools/gst-launch.c: (main):
1293         NULL pipeline on errors.
1294
1295 2005-07-12  Andy Wingo  <wingo@pobox.com>
1296
1297         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1298         not it comes from a malloc region. Make sure our copy gets freed.
1299
1300 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1301
1302         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1303         * check/gst/gstmessage.c: (GST_START_TEST):
1304         * check/gst/gststructure.c: (GST_START_TEST),
1305         (gst_structure_suite), (main):
1306           more testing
1307         * gst/gstelement.c: (gst_element_message_full):
1308           clean up GError and debug string now that they get copied
1309         * gst/gstmessage.c: (gst_message_new_error),
1310         (gst_message_new_warning), (gst_message_parse_error),
1311         (gst_message_parse_warning):
1312           use GST_TYPE_G_ERROR for structure_new, and take copies of
1313           arguments, so that we don't mess up refcounting
1314
1315 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1316
1317         * check/Makefile.am:
1318           add per-test valgrind targets
1319         * check/gst-libs/gdp.c: (GST_START_TEST),
1320         (gst_data_protocol_suite), (main):
1321           clean up
1322
1323 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1324
1325         * check/Makefile.am:
1326           instate more valgrindable tests
1327         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1328         (GST_START_TEST), (fakesrc_suite):
1329         * check/gst/gstpad.c: (GST_START_TEST):
1330         * check/gst/gststructure.c: (GST_START_TEST):
1331           fix test leaks
1332         * docs/gst/tmpl/gstminiobject.sgml:
1333         * gst/gstpad.c: (gst_pad_finalize):
1334           fix the static mutex leak
1335
1336 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1337
1338         * check/Makefile.am:
1339           add two more tests for valgrinding
1340         * check/gst/gstvalue.c: (GST_START_TEST):
1341           test refcount of deserialized buffer, found a leak
1342         * docs/gst/gstreamer-docs.sgml:
1343         * docs/gst/gstreamer-sections.txt:
1344         * docs/gst/gstreamer.types:
1345         * docs/gst/tmpl/gstminiobject.sgml:
1346           add miniobject to docs
1347         * gst/gstminiobject.c:
1348           add some docs
1349         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1350         (gst_string_unwrap):
1351           fix a hard-to-find invalid write for one of the tests
1352           fix a leak for deserialized buffers
1353
1354 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1355
1356         * docs/pwg/advanced-events.xml:
1357         * docs/pwg/advanced-request.xml:
1358         * docs/pwg/advanced-scheduling.xml:
1359         * docs/pwg/appendix-porting.xml:
1360         * docs/pwg/building-boiler.xml:
1361         * docs/pwg/intro-preface.xml:
1362         * docs/pwg/other-ntoone.xml:
1363           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1364           of example code and explanation for pad activation, loop() and
1365           getrange() functions and a bit more. Remove old comments pointing
1366           to loop-functions.
1367         * examples/pwg/Makefile.am:
1368           Add loop/getrange examples.
1369
1370 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1371
1372         * configure.ac:
1373           check for valgrind binary + some fixes
1374         * check/gst.supp:
1375           valgrind suppressions for the tests
1376         * check/Makefile.am:
1377           add a valgrind: target that valgrinds the unit tests
1378         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1379         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1380         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1381         * check/gst/gstghostpad.c:
1382           added some cleanup
1383         * check/gst/gstdata.c:
1384           removed
1385         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1386         (thread_unref), (gst_mini_object_suite), (main):
1387           added
1388         * gst/gst.c: (gst_deinit):
1389         * gst/gst.h:
1390           add a method to clean up.
1391         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1392         (gst_system_clock_obtain):
1393           allow for disposing the system clock.
1394         * tools/gst-launch.c: (main):
1395           deinit
1396
1397 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1398
1399         * docs/gst/tmpl/gstbasesrc.sgml:
1400         * docs/gst/tmpl/gstfakesrc.sgml:
1401         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1402         (gst_base_src_init), (gst_base_src_set_property),
1403         (gst_base_src_get_property), (gst_base_src_get_range),
1404         (gst_base_src_start):
1405         * gst/base/gstbasesrc.h:
1406           add num-buffers property
1407         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1408         (gst_fakesrc_init), (gst_fakesrc_set_property),
1409         (gst_fakesrc_get_property), (gst_fakesrc_create),
1410         (gst_fakesrc_start):
1411           remove num-buffers property
1412
1413 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1414
1415         * docs/gst/gstreamer-sections.txt:
1416         * docs/gst/tmpl/gstbasesink.sgml:
1417         * docs/gst/tmpl/gstbasesrc.sgml:
1418         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1419         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1420         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1421         (gst_base_sink_set_property), (gst_base_sink_get_property),
1422         (gst_base_sink_handle_object), (gst_base_sink_event),
1423         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1424         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1425         (gst_base_sink_loop), (gst_base_sink_deactivate),
1426         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1427         (gst_base_sink_change_state):
1428         * gst/base/gstbasesink.h:
1429         * gst/base/gstbasesrc.h:
1430         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1431         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1432         (gst_filesink_init):
1433           more macro splitting
1434
1435 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1436
1437         * gst/gstelement.c: (gst_element_get_bus):
1438           add debug
1439         * tools/gst-launch.c: (check_intr), (event_loop):
1440           fix bus leaks
1441
1442 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1443
1444         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1445           fix a caps leak
1446
1447 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1448
1449         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1450         (gst_base_src_finalize):
1451           add finalize method and clean up properly
1452         * gst/gstpipeline.c: (gst_pipeline_dispose):
1453           add debug
1454
1455 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1456
1457         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1458         (gst_bin_suite):
1459           add more things to check
1460         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1461         * gst/gstelement.c:
1462           more debug
1463
1464 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1465
1466         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1467         (GST_START_TEST), (fakesrc_suite):
1468         * check/gst-libs/gdp.c: (GST_START_TEST):
1469         * check/gst/gst.c: (GST_START_TEST):
1470         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1471         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1472         * check/gst/gstbus.c: (GST_START_TEST):
1473         * check/gst/gstcaps.c: (GST_START_TEST):
1474         * check/gst/gstdata.c: (GST_START_TEST):
1475         * check/gst/gstelement.c: (GST_START_TEST):
1476         * check/gst/gstghostpad.c: (GST_START_TEST):
1477         * check/gst/gstiterator.c: (GST_START_TEST):
1478         * check/gst/gstmessage.c: (GST_START_TEST):
1479         * check/gst/gstobject.c: (GST_START_TEST):
1480         * check/gst/gstpad.c: (GST_START_TEST):
1481         * check/gst/gststructure.c: (GST_START_TEST):
1482         * check/gst/gstsystemclock.c: (GST_START_TEST),
1483         (gst_systemclock_suite):
1484         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1485         * check/gst/gstvalue.c: (GST_START_TEST):
1486         * check/pipelines/cleanup.c: (GST_START_TEST):
1487         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1488         * check/states/sinks.c: (GST_START_TEST):
1489         * check/gstcheck.c: (gst_check_init):
1490         * check/gstcheck.h:
1491           add debugging category
1492           use GST_START_TEST now, so we add a debug line
1493
1494 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1495
1496         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1497           add test for state change message on a bin
1498         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1499           add another test
1500         * gst/gstbin.c: (gst_bin_init):
1501         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1502         * gst/gstelement.c: (gst_element_post_message),
1503         (gst_element_set_state):
1504         * gst/gstelementfactory.c: (gst_element_factory_create):
1505         * gst/gstmessage.c: (gst_message_new):
1506         * gst/gstscheduler.c:
1507           various debugging additions and cleanups
1508
1509 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1510
1511         * check/Makefile.am:
1512         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1513         (main):
1514           adding tests for elements
1515         * gst/gstelement.c: (gst_element_dispose):
1516
1517 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1518
1519         * gst/registries/gstlibxmlregistry.c: (load_feature):
1520           plug more leaks.  A simple gst_init() now is leakfree, yay.
1521
1522 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1523
1524         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1525         (gst_xml_registry_load):
1526           plug another memleak
1527
1528 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1529
1530         * configure.ac:
1531           use GST_SET_ERROR_CFLAGS
1532         * docs/faq/cvs.xml:
1533           change to ERROR_CFLAGS
1534
1535 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1536
1537         * configure.ac:
1538           make GST_ERROR_CFLAGS overridable and re-enable Werror
1539         * docs/faq/cvs.xml:
1540           add a note about error CFLAGS
1541         * docs/gst/tmpl/gstfakesrc.sgml:
1542         * gst/elements/gstfakesrc.c:
1543           comment out some unused code
1544         * gst/gst.c: (split_and_iterate):
1545         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1546         (load_feature):
1547           plug some memleaks
1548
1549 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1550
1551         * common/Makefile.am:
1552         * common/gtk-doc.mak:
1553         * docs/gst/Makefile.am:
1554           factor out gtk-doc.mak
1555
1556 2005-07-07  Wim Taymans  <wim@fluendo.com>
1557
1558         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1559         (gst_thread_scheduler_dispose):
1560         Unlock the STREAM_LOCK completely.
1561
1562 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1563
1564         * check/Makefile.am:
1565         * check/elements/.cvsignore:
1566         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1567         (START_TEST), (fakesrc_suite), (main):
1568         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1569         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1570         (gst_fakesrc_create), (gst_fakesrc_start):
1571         * gst/elements/gstfakesrc.h:
1572           adding a first element test
1573
1574 2005-07-07  Andy Wingo  <wingo@pobox.com>
1575
1576         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1577         debug message.
1578
1579 2005-07-07  Wim Taymans  <wim@fluendo.com>
1580
1581         * gst/gstquery.c:
1582         * gst/gstquery.h:
1583         Remove old types
1584
1585 2005-07-07  Wim Taymans  <wim@fluendo.com>
1586
1587         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1588         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1589         Allow subclasses to implement their own negotiation.
1590
1591 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1592
1593         * docs/design/part-gstbin.txt:
1594         * docs/design/part-gstpipeline.txt:
1595           Update design notes to reflect the movement of
1596           responsibility for bus handling from GstPipeline to
1597           GstBin
1598
1599 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1600
1601         * configure.ac:
1602           Remove unnecessary queue2/3/4 examples.
1603
1604 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1605
1606         * examples/Makefile.am:
1607         * examples/helloworld/helloworld.c: (event_loop), (main):
1608         * examples/queue/queue.c: (event_loop), (main):
1609         * examples/queue2/queue2.c: (main):
1610           Update a couple of the examples to work again.
1611
1612         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1613         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1614          Spelling corrections and extra debug.
1615         
1616         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1617         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1618         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1619         * gst/gstbin.h:
1620         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1621         (gst_pipeline_change_state):
1622         * gst/gstpipeline.h:
1623           Move the bus handler for children to the GstBin, and create a
1624           separate bus for receiving messages from children to the one the
1625           bus sends 'upwards' on.
1626
1627 2005-07-06  Wim Taymans  <wim@fluendo.com>
1628
1629         * gst/base/README:
1630         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1631         (gst_base_sink_handle_object), (gst_base_sink_loop),
1632         (gst_base_sink_change_state):
1633         * gst/base/gstbasesink.h:
1634         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1635         (gst_base_src_init), (gst_base_src_setcaps),
1636         (gst_base_src_getcaps), (gst_base_src_loop),
1637         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1638         (gst_base_src_start), (gst_base_src_change_state):
1639         * gst/base/gstbasesrc.h:
1640         Make basesrc negotiate.
1641         Handle the case where preroll fails in basesink.
1642         Update README.
1643
1644 2005-07-06  Wim Taymans  <wim@fluendo.com>
1645
1646         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1647         Implement the fixate function.
1648         Clean up acceptcaps.
1649
1650 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1651
1652         * docs/pwg/building-filterfactory.xml:
1653         * docs/pwg/pwg.xml:
1654           Remove never-written filter-factory chapter; I'll add the various
1655           base classes to part 4 ("other element types") later on.
1656
1657 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1658
1659         * docs/pwg/advanced-negotiation.xml:
1660         * docs/pwg/building-boiler.xml:
1661         * docs/pwg/building-pads.xml:
1662         * docs/pwg/pwg.xml:
1663         * examples/pwg/Makefile.am:
1664           Add a chapter on caps negotiation, simplify the original code
1665           samples a bit w.r.t. caps negotiation, add link to the advanced
1666           section. Add a bunch of examples showing different use cases of
1667           different types of caps negotiation. Upstream renegotiation isn't
1668           fully documented yet since nobody knows how that works.
1669
1670 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1671
1672         * check/gst/gstpad.c:
1673         * check/gstcheck.c:
1674         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1675           if pad has no parent, return NULL as list of internal links
1676
1677 2005-07-05  Andy Wingo  <wingo@pobox.com>
1678
1679         * gst/elements/gstfilesrc.c:
1680         * gst/elements/gstfakesrc.c: 
1681         * gst/base/gstpushsrc.c:
1682         * gst/base/gstbasesrc.h: 
1683         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1684         
1685 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1686
1687         * Makefile.am:
1688           better report generation target (lcov needs a patch)
1689
1690 2005-07-05  Andy Wingo  <wingo@pobox.com>
1691
1692         * gst/elements, testsuite: Null if we got it...
1693
1694 2005-07-05  Wim Taymans  <wim@fluendo.com>
1695
1696         * configure.ac:
1697         * libs/gst/dataprotocol/Makefile.am:
1698         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1699         * libs/gst/dataprotocol/dataprotocol.h:
1700         * pkgconfig/Makefile.am:
1701         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1702         * pkgconfig/gstreamer-dataprotocol.pc.in:
1703         Ported dataprotol to 0.9. 
1704         Added pkgconfig files.
1705
1706 2005-07-05  Andy Wingo  <wingo@pobox.com>
1707
1708         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1709         Default to returning TRUE for the case when tranform_caps returns
1710         a fixed caps, like for identity or volume.
1711
1712         * check/gst/gstbus.c (pound_bus_with_messages): 
1713         * check/gst/gstmessage.c (START_TEST): 
1714         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1715         message API change.
1716
1717         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1718         logic weaks here: always run transform_caps, trying passthrough
1719         operation only if the original caps intersects with the transform.
1720
1721         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1722         source and sink caps.
1723
1724         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1725         Intersect the peer caps with the pad template before going into
1726         transform_caps.
1727         (gst_base_transform_transform_caps): More debugging.
1728
1729         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1730         src argument.
1731
1732 2005-07-04  Edward Hervey  <edward@fluendo.com>
1733
1734         * gst/gstutils.c:
1735         * gst/gstutils.h:
1736         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1737         in bindings.
1738
1739 2005-07-04  Andy Wingo  <wingo@pobox.com>
1740
1741         * check/gst/gstpad.c: Only set explicit caps on pads.
1742
1743 2005-07-01  Andy Wingo  <wingo@pobox.com>
1744
1745         * tests/network-clock.scm: Commentary update.
1746
1747         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1748         Didn't really make sense, not implementable with basetransform,
1749         etc.
1750         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1751         attempt at implementing the sync property, needs an unlock method.
1752
1753         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1754         New func, by default returns the same caps (the identity
1755         transformation).
1756         (gst_base_transform_getcaps): Uses transform_caps to return
1757         something sensible.
1758         (gst_base_transform_setcaps): Complicated logic to get caps on
1759         both pads, even if they are different, and to call set_caps once
1760         for every time both pads get their caps set.
1761         (gst_base_transform_handle_buffer): Give the ref to the transform
1762         function. Allows in-place modification of the buffer.
1763
1764         * gst/base/gstbasetransform.h (transform_caps): New class method.
1765         Given caps on one side, what can I do on the other.
1766         (set_caps): Take two caps, one for each side of the element.
1767
1768         * gst/gstpad.h:
1769         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1770         caps in place. This is safe because we can check the mutability of
1771         the caps, and a good idea because fixate functions are just called
1772         as a matter of last resort. (Not actually implemented.)
1773         (gst_pad_set_caps): If the caps we're setting is actually the same
1774         as the existing pad caps, just update the pointer without calling
1775         setcaps. Assert that caps is either NULL or fixed, as per the
1776         docs.
1777
1778         * gst/gstghostpad.c: Update for fixate changes.
1779
1780 2005-07-02  Andy Wingo  <wingo@pobox.com>
1781
1782         * gst/gstcaps.c:
1783         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1784         two refcounts makes it immutable, which is enough. Doc more.
1785
1786 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1787
1788         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1789           Put the mini_object into GValue as a mini_object,
1790           not a gpointer, since that's how we declared
1791           the signal.
1792
1793 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1794
1795         * examples/pwg/Makefile.am:
1796           Fix buildbot again.
1797
1798 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1799
1800         * docs/pwg/building-testapp.xml:
1801           Add extra check.
1802         * examples/pwg/Makefile.am:
1803           Fix buildbot.
1804
1805 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1806
1807         * configure.ac:
1808         * examples/Makefile.am:
1809         * examples/pwg/Makefile.am:
1810         * examples/pwg/extract.pl:
1811           Enable building the PWG examples.
1812         * docs/pwg/advanced-interfaces.xml:
1813           Add URI interface stub.
1814         * docs/pwg/advanced-types.xml:
1815         * docs/pwg/other-autoplugger.xml:
1816         * docs/pwg/appendix-porting.xml:
1817         * docs/pwg/pwg.xml:
1818           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1819         * docs/pwg/building-boiler.xml:
1820         * docs/pwg/building-chainfn.xml:
1821         * docs/pwg/building-pads.xml:
1822         * docs/pwg/building-props.xml:
1823         * docs/pwg/building-state.xml:
1824         * docs/pwg/building-testapp.xml:
1825           Update the building-*.xml parts for 0.9 changes. All examples
1826           code blocks compile in examples/pwg/*.
1827
1828 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1829
1830         * docs/manual/advanced-autoplugging.xml:
1831         * docs/manual/appendix-checklist.xml:
1832         * docs/manual/appendix-integration.xml:
1833         * docs/manual/highlevel-components.xml:
1834           Fix playbin/decodebin examples, update docs a bit, mention bus
1835           instead of signals in various places, mention kmplayer and
1836           kaffeine since they have a working GStreamer backend in the KDE
1837           section.
1838
1839 2005-06-30  Wim Taymans  <wim@fluendo.com>
1840
1841         * CHANGES-0.9:
1842         * docs/design/draft-ghostpads.txt:
1843         * docs/design/draft-push-pull.txt:
1844         * docs/design/draft-query.txt:
1845         * docs/design/part-TODO.txt:
1846         * docs/design/part-query.txt:
1847         Added CHANGES-0.9 doc, updated status of other docs.
1848         
1849         * gst/gstquery.h:
1850         Remove "hmm" macro
1851
1852 2005-06-30  Wim Taymans  <wim@fluendo.com>
1853
1854         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1855         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1856         (gst_base_sink_change_state):
1857         * gst/base/gstbasesink.h:
1858         Some tweaks, only EOS and a buffer complete a preroll.
1859
1860 2005-06-30  Andy Wingo  <wingo@pobox.com>
1861
1862         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1863         activate_push down to the internal pad as well.
1864
1865 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1866
1867         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1868
1869         * gst/gsttaginterface.c:
1870           Some documentation fixes (#307394 and #307397).
1871
1872 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1873
1874         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1875
1876         * gst/gstvalue.c: (gst_value_intersect_list):
1877           Fix memleak (#309125).
1878
1879 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1880
1881         * docs/manual/advanced-dataaccess.xml:
1882           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1883         * docs/manual/basics-pads.xml:
1884           Add reference for filtered caps to above chapter.
1885
1886 2005-06-30  Wim Taymans  <wim@fluendo.com>
1887
1888         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1889         (gst_bin_change_state):
1890         Probes are gone.
1891         Lame attempt at making the state change function a bit
1892         more readable.
1893
1894 2005-06-30  Wim Taymans  <wim@fluendo.com>
1895
1896         * docs/design/part-clocks.txt:
1897         * docs/design/part-element-sink.txt:
1898         * docs/design/part-events.txt:
1899         * docs/design/part-preroll.txt:
1900         * docs/design/part-states.txt:
1901         Some more tweeks and additions to the docs.
1902
1903 2005-06-30  Wim Taymans  <wim@fluendo.com>
1904
1905         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1906         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1907         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1908         (gst_pad_check_pull_range), (gst_pad_get_range),
1909         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1910         * gst/gstpad.h:
1911         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1912         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1913         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1914         (gst_pad_remove_buffer_probe):
1915         Removed atomic operations, use existing LOCK.
1916         Move exception handling out of main code path.
1917
1918 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1919
1920         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1921         (silly_return_true_function), (gst_pad_class_init),
1922         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1923         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1924         (gst_pad_send_event):
1925           Fix accumulator, add default value by using _emitv() instead
1926           of _emit() for signal emission.
1927
1928 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1929
1930         * docs/manual/advanced-dataaccess.xml:
1931         * examples/manual/Makefile.am:
1932           Add probe example.
1933         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1934           Make work (??).
1935
1936 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1937
1938         * gst/elements/gstfilesink.c: (gst_filesink_render):
1939           Simplify code so that we don't have to handle short
1940           writes and return GST_FLOW_ERROR if an error occured.
1941
1942 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1943
1944         * docs/gst/gstreamer-docs.sgml:
1945           Remove probes more.
1946
1947 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1948
1949         * docs/gst/gstreamer-sections.txt:
1950         * docs/gst/tmpl/gstpad.sgml:
1951         * docs/gst/tmpl/gstprobe.sgml:
1952         * gst/Makefile.am:
1953         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1954         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1955         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1956         (gst_pad_push_event), (gst_pad_send_event):
1957         * gst/gstpad.h:
1958         * gst/gstutils.c: (gst_pad_add_data_probe),
1959         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1960         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1961         (gst_pad_remove_buffer_probe):
1962         * gst/gstutils.h:
1963           Remove old probes, add new g-signal-based probes and some utility
1964           functions.
1965
1966 2005-06-29  Edward Hervey  <edward@fluendo.com>
1967
1968         * gst/gstelementfactory.c:
1969         * gst/gstutils.h:
1970         * gst/gstutils.c:
1971         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1972         the definition to the header file.
1973
1974 2005-06-29  Andy Wingo  <wingo@pobox.com>
1975
1976         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1977         plugins from the source directory.
1978
1979 2005-06-29  Wim Taymans  <wim@fluendo.com>
1980
1981         * docs/gst/tmpl/gstbuffer.sgml:
1982         * docs/gst/tmpl/gstclock.sgml:
1983         Some fixings for blantently wrong text.
1984
1985 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1986
1987         * check/Makefile.am:
1988         * gst/gst.c: (add_path_func), (init_pre):
1989         * gst/gstregistry.c: (gst_registry_add_path):
1990           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1991           only scan the GST_PLUGIN_PATH locations, and not add
1992           system locations
1993
1994 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1995
1996         * docs/gst/gstreamer-sections.txt:
1997         * docs/gst/tmpl/gstbasesrc.sgml:
1998         * gst/gstelement.c:
1999         * gst/gstelement.h:
2000         * gst/gstevent.c:
2001         * gst/gstutils.c:
2002           doc fixes
2003
2004 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2005
2006         * docs/manual/advanced-autoplugging.xml:
2007           Fix autoplugging example.
2008
2009 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2010
2011         * docs/manual/advanced-autoplugging.xml:
2012         * docs/manual/mime-world.fig:
2013           Try to get autoplugging working, fix type detection. Fix text
2014           in hello-world image.
2015
2016 2005-06-29  Wim Taymans  <wim@fluendo.com>
2017
2018         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2019         (gst_base_sink_change_state):
2020         Small debug line.
2021
2022         * gst/gstclock.h:
2023         map SIGNAL and BROADCAST to the right function.
2024
2025         * gst/gstobject.h:
2026         Remove redundant braces.
2027
2028         * gst/gstpad.c: (gst_pad_set_caps):
2029         Don't call setcaps function when reseting caps to NULL.
2030
2031         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2032         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
2033         (gst_system_clock_id_unschedule):
2034         Use BROADCAST as this is what we do.
2035
2036 2005-06-29  Wim Taymans  <wim@fluendo.com>
2037
2038         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2039         We are actually prerolling before commiting the state
2040         change. 
2041
2042 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2043
2044         * docs/manual/advanced-clocks.xml:
2045         * docs/manual/advanced-interfaces.xml:
2046         * docs/manual/advanced-metadata.xml:
2047         * docs/manual/advanced-position.xml:
2048         * docs/manual/advanced-schedulers.xml:
2049         * docs/manual/advanced-threads.xml:
2050         * docs/manual/appendix-porting.xml:
2051         * docs/manual/basics-bins.xml:
2052         * docs/manual/basics-bus.xml:
2053         * docs/manual/basics-elements.xml:
2054         * docs/manual/basics-helloworld.xml:
2055         * docs/manual/basics-pads.xml:
2056         * docs/manual/highlevel-components.xml:
2057         * docs/manual/manual.xml:
2058         * docs/manual/thread.fig:
2059           Update (until threads/scheduling) Application Development Manual;
2060           remove GstThread, add GstBus, add simple porting checklist, add
2061           documentation for tag writing, clocks, make all examples until this
2062           part compile and run.
2063         * examples/manual/Makefile.am:
2064           Update from changes to Application Development Manual; add bus
2065           example, remove thread example.
2066
2067 2005-06-28  Wim Taymans  <wim@fluendo.com>
2068
2069         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2070         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2071         (gst_bus_source_dispatch):
2072         Add debugging messages.
2073         Make internal methods static.
2074         Handle the case where the bus is flushed in the handler.
2075         
2076         * gst/gstelement.c: (gst_element_get_bus):
2077         Fix refcount in _get_bus();
2078
2079         * gst/gstpipeline.c: (gst_pipeline_change_state),
2080         (gst_pipeline_get_clock_func):
2081         Clock refcounting fixes.
2082         Handle the case where preroll timed out more gracefully.
2083         
2084         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2085         Clean up the internal thread in dispose. This is needed
2086         for subclasses that actually get disposed.
2087         
2088         * gst/schedulers/threadscheduler.c:
2089         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2090         (gst_thread_scheduler_dispose):
2091         Free thread pool in dispose.
2092
2093 2005-06-28  Andy Wingo  <wingo@pobox.com>
2094
2095         * tests/network-clock-utils.scm (debug, print-event): New utils.
2096
2097         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2098         (*packet-loss*): Unified loss probability.
2099         (network-time): Report out-of-band events.
2100
2101         * tests/plot-data: Add support for out-of-band events. Hack it
2102         into this script instead of passing it down the pipe; should fix
2103         this later.
2104
2105 2005-06-28  Wim Taymans  <wim@fluendo.com>
2106
2107         * docs/gst/gstreamer.types:
2108         * docs/gst/tmpl/gstbasesrc.sgml:
2109         * docs/gst/tmpl/gstpad.sgml:
2110         Docs fixes.
2111
2112 2005-06-28  Wim Taymans  <wim@fluendo.com>
2113
2114         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2115         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2116         (gst_proxy_pad_do_fixatecaps):
2117         Correctly proxy the check_pull_range function.
2118
2119 2005-06-28  Andy Wingo  <wingo@pobox.com>
2120
2121         * tests/network-clock.scm: Removed need for slib.
2122         
2123 2005-06-28  Wim Taymans  <wim@fluendo.com>
2124
2125         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2126         (gst_basesink_preroll_queue_flush):
2127         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2128         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2129         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2130         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2131         (gst_proxy_pad_set_property):
2132         * gst/gstpad.c:
2133         * gst/gstpad.h:
2134         * gst/gstqueue.c: (gst_queue_init):
2135         The deprecated pad loop function is removed now.
2136
2137 2005-06-28  Andy Wingo  <wingo@pobox.com>
2138
2139         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2140         New parameters, simulate network packet loss.
2141
2142         * tests/network-clock-utils.scm: Initialize the RNG.
2143
2144 2005-06-28  Wim Taymans  <wim@fluendo.com>
2145
2146         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2147         (gst_basesink_event), (gst_basesink_deactivate):
2148         Flushing the preroll queue always needs to unlock the waiters.
2149
2150 2005-06-28  Edward Hervey  <edward@fluendo.com>
2151
2152         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2153         Wheen a seek was successful on a pipeline, set the stream_time to the
2154         seek offset in order to have a synchronized stream_time.
2155
2156 2005-06-28  Wim Taymans  <wim@fluendo.com>
2157
2158         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2159         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2160         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2161         (gst_proxy_pad_do_fixatecaps):
2162         Call wrapper function instead of just calling the function
2163         pointers. This takes care of any locking and whatmore.
2164
2165 2005-06-28  Wim Taymans  <wim@fluendo.com>
2166
2167         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2168         (gst_pad_pull_range):
2169         * gst/gstpad.h:
2170         CONNECTED -> LINKED.
2171
2172 2005-06-28  Andy Wingo  <wingo@pobox.com>
2173
2174         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2175         source-munging commit!!!
2176
2177         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2178         (gst_object_sink): Take gpointer arguments, not GstObject --
2179         avoids casts. Like GLib.
2180
2181         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2182         activate.
2183
2184 2005-06-27  Andy Wingo  <wingo@pobox.com>
2185
2186         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2187         remaining buffer.
2188
2189         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2190         returns a sorted copy of the trace list.
2191         (gst_alloc_trace_print_live): New API, only prints traces with
2192         live objects. Sort the list.
2193         (gst_alloc_trace_print_all): Sort the list.
2194         (gst_alloc_trace_print): Align columns.
2195
2196         * gst/elements/gstttypefindelement.c:
2197         * gst/elements/gsttee.c:
2198         * gst/base/gstbasesrc.c:
2199         * gst/base/gstbasesink.c:
2200         * gst/base/gstbasetransform.c:
2201         * gst/gstqueue.c: Adapt for pad activation changes.
2202
2203         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2204         sched.
2205         (gst_pipeline_dispose): Drop ref on sched.
2206
2207         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2208         (gst_pad_activate_default): Push mode by default.
2209         (pre_activate_switch, post_activate_switch): New stubs, things to
2210         do before and after switching activation modes on pads.
2211         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2212         the pad's activate function to choose which mode to activate.
2213         Shortcut on deactivation and call the right function directly.
2214         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2215         mode.
2216         (gst_pad_activate_push): New API, same for push mode.
2217         (gst_pad_set_activate_function) 
2218         (gst_pad_set_activatepull_function) 
2219         (gst_pad_set_activatepush_function): Setters for new API.
2220
2221         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2222         Trace all miniobjects.
2223         (gst_mini_object_make_writable): Unref the arg if we copy, like
2224         gst_caps_make_writable.
2225
2226         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2227
2228         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2229         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2230         Adapt for new pad API.
2231
2232         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2233
2234         * gst/gstelement.h:
2235         * gst/gstelement.c (gst_element_iterate_src_pads) 
2236         (gst_element_iterate_sink_pads): New API functions.
2237         
2238         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2239         should fold into gstiterator.c in some form.
2240         (gst_element_pads_activate): Simplified via use of fold and
2241         delegation of decisions to gstpad->activate.
2242
2243         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2244         help in debugging.
2245
2246         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2247         class once in init, like gstmessage. Didn't run into this issue
2248         but it seems correct. Don't initialize a trace, gstminiobject does
2249         that.
2250
2251         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2252         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2253         to the bus.
2254         (assert_live_count): New util function, uses alloc traces to check
2255         cleanup.
2256
2257         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2258         To be modified when unlink drops the internal pad.
2259
2260 2005-06-27  Wim Taymans  <wim@fluendo.com>
2261
2262         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2263         (gst_bin_change_state):
2264         Cleanup the get_state() function a little, make sure it
2265         iterates the same set of elements.
2266         Added stub iterate_state_order().
2267
2268 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2269
2270         * docs/gst/gstreamer-docs.sgml:
2271         * docs/gst/gstreamer-sections.txt:
2272         * docs/gst/gstreamer.types:
2273         * docs/gst/tmpl/gstbasesink.sgml:
2274         * docs/gst/tmpl/gstbasesrc.sgml:
2275         * docs/gst/tmpl/gstbasetransform.sgml:
2276         * docs/gst/tmpl/gstelement.sgml:
2277         * docs/gst/tmpl/gstiterator.sgml:
2278         * gst/base/gstbasesrc.c:
2279         * gst/base/gstbasesrc.h:
2280         * gst/base/gstbasetransform.h:
2281         * gst/gstelement.c:
2282         * gst/gstiterator.h:
2283           adding basetransform and iterator docs
2284
2285 2005-06-27  Andy Wingo  <wingo@pobox.com>
2286
2287         * docs/design/part-activation.txt: Notes on how activation should
2288         work -- not quite implemented yet.
2289
2290 2005-06-25  Wim Taymans  <wim@fluendo.com>
2291
2292         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2293         At least get the chain function correct, needs more
2294         fixing.
2295
2296 2005-06-25  Wim Taymans  <wim@fluendo.com>
2297
2298         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2299         (gst_basesink_handle_object), (gst_basesink_event),
2300         (gst_basesink_do_sync), (gst_basesink_handle_event),
2301         (gst_basesink_change_state):
2302         * gst/gsttask.h:
2303         Right, two problems here: ghostpads don't take locks and
2304         glib _rec_mutex_lock_full() with depth==0 still locks.
2305         Catch illegal locking and g_warn them.
2306
2307 2005-06-25  Wim Taymans  <wim@fluendo.com>
2308
2309         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2310         Have to check for completion now...
2311
2312 2005-06-25  Wim Taymans  <wim@fluendo.com>
2313
2314         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2315         (gst_basesink_handle_object), (gst_basesink_event),
2316         (gst_basesink_do_sync), (gst_basesink_handle_event),
2317         (gst_basesink_change_state):
2318         * gst/gstpad.h:
2319         Unlock STREAM_LOCK whatever the recursion was.
2320
2321 2005-06-25  Wim Taymans  <wim@fluendo.com>
2322
2323         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2324         (gst_basesink_preroll_queue_empty),
2325         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2326         (gst_basesink_event), (gst_basesink_do_sync),
2327         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2328         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2329         (gst_basesink_change_state):
2330         Reworked the base sink, handle event and buffer serialisation
2331         correctly and removed possible deadlock.
2332         Handle EOS correctly.
2333
2334 2005-06-25  Wim Taymans  <wim@fluendo.com>
2335
2336         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2337         (gst_pipeline_change_state):
2338         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2339         Allow elements to post EOS in the state change function.
2340         Fix up -launch, make it exit the poll loop when the
2341         pipeline actually changed state.
2342         Fix up warning parsing in -launch.
2343
2344 2005-06-25  Wim Taymans  <wim@fluendo.com>
2345
2346         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2347         (gst_tee_sink_activate):
2348         Core takes STREAM_LOCK for us now.
2349
2350 2005-06-25  Wim Taymans  <wim@fluendo.com>
2351
2352         * gst/gstelement.c: (gst_element_get_state_func),
2353         (gst_element_set_state):
2354         * gst/gstelement.h:
2355         * gst/gstmessage.c: (gst_message_parse_error),
2356         (gst_message_parse_warning):
2357         Keep track of current target state while performing a state
2358         change so that subclasses can do something interesting.
2359         Fix parsing of warning/error messages when GError is NULL.
2360
2361 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2362
2363         * docs/gst/Makefile.am:
2364         * docs/gst/gstreamer-docs.sgml:
2365         * docs/gst/gstreamer-sections.txt:
2366         * docs/gst/gstreamer.types:
2367         * docs/gst/tmpl/gstbasesink.sgml:
2368         * docs/gst/tmpl/gstbasesrc.sgml:
2369         * docs/gst/tmpl/gstbin.sgml:
2370         * docs/gst/tmpl/gstcompat.sgml:
2371         * docs/gst/tmpl/gstfakesink.sgml:
2372         * docs/gst/tmpl/gstfakesrc.sgml:
2373         * docs/gst/tmpl/gstfilesink.sgml:
2374         * docs/gst/tmpl/gstfilesrc.sgml:
2375         * docs/gst/tmpl/gstindex.sgml:
2376         * docs/manual/appendix-quotes.xml:
2377         * gst/base/gstbasesrc.h:
2378         * gst/elements/gstfakesrc.h:
2379         * gst/gstmessage.h:
2380           start pulling in base classes and elements in our docs
2381
2382 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2383
2384         * docs/gst/Makefile.am:
2385         * docs/libs/Makefile.am:
2386           fixed make distcheck with gtk-doc 1.3
2387
2388 2005-06-23  Wim Taymans  <wim@fluendo.com>
2389
2390         * gst/gstelement.c: (gst_element_get_state_func),
2391         (gst_element_set_state), (gst_element_change_state):
2392         When the state did not change, also report NO_PREROLL
2393         when it matters.
2394
2395 2005-06-23  Wim Taymans  <wim@fluendo.com>
2396
2397         * gst/gstpad.c: (gst_pad_event_default):
2398         * gst/gstqueue.c: (gst_queue_loop):
2399         No unsafe task pausing please.
2400
2401 2005-06-23  Wim Taymans  <wim@fluendo.com>
2402
2403         * gst/schedulers/threadscheduler.c:
2404         (gst_thread_scheduler_task_start),
2405         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2406         Ref the task before pushing it on the threadpool. This
2407         makes sure that we have a ref when the threadfunction is
2408         actually called.
2409
2410 2005-06-23  Andy Wingo  <wingo@pobox.com>
2411
2412         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2413         offset is greater than the file's size.
2414
2415         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2416         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2417         * gst/gstobject.c (gst_object_class_init): Make the class lock
2418         recursive. Wim won't let me drop deep_notify. Decodebin works
2419         again, whoopdy doo.
2420
2421         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2422         internal pad, and hacks accordingly. Doesn't do it on the target
2423         pad because we change its caps. Probably catches all cases of
2424         interest tho.
2425         (gst_ghost_pad_set_property): Connect to notify::caps as
2426         appropritate.
2427
2428         * tests/network-clock.scm (plot-simulation): Pipe data to the
2429         elite python skript.
2430
2431         * tests/network-clock-utils.scm (define-parameter): New macro,
2432         defines a parameter that can be set via the command line.
2433         (set-parameter!, parse-parameter-arguments): Command line args
2434         parser.
2435
2436         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2437         stdin.
2438
2439 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2440
2441         * gst/elements/gsttypefindelement.c:
2442         (gst_type_find_element_handle_event):
2443           Don't restart typefinding on a discont.
2444         * gst/gstelement.c: (gst_element_set_state):
2445           Debug spelling fix.
2446         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2447           Allow changing mode of an active pad.
2448           Debug output fixes.
2449         * gst/registries/gstlibxmlregistry.c: (load_feature):
2450           Don't cast a static pad template to a normal pad template.
2451
2452 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2453
2454         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2455         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2456           remove gst_strtoll completely, since it didn't actually do
2457           anything more than what g_ascii_strtoull already does.
2458           check for range errors when deserializing
2459           do a cast for the unsigned cases; but further fixing needs
2460           a decision on what the interpretation of "(int)" and
2461           deserialization should be for values that fall outside the
2462           type's boundaries (ie, refuse, or interpret as casting)
2463
2464 2005-06-23  Wim Taymans  <wim@fluendo.com>
2465
2466         * check/Makefile.am:
2467         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2468         * docs/design/part-live-source.txt:
2469         * docs/design/part-states.txt:
2470         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2471         (gst_basesrc_set_live), (gst_basesrc_is_live),
2472         (gst_basesrc_get_range), (gst_basesrc_activate),
2473         (gst_basesrc_change_state):
2474         * gst/base/gstbasesrc.h:
2475         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2476         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2477         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2478         * gst/gstelement.c: (gst_element_get_state_func),
2479         (gst_element_set_state):
2480         * gst/gstelement.h:
2481         * gst/gsttypes.h:
2482         * tools/gst-launch.c: (event_loop), (main):
2483         Added support for live sources and other elements that
2484         cannot do preroll.
2485         Updated design docs, added live-source design doc.
2486         Implemented live source functionality in basesrc
2487         Fix error condition in _bin_get_state()
2488         Implement live source handling in -launch.
2489         Added check for live sources.
2490         Fixed case in GstBin where elements were changed state
2491         multiple times.
2492
2493
2494 2005-06-23  Andy Wingo  <wingo@pobox.com>
2495
2496         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2497         borken refcounting.
2498
2499         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2500         gst_caps_replace takes care of this for us.
2501
2502         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2503         gst_pad_set_caps on the target, not just its setcaps() function.
2504
2505         * tests/network-clock.scm: 
2506         * tests/network-clock-utils.scm: A network clock simulator.
2507         Something of an algorithmic testbed before doing something in C.
2508
2509 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2510
2511         * check/Makefile.am:
2512         * check/gst/capslist.h:
2513           copy over from 0.8, and add two with bitmasks specified with
2514           (int) 0xFF...
2515         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2516           add test to parse everything from capslist.h
2517         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2518         (main):
2519           add test for structure deserialization
2520         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2521           add tests for deserialization of strings to int types
2522         * gst/gststructure.c: (gst_structure_nth_field_name):
2523         * gst/gststructure.h:
2524           add a way to get the name of a field referenced by index
2525         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2526           instead of checking if the resulting long long lies between
2527           min and max, we check if the long long would fit into
2528           a number of bytes for the final type.
2529           This fixes cases where a string represents 2^32 - 1, which
2530           when cast to int would be the (valid) -1, but is bigger than
2531           G_MAXINT
2532
2533 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2534
2535         * gst/parse/grammar.y:
2536           add a log line for type deserialization
2537
2538 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2539
2540         * check/gst/gstvalue.c: (START_TEST):
2541         * gst/gstvalue.c: (gst_value_deserialize):
2542           return long long, not int, so gint64 deserialization actually
2543           works.  Is there any flag that makes the compiler check this ?
2544           Fixes #308559
2545
2546 2005-06-22  Wim Taymans  <wim@fluendo.com>
2547
2548         * gst/gstbuffer.h:
2549         Added convenience macros for setting buffers in GValue.
2550
2551 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2552
2553         * check/gst/.cvsignore:
2554         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2555           add a test deserializing int64, and comment part out because
2556           it fails, yay !
2557
2558 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2559
2560         * check/Makefile.am:
2561         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2562         * testsuite/Makefile.am:
2563         * testsuite/caps/Makefile.am:
2564         * testsuite/caps/value_serialize.c:
2565         * testsuite/test_gst_init.c:
2566           move a value_serialize test over
2567
2568 2005-06-20  Wim Taymans  <wim@fluendo.com>
2569
2570         * gst/gstpad.c:
2571         Small doc updates.
2572         
2573         * gst/gstvalue.c: (gst_value_compare_buffer),
2574         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2575         (gst_value_compare_flags), (gst_value_serialize_flags),
2576         (gst_value_deserialize_flags), (_gst_value_initialize):
2577         Fix serialisation of buffers, they are not boxed types anymore
2578
2579 2005-06-20  Wim Taymans  <wim@fluendo.com>
2580
2581         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2582         Testcase to show error in buffer-on-caps serialisation.
2583
2584 2005-06-20  Andy Wingo  <wingo@pobox.com>
2585
2586         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2587         will be adding to later.
2588
2589         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2590         if its socks fill with rocks.
2591         (gst_system_clock_obtain): Set the name on object construction.
2592         Avoid double-checked locking.
2593
2594 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2595
2596         * gst/gsturi.c: (gst_element_make_from_uri):
2597           Fix potential endless loop.
2598
2599 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2600
2601         * check/Makefile.am:
2602           add gsttag
2603         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2604         (main):
2605           move over from testsuite dir and clean up
2606         * configure.ac:
2607         * gst/gsttag.c:
2608         * testsuite/Makefile.am:
2609         * testsuite/tags/.cvsignore:
2610         * testsuite/tags/Makefile.am:
2611         * testsuite/tags/merge.c:
2612           remove testsuite/tags
2613
2614 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2615
2616         * docs/gst/gstreamer-sections.txt:
2617         * docs/gst/tmpl/gstenumtypes.sgml:
2618         * win32/gstenumtypes.c:
2619           clean up documentation build a little
2620
2621 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2622
2623         * check/gstcheck.h:
2624           add macros for checking refcounts on objects and caps
2625         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2626           add some more unit tests
2627         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2628         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2629           fix leaked refcounts (I hope :)) so unittest works
2630         * gst/gstpad.h:
2631           whitespace removal
2632
2633 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2634
2635         * configure.ac: back to HEAD
2636
2637 === release 0.9.1 ===
2638
2639 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2640
2641         * NEWS:
2642         * RELEASE:
2643           updated
2644
2645 2005-06-17  Andy Wingo  <wingo@pobox.com>
2646
2647         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2648         assert; it's always possible that the pad gets deactivated in
2649         between the checks in gstpad.c and the implementation. Rely on
2650         finish_preroll() to return a FLUSHING or similar instead of on the
2651         assert.
2652         
2653         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2654         clock and post an EOS message if we come out of finish_preroll in
2655         the playing state.
2656
2657 2005-06-16  David Schleef  <ds@schleef.org>
2658
2659         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2660         (gst_capsfilter_set_property): Allow NULL as possible value
2661         for filter_caps property, indicating GST_CAPS_ANY.
2662
2663 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2664
2665         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2666           fix debug output
2667         * gst/schedulers/Makefile.am:
2668           use libgst prefix
2669         * gstreamer.spec.in:
2670           fix spec for it
2671
2672 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2673
2674         * gstreamer.spec.in:
2675           clean up
2676
2677 2005-06-08  Andy Wingo  <wingo@pobox.com>
2678
2679         * gst/gstutils.c: RPAD fixes all around.
2680         (gst_element_link_pads): Refcounting fixes.
2681
2682         * tools/gst-inspect.c:
2683         * tools/gst-xmlinspect.c:
2684         * parse/grammar.y:
2685         * gst/base/gsttypefindhelper.c:
2686         * gst/base/gstbasesink.c:
2687         * gst/gstqueue.c: RPAD fixes.
2688
2689         * gst/gstghostpad.h:
2690         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2691         pads. The tricky thing is they provide both source and sink
2692         interfaces, since they proxy the internal pad for the external
2693         pad, and vice versa. Implement with lower-level ProxyPad objects,
2694         with the interior proxy pad as a child of the exterior ghost pad.
2695         Should write a doc on this.
2696         
2697         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2698         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2699         gst_object API.
2700         
2701         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2702         pads are real pads. No ghost pads in this file. Not documenting
2703         the myriad s/RPAD/PAD/ and REALIZE fixes.
2704         (gst_pad_class_init): Add properties for "direction" and
2705         "template". Both are construct-only, so they can't change during
2706         the life of the pad. Fixes properly deriving from GstPad.
2707         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2708         derived objects, just set properties when creating the objects via
2709         g_object_new.
2710         (gst_pad_get_parent): Implement as a function, return NULL if the
2711         parent is not an element.
2712         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2713         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2714         
2715         * gst/gstobject.c (gst_object_class_init): Make name a construct
2716         property. Don't set it in the object init.
2717
2718         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2719         with UNKNOWN direction.
2720         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2721         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2722         (gst_element_remove_pad): Remove ghost-pad special cases.
2723         (gst_element_pads_activate): Remove rpad cruft.
2724
2725         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2726         catch the pad's-parent-not-an-element case.
2727
2728         * gst/gst.h: Include gstghostpad.h.
2729
2730         * gst/gst.c (init_post): No more real, ghost pads.
2731
2732         * gst/Makefile.am: Add gstghostpad.[ch].
2733
2734         * check/Makefile.am:
2735         * check/gst/gstbin.c:
2736         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2737         into a bin creates ghost pads, and that the refcounts are right.
2738         Partly moved from gstbin.c.
2739
2740 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2741
2742         * check/gst-libs/.cvsignore:
2743         * check/gst/.cvsignore:
2744         * check/pipelines/.cvsignore:
2745           ignore more
2746         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2747         (START_TEST), (cleanup_suite), (main):
2748           add some tests related to cleanup after running pipelines
2749
2750 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2751
2752         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2753           add a testsuite for GstBuffer
2754
2755 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2756
2757         * gst/gstminiobject.h:
2758           add defines for accessing the refcount
2759
2760 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2761
2762         * Makefile.am: added support for html unit test coverage reports
2763
2764 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2765
2766         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2767           Free existing caps if the capsfilter changes. Add a FIXME about
2768           setting those caps on the pads.
2769
2770         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2771           Before adding a ghost pad to a parent bin, check that there isn't
2772           already one for the element on the bin. Prevents infinite recursion
2773           when using decodebin in parse pipelines. Andy says he'll rewrite the
2774           way this works anyway, so ignore the hack.
2775
2776 2005-06-02  Andy Wingo  <wingo@pobox.com>
2777
2778         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2779         file size, pass it on to the type find helper.
2780
2781         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2782         segment_start and segment_end properly according to the seek
2783         method. Segment_end is still a bit flaky because offset can be
2784         negative for CUR and END cases, but it takes -1 as an "unset"
2785         value.
2786
2787 2005-06-02  Wim Taymans  <wim@fluendo.com>
2788
2789         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2790         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2791         (gst_basesink_activate):
2792         * gst/base/gstbasesink.h:
2793         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2794         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2795         (gst_pad_query), (gst_pad_start_task):
2796         * gst/gstpad.h:
2797         * gst/gstqueue.c: (gst_queue_bufferalloc),
2798         (gst_queue_handle_sink_event), (gst_queue_chain):
2799         Bufferalloc: return GstFlowReturn to more accuratly report
2800         why allocation failed.
2801
2802 2005-06-02  Wim Taymans  <wim@fluendo.com>
2803
2804         * gst/gstpipeline.c: (gst_pipeline_send_event):
2805         Take snapshot of state without blocking.
2806
2807 2005-06-02  Wim Taymans  <wim@fluendo.com>
2808
2809         * docs/design/part-TODO.txt:
2810         * docs/design/part-caps.txt:
2811         * docs/design/part-clocks.txt:
2812         * docs/design/part-negotiation.txt:
2813         * docs/design/part-preroll.txt:
2814         Small doc updates 
2815
2816 2005-05-30  Wim Taymans  <wim@fluendo.com>
2817
2818         * gst/elements/gstidentity.c: (gst_identity_event),
2819         (gst_identity_transform), (gst_identity_get_property):
2820         Protect last_message property as it is accessed from
2821         multiple threads.
2822
2823 2005-05-30  Wim Taymans  <wim@fluendo.com>
2824
2825         * gst/gstelement.c: (gst_element_init),
2826         (gst_element_pads_activate), (gst_element_change_state):
2827         Slicker pad activation code.
2828
2829 2005-05-30  Wim Taymans  <wim@fluendo.com>
2830
2831         * gst/Makefile.am:
2832         * gst/gstelement.h:
2833         * gst/gstelementfactory.h:
2834         * gst/gsttypes.h:
2835         Move elementfactory methods to separate .h file.
2836
2837 2005-05-30  Wim Taymans  <wim@fluendo.com>
2838
2839         * docs/design/part-overview.txt:
2840         * gst/gstsystemclock.h:
2841         Small typo fixes, doc updates.
2842
2843 2005-05-30  Wim Taymans  <wim@fluendo.com>
2844
2845         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2846         (init_popt_callback):
2847         Remove cpu-opt flag.
2848
2849 2005-05-30  Wim Taymans  <wim@fluendo.com>
2850
2851         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2852         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2853         * gst/gstbuffer.h:
2854         Avoid typechecking in places where not needed.
2855         Added accessor for malloc_data.
2856
2857 2005-05-30  Wim Taymans  <wim@fluendo.com>
2858
2859         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2860         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2861         (gst_pad_configure_sink), (gst_pad_configure_src),
2862         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2863         (gst_pad_start_task):
2864         Propagate errors from _set_caps() in configure_src/sink
2865         functions instead of returning TRUE.
2866         FLUSH events can travel up and downstream
2867
2868
2869 2005-05-30  Wim Taymans  <wim@fluendo.com>
2870
2871         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2872         (gst_basesink_activate):
2873         Handle EOS in preroll.
2874
2875 2005-05-30  Wim Taymans  <wim@fluendo.com>
2876
2877         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2878         (gst_queue_loop), (gst_queue_handle_src_event):
2879         Remove old pieces of code
2880         Flushing the queue in an upstream event is a very bad idea.
2881
2882 2005-05-26  Andy Wingo  <wingo@pobox.com>
2883
2884         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2885         gst_value_set_mini_object so as to add a ref on the object (which
2886         will be removed when the value is unset).
2887
2888         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2889         arg type in ::handoff.
2890
2891         * gst/gstelement.c (gst_element_change_state): Also deactivate
2892         pads in READY->NULL, just in case the element didn't make it to
2893         PAUSED. Wingo tested, Wim approved.
2894
2895 2005-05-26  Wim Taymans  <wim@fluendo.com>
2896
2897         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2898         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2899         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2900         A flushing pad cannot be used to alloc_buffer from.
2901
2902 2005-05-26  Wim Taymans  <wim@fluendo.com>
2903
2904         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2905         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2906         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2907         (gst_bus_create_watch), (gst_bus_add_watch_full):
2908         * gst/gstbus.h:
2909         Implement a real GSource and use g_main_context_wakeup() to
2910         signal new messages instead of the socketpair.
2911
2912 2005-05-25  Wim Taymans  <wim@fluendo.com>
2913
2914         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2915         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2916         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2917         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2918         (gst_pad_send_event), (gst_pad_start_task):
2919         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2920         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2921         (gst_queue_sink_activate), (gst_queue_src_activate),
2922         (gst_queue_change_state):
2923         * gst/gstqueue.h:
2924         Fix state changes for non sinks. We now change sinks, then elements
2925         with unconnected srcpads, then the rest.
2926         More efficient queue unlocking in flush and state changes.
2927         Set the pad activate mode even if it does not have an activate
2928         function.
2929
2930 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2931
2932         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2933           Don't go in pull mode for non-seekable sources.
2934         * gst/elements/gsttypefindelement.h:
2935         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2936         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2937         (free_entry), (stop_typefinding),
2938         (gst_type_find_element_handle_event), (find_peek),
2939         (gst_type_find_element_chain), (do_pull_typefind),
2940         (gst_type_find_element_change_state):
2941           Allow typefinding (w/o seeking) in push-mode, simplified version
2942           of what was in 0.8.
2943         * gst/gstutils.c: (gst_buffer_join):
2944         * gst/gstutils.h:
2945           gst_buffer_join() from 0.8.
2946
2947 2005-05-25  Wim Taymans  <wim@fluendo.com>
2948
2949         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2950         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2951         (gst_pad_send_event), (gst_pad_start_task):
2952         Disable attempt at mode switching until it is figured out.
2953
2954 2005-05-25  Wim Taymans  <wim@fluendo.com>
2955
2956         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2957         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2958         (gst_basesink_finish_preroll), (gst_basesink_chain),
2959         (gst_basesink_loop), (gst_basesink_activate),
2960         (gst_basesink_change_state):
2961         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2962         (gst_basesrc_get_range), (gst_basesrc_loop),
2963         (gst_basesrc_activate):
2964         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2965         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2966         (gst_real_pad_init), (gst_real_pad_set_property),
2967         (gst_real_pad_get_property), (gst_pad_set_active),
2968         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2969         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2970         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2971         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2972         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2973         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2974         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2975         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2976         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2977         (gst_pad_stop_task):
2978         * gst/gstpad.h:
2979         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2980         (gst_queue_loop), (gst_queue_src_activate):
2981         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2982         (gst_task_get_state):
2983         * gst/gsttask.h:
2984         * gst/schedulers/threadscheduler.c:
2985         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2986         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2987         in task function.
2988         Remove ACTIVE pad flag, use FLUSHING everywhere
2989         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2990         functions.
2991         Add locks around IS_FLUSHING when reading.
2992         Take STREAM lock in chain(), get_range() functions so plugins
2993         don't need to take it anymore.
2994         
2995
2996
2997 2005-05-25  Wim Taymans  <wim@fluendo.com>
2998
2999         * tools/gst-launch.c: (event_loop):
3000         Unref message after using its contents instead of
3001         before.
3002
3003 2005-05-24  Wim Taymans  <wim@fluendo.com>
3004
3005         * docs/design/draft-ghostpads.txt:
3006         * docs/design/draft-push-pull.txt:
3007         * docs/design/draft-query.txt:
3008         * docs/design/part-overview.txt:
3009         Docs updates, added general overview doc.
3010
3011 2005-05-21  David Schleef  <ds@schleef.org>
3012
3013         * docs/gst/tmpl/old/GstBin.sgml:
3014         * docs/gst/tmpl/old/GstBuffer.sgml:
3015         * docs/gst/tmpl/old/GstCaps.sgml:
3016         * docs/gst/tmpl/old/GstClock.sgml:
3017         * docs/gst/tmpl/old/GstCompat.sgml:
3018         * docs/gst/tmpl/old/GstData.sgml:
3019         * docs/gst/tmpl/old/GstElement.sgml:
3020         * docs/gst/tmpl/old/GstEvent.sgml:
3021         * docs/gst/tmpl/old/GstIndex.sgml:
3022         * docs/gst/tmpl/old/GstStructure.sgml:
3023         * docs/gst/tmpl/old/GstTag.sgml:
3024         * docs/gst/tmpl/old/cothreads.sgml:
3025         * docs/gst/tmpl/old/cothreads_compat.sgml:
3026         * docs/gst/tmpl/old/gettext.sgml:
3027         * docs/gst/tmpl/old/gobject2gtk.sgml:
3028         * docs/gst/tmpl/old/grammar.tab.sgml:
3029         * docs/gst/tmpl/old/gst-i18n-app.sgml:
3030         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
3031         * docs/gst/tmpl/old/gst_private.sgml:
3032         * docs/gst/tmpl/old/gstaggregator.sgml:
3033         * docs/gst/tmpl/old/gstarch.sgml:
3034         * docs/gst/tmpl/old/gstatomic_impl.sgml:
3035         * docs/gst/tmpl/old/gstbufferstore.sgml:
3036         * docs/gst/tmpl/old/gstdata_private.sgml:
3037         * docs/gst/tmpl/old/gstdisksink.sgml:
3038         * docs/gst/tmpl/old/gstdisksrc.sgml:
3039         * docs/gst/tmpl/old/gstelementfactory.sgml:
3040         * docs/gst/tmpl/old/gstextratypes.sgml:
3041         * docs/gst/tmpl/old/gstfakesink.sgml:
3042         * docs/gst/tmpl/old/gstfakesrc.sgml:
3043         * docs/gst/tmpl/old/gstfdsink.sgml:
3044         * docs/gst/tmpl/old/gstfdsrc.sgml:
3045         * docs/gst/tmpl/old/gstfilesink.sgml:
3046         * docs/gst/tmpl/old/gstfilesrc.sgml:
3047         * docs/gst/tmpl/old/gsthttpsrc.sgml:
3048         * docs/gst/tmpl/old/gstidentity.sgml:
3049         * docs/gst/tmpl/old/gstindexfactory.sgml:
3050         * docs/gst/tmpl/old/gstmarshal.sgml:
3051         * docs/gst/tmpl/old/gstmd5sink.sgml:
3052         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
3053         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
3054         * docs/gst/tmpl/old/gstpadtemplate.sgml:
3055         * docs/gst/tmpl/old/gstpipefilter.sgml:
3056         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
3057         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3058         * docs/gst/tmpl/old/gstshaper.sgml:
3059         * docs/gst/tmpl/old/gstspider.sgml:
3060         * docs/gst/tmpl/old/gstspideridentity.sgml:
3061         * docs/gst/tmpl/old/gststatistics.sgml:
3062         * docs/gst/tmpl/old/gsttee.sgml:
3063         * docs/gst/tmpl/old/gsttimecache.sgml:
3064         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3065         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3066         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3067         * docs/gst/tmpl/old/types.sgml:
3068           I didn't intend to add these or check them in.
3069
3070 2005-05-19  David Schleef  <ds@schleef.org>
3071
3072         * configure.ac: Use -no-common everywhere.  In a sane world, it
3073           would be the default in libtool, because without it, you can't
3074           build DLLs on Windows.
3075         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3076         * docs/gst/gstreamer-sections.txt:
3077         * docs/gst/tmpl/gstcpu.sgml:
3078         * docs/gst/tmpl/gstdata.sgml:
3079         * docs/gst/tmpl/gstthread.sgml:
3080
3081 2005-05-19  David Schleef  <ds@schleef.org>
3082
3083         * gst/gstminiobject.c: (gst_value_set_mini_object),
3084         (gst_value_take_mini_object), (gst_value_get_mini_object):
3085         * gst/gstminiobject.h: Add GValue set/get functions.
3086
3087 2005-05-19  Wim Taymans  <wim@fluendo.com>
3088
3089         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3090         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3091         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3092         * gst/gstbuffer.h:
3093         * gst/gstbus.c: (gst_bus_post):
3094         * gst/gstelement.c: (gst_element_get_random_pad):
3095         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3096         Make subbufer unref the parent in finalize.
3097         some more debugging info.
3098
3099
3100 2005-05-19  Wim Taymans  <wim@fluendo.com>
3101
3102         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3103         (gst_basesink_init), (gst_basesink_finalize),
3104         (gst_basesink_activate), (gst_basesink_change_state):
3105         Don't free preroll queue too early.
3106
3107 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3108
3109         * gst/Makefile.am:
3110         * gst/ROADMAP:
3111           Hi, I'm outdated. Please shoot me.
3112
3113 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3114
3115         * gst/gstpipeline.c: (gst_pipeline_send_event):
3116           Do not access variables after they have been deleted.
3117
3118 2005-05-19  Wim Taymans  <wim@fluendo.com>
3119
3120         * tools/gst-inspect.c: (print_plugin_features):
3121         A plugin feature does unfortunatly not use the
3122         object name yet...
3123
3124 2005-05-18  Wim Taymans  <wim@fluendo.com>
3125
3126         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3127         Port _span() functions to new subbuffers.
3128
3129 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3130
3131         * gst/gstbin.c: (gst_bin_add_func):
3132           Fix clock settery in bins when adding kids after the clock has
3133           been selected.
3134
3135 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3136
3137         * gst/elements/gstidentity.c: (gst_identity_class_init):
3138           Workaround until signals support GstMiniObject.
3139
3140 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3141
3142         * gst/gstbuffer.c:
3143         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3144
3145 2005-05-18  Wim Taymans  <wim@fluendo.com>
3146
3147         * gst/base/Makefile.am:
3148         * gst/base/gstadapter.c: (gst_adapter_base_init),
3149         (gst_adapter_class_init), (gst_adapter_init),
3150         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3151         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3152         (gst_adapter_flush), (gst_adapter_available),
3153         (gst_adapter_available_fast):
3154         * gst/base/gstadapter.h:
3155         Ported and added adapter to the base classes.
3156
3157 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3158
3159         * gst/gst.c:
3160         * gst/gstmessage.c:
3161           Make sure the class is reffed/unreffed once before threads can be
3162           used.  Fixes #304551.
3163
3164 2005-05-17  Wim Taymans  <wim@fluendo.com>
3165
3166         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3167         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3168         * gst/gstminiobject.c: (gst_mini_object_get_type),
3169         (gst_mini_object_free):
3170         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3171         (gst_pad_push), (gst_pad_push_event):
3172         * gst/gstqueue.c: (gst_queue_change_state):
3173         Don't queue buffers in basesink when we are flushing.
3174         Unref buffer when flushing in basesink.
3175         Flush queue when going to READY
3176         Unref buffer when _push() returns an error.
3177         Don't free MiniObject instance when refcount is incremented
3178         in _finalize() so that we can recover objects.
3179
3180 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3181
3182         * docs/manual/advanced-schedulers.xml:
3183         * docs/manual/appendix-checklist.xml:
3184         * docs/pwg/advanced-clock.xml:
3185         * docs/pwg/advanced-interfaces.xml:
3186         * docs/pwg/advanced-request.xml:
3187         * docs/pwg/advanced-types.xml:
3188         * docs/pwg/intro-preface.xml:
3189         * examples/plugins/example.c: (gst_example_get_type),
3190         (gst_example_class_init), (gst_example_chain),
3191         (gst_example_set_property), (gst_example_get_property),
3192         (gst_example_change_state), (plugin_init):
3193         * examples/plugins/example.h:
3194           small doc fixes
3195
3196 2005-05-17  Wim Taymans  <wim@fluendo.com>
3197
3198         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3199         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3200         * gst/gstqueue.c: (gst_queue_change_state):
3201         Clear queue when going to READY.
3202         Remove IN_SETCAPS flag too.
3203
3204 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3205
3206         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3207           Remove implicit cast from gboolean to GstElementStateReturn;
3208           make sure we still return failure in paused => ready case if
3209           the parent class fails to change state and our own stop 
3210           vfunc succeeds.
3211
3212 2005-05-17  Wim Taymans  <wim@fluendo.com>
3213
3214         * tools/gst-launch.c: (event_loop):
3215         Message was unreffed too soon.
3216
3217 2005-05-16  Andy Wingo  <wingo@pobox.com>
3218
3219         * gst/gstbin.c (sink_iterator_filter): Err... um...
3220
3221         * check/gst/gstbin.c (test_ghost_pads): New test for the
3222         ghosting-if-elements-not-in-same-bin behavior.
3223
3224 2005-05-16  David Schleef  <ds@schleef.org>
3225
3226         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3227         accessing refcount directly.
3228
3229 2005-05-15  David Schleef  <ds@schleef.org>
3230
3231         * check/Makefile.am: remove GstData checks
3232         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3233         * gst/Makefile.am: add miniobject, remove data
3234         * gst/gst.h: add miniobject, remove data
3235         * gst/gstdata.c: remove
3236         * gst/gstdata.h: remove
3237         * gst/gstdata_private.h: remove
3238         * gst/gsttypes.h: remove GstEvent and GstMessage
3239         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3240         * gst/gstmarshal.list: change BOXED -> OBJECT
3241
3242         Implement GstMiniObject.
3243         * gst/gstminiobject.c:
3244         * gst/gstminiobject.h:
3245
3246         Modify to be subclasses of GstMiniObject.
3247         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3248         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3249         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3250         (gst_subbuffer_get_type), (gst_subbuffer_init),
3251         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3252         (gst_buffer_span):
3253         * gst/gstbuffer.h:
3254         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3255         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3256         (_gst_event_copy), (gst_event_new):
3257         * gst/gstevent.h:
3258         * gst/gstmessage.c: (_gst_message_initialize),
3259         (gst_message_get_type), (gst_message_class_init),
3260         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3261         (gst_message_new), (gst_message_new_error),
3262         (gst_message_new_warning), (gst_message_new_tag),
3263         (gst_message_new_state_changed), (gst_message_new_application):
3264         * gst/gstmessage.h:
3265         * gst/gstprobe.c: (gst_probe_perform),
3266         (gst_probe_dispatcher_dispatch):
3267         * gst/gstprobe.h:
3268         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3269         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3270         (_gst_query_copy), (gst_query_new):
3271
3272         Update elements for GstData -> GstMiniObject changes
3273         * gst/gstquery.h:
3274         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3275         (gst_queue_chain), (gst_queue_loop):
3276         * gst/elements/gstbufferstore.c:
3277         (gst_buffer_store_add_buffer_func),
3278         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3279         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3280         (gst_fakesink_render):
3281         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3282         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3283         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3284         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3285         (gst_filesrc_create_read):
3286         * gst/elements/gstidentity.c: (gst_identity_class_init):
3287         * gst/elements/gsttypefindelement.c:
3288         (gst_type_find_element_src_event), (free_entry_buffers),
3289         (gst_type_find_element_handle_event):
3290         * libs/gst/dataprotocol/dataprotocol.c:
3291         (gst_dp_header_from_buffer):
3292         * libs/gst/dataprotocol/dataprotocol.h:
3293         * libs/gst/dataprotocol/dp-private.h:
3294
3295 2005-05-15  David Schleef  <ds@schleef.org>
3296
3297         * gst/elements/gstelements.c: Don't include headers that were
3298         just removed.
3299
3300 2005-05-15  David Schleef  <ds@schleef.org>
3301
3302         * gst/elements/Makefile.am: Remove some elements that don't
3303         need to be in the core (or even exist at all).
3304         * gst/elements/gstaggregator.c:
3305         * gst/elements/gstaggregator.h:
3306         * gst/elements/gstmd5sink.c:
3307         * gst/elements/gstmd5sink.h:
3308         * gst/elements/gstmultifilesrc.c:
3309         * gst/elements/gstmultifilesrc.h:
3310         * gst/elements/gstpipefilter.c:
3311         * gst/elements/gstpipefilter.h:
3312         * gst/elements/gstshaper.c:
3313         * gst/elements/gstshaper.h:
3314         * gst/elements/gststatistics.c:
3315         * gst/elements/gststatistics.h:
3316         * po/POTFILES.in: Remove above files.
3317
3318 2005-05-14  Andy Wingo  <wingo@pobox.com>
3319
3320         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3321         so as to get the refs right.
3322         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3323         unreffing objects that don't pass the filter.
3324
3325         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3326         gst_element_set_bus.
3327         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3328         normal cases, this will destroy the bus.
3329
3330         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3331         object.
3332
3333         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3334         has no sinks.
3335
3336 2005-05-13  Andy Wingo  <wingo@pobox.com>
3337
3338         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3339         gst_pad_link, call pad_link_maybe_ghosting,
3340         (pad_link_maybe_ghosting): Links pads, making sure that the
3341         elements being linked are in the same bin.
3342         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3343         Helpers for pad_link_maybe_ghosting.
3344
3345 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3346
3347         * configure.ac:
3348           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3349
3350 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3351
3352         * docs/design/part-element-source.txt:
3353           Mention GstPushSrc
3354
3355 2005-05-12  Wim Taymans  <wim@fluendo.com>
3356
3357         * gst/base/gstbasesink.c: (gst_basesink_init),
3358         (gst_basesink_activate):
3359         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3360         (gst_basesrc_is_seekable):
3361         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3362         (bin_element_is_sink), (gst_bin_change_state):
3363         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3364         * gst/gstelement.h:
3365         Identify sinks by their flag to avoid overly complicated
3366         checks (fow now).
3367         Do state changes even for elements not reachable from the
3368         sinks.
3369         BaseSink is a sink now :)
3370         Some more debugging info in the basesrc.
3371
3372
3373 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3374
3375         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3376           Implement _query on a bin, similar to _send_event.
3377
3378 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3379
3380         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3381           Discont event offset format should be GST_FORMAT_BYTES,
3382           not GST_FORMAT_TIME.
3383
3384 2005-05-12  Wim Taymans  <wim@fluendo.com>
3385
3386         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3387         Same fix as Ronald's but without the signal. 
3388
3389 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3390
3391         * gst/gstutils.c: (gst_element_query_position):
3392           No, an element is not a pad.
3393
3394 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3395
3396         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3397         (gst_bin_get_state):
3398           If a child is removed from a bin while we remove the child from
3399           the bin and while we're retrieving its state, signal this to the
3400           get_state function so we abort the wait (instead of waiting for
3401           a timeout) and can immediately re-iterate over all other elements.
3402
3403 2005-05-12  Wim Taymans  <wim@fluendo.com>
3404
3405         * gst/base/Makefile.am:
3406         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3407         (gst_basesrc_start):
3408         * gst/base/gstbasesrc.h:
3409         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3410         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3411         (gst_pushsrc_init), (gst_pushsrc_create):
3412         * gst/base/gstpushsrc.h:
3413         Added is_seekable to BaseSrc
3414         Added simple PushSrc.
3415
3416 2005-05-11  Wim Taymans  <wim@fluendo.com>
3417
3418         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3419         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3420         (gst_element_link_pads), (gst_element_query_position),
3421         (gst_element_query_convert), (intersect_caps_func),
3422         (gst_pad_query_position), (gst_pad_query_convert):
3423         Fix refcounting in utils function.
3424         No point in trying to activate a pad when it's added, it could
3425         be added from the state change function and then we deadlock, the
3426         element has to decide what to do.
3427
3428 2005-05-10  Andy Wingo  <wingo@pobox.com>
3429
3430         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3431         *all* the arguments.
3432
3433         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3434         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3435         lock (according to the docs -- if this is wrong change the docs).
3436
3437         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3438         flush messages in the NULL state.
3439
3440         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3441         message immediately and return.
3442         (gst_bus_set_flushing): New function. If a bus is flushing, it
3443         flushes out any queued messages and immediately unrefs new
3444         messages. This is so when an element goes to NULL, all of the
3445         unhandled messages coming from it can be freed, and their
3446         references to the element dropped. In other words: message source
3447         ref considered harmful :P
3448
3449         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3450         we're finished with it.
3451
3452         * gst/gstmessage.c (gst_message_new_state_changed): 
3453
3454 2005-05-10  Wim Taymans  <wim@fluendo.com>
3455
3456         * gst/gstvalue.c: (gst_value_compare_flags),
3457         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3458         (_gst_value_initialize):
3459         Added flags serialize/deserialize/compare code.
3460
3461 2005-05-09  Andy Wingo  <wingo@pobox.com>
3462
3463         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3464         Intersect the peer's caps with our caps.
3465
3466 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3467
3468         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3469         * gst/elements/gsttypefindelement.c: (find_peek):
3470           Handle negative offsets better. Fixes decodebin.
3471
3472 2005-05-09  Wim Taymans  <wim@fluendo.com>
3473
3474         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3475         (gst_base_transform_event):
3476         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3477         Implement accept_caps.
3478         Fix silly lock/unlock mismatch in base class.
3479
3480 2005-05-09  Wim Taymans  <wim@fluendo.com>
3481
3482         * docs/design/draft-push-pull.txt:
3483         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3484         * gst/elements/gstfilesink.c: (gst_filesink_init),
3485         (gst_filesink_query):
3486         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3487         (gst_type_find_handle_src_query), (find_element_get_length):
3488         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3489         * gst/gstelement.h:
3490         * gst/gstmessage.c:
3491         * gst/gstmessage.h:
3492         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3493         (gst_real_pad_get_caps_unlocked),
3494         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3495         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3496         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3497         (gst_real_pad_dispose), (gst_real_pad_finalize),
3498         (gst_pad_load_and_link), (gst_pad_save_thyself),
3499         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3500         (gst_pad_check_pull_range), (gst_pad_pull_range),
3501         (gst_pad_template_get_type), (gst_pad_template_class_init),
3502         (gst_pad_template_init), (gst_pad_template_dispose),
3503         (name_is_valid), (gst_static_pad_template_get),
3504         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3505         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3506         (gst_pad_get_element_private), (gst_pad_start_task),
3507         (gst_pad_pause_task), (gst_pad_stop_task),
3508         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3509         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3510         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3511         (gst_ghost_pad_new):
3512         * gst/gstpad.h:
3513         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3514         (gst_query_new_position), (gst_query_set_position),
3515         (gst_query_parse_position), (gst_query_new_convert),
3516         (gst_query_set_convert), (gst_query_parse_convert):
3517         * gst/gstquery.h:
3518         * gst/gstqueryutils.c:
3519         * gst/gstqueryutils.h:
3520         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3521         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3522         (gst_queue_handle_src_query):
3523         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3524         (gst_element_query_position), (gst_element_query_convert),
3525         (intersect_caps_func), (gst_pad_query_position),
3526         (gst_pad_query_convert):
3527         * gst/gstutils.h:
3528         * tools/gst-inspect.c: (print_pad_info):
3529         * tools/gst-xmlinspect.c: (print_element_info):
3530         Remove old query functions. Ported old code.
3531         Added position/convert helper functions to gstutils.
3532         Reordered gstpad.c code, grouping relevant things.
3533         Remove gst_message_new(), always need to speficy a specific
3534         message.
3535
3536
3537 2005-05-09  Andy Wingo  <wingo@pobox.com>
3538
3539         * gst/gstiterator.h: Add some includes.
3540
3541         * gst/gstqueryutils.h: Include more headers.
3542
3543         * gst/gstpad.h:
3544         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3545         some uses of gst_pad_query.
3546
3547         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3548         NULL out parameters.
3549         (gst_query_new_position): New proc, allocates a new position
3550         query.
3551
3552         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3553         gstqueryutils.c to the build.
3554
3555         * gst/gststructure.c (gst_structure_set_valist): Implement with
3556         the generic G_VALUE_COLLECT.
3557         
3558 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3559
3560         * gst/Makefile.am: (gst_headers):
3561         Added gstqueryutils.h to the list of headers to install, that was
3562         a 'nachty' move wingo :)
3563
3564 2005-05-06  Andy Wingo  <wingo@pobox.com>
3565
3566         * gst/gstquery.h
3567         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3568         GstData, init a memchunk.
3569         (standard_definitions): Add a few query types, deprecate a few.
3570         (gst_query_get_type): New proc.
3571         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3572         implementation.
3573         (gst_query_new_application, gst_query_get_structure): New public
3574         procs.
3575
3576         * docs/design/draft-query.txt: Removed LINKS from the query types,
3577         because all the rest can be dispatched to other pads -- seemed
3578         ugly to have a query that couldn't be dispatched. internal_links
3579         is fine as a pad method.
3580
3581         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3582         in gstpad.c, but maintain binary compatibility for the moment.
3583         Will fix before 0.9 is out.
3584
3585         * gst/gstqueryutils.c: 
3586         * gst/gstqueryutils.h: New files, implement 3 methods for each
3587         query type: parse_query, parse_response, and set. Probably need an
3588         allocator as well.
3589
3590         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3591
3592         * gst/elements/gstfilesink.c (gst_filesink_query2):
3593         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3594         query_types, and formats methods.
3595
3596         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3597         (gst_pad_set_query2_function): New functions.
3598         (gst_real_pad_init): Set query2_default as the default query2
3599         function. Basically just dispatches to internally linked pads.
3600
3601         Needs review!
3602         
3603         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3604         without using the atomic operations. Only one thread can possibly
3605         be accessing the data at this point. Changed so as to avoid
3606         gst_atomic operations.
3607
3608 2005-05-06  Wim Taymans  <wim@fluendo.com>
3609
3610         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3611         Also set caps if we use the fallback buffer alloc.
3612
3613 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3614
3615         * docs/gst/Makefile.am:
3616         * docs/gst/gstreamer-docs.sgml:
3617         * docs/gst/gstreamer-sections.txt:
3618         * docs/gst/tmpl/gstatomic.sgml:
3619         * docs/gst/tmpl/gstmemchunk.sgml:
3620         * testsuite/elements/struct_i386.h:
3621         * win32/GStreamer.vcproj:
3622         * win32/Makefile:
3623           Purge GstAtomic stuff from docs and win32 makefiles as well
3624
3625 2005-05-06  Wim Taymans  <wim@fluendo.com>
3626
3627         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3628         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3629         * gst/gstpad.c: (gst_pad_peer_get_caps):
3630         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3631         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3632         (gst_queue_src_activate), (gst_queue_change_state):
3633         * gst/gstqueue.h:
3634         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3635         (intersect_caps_func):
3636         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3637         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3638         Some fixes for the peer_get_caps() change.
3639
3640 2005-05-06  Wim Taymans  <wim@fluendo.com>
3641
3642         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3643         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3644         (gst_basesink_activate):
3645         Actually do something with error codes returned from the push
3646         functions.
3647
3648 2005-05-06  Wim Taymans  <wim@fluendo.com>
3649
3650         * docs/design/part-element-sink.txt:
3651         * docs/design/part-element-source.txt:
3652         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3653         (gst_basesink_event), (gst_basesink_activate):
3654         * gst/base/gstbasesink.h:
3655         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3656         (gst_basesrc_activate):
3657         * gst/base/gstbasesrc.h:
3658         * gst/gstelement.c: (gst_element_pads_activate):
3659         Some more documentation.
3660         Fixed scheduling decision in _pads_activate().
3661
3662 2005-05-05  Andy Wingo  <wingo@pobox.com>
3663
3664         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3665         the test suite.
3666
3667 2005-05-05  Wim Taymans  <wim@fluendo.com>
3668
3669         * gst/base/Makefile.am:
3670         * gst/base/gstbasesink.h:
3671         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3672         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3673         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3674         (gst_collectpads_class_init), (gst_collectpads_init),
3675         (gst_collectpads_finalize), (gst_collectpads_new),
3676         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3677         (find_pad), (gst_collectpads_remove_pad),
3678         (gst_collectpads_is_active), (gst_collectpads_collect),
3679         (gst_collectpads_collect_range), (gst_collectpads_start),
3680         (gst_collectpads_stop), (gst_collectpads_peek),
3681         (gst_collectpads_pop), (gst_collectpads_available),
3682         (gst_collectpads_read), (gst_collectpads_flush),
3683         (gst_collectpads_chain):
3684         * gst/base/gstcollectpads.h:
3685         * gst/elements/Makefile.am:
3686         * gst/elements/gstelements.c:
3687         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3688         (gst_fakesink_get_times), (gst_fakesink_event),
3689         (gst_fakesink_preroll), (gst_fakesink_render):
3690         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3691         (gst_filesink_init), (gst_filesink_set_location),
3692         (gst_filesink_open_file), (gst_filesink_close_file),
3693         (gst_filesink_pad_query), (gst_filesink_event),
3694         (gst_filesink_render), (gst_filesink_change_state):
3695         * gst/elements/gstfilesink.h:
3696         Added object to help in making collect pad based elements.
3697         Ported filesink.
3698         Make event function in sink baseclass return gboolean.
3699
3700 2005-05-05  Wim Taymans  <wim@fluendo.com>
3701
3702         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3703         (gst_bin_get_by_name):
3704         * gst/gstbuffer.h:
3705         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3706         (gst_clock_finalize):
3707         * gst/gstdata.c: (gst_data_replace):
3708         * gst/gstdata.h:
3709         * gst/gstelement.c: (gst_element_request_pad),
3710         (gst_element_pads_activate):
3711         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3712         (gst_object_unref):
3713         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3714         (gst_pad_set_checkgetrange_function),
3715         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3716         (gst_pad_check_pull_range), (gst_pad_pull_range),
3717         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3718         (gst_pad_pause_task), (gst_pad_stop_task):
3719         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3720         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3721         Fix name lookup in GstBin.
3722         Added _data_replace() function and _buffer_replace()
3723         Use finalize method to clean up clock.
3724         Fix refcounting on request pads.
3725         Fix pad schedule mode error.
3726         Some more object refcounting debug info,
3727
3728
3729 2005-05-04  Andy Wingo <wingo@pobox.com>
3730
3731         * check/Makefile.am:
3732         * docs/gst/tmpl/gstatomic.sgml:
3733         * docs/gst/tmpl/gstplugin.sgml:
3734         * gst/base/gstbasesink.c: (gst_basesink_activate):
3735         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3736         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3737         (gst_basesrc_query), (gst_basesrc_set_property),
3738         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3739         (gst_basesrc_activate):
3740         * gst/base/gstbasesrc.h:
3741         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3742         (gst_base_transform_src_activate):
3743         * gst/elements/gstelements.c:
3744         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3745         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3746         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3747         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3748         (gst_type_find_element_checkgetrange),
3749         (gst_type_find_element_activate):
3750         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3751         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3752         (gst_caps_load_thyself):
3753         * gst/gstelement.c: (gst_element_pads_activate),
3754         (gst_element_save_thyself), (gst_element_restore_thyself):
3755         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3756         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3757         * gst/gstpad.h:
3758         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3759         (gst_xml_parse_file), (gst_xml_parse_memory),
3760         (gst_xml_get_element), (gst_xml_make_element):
3761         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3762         (_file_index_id_save_xml), (gst_file_index_commit):
3763         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3764         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3765         (load_paths):
3766         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3767         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3768         * tools/gst-complete.c: (main):
3769         * tools/gst-compprep.c: (main):
3770         * tools/gst-inspect.c: (print_element_properties_info):
3771         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3772         * tools/gst-xmlinspect.c: (print_element_properties):
3773         GCC 4 fixen.
3774         
3775 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3776
3777         * gst/gstplugin.c: (gst_plugin_check_module),
3778         (gst_plugin_check_file), (gst_plugin_load_file):
3779             apply patch from #172526 to make register work on MacOSX
3780
3781 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3782
3783         * docs/gst/tmpl/gstconfig.sgml:
3784         * gst/gstconfig.h.in:
3785           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3786         * testsuite/debug/printf_extension.c: (main):
3787           Do not use GST_PTR_FORMAT on pointers to types with
3788           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3789         * testsuite/elements/property.h:
3790           use correct printf format
3791
3792 2005-05-02  Wim Taymans  <wim@fluendo.com>
3793
3794         * docs/design/draft-push-pull.txt:
3795         * docs/design/draft-query.txt:
3796         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3797         (gst_basesrc_start):
3798         Added draft for new query API.
3799         Added draft for better selecting scheduling methods.
3800         Make basesrc ignore length if the subclass does not support
3801         it.
3802
3803 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3804
3805         * gst/Makefile.am:
3806           possible fixes for automake-1.5 - _LIBADD is reserved
3807
3808 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3809
3810         * docs/faq/Makefile.am:
3811         * docs/manual/Makefile.am:
3812         * docs/manuals.mak:
3813         * docs/pwg/Makefile.am:
3814         * gst/Makefile.am:
3815           possible fixes for automake-1.5
3816
3817 2005-04-28  Wim Taymans  <wim@fluendo.com>
3818
3819         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3820         (gst_basesink_pad_getcaps), (gst_basesink_init),
3821         (gst_basesink_do_sync):
3822         * gst/gstclock.c: (gst_clock_entry_new):
3823         * gst/gstevent.c: (gst_event_discont_get_value):
3824         * gst/gstpipeline.c: (pipeline_bus_handler),
3825         (gst_pipeline_change_state):
3826         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3827         Better debugging of clocking info.
3828         Allow NULL values when getting discont values.
3829
3830 2005-04-27  Wim Taymans  <wim@fluendo.com>
3831
3832         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3833         * check/gst/gstpad.c: (gst_pad_suite):
3834         Increase timeout for checks.
3835
3836 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3837
3838         * check/Makefile.am:
3839           fix the broken rule for cleanup.  Apparently this rule is
3840           only needed on FC2, so maybe this warrants further autotool
3841           inspection.
3842
3843 2005-04-26  Wim Taymans  <wim@fluendo.com>
3844
3845         * gst/gsttrashstack.h:
3846         Ooohh. a nasty one! After having a failed pop() from the stack,
3847         it's possible that the stack is empty. In that case, don't
3848         follow the NULL pointer.
3849
3850 2005-04-25  Wim Taymans  <wim@fluendo.com>
3851
3852         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3853         (gst_pad_set_checkgetrange_function),
3854         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3855         (gst_pad_check_pull_range), (gst_pad_pull_range),
3856         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3857         (gst_pad_pause_task), (gst_pad_stop_task):
3858         * gst/gstplugin.c: (gst_plugin_load):
3859         * gst/gstplugin.h:
3860         Remove gst_library_load as it does more harm than good with
3861         the new g_module flags.
3862         Revert bogus caps template check in pad linking, pad caps
3863         are important when linking not the template, which is more
3864         general than the current caps.
3865
3866 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3867
3868         * gst/autoplug/.cvsignore:
3869         * gst/autoplug/Makefile.am:
3870         * gst/autoplug/gstsearchfuncs.c:
3871         * gst/autoplug/gstsearchfuncs.h:
3872         * gst/autoplug/gstspider.c:
3873         * gst/autoplug/gstspider.h:
3874         * gst/autoplug/gstspideridentity.c:
3875         * gst/autoplug/gstspideridentity.h:
3876         * gst/autoplug/spidertest.c:
3877           Die, spider, die.
3878
3879 2005-04-25  Wim Taymans  <wim@fluendo.com>
3880
3881         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3882         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3883         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3884         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3885         * gst/gstpad.h:
3886         Added stubs for unimplemented functions. 
3887
3888 2005-04-24  David Schleef  <ds@schleef.org>
3889
3890         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3891         please fix.
3892
3893 2005-04-24  David Schleef  <ds@schleef.org>
3894
3895         Convert everything from GstAtomicInt to g_atomic_int_*, and
3896         remove gstatomic.
3897         * gst/Makefile.am:
3898         * gst/gstatomic.c:
3899         * gst/gstatomic.h:
3900         * gst/gstatomic_impl.h:
3901         * gst/gstbuffer.c:
3902         * gst/gstcaps.c:
3903         * gst/gstcaps.h:
3904         * gst/gstclock.c:
3905         * gst/gstclock.h:
3906         * gst/gstdata.c:
3907         * gst/gstdata.h:
3908         * gst/gstdata_private.h:
3909         * gst/gstevent.c:
3910         * gst/gstinfo.c:
3911         * gst/gstinfo.h:
3912         * gst/gstmessage.c:
3913         * gst/gstobject.c:
3914         * gst/gstobject.h:
3915         * gst/gststructure.c:
3916         * gst/gststructure.h:
3917         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3918         * gst/gstutils.h:
3919
3920 2005-04-24  David Schleef  <ds@schleef.org>
3921
3922         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3923         make the regressions tests work.  Remove some code that is no
3924         longer true.
3925         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3926         Disable warning for pads without templates.
3927
3928 2005-04-24  David Schleef  <ds@schleef.org>
3929
3930         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3931         functions that handle filtered links.
3932         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3933         removed functions.
3934         * gst/gstutils.c: Fix/remove utility functions that handle
3935         filtered caps.
3936         * gst/gstutils.h:
3937         * gst/gstvalue.c: Add serialization/deserialization of caps
3938         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3939         requires fixing so that the filter caps notation creates
3940         a capsfilter element and sets the filter_caps property.  I
3941         think everyone probably wants to keep the shorthand notation.
3942         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3943         * docs/gst/tmpl/gstpad.sgml:
3944
3945         * gst/elements/gstelements.c: Register capsfilter element.
3946         * gst/Makefile.am: fix spacing
3947         * docs/random/ds/0.9-suggested-changes: random
3948
3949 2005-04-23  David Schleef  <ds@schleef.org>
3950
3951         * gst/elements/Makefile.am:
3952         * gst/elements/gstcapsfilter.c: New element that acts like an
3953         identity, but filters caps.  Will eventually replace filtered
3954         caps in pad linking.
3955         * gst/gstutils.c: (gst_element_create_all_pads): New function
3956         to create all the ALWAYS pads that are registered with an
3957         element class.  This functionality should eventually be
3958         merged in with GstElement initialization.
3959         * gst/gstutils.h:
3960         * testsuite/trigger/README: part of trigger test code that should
3961         have been checked in a long time ago.
3962
3963 2005-04-23  David Schleef  <ds@schleef.org>
3964
3965         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3966         needed with new versions of libtool (nobody will confirm this),
3967         and hard to carry around.
3968         * gst/autoplug/Makefile.am:
3969         * gst/base/Makefile.am:
3970         * gst/elements/Makefile.am:
3971         * gst/indexers/Makefile.am:
3972         * gst/schedulers/Makefile.am:
3973         * libs/gst/bytestream/Makefile.am:
3974         * libs/gst/control/Makefile.am:
3975         * libs/gst/dataprotocol/Makefile.am:
3976         * libs/gst/getbits/Makefile.am:
3977
3978 2005-04-21  Wim Taymans  <wim@fluendo.com>
3979
3980         * docs/design/draft-push-pull.txt:
3981         * docs/design/part-MT-refcounting.txt:
3982         * docs/design/part-TODO.txt:
3983         * docs/design/part-caps.txt:
3984         * docs/design/part-events.txt:
3985         * docs/design/part-gstbus.txt:
3986         * docs/design/part-gstpipeline.txt:
3987         * docs/design/part-messages.txt:
3988         * docs/design/part-push-pull.txt:
3989         * docs/design/part-query.txt:
3990         Some more docs.
3991
3992 2005-04-21  Wim Taymans  <wim@fluendo.com>
3993
3994         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3995         (gst_message_new), (gst_message_new_error),
3996         (gst_message_new_warning), (gst_message_new_tag),
3997         (gst_message_new_state_changed), (gst_message_new_application),
3998         (gst_message_get_structure):
3999         * gst/gstmessage.h:
4000         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4001         (gst_structure_copy_conditional):
4002         Use parent refcount in GstMessage to ensure GstStructure
4003         consistency.
4004         Cleaned up headers a bit.
4005         
4006
4007 2005-04-20  Wim Taymans  <wim@fluendo.com>
4008
4009         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4010         (gst_basesink_pad_getcaps), (gst_basesink_init),
4011         (gst_basesink_chain_unlocked):
4012         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
4013         (gst_type_find_helper):
4014         * gst/elements/gsttypefindelement.c:
4015         (gst_type_find_element_have_type), (gst_type_find_element_init),
4016         (stop_typefinding), (gst_type_find_element_handle_event),
4017         (find_suggest), (gst_type_find_element_chain),
4018         (gst_type_find_element_checkgetrange),
4019         (gst_type_find_element_getrange), (do_typefind),
4020         (gst_type_find_element_activate):
4021         * gst/gstbuffer.c: (_gst_buffer_sub_free),
4022         (gst_buffer_default_free), (gst_buffer_default_copy),
4023         (gst_buffer_set_caps):
4024         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
4025         (gst_caps_replace):
4026         * gst/gstmessage.c: (gst_message_new),
4027         (gst_message_new_state_changed):
4028         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4029         (gst_pad_set_checkgetrange_function),
4030         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
4031         (gst_pad_set_caps), (gst_pad_check_pull_range),
4032         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
4033         * gst/gstpad.h:
4034         * gst/gsttypefind.c: (gst_type_find_register):
4035         Make gst_caps_replace() work like other _replace() functions.
4036         Use _caps_replace() where possible.
4037         Make sure _message_new() initialises its field.
4038         Add gst_static_pad_template_get_caps()
4039
4040
4041 2005-04-18  Andy Wingo  <wingo@pobox.com>
4042
4043         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
4044         on the peer, not the pad. I think that was a typo. Pass an extra
4045         arg to see if random access is possible. Activate the pads as
4046         PULL_RANGE if possible.
4047
4048         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
4049
4050         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
4051         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
4052         to PROP_....
4053
4054 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4055
4056         * docs/faq/using.xml:
4057           Add note on gstreamer-properties (#154996).
4058
4059 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4060
4061         * docs/random/bbb/optional-properties:
4062           Some analysis on optional properties.
4063
4064 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4065
4066         * docs/gst/tmpl/gstelementfactory.sgml:
4067         * gst/gstelement.h:
4068         * gst/gstelementfactory.c: (gst_element_factory_init),
4069         (gst_element_factory_cleanup), (gst_element_register),
4070         (__gst_element_factory_add_static_pad_template),
4071         (gst_element_factory_get_static_pad_templates),
4072         (gst_element_factory_can_src_caps),
4073         (gst_element_factory_can_sink_caps):
4074         * gst/registries/Makefile.am:
4075         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4076         (gst_xml_registry_class_init), (gst_xml_registry_init),
4077         (gst_xml_registry_new), (gst_xml_registry_set_property),
4078         (gst_xml_registry_get_property), (get_time), (make_dir),
4079         (gst_xml_registry_get_perms_func),
4080         (plugin_times_older_than_recurse), (plugin_times_older_than),
4081         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4082         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4083         (add_to_char_array), (read_string), (read_uint), (read_enum),
4084         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4085         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4086         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4087         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4088         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4089         (gst_xml_registry_rebuild):
4090         * gst/registries/gstlibxmlregistry.h:
4091         * tools/gst-compprep.c: (main):
4092         * tools/gst-inspect.c: (print_pad_templates_info):
4093         * tools/gst-xmlinspect.c: (print_element_info):
4094           Use libxml2 for registry parsing, use staticpadtemplates in
4095           elementfactories. Makes gst_init() +/- 10x faster.
4096
4097 2005-04-12  Wim Taymans  <wim@fluendo.com>
4098
4099         * gst/base/Makefile.am:
4100         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4101         (gst_basesink_pad_getcaps), (gst_basesink_init),
4102         (gst_basesink_event), (gst_basesink_change_state):
4103         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4104         (gst_basesrc_init), (gst_basesrc_query),
4105         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4106         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4107         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4108         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4109         (gst_basesrc_stop), (gst_basesrc_activate),
4110         (gst_basesrc_change_state):
4111         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4112         (helper_find_suggest), (gst_type_find_helper):
4113         * gst/base/gsttypefindhelper.h:
4114         * gst/elements/Makefile.am:
4115         * gst/elements/gstelements.c:
4116         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4117         (gst_fakesink_get_times), (gst_fakesink_event),
4118         (gst_fakesink_preroll), (gst_fakesink_render):
4119         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4120         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4121         (gst_fakesrc_get_property), (gst_fakesrc_create),
4122         (gst_fakesrc_start), (gst_fakesrc_stop):
4123         * gst/elements/gstfakesrc.h:
4124         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4125         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4126         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4127         (gst_filesrc_create_read), (gst_filesrc_create),
4128         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4129         (gst_filesrc_start):
4130         * gst/elements/gsttypefindelement.c:
4131         (gst_type_find_element_have_type), (gst_type_find_element_init),
4132         (start_typefinding), (stop_typefinding), (push_buffer_store),
4133         (gst_type_find_element_handle_event),
4134         (gst_type_find_element_chain),
4135         (gst_type_find_element_checkgetrange),
4136         (gst_type_find_element_getrange), (do_typefind),
4137         (gst_type_find_element_activate),
4138         (gst_type_find_element_change_state):
4139         * gst/elements/gsttypefindelement.h:
4140         * gst/gstpipeline.c: (pipeline_bus_handler):
4141         Added typefind helper.
4142         Small preroll fix in the base sink.
4143         Disable typefind code in basesrc.
4144         Crude port of typefindelement.
4145         Fakesrc cleanups.
4146
4147
4148 2005-04-11  Wim Taymans  <wim@fluendo.com>
4149
4150         * check/gst/gstbus.c: (gstbus_suite):
4151         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4152         * check/gstcheck.h:
4153           Fix up the timeout so that the test does not fail.
4154
4155 2005-04-06  Wim Taymans  <wim@fluendo.com>
4156
4157         * gst/base/README:
4158         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4159         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4160         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4161         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4162         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4163         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4164         (gst_basesrc_stop), (gst_basesrc_activate),
4165         (gst_basesrc_change_state), (basesrc_find_peek),
4166         (basesrc_find_suggest), (gst_basesrc_type_find):
4167         * gst/base/gstbasesrc.h:
4168         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4169         (gst_filesrc_class_init), (gst_filesrc_init),
4170         (gst_filesrc_finalize), (gst_filesrc_set_location),
4171         (gst_filesrc_set_property), (gst_filesrc_get_property),
4172         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4173         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4174         (gst_filesrc_create_read), (gst_filesrc_create),
4175         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4176         * gst/elements/gstfilesrc.h:
4177         * gst/gstelement.c: (gst_element_get_state_func),
4178         (gst_element_lost_state), (gst_element_pads_activate):
4179         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4180         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4181         (gst_pad_pull_range):
4182         * gst/gstpad.h:
4183         More work on the generic source base class, implement seeking,
4184         query.
4185         Make filesrc extend the base source class.
4186         Added gst_pad_set_checkgetrange_function to GstPad.
4187
4188 2005-04-06  Andy Wingo  <wingo@pobox.com>
4189
4190         * pkgconfig/gstreamer-base.pc.in:
4191         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4192
4193         * pkgconfig/Makefile.am:
4194         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4195
4196 2005-04-04  Wim Taymans  <wim@fluendo.com>
4197
4198         * gst/base/Makefile.am:
4199         * gst/base/README:
4200         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4201         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4202         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4203         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4204         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4205         (gst_basesrc_base_init), (gst_basesrc_class_init),
4206         (gst_basesrc_init), (gst_basesrc_get_formats),
4207         (gst_basesrc_get_query_types), (gst_basesrc_query),
4208         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4209         (gst_basesrc_set_property), (gst_basesrc_get_property),
4210         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4211         (gst_basesrc_loop), (gst_basesrc_activate),
4212         (gst_basesrc_change_state):
4213         * gst/base/gstbasesrc.h:
4214         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4215         (gst_fakesrc_class_init), (gst_fakesrc_init),
4216         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4217         (gst_fakesrc_get_property), (gst_fakesrc_create):
4218         * gst/elements/gstfakesrc.h:
4219         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4220         (gst_filesrc_open_file), (gst_filesrc_loop),
4221         (gst_filesrc_activate), (filesrc_find_peek),
4222         (gst_filesrc_type_find):
4223         Made base source class, make fakesrc extend it.
4224         Add comments to basesink class.
4225         Some filesrc cleanup.
4226
4227 2005-03-31  David Schleef  <ds@schleef.org>
4228
4229         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4230         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4231         expected to link against libgstreamer.
4232         * gst/base/Makefile.am: link against libgstreamer
4233         * gst/elements/Makefile.am: same
4234
4235 2005-03-31  Andy Wingo  <wingo@pobox.com>
4236
4237         * tests/instantiate/Makefile.am:
4238         * tests/instantiate/caps.c: Add test to test speed of caps copy
4239         and free.
4240
4241         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4242         GMemChunk to be fair.
4243
4244         * gst/gsttrashstack.h: Remove warning about using the fallback
4245         trash stack implementation, it's still faster than malloc.
4246
4247 2005-03-30  Andy Wingo  <wingo@pobox.com>
4248
4249         * tests/complexity.c: Add a copyright.
4250
4251 2005-03-31  Wim Taymans  <wim@fluendo.com>
4252
4253         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4254         (gst_base_transform_class_init), (gst_base_transform_init),
4255         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4256         (gst_base_transform_get_property),
4257         (gst_base_transform_sink_activate),
4258         (gst_base_transform_src_activate),
4259         (gst_base_transform_change_state):
4260         * gst/base/gstbasetransform.h:
4261         * gst/elements/gstidentity.c: (gst_identity_class_init),
4262         (gst_identity_event), (gst_identity_check_perfect),
4263         (gst_identity_transform), (gst_identity_start),
4264         (gst_identity_stop):
4265         Added start/stop methods to transform base class so subclasses 
4266         don't need to deal with state changes even.
4267
4268 2005-03-31  Wim Taymans  <wim@fluendo.com>
4269
4270         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4271         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4272         * gst/gstevent.h:
4273         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4274         (gst_pad_pull_range):
4275         Added rate to the discont event to prepare for variable speed
4276         and reverse playback.
4277
4278 2005-03-29  David Schleef  <ds@schleef.org>
4279
4280         * configure.ac:
4281         * testsuite/trigger/Makefile.am:
4282         * testsuite/trigger/trigger.c: A little example program to show
4283         how trigger-based elements can work.
4284
4285 2005-03-29  Wim Taymans  <wim@fluendo.com>
4286
4287         * gst/base/Makefile.am:
4288         * gst/base/README:
4289         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4290         (gst_basesink_base_init), (gst_basesink_class_init),
4291         (gst_basesink_pad_getcaps), (gst_basesink_init),
4292         (gst_basesink_activate), (gst_basesink_change_state):
4293         * gst/base/gstbasesink.h:
4294         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4295         (gst_base_transform_base_init), (gst_base_transform_finalize),
4296         (gst_base_transform_class_init), (gst_base_transform_init),
4297         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4298         (gst_base_transform_event), (gst_base_transform_getrange),
4299         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4300         (gst_base_transform_set_property),
4301         (gst_base_transform_get_property),
4302         (gst_base_transform_sink_activate),
4303         (gst_base_transform_src_activate),
4304         (gst_base_transform_change_state):
4305         * gst/base/gstbasetransform.h:
4306         * gst/elements/gstidentity.c: (gst_identity_finalize),
4307         (gst_identity_class_init), (gst_identity_init),
4308         (gst_identity_event), (gst_identity_check_perfect),
4309         (gst_identity_transform), (gst_identity_set_property),
4310         (gst_identity_get_property), (gst_identity_change_state):
4311         * gst/elements/gstidentity.h:
4312         * gst/gstelement.c: (gst_element_get_state_func),
4313         (gst_element_lost_state), (gst_element_pads_activate):
4314         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4315         (gst_pad_check_pull_range), (gst_pad_pull_range):
4316         * gst/gstpad.h:
4317         Simplify pad activation.
4318         Added function to check if pull_range can be performed.
4319         Error out when pulling inactive or flushing pads.
4320         Removed const from refcounted types as it does not make sense.
4321         Simplify pad templates in basesink
4322         Added base class for simple 1-to-1 transforms.
4323         Make identity subclass the base transform.
4324
4325 2005-03-29  Andy Wingo  <wingo@pobox.com>
4326
4327         * docs/libs/gstreamer-libs-overrides.txt: 
4328         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4329         really don't understand what's going on, but like whatever. I want
4330         green buildbot!
4331
4332         * docs/gst/Makefile.am:
4333         * docs/libs/Makefile.am: Dist the overrides files.
4334
4335         * check/Makefile.am (clean-local): Remove .libs directories.
4336
4337         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4338         elements to EXTRA_DIST, so po/ files are happy.
4339
4340         * po/POTFILES.in: Er, remove it here.
4341
4342         * po/POTFILES: Remove gstspider.c.
4343
4344         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4345
4346         * docs/libs/gstreamer-libs-docs.sgml: 
4347         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4348         bytestream.
4349
4350         * tests/complexity.c (main): Set the length of the preroll queue
4351         on the sinks to prevent a lockup.
4352
4353         * libs/gst/dataprotocol/Makefile.am: 
4354         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4355         the same as the one in check/gst-libs/gdp.c.
4356
4357         * po/, docs/gst/: Commit automatic changes to docs and po files.
4358
4359         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4360         the versioned libgstbase.
4361
4362         * check/Makefile.am: Depend on an unversioned gst-register, seems
4363         to make autoconf happier.
4364
4365         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4366
4367 2005-03-28  Wim Taymans  <wim@fluendo.com>
4368
4369         * configure.ac:
4370         * docs/design/part-gstelement.txt:
4371         * docs/design/part-negotiation.txt:
4372         * docs/design/part-preroll.txt:
4373         * docs/design/part-scheduling.txt:
4374         * docs/design/part-states.txt:
4375         * gst/Makefile.am:
4376         * gst/base/Makefile.am:
4377         * gst/base/README:
4378         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4379         (gst_basesink_base_init), (gst_basesink_class_init),
4380         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4381         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4382         (gst_basesink_set_pad_functions),
4383         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4384         (gst_basesink_set_property), (gst_basesink_get_property),
4385         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4386         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4387         (gst_basesink_preroll_queue_push),
4388         (gst_basesink_preroll_queue_empty),
4389         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4390         (gst_basesink_event), (gst_basesink_get_times),
4391         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4392         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4393         (gst_basesink_loop), (gst_basesink_activate),
4394         (gst_basesink_change_state):
4395         * gst/base/gstbasesink.h:
4396         * gst/elements/Makefile.am:
4397         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4398         (gst_fakesink_class_init), (gst_fakesink_init),
4399         (gst_fakesink_set_property), (gst_fakesink_get_property),
4400         (gst_fakesink_get_times), (gst_fakesink_event),
4401         (gst_fakesink_preroll), (gst_fakesink_render),
4402         (gst_fakesink_change_state):
4403         * gst/elements/gstfakesink.h:
4404         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4405         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4406         * gst/gstelement.c: (gst_element_add_pad),
4407         (gst_element_get_state_func), (gst_element_abort_state),
4408         (gst_element_commit_state), (gst_element_lost_state),
4409         (gst_element_set_state), (gst_element_pads_activate):
4410         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4411         * gst/gstpipeline.c: (gst_pipeline_send_event),
4412         (gst_pipeline_change_state):
4413         Added state change code.
4414         Added/updated docs.
4415         Added sink base class, make fakesink extend the base class.
4416         Small cleanups in GstPipeline.
4417
4418 2005-03-26  David Schleef  <ds@schleef.org>
4419
4420         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4421         is broken and should be implemented in a different library.
4422         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4423         * gst/gst.h: remove gstcpu.h
4424         * gst/gstcpu.c: remove
4425         * gst/gstcpu.h: remove
4426         * gst/Makefile.am.future: Remove this file.  It's ancient.
4427
4428 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4429
4430         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4431         (gst_bin_send_event):
4432           Add default event/set_manager handlers. The set_manager handler
4433           takes care that the manager is distributed over kids that were
4434           already in the bin before the manager was set. The event handler
4435           is a utility virtual function that sends the event over all sinks,
4436           so that gst_element_send_event (bin, event); has the expected
4437           behaviour.
4438         * gst/gstpad.c: (gst_pad_event_default):
4439           Re-install default event handling for discontinuities, so that
4440           seeking works without requiring hacks in applications or extra
4441           code in sinks.
4442         * gst/gstpipeline.c: (gst_pipeline_class_init),
4443         (gst_pipeline_send_event):
4444           Half hack, half utility: set a pipeline to PAUSED for seek events,
4445           since that is the only way we can guarantee a/v sync. Means that
4446           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4447           and it "just works".
4448
4449 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4450
4451         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4452           Lock/unlock mismatch.
4453
4454 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4455
4456         * docs/faq/gst-uninstalled:
4457           add gst-plugins-base
4458         * docs/gst/Makefile.am:
4459           don't error out until docs are fixed
4460         * docs/gst/gstreamer.types:
4461           remove thread
4462
4463 2005-03-22  Wim Taymans  <wim@fluendo.com>
4464
4465         * check/Makefile.am:
4466         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4467         * gst/gststructure.c: (gst_structure_set_valist),
4468         (gst_structure_copy_conditional):
4469         Activated more tests.
4470         Added message test.
4471         Added G_TYPE_POINTER to GstStructure.
4472         
4473
4474 2005-03-22  Wim Taymans  <wim@fluendo.com>
4475
4476         * docs/design/part-TODO.txt:
4477         * docs/design/part-events.txt:
4478         * docs/design/part-gstbin.txt:
4479         * docs/design/part-gstbus.txt:
4480         * docs/design/part-gstpipeline.txt:
4481         * docs/design/part-messages.txt:
4482         * gst/gstbus.c:
4483         * gst/gstmessage.c:
4484         Docs updates
4485
4486 2005-03-21  Wim Taymans  <wim@fluendo.com>
4487
4488         * gst/gstbus.c: (gst_bus_post):
4489         Fix copy-and-paste error.
4490
4491 2005-03-21  Wim Taymans  <wim@fluendo.com>
4492
4493         * check/Makefile.am:
4494         * gst/Makefile.am:
4495         * gst/elements/Makefile.am:
4496         * gst/elements/gstelements.c:
4497         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4498         (gst_fakesink_event), (gst_fakesink_chain):
4499         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4500         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4501         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4502         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4503         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4504         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4505         (gst_fakesrc_loop), (gst_fakesrc_activate),
4506         (gst_fakesrc_change_state):
4507         * gst/elements/gstfakesrc.h:
4508         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4509         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4510         (gst_filesrc_open_file), (gst_filesrc_loop),
4511         (gst_filesrc_activate), (gst_filesrc_change_state),
4512         (filesrc_find_peek), (filesrc_find_suggest),
4513         (gst_filesrc_type_find):
4514         * gst/elements/gstidentity.c: (gst_identity_finalize),
4515         (gst_identity_class_init), (gst_identity_init),
4516         (gst_identity_proxy_getcaps), (identity_queue_push),
4517         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4518         (gst_identity_getrange), (gst_identity_chain),
4519         (gst_identity_sink_loop), (gst_identity_src_loop),
4520         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4521         (gst_identity_set_property), (gst_identity_get_property),
4522         (gst_identity_change_state):
4523         * gst/elements/gstidentity.h:
4524         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4525         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4526         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4527         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4528         (gst_tee_sink_activate):
4529         * gst/elements/gsttee.h:
4530         * gst/gst.c: (gst_register_core_elements), (init_post):
4531         * gst/gst.h:
4532         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4533         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4534         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4535         (gst_bin_change_state):
4536         * gst/gstbin.h:
4537         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4538         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4539         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4540         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4541         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4542         (bus_watch_callback), (bus_watch_destroy),
4543         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4544         (poll_timeout), (gst_bus_poll):
4545         * gst/gstbus.h:
4546         * gst/gstcaps.h:
4547         * gst/gstdata.h:
4548         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4549         (gst_element_post_message), (gst_element_message_full),
4550         (gst_element_get_state_func), (gst_element_get_state),
4551         (gst_element_abort_state), (gst_element_commit_state),
4552         (gst_element_lost_state), (gst_element_set_state),
4553         (gst_element_pads_activate), (gst_element_change_state),
4554         (gst_element_dispose), (gst_element_set_manager_func),
4555         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4556         (gst_element_set_manager), (gst_element_get_manager),
4557         (gst_element_set_bus), (gst_element_get_bus),
4558         (gst_element_set_scheduler), (gst_element_get_scheduler):
4559         * gst/gstelement.h:
4560         * gst/gstevent.c: (gst_event_new_segment_seek),
4561         (gst_event_new_flush):
4562         * gst/gstevent.h:
4563         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4564         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4565         (gst_message_new_eos), (gst_message_new_error),
4566         (gst_message_new_warning), (gst_message_new_tag),
4567         (gst_message_new_state_changed), (gst_message_new_application),
4568         (gst_message_get_structure), (gst_message_parse_tag),
4569         (gst_message_parse_state_changed), (gst_message_parse_error),
4570         (gst_message_parse_warning):
4571         * gst/gstmessage.h:
4572         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4573         (gst_real_pad_set_property), (gst_pad_set_active),
4574         (gst_pad_is_active), (gst_pad_set_blocked_async),
4575         (gst_pad_set_blocked), (gst_pad_is_blocked),
4576         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4577         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4578         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4579         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4580         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4581         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4582         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4583         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4584         (gst_pad_set_caps), (gst_pad_configure_sink),
4585         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4586         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4587         (gst_real_pad_dispose), (gst_real_pad_finalize),
4588         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4589         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4590         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4591         * gst/gstpad.h:
4592         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4593         (pipeline_bus_handler), (gst_pipeline_change_state),
4594         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4595         * gst/gstpipeline.h:
4596         * gst/gstprobe.h:
4597         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4598         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4599         (gst_queue_link_src), (gst_queue_bufferalloc),
4600         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4601         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4602         (gst_queue_loop), (gst_queue_handle_src_event),
4603         (gst_queue_handle_src_query), (gst_queue_src_activate),
4604         (gst_queue_change_state):
4605         * gst/gstqueue.h:
4606         * gst/gstscheduler.c: (gst_scheduler_init),
4607         (gst_scheduler_dispose), (gst_scheduler_create_task),
4608         (gst_scheduler_factory_create):
4609         * gst/gstscheduler.h:
4610         * gst/gststructure.c: (gst_structure_get_type),
4611         (gst_structure_copy_conditional):
4612         * gst/gststructure.h:
4613         * gst/gsttaginterface.h:
4614         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4615         (gst_task_init), (gst_task_dispose), (gst_task_create),
4616         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4617         (gst_task_pause):
4618         * gst/gsttask.h:
4619         * gst/gstthread.c:
4620         * gst/gstthread.h:
4621         * gst/gsttypes.h:
4622         * gst/schedulers/Makefile.am:
4623         * gst/schedulers/cothreads_compat.h:
4624         * gst/schedulers/entryscheduler.c:
4625         * gst/schedulers/faircothreads.c:
4626         * gst/schedulers/faircothreads.h:
4627         * gst/schedulers/fairscheduler.c:
4628         * gst/schedulers/gstbasicscheduler.c:
4629         * gst/schedulers/gstoptimalscheduler.c:
4630         * gst/schedulers/gthread-cothreads.h:
4631         * gst/schedulers/threadscheduler.c:
4632         (gst_thread_scheduler_task_get_type),
4633         (gst_thread_scheduler_task_class_init),
4634         (gst_thread_scheduler_task_init),
4635         (gst_thread_scheduler_task_start),
4636         (gst_thread_scheduler_task_stop),
4637         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4638         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4639         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4640         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4641         (plugin_init):
4642         * libs/gst/Makefile.am:
4643         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4644         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4645         (gst_file_pad_parent_set):
4646         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4647         (gst_dp_event_from_packet):
4648         * tests/complexity.c: (main):
4649         * tests/mass_elements.c: (main):
4650         * testsuite/states/locked.c: (message_received), (main):
4651         * testsuite/states/parent.c: (main):
4652         * tools/gst-inspect.c: (print_element_flag_info),
4653         (print_implementation_info), (print_pad_info):
4654         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4655         (main):
4656         * tools/gst-md5sum.c: (event_loop), (main):
4657         * tools/gst-typefind.c: (main):
4658         * tools/gst-xmlinspect.c: (print_element_info):
4659         Next big merge.
4660         Added GstBus for mainloop integration.
4661         Added GstMessage for sending notifications on the bus.
4662         Added GstTask as an abstraction for pipeline entry points.
4663         Removed GstThread.
4664         Removed Schedulers.
4665         Simplified GstQueue for multithreaded core.
4666         Made _link threadsafe, removed old capsnego.
4667         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4668         Added pad blocking functions.
4669         Reworked scheduling functions in GstPad to prepare for
4670         scheduling updates soon.
4671         Moved events out of data stream.
4672         Simplified GstEvent types.
4673         Added return values to push/pull.
4674         Removed clocking from GstElement.
4675         Added prototypes for state change function for next merge.
4676         Removed iterate from bins and state change management.
4677         Fixed some elements, disabled others for now.
4678         Fixed -inspect and -launch.
4679         Added check for GstBus.
4680
4681 2005-03-10  Wim Taymans  <wim@fluendo.com>
4682
4683         * docs/design/part-MT-refcounting.txt:
4684         * docs/design/part-clocks.txt:
4685         * docs/design/part-gstelement.txt:
4686         * docs/design/part-gstobject.txt:
4687         * docs/design/part-standards.txt:
4688         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4689         (gst_bin_remove_func), (gst_bin_remove):
4690         * gst/gstbin.h:
4691         * gst/gstbuffer.c:
4692         * gst/gstcaps.h:
4693         * testsuite/clock/clock1.c: (main):
4694         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4695         (main):
4696         * testsuite/dlopen/loadgst.c: (do_test):
4697         * testsuite/refcounting/bin.c: (add_remove_test1),
4698         (add_remove_test2), (main):
4699         * testsuite/refcounting/element.c: (main):
4700         * testsuite/refcounting/element_pad.c: (main):
4701         * testsuite/refcounting/pad.c: (main):
4702         * tools/gst-launch.c: (sigint_handler_sighandler):
4703         * tools/gst-typefind.c: (main):
4704         Doc updates.
4705         Added doc about clock.
4706         removed gst_bin_iterate_recurse_up(), marked methods
4707         for removal.
4708         Fix more testsuites.
4709
4710 2005-03-09  Wim Taymans  <wim@fluendo.com>
4711
4712         * gst/gstpad.c: (gst_pad_get_direction),
4713         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4714         (gst_pad_collect_valist):
4715         * testsuite/bins/interface.c: (main):
4716         * testsuite/caps/audioscale.c: (test_caps):
4717         * testsuite/caps/caps.c: (test1), (test2), (test3):
4718         * testsuite/caps/deserialize.c: (main):
4719         * testsuite/caps/enumcaps.c: (main):
4720         * testsuite/caps/filtercaps.c: (main):
4721         * testsuite/caps/intersect2.c: (main):
4722         * testsuite/caps/random.c: (main):
4723         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4724         * testsuite/caps/sets.c: (check_caps):
4725         * testsuite/caps/simplify.c: (check_caps), (main):
4726         * testsuite/caps/subtract.c: (check_caps):
4727         Fix _pad_get_direction wrt ghostpads.
4728         Fix caps testsuite.
4729
4730 2005-03-09  Wim Taymans  <wim@fluendo.com>
4731
4732         * check/Makefile.am:
4733         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4734         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4735         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4736         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4737         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4738         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4739         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4740         (bin_element_is_sink), (gst_bin_iterate_sinks),
4741         (gst_bin_iterate_all_by_interface):
4742         * gst/gstbin.h:
4743         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4744         (gst_element_change_state), (gst_element_dispose),
4745         (gst_element_finalize), (gst_element_set_loop_function):
4746         * gst/gstelement.h:
4747         * gst/gstiterator.c: (find_custom_fold_func):
4748         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4749         (gst_pad_collectv), (gst_pad_collect_valist),
4750         (gst_pad_template_new):
4751         * gst/gstpipeline.c: (gst_pipeline_class_init),
4752         (gst_pipeline_dispose), (gst_pipeline_set_property),
4753         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4754         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4755         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4756         * gst/gstutils.h:
4757         * gst/schedulers/entryscheduler.c:
4758         * gst/schedulers/gstbasicscheduler.c:
4759         (gst_basic_scheduler_cothreaded_chain),
4760         (gst_basic_scheduler_chain_add_element):
4761         * testsuite/bins/interface.c: (main):
4762         Added GstBin test.
4763         Added GstSystemClock test.
4764         Implemented clock distribution code in GstBin.
4765         Implemented iterate sinks method for future use.
4766         Rearranged gstelement.h
4767         Fix GstIterator comparison bug.
4768         Moved some code to GstPipeline, mostly clocking related.
4769
4770 2005-03-09  Wim Taymans  <wim@fluendo.com>
4771
4772         * configure.ac:
4773         * gst/gst_private.h:
4774         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4775         (gst_bin_remove_func), (gst_bin_remove),
4776         (gst_bin_get_by_name_recurse_up):
4777         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4778         (gst_clock_id_compare_func), (gst_clock_id_wait),
4779         (gst_clock_id_wait_async), (gst_clock_init),
4780         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4781         * gst/gstelement.h:
4782         * gst/gstinfo.c: (_gst_debug_init):
4783         * gst/gstobject.h:
4784         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4785         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4786         * gst/gstpad.h:
4787         Bump version number, we're now 0.9.0
4788         Add future debugging category.
4789         Fix NULL _unref() in _get_by_name_recurse_up
4790         Rearrange gstpad.h.
4791         Update some docs.
4792
4793 2005-03-08  Wim Taymans  <wim@fluendo.com>
4794
4795         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4796         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4797         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4798         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4799         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4800         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4801         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4802         * gst/elements/gstidentity.c: (gst_identity_class_init):
4803         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4804         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4805         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4806         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4807         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4808         (gst_tee_link):
4809         * gst/gstelement.c: (gst_element_class_init),
4810         (gst_element_base_class_init), (gst_element_init),
4811         (gst_element_get_random_pad), (gst_element_wait_state_change),
4812         (gst_element_change_state), (gst_element_dispose),
4813         (gst_element_finalize), (gst_element_set_loop_function):
4814         * gst/gstelement.h:
4815         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4816         * gst/gstthread.c: (gst_thread_class_init),
4817         (gst_thread_release_children_locks), (gst_thread_change_state):
4818         * gst/schedulers/gstbasicscheduler.c:
4819         (gst_basic_scheduler_loopfunc_wrapper),
4820         (gst_basic_scheduler_chain_wrapper),
4821         (gst_basic_scheduler_src_wrapper),
4822         (gst_basic_scheduler_remove_element):
4823         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4824         Remove threadsafe properties. Fix elements because GObject
4825         complains when installing a property before declaring a
4826         set/get_property handler.
4827         Rearrange gstelement.h file, use STATE macros for state locks.
4828         Free mutexes in the finalize method instead of dispose.
4829
4830 2005-03-08  Wim Taymans  <wim@fluendo.com>
4831
4832         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4833         * gst/gstthread.c: (gst_thread_release_children_locks):
4834         Added parentage check.
4835         Fix build og GstThread again.
4836
4837 2005-03-08  Wim Taymans  <wim@fluendo.com>
4838
4839         * docs/design/part-MT-refcounting.txt:
4840         * docs/design/part-conventions.txt:
4841         * docs/design/part-gstobject.txt:
4842         * docs/design/part-relations.txt:
4843         * docs/design/part-standards.txt:
4844         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4845         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4846         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4847         (gst_bin_iterate_all_by_interface):
4848         * gst/gstbuffer.h:
4849         * gst/gstclock.h:
4850         * gst/gstelement.c: (gst_element_class_init),
4851         (gst_element_change_state), (gst_element_set_loop_function):
4852         * gst/gstelement.h:
4853         * gst/gstiterator.c:
4854         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4855         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4856         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4857         (gst_object_set_parent), (gst_object_unparent),
4858         (gst_object_check_uniqueness):
4859         * gst/gstobject.h:
4860         Docs updates, clean up some headers.
4861
4862 2005-03-07  Wim Taymans  <wim@fluendo.com>
4863
4864         * check/.cvsignore:
4865         * check/Makefile.am:
4866         * check/gst-libs/.cvsignore:
4867         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4868         * check/gst/.cvsignore:
4869         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4870         (START_TEST), (gstbus_suite), (main):
4871         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4872         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4873         (gst_data_suite), (main):
4874         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4875         (add_fold_func), (gstiterator_suite), (main):
4876         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4877         (thread_name_object), (thread_name_object_default),
4878         (gst_object_name_compare), (gst_object_suite), (main):
4879         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4880         (gst_pad_suite), (main):
4881         * check/gstcheck.c: (gst_check_log_message_func),
4882         (gst_check_log_critical_func), (gst_check_init):
4883         * check/gstcheck.h:
4884         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4885         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4886         Added checks.
4887
4888 2005-03-07  Wim Taymans  <wim@fluendo.com>
4889
4890         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4891         (gst_list_iterator_next), (gst_list_iterator_resync),
4892         (gst_list_iterator_free), (gst_iterator_new_list),
4893         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4894         (gst_iterator_free), (gst_iterator_push), (filter_next),
4895         (filter_resync), (filter_uninit), (filter_free),
4896         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4897         (gst_iterator_foreach), (find_custom_fold_func),
4898         (gst_iterator_find_custom):
4899         * gst/gstiterator.h:
4900         Added missing files.
4901
4902 2005-03-07  Wim Taymans  <wim@fluendo.com>
4903
4904         * Makefile.am:
4905         * configure.ac:
4906         * docs/design/part-MT-refcounting.txt:
4907         * docs/design/part-conventions.txt:
4908         * docs/design/part-gstobject.txt:
4909         * docs/design/part-relations.txt:
4910         * examples/mixer/mixer.c: (main):
4911         * examples/thread/thread.c: (eos), (main):
4912         * gst/Makefile.am:
4913         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4914         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4915         (gst_spider_plug_from_srcpad):
4916         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4917         (gst_spider_identity_change_state),
4918         (gst_spider_identity_sink_loop_type_finding):
4919         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4920         * gst/elements/gstidentity.c: (gst_identity_init):
4921         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4922         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4923         * gst/elements/gsttypefindelement.c: (free_entry):
4924         * gst/gst.c:
4925         * gst/gst.h:
4926         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4927         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4928         (gst_bin_set_index), (gst_bin_set_element_sched),
4929         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4930         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4931         (gst_bin_iterate_elements), (iterate_child_recurse),
4932         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4933         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4934         (compare_interface), (gst_bin_get_by_interface),
4935         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4936         * gst/gstbin.h:
4937         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4938         (gst_buffer_default_free), (gst_buffer_default_copy),
4939         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4940         (gst_buffer_create_sub):
4941         * gst/gstbuffer.h:
4942         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4943         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4944         (gst_caps_unref), (gst_static_caps_get),
4945         (gst_caps_remove_and_get_structure), (gst_caps_append),
4946         (gst_caps_append_structure), (gst_caps_remove_structure),
4947         (gst_caps_copy_nth), (gst_caps_set_simple),
4948         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4949         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4950         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4951         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4952         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4953         (gst_caps_structure_figure_out_union),
4954         (gst_caps_switch_structures), (gst_caps_do_simplify),
4955         (gst_caps_replace), (gst_caps_from_string),
4956         (gst_caps_copy_conditional):
4957         * gst/gstcaps.h:
4958         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4959         (_gst_clock_id_free), (gst_clock_id_unref),
4960         (gst_clock_id_compare_func), (gst_clock_id_wait),
4961         (gst_clock_id_wait_async), (gst_clock_class_init),
4962         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4963         (gst_clock_get_time), (gst_clock_set_time_adjust),
4964         (gst_clock_set_property), (gst_clock_get_property):
4965         * gst/gstclock.h:
4966         * gst/gstcompat.h:
4967         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4968         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4969         * gst/gstdata.h:
4970         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4971         (gst_element_requires_clock), (gst_element_provides_clock),
4972         (gst_element_set_clock), (gst_element_clock_wait),
4973         (gst_element_wait), (gst_element_set_time_delay),
4974         (gst_element_is_indexable), (gst_element_add_pad),
4975         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4976         (pad_compare_name), (gst_element_get_static_pad),
4977         (gst_element_request_pad), (gst_element_get_request_pad),
4978         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4979         (gst_element_class_get_pad_template_list),
4980         (gst_element_class_get_pad_template), (gst_element_error_func),
4981         (gst_element_get_random_pad), (gst_element_get_event_masks),
4982         (gst_element_send_event), (gst_element_seek),
4983         (gst_element_get_query_types), (gst_element_query),
4984         (gst_element_get_formats), (gst_element_convert),
4985         (gst_element_is_locked_state), (gst_element_set_locked_state),
4986         (gst_element_sync_state_with_parent), (gst_element_change_state),
4987         (gst_element_finalize), (gst_element_yield),
4988         (gst_element_interrupt), (gst_element_set_scheduler),
4989         (gst_element_get_scheduler), (gst_element_set_loop_function):
4990         * gst/gstelement.h:
4991         * gst/gstevent.h:
4992         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4993         (gst_format_get_by_nick), (gst_format_get_details),
4994         (gst_format_iterate_definitions):
4995         * gst/gstformat.h:
4996         * gst/gstindex.c: (gst_index_gtype_resolver):
4997         * gst/gstinfo.c:
4998         * gst/gstinfo.h:
4999         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
5000         (gst_mem_chunk_free):
5001         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
5002         (gst_object_ref), (gst_object_unref), (gst_object_sink),
5003         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
5004         (gst_object_dispatch_properties_changed),
5005         (gst_object_set_name_default), (gst_object_set_name),
5006         (gst_object_get_name), (gst_object_set_name_prefix),
5007         (gst_object_get_name_prefix), (gst_object_set_parent),
5008         (gst_object_get_parent), (gst_object_unparent),
5009         (gst_object_check_uniqueness), (gst_object_save_thyself),
5010         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
5011         (gst_object_set_property), (gst_object_get_property),
5012         (gst_object_get_path_string):
5013         * gst/gstobject.h:
5014         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
5015         (gst_real_pad_init), (gst_real_pad_get_property),
5016         (gst_pad_custom_new), (gst_pad_get_direction),
5017         (gst_pad_set_active), (gst_pad_is_active),
5018         (gst_pad_set_event_function), (gst_pad_is_linked),
5019         (gst_pad_link_free), (gst_pad_link_intersect),
5020         (gst_pad_link_fixate), (gst_pad_set_caps),
5021         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
5022         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
5023         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
5024         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
5025         (gst_pad_get_caps), (gst_pad_peer_get_caps),
5026         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
5027         (gst_pad_realize), (gst_pad_get_allowed_caps),
5028         (gst_real_pad_dispose), (gst_real_pad_finalize),
5029         (gst_pad_collectv), (gst_pad_collect_valist),
5030         (gst_pad_template_dispose), (gst_pad_template_new),
5031         (gst_pad_get_internal_links):
5032         * gst/gstpad.h:
5033         * gst/gstpipeline.c: (gst_pipeline_dispose),
5034         (gst_pipeline_change_state):
5035         * gst/gstpipeline.h:
5036         * gst/gstplugin.c:
5037         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
5038         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
5039         * gst/gstpluginfeature.h:
5040         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5041         * gst/gstquery.c: (_gst_query_type_initialize),
5042         (gst_query_type_register), (gst_query_type_get_by_nick),
5043         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
5044         * gst/gstquery.h:
5045         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
5046         * gst/gstscheduler.c: (gst_scheduler_add_element),
5047         (gst_scheduler_factory_create):
5048         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5049         (gst_structure_free), (gst_structure_set_name),
5050         (gst_structure_id_set_value), (gst_structure_set_value),
5051         (gst_structure_set_valist), (gst_structure_remove_field),
5052         (gst_structure_remove_fields),
5053         (gst_structure_remove_fields_valist),
5054         (gst_structure_remove_all_fields), (gst_structure_foreach),
5055         (gst_structure_map_in_place),
5056         (gst_caps_structure_fixate_field_nearest_int),
5057         (gst_caps_structure_fixate_field_nearest_double):
5058         * gst/gststructure.h:
5059         * gst/gstsystemclock.c: (gst_system_clock_class_init),
5060         (gst_system_clock_init), (gst_system_clock_dispose),
5061         (gst_system_clock_async_thread),
5062         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
5063         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5064         * gst/gstsystemclock.h:
5065         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5066         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5067         * gst/gsttaginterface.c:
5068         * gst/gstthread.c: (gst_thread_dispose),
5069         (gst_thread_release_children_locks), (gst_thread_change_state),
5070         (gst_thread_main_loop):
5071         * gst/gsttrashstack.h:
5072         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5073         * gst/gsttypes.h:
5074         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5075         (gst_element_request_pad), (gst_element_get_pad_from_template),
5076         (gst_element_request_compatible_pad),
5077         (gst_element_get_compatible_pad_filtered),
5078         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5079         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5080         (gst_element_link_many), (gst_element_link),
5081         (gst_element_link_pads), (gst_element_unlink_pads),
5082         (gst_element_unlink_many), (gst_element_unlink),
5083         (gst_pad_can_link_filtered), (gst_pad_can_link),
5084         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5085         (gst_object_default_error), (gst_bin_add_many),
5086         (gst_bin_remove_many), (gst_element_populate_std_props),
5087         (gst_element_class_install_std_props), (gst_buffer_merge),
5088         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5089         (link_fold_func), (gst_pad_proxy_setcaps):
5090         * gst/gstutils.h:
5091         * gst/gstvalue.c: (gst_value_deserialize_string):
5092         * gst/parse/grammar.y:
5093         * gst/schedulers/gstbasicscheduler.c:
5094         (gst_basic_scheduler_cothreaded_chain),
5095         (gst_basic_scheduler_chain_recursive_add),
5096         (gst_basic_scheduler_pad_link):
5097         * gst/schedulers/gstoptimalscheduler.c:
5098         (get_group_schedule_function),
5099         (gst_opt_scheduler_state_transition),
5100         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5101         * libs/gst/bytestream/bytestream.c:
5102         * libs/gst/dataprotocol/dataprotocol.c:
5103         (gst_dp_header_from_buffer):
5104         * po/nb.po:
5105         * po/ru.po:
5106         * tests/threadstate/threadstate2.c: (eos):
5107         * tools/gst-compprep.c: (main):
5108         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5109         (print_pad_info), (print_children_info):
5110         * tools/gst-launch.c: (idle_func), (main):
5111         * tools/gst-md5sum.c: (idle_func), (main):
5112         * tools/gst-xmlinspect.c: (print_element_info):
5113         First THREADED backport attempt, focusing on adding locks and
5114         making sure the API is threadsafe. Needs more work. More docs
5115         follow this week.
5116
5117 2005-02-24  Andy Wingo  <wingo@pobox.com>
5118
5119         * tests/bench-complexity.scm:
5120         * tests/complexity.gnuplot: New files, good for running complexity
5121         benchmarks.
5122
5123         * tests/Makefile.am:
5124         * tests/complexity.c: New test, sets up N elements, at each level
5125         teeing into M streams per element. Eeeenteresting.
5126
5127         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5128         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5129         running bench-mass_elements.scm.
5130
5131         * tests/bench-mass_elements.scm: New script, runs mass_elements
5132         for various numbers of identities, outputting the results to a
5133         file. Requires guile 1.6. Just for testing.
5134
5135 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5136
5137         * gst/schedulers/fairscheduler.c:
5138           compile with debug disabled
5139
5140 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5141
5142         * configure.ac:
5143           hunting season on 0.9 is now OPEN
5144
5145 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5146
5147         * docs/libs/tmpl/gstcontrol.sgml:
5148         * docs/libs/tmpl/gstdparam.sgml:
5149         * docs/libs/tmpl/gstdplinint.sgml:
5150         * docs/libs/tmpl/gstdpman.sgml:
5151         * docs/libs/tmpl/gstdpsmooth.sgml:
5152         * docs/libs/tmpl/gstunitconvert.sgml:
5153           more docs for the state of dparams
5154
5155 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5156
5157         * gst/gstelementfactory.c: (gst_element_factory_create):
5158         * gst/gstobject.c: (gst_object_init),
5159         (gst_object_set_name_default), (gst_object_set_name):
5160           name objects by default, not in gst_element_factory_create. Allows
5161           using elements created with g_object_new. (fixes #167283)
5162
5163 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5164
5165         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5166           make the time that debugging functions print relative to when
5167           gst_init was called
5168
5169 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5170
5171         * gst/gsttaginterface.c:
5172           Fix inline docs: tag setter vararg functions are NULL-terminated,
5173           GST_TAG_INVALID doesn't exist any more.
5174
5175 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5176
5177         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5178         Allocate the 1 byte more memory that was forgotten!!!!!
5179         fixes memory corruption on 64bit platforms
5180
5181 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5182
5183         * docs/pwg/building-pads.xml:
5184         * docs/pwg/intro-basics.xml:
5185           fixed a few typos, relabeled introductionary list of types
5186         * docs/random/ensonic/dparams.txt:
5187           more notes abut dparam changes
5188         * libs/gst/control/dparam.c: (gst_dparam_attach):
5189         * libs/gst/control/dparammanager.c:
5190         * libs/gst/control/dparammanager.h:
5191           - many comments and notes on dparam implementation
5192           - new dparams are were not initialized to the default value
5193             from param spec
5194
5195 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5196
5197         submitted by: Peter Astakhov
5198
5199         * po/LINGUAS:
5200         * po/ru.po:
5201           adding Russian translation
5202
5203 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5204
5205         * configure.ac:
5206         * docs/gst/Makefile.am:
5207         * docs/libs/Makefile.am:
5208           make sure popt is added to gtk-doc flags.  Fixes #147782.
5209
5210 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5211
5212         * docs/faq/using.xml:
5213           Fix typo in FAQ (artssink => artsdsink)
5214
5215 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5216
5217         * tools/gst-launch.1.in:
5218           Fix typo (#166699).
5219
5220 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5221
5222         * docs/faq/using.xml:
5223           Add -v argument to fakesrc/fakesink gst-launch line,
5224           so that the promised output will actually show up.
5225
5226 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5227
5228         * gst/gstthread.c: (gst_thread_change_state):
5229           Implement state-change error handling (#166073).
5230
5231 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5232
5233         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5234           Release interrupt after handling (#166250).
5235
5236 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5237
5238         * configure.ac:
5239           back to HEAD
5240
5241 === release 0.8.9 ===
5242
5243 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5244
5245         * NEWS:
5246         * RELEASE:
5247         * configure.ac:
5248           releasing 0.8.9, "Like Eating Glass"
5249
5250 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5251
5252         submitted by: Clytie Siddall
5253
5254         * po/vi.po: Added Vietnamese translation
5255
5256 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5257
5258         patch by: Tim Philipp-Müller
5259
5260         * configure.ac:
5261         * gst/gstpad.c:
5262           unref data when probe function returns FALSE.  Fixes #166362
5263
5264 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5265
5266         * gst/gst.c: (gst_init_get_popt_table):
5267           Fix typo (#166269).
5268
5269 2005-02-04  Andy Wingo  <wingo@pobox.com>
5270
5271         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5272         the debugging on whether the caps are compatible.
5273
5274 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5275
5276         * docs/manual/basics-elements.xml:
5277           Fix two typos.
5278
5279 2005-02-02  Wim Taymans  <wim@fluendo.com>
5280
5281         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5282         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5283         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5284         Remove some FIXMEs after analysing and commenting why they
5285         are not issues.
5286
5287 2005-02-02  Wim Taymans  <wim@fluendo.com>
5288
5289         * gst/schedulers/gstoptimalscheduler.c:
5290         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5291         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5292         (get_invalid_call), (chain_invalid_call),
5293         (get_group_schedule_function), (loop_group_schedule_function),
5294         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5295         (gst_opt_scheduler_state_transition),
5296         (gst_opt_scheduler_add_element),
5297         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5298         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5299         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5300         (gst_opt_scheduler_show):
5301         Added lock to protect scheduler data structures.
5302
5303 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5304
5305         * testsuite/threads/threadi.c: (cb_data):
5306           Fix buglet in test.
5307
5308 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5309
5310         * testsuite/threads/Makefile.am:
5311         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5312           On Wim's request, split the test in three separately-compiled
5313           tests that each test a very specific bug. Two of them still fail,
5314           will create bugs for those. threadi.c indicates why they fail.
5315
5316 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5317
5318         * gst/schedulers/gstoptimalscheduler.c:
5319         (get_group_schedule_function):
5320           Try to work with the threading mess that queue_link is.
5321
5322 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5323
5324         * gst/gstbin.c: (gst_bin_remove_func):
5325           Explicitely make an element release locks in a group when being
5326           remove from a bin.
5327         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5328           If there's no scheduler, always return immediately (similar to
5329           gst_element_interrupt).
5330
5331 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5332
5333         * gst/gstbin.c: (gst_bin_child_state_change_func):
5334           Remove a piece of code that could never be reached.
5335         * docs/gst/gstreamer-sections.txt:
5336         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5337         (gst_pad_call_get_function):
5338         * gst/gstpad.h:
5339         * testsuite/pad/Makefile.am:
5340           Fix #150546, enable tests.
5341
5342 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5343
5344         * docs/pwg/advanced-types.xml:
5345           Fix description for buffer-frames=0.
5346         * docs/gst/tmpl/gstbin.sgml:
5347         * gst/gstbin.c: (gst_bin_child_state_change_func),
5348         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5349         * gst/gstbin.h:
5350         * testsuite/threads/Makefile.am:
5351         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5352         (cb_state), (cb_play), (main):
5353           Fix non-recursive state changes to *really* change the state
5354           of the object, and not just call parent_class->state_change.
5355           Fix a lot of lockups caused by this. Fixes #132775. Add test
5356           for the problem. Also enable test to show #142588 (fixed).
5357         * gst/gstthread.c: (gst_thread_change_state),
5358         (gst_thread_child_state_change):
5359           Don't exit the thread if we go to NULL and are inside thread
5360           context. Instead, return control to the main thread context
5361           and exit from there.
5362         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5363           Don't unset virtual functions, since those may still be used.
5364           That's not necessarily correct, but suffices for now.
5365         * configure.ac:
5366         * testsuite/Makefile.am:
5367         * testsuite/pad/Makefile.am:
5368         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5369         (gst_test_sink_base_init), (gst_test_sink_chain),
5370         (gst_test_sink_init), (main):
5371         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5372         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5373         (main):
5374         * testsuite/pad/link.c: (gst_test_element_class_init),
5375         (gst_test_element_base_init), (gst_test_src_get),
5376         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5377         (gst_test_filter_loop), (gst_test_filter_init),
5378         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5379         (cb_error), (main):
5380           Add tests to show #150546. Pass, but should fail (currently
5381           disabled from the testsuite).
5382         * gst/gstscheduler.c: (gst_scheduler_dispose):
5383           Dereference child schedulers on dispose (#94464).
5384         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5385           Fix typo.
5386         * testsuite/threads/thread.c: (main):
5387           Add more debug.
5388
5389 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5390
5391         * gst/gstpad.c: (gst_pad_push):
5392           Oops, revert previous commit, broke testsuite...
5393
5394 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5395
5396         * gst/gstpad.c: (gst_pad_push):
5397           Add check that the pad on which the push is performed is not a
5398           get-based pad (#150546).
5399
5400 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5401
5402         * gst/elements/gsttypefindelement.c:
5403         (gst_type_find_element_handle_event):
5404           Fix buffer pushing if stream EOSes during typefinding.
5405
5406 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5407
5408         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5409
5410         * gst/gstvalue.c: (gst_string_wrap):
5411           Allow NULL-strings as argument (#165365).
5412
5413 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5414
5415         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5416
5417         * gst/schedulers/faircothreads.c:
5418         (gst_fair_scheduler_cothread_queue_show):
5419           Fix build without debug enabled.
5420
5421 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5422
5423         * docs/gst/gstreamer-sections.txt:
5424         * docs/libs/gstreamer-libs-docs.sgml:
5425         * docs/libs/gstreamer-libs-sections.txt:
5426         * docs/libs/tmpl/gstcontrol.sgml:
5427         * docs/libs/tmpl/gstdparam.sgml:
5428         * docs/libs/tmpl/gstdplinint.sgml:
5429         * docs/libs/tmpl/gstdpman.sgml:
5430         * docs/libs/tmpl/gstdpsmooth.sgml:
5431         * docs/libs/tmpl/gstputbits.sgml:
5432         * docs/libs/tmpl/gstunitconvert.sgml:
5433         * libs/gst/control/dparam.c:
5434         * libs/gst/control/dparam.h:
5435         * libs/gst/control/dparammanager.c:
5436         (gst_dpman_add_required_dparam_callback),
5437         (gst_dpman_add_required_dparam_direct),
5438         (gst_dpman_add_required_dparam_array),
5439         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5440         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5441         (gst_dpman_get_manager)
5442           restructured DParam docs
5443
5444 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5445
5446         * gst-element-check.m4:
5447           Only check for gst-inspect if we haven't already
5448           found it in previous element check runs
5449
5450 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5451
5452         * docs/gst/Makefile.am:
5453         * docs/libs/Makefile.am:
5454           fixed install rules to treat style.css as optional
5455
5456 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5457
5458         * docs/gst/Makefile.am:
5459         * docs/libs/Makefile.am:
5460           install style.css along with docs
5461         * docs/gst/tmpl/gstbin.sgml:
5462         * docs/gst/tmpl/gstclock.sgml:
5463         * docs/gst/tmpl/gstdata.sgml:
5464         * docs/gst/tmpl/gstelement.sgml:
5465         * gst/gstbin.h:
5466         * gst/gstelement.c: (gst_element_class_init):
5467         * gst/gstelement.h:
5468           fixing incomplete docs
5469
5470 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5471
5472         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5473           Don't unref seek event twice when fflush() fails
5474           
5475 2005-01-22  David Schleef  <ds@schleef.org>
5476
5477         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5478
5479 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5480
5481         * docs/gst/Makefile.am:
5482         * docs/libs/Makefile.am:
5483           added params for deprecation guards
5484         * gst/gst.c:
5485         * gst/gst.h:
5486         * gst/gsterror.c: (_gst_resource_errors_init),
5487         (_gst_stream_errors_init):
5488         * gst/gsterror.h:
5489           documented some more enums
5490
5491 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5492         * gst/autoplug/gstspideridentity.c:
5493         Cosmetic fix - spider_find_peek should be static
5494         * gst/parse/parse.l:
5495         Applying fix for #164261
5496
5497 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5498
5499         * docs/gst/gstreamer-sections.txt:
5500         * docs/gst/tmpl/gstplugin.sgml:
5501         * docs/libs/gstreamer-libs-sections.txt:
5502         * docs/libs/tmpl/gstcontrol.sgml:
5503         * gst/gstbuffer.h:
5504         * gst/gsttag.h:
5505         * gst/gstvalue.c:
5506           added docs for the TAG defines
5507
5508 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5509
5510         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5511           Only unref entry if there is an entry.
5512
5513 2005-01-17  Wim Taymans  <wim@fluendo.com>
5514
5515         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5516         (remove_from_group), (schedule_group), (normalize_group),
5517         (gst_opt_scheduler_iterate):
5518         Also ref/unref decoupled elements before iterating the
5519         group since they are not added to the list of elements.
5520
5521 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5522
5523         * docs/manual/highlevel-components.xml:
5524           Add subtitle/streamselection as new features to playbin.
5525
5526 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5527
5528         * docs/manual/manual.xml:
5529           Re-enable dataaccess docs (oops).
5530
5531 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5532
5533         * docs/pwg/advanced-types.xml:
5534         * docs/random/mimetypes:
5535           Add documentation on libsndfile types (#163309), by Steve Baker
5536           <steve@stevebaker.org>.
5537         * gst/gstelement.c: (gst_element_release_request_pad):
5538           If an element has no explicit function, just remove the pad.
5539
5540 2005-01-17  Luca Ognibene  <luogni@tin.it>
5541
5542         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5543
5544         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5545           Fix memleak (#163801).
5546
5547 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5548
5549         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5550           I think this is actually more correct...
5551
5552 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5553
5554         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5555           Another workaround for memory access while destroyed in callback.
5556           Please, someone with refcount knowledge, have a look at this.
5557
5558 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5559
5560         * docs/faq/faq.xml:
5561         * docs/faq/legal.xml:
5562           move the legal Q&A here
5563
5564 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5565
5566         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5567         (gst_tee_request_new_pad):
5568           Fix negotiation.
5569
5570 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5571
5572         * docs/random/omega/caps2:
5573         * testsuite/caps/caps_strings:
5574           replace framerate aproximations by their real value
5575           (24000/1001, 30000/1001, 60000/1001)
5576           Partially fixes bug #164049
5577
5578 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5579
5580         * docs/gst/Makefile.am:
5581           don't fail on the stupid GstPoptOption
5582
5583 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5584
5585         * gst/gstpad.h:
5586         * gst/gstprobe.c:
5587           allow probes to work on ghost pads by realizing the pad
5588           probe debugging
5589
5590 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5591
5592         * docs/gst/gstreamer-sections.txt:
5593         * docs/gst/tmpl/gstpad.sgml:
5594         * gst/gstpad.c: (gst_pad_set_active_recursive):
5595         * gst/gstpad.h:
5596           Add gst_pad_set_active_recursive().
5597
5598 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5599
5600         * docs/random/release:
5601           updates
5602         * gst/gst_private.h:
5603         * gst/gstinfo.c:
5604         * gst/gstobject.c:
5605           move deep_notify logging to a new category
5606         * gst/gstprobe.c:
5607         * gst/gstprobe.h:
5608           add stuff so bindings can wrap probes
5609
5610 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5611
5612         * gst/gstplugin.c: (gst_plugin_load):
5613           Fix plugin loading if plugin/lib was already loaded. Fixes
5614           #163383
5615
5616 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5617
5618         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5619
5620         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5621           Protect plugin loading by a mutex so it's threadsafe. Fixes
5622           #163234.
5623
5624 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5625
5626         * gst/gstevent.c: (_gst_event_copy):
5627           Reference source object when copying events, since it'll be
5628           dereferenced on event dereferencing as well.
5629
5630 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5631
5632         * docs/gst/gstreamer-sections.txt:
5633         * docs/gst/tmpl/gstevent.sgml:
5634         * gst/gstevent.c: (gst_event_new_filler_stamped),
5635         (gst_event_filler_get_duration):
5636         * gst/gstevent.h:
5637           Add two new functions for filler events (which are used to
5638           synchronize streams if one of them is not having any data
5639           for a while) without interrupting the actual data-stream.
5640           Basically a no-op.
5641         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5642         (gst_queue_link_sink), (gst_queue_link_src),
5643         (gst_queue_change_state):
5644           Allow for renegotiation while filled. Required for stream
5645           switching while playing.
5646
5647 2005-01-08  Benjamin Otte  <otte@gnome.org>
5648
5649         * gst/gstelement.c: (gst_element_link_many):
5650           fix up g_return_if_fail's
5651         * po/LINGUAS:
5652         * po/de.po:
5653           add German translation, that was somehow not included
5654
5655 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5656
5657         * docs/random/mimetypes:
5658           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5659           do not add them to riff-lib as they are not common
5660
5661 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5662
5663         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5664           Check for existence of probe after performing the probe before
5665           re-accessing it to prevent segfaults caused by removal of the
5666           probe in the callback.
5667
5668 2005-01-05  David Schleef  <ds@schleef.org>
5669
5670         * testsuite/registry/Makefile.am:
5671         * testsuite/registry/gst-print-formats.c:
5672         (print_pad_templates_info), (print_element_list),
5673         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5674         (g_list_uniqify), (get_pad_templates_info),
5675         (get_element_mime_list), (print_mime_list), (main): A little
5676         program that looks through the registry to find elements of
5677         a given type.  Not particularly interesting as a test, except
5678         that there's no other test covering the same area.
5679
5680 2005-01-05  David Schleef  <ds@schleef.org>
5681
5682         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5683         (fault_handler_sigaction), (fault_spin),
5684         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5685         in signal.h-type signal handlers by not calling forbidden functions,
5686         including gst_element_set_state().
5687
5688 2005-01-05  David Schleef  <ds@schleef.org>
5689
5690         * gst/gstvalue.h: Mark _gst_reserved[] as private
5691
5692 2005-01-05  David Schleef  <ds@schleef.org>
5693
5694         * gst/gstvalue.c: Fix doc build problem.
5695
5696 2005-01-05  David Schleef  <ds@schleef.org>
5697
5698         * gst/gstvalue.c: Add some documentation
5699
5700 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5701
5702         * docs/README:
5703           another shell oneliner for empty return value docs
5704         * gst/gstcaps.c:
5705         * gst/gstvalue.c:
5706         * libs/gst/control/dparam.c:
5707           more doc fixes (parameters and return values)
5708
5709 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5710
5711         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5712
5713         * gst/gstregistry.h:
5714         * gst/registries/gstxmlregistry.c:
5715           Fix macro's for Mingw (fixes #162276).
5716
5717 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5718
5719         * docs/README:
5720           quick shell oneliner to find undocumented members
5721         * docs/gst/tmpl/gstplugin.sgml:
5722         * docs/gst/tmpl/gstscheduler.sgml:
5723         * docs/gst/tmpl/gstthread.sgml:
5724           more enumtypes cleanup
5725         * gst/gsterror.h:
5726           activated documentation comments, now someone needs to document
5727           the enums :(
5728
5729 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5730
5731         * docs/manual/manual.xml:
5732           Add dataaccess part (doh!).
5733
5734 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5735
5736         * docs/manual/advanced-autoplugging.xml:
5737           Fix typo (intiate -> initiate).
5738
5739 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5740
5741         * docs/random/bbb/streamselection:
5742           Add some notes on how to handle multi-subtitle/-audio streams.
5743
5744 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5745
5746         * docs/gst/gstreamer-docs.sgml:
5747         * docs/gst/gstreamer-sections.txt:
5748         * docs/gst/tmpl/gstenumtypes.sgml:
5749         * docs/gst/tmpl/gsterror.sgml:
5750         * docs/gst/tmpl/gstevent.sgml:
5751         * docs/gst/tmpl/gstpad.sgml:
5752         * docs/gst/tmpl/gstpadtemplate.sgml:
5753         * docs/gst/tmpl/gstthread.sgml:
5754           removed gstenumtypes section from docs and put all the enums into
5755           their sections
5756
5757 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5758
5759         * gst/gstplugin.c:
5760           document gst_library_load a bit more (riff special case + return
5761           value if already loaded)
5762         * testsuite/bytestream/filepadsink.c:
5763           plugin name is 'gstbytestream', not 'bytestream'
5764
5765 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5766
5767         * docs/random/bbb/subtitles:
5768           Add some first mind rumblings on proper subtitle support.
5769
5770 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5771
5772         * po/ca.po:
5773         * po/sv.po:
5774           updated translations
5775
5776 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5777
5778         * docs/manual/advanced-dataaccess.xml:
5779           Add section on how to use fakesrc/fakesink/identity in your
5780           application, plus section on how to embed plugins. Also mention
5781           probes.
5782         * docs/manual/appendix-checklist.xml:
5783         * docs/manual/appendix-debugging.xml:
5784         * docs/manual/appendix-gnome.xml:
5785         * docs/manual/appendix-integration.xml:
5786           Debug -> checklist, GNOME -> integration, add sections on Linux,
5787           KDE integration and add other things useful for application
5788           development.
5789         * docs/manual/manual.xml:
5790           Remove some fixmes, update some file pointers.
5791         * docs/pwg/appendix-checklist.xml:
5792           Fix typo.
5793         * docs/pwg/building-boiler.xml:
5794           Remove ugly header and add commented fixme.
5795         * docs/pwg/pwg.xml:
5796           Add fixme.
5797         * examples/manual/Makefile.am:
5798           Add example for added docs.
5799
5800 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5801
5802         * configure.ac:
5803           back to HEAD
5804
5805 === release 0.8.8 ===
5806
5807 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5808
5809         * NEWS:
5810         * RELEASE:
5811         * configure.ac:
5812           Releasing 0.8.8, "I'll Take Care Of You"
5813
5814 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5815
5816         * configure.ac:
5817           second prerelease
5818
5819 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5820
5821         patch by: Wim Taymans
5822
5823         * gst/gstbin.c:
5824           Fix for #159852 - make iterate emission threadsafe
5825
5826 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5827
5828         * docs/faq/cvs.xml:
5829           notes about new fdo account request
5830
5831 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5832
5833         * docs/gst/gstreamer-docs.sgml:
5834         * docs/gst/tmpl/gstenumtypes.sgml:
5835         * docs/gst/tmpl/gstplugin.sgml:
5836         * docs/libs/gstreamer-libs-docs.sgml:
5837           Added missing short docs. Added ids for navigation.
5838
5839 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5840
5841         * docs/manual/advanced-autoplugging.xml:
5842         * docs/manual/advanced-schedulers.xml:
5843         * docs/manual/advanced-threads.xml:
5844           Rewrites. Remove cothreads, go a bit into opt specifically,
5845           document threads and their gotchas, and do some technical stuff
5846           on autoplugging plus add some working examples. Fixes #157395.
5847         * examples/manual/Makefile.am:
5848           Add typefind/autoplugger example (one that actually works).
5849           Remove queue example since it's a duplicate of the thread one.
5850
5851 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5852
5853         * gst/gstvalue.c: (gst_value_deserialize_string):
5854           use deprecated g_value_set_string_take_ownership to keep compatible
5855           with glib 2.2
5856
5857 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5858
5859         * gst/gstvalue.c: (gst_value_deserialize_string):
5860           revert last patch, only dom a g_utf8_validate now before accepting
5861           the string - caps parsing strips " from strings so we can't rely on
5862           them
5863         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5864           disable a test that tested the above and comment it
5865
5866 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5867
5868         Patch reviewed by David Schleef  <ds@schleef.org>
5869
5870         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5871         bug #153882)
5872         * win32/gstenumtypes.h: same
5873
5874 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5875
5876         * gst/gstpad.c: (gst_pad_query):
5877           Do query on realized pad, similar to how convert/send_event handle
5878           this. Also makes sense, since this pad belongs to the function to
5879           which this query will be sent. Fixes #158163.
5880
5881 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5882
5883         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5884
5885 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5886
5887         * docs/faq/general.xml: fix pipeline to actually work
5888
5889 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5890
5891         * gst/gstvalue.c: (gst_value_deserialize_string):
5892           check that a simple string that gets deserialized does not contain
5893           invalid characters
5894         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5895           remove a test that tested a wring behaviour
5896
5897 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5898
5899         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5900
5901         * docs/manual/intro-motivation.xml:
5902           Fix typos.
5903
5904 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5905
5906         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5907
5908         * docs/gst/tmpl/gstprobe.sgml:
5909           Fix documentation of probe callback - it is supposed to return
5910           FALSE, not TRUE, to remove data from the stream (#159087).
5911
5912 2004-12-16  Daniel Gazard  <dany42@free.fr>
5913
5914         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5915
5916         * gst/gstelementfactory.c: (gst_element_factory_create):
5917           Fix compile failure if compiling without libxml2 support (#149936).
5918
5919 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5920
5921         * docs/manual/advanced-autoplugging.xml:
5922         * docs/manual/highlevel-components.xml:
5923           Move spider from autoplugging to components. Autoplugging is for
5924           internals, not for solutions. ;-).
5925
5926 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5927
5928         * docs/random/ds/0.9-suggested-changes:
5929           Make note on device/location/uri property names.
5930
5931 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5932
5933         * docs/manual/advanced-autoplugging.xml:
5934         * docs/manual/advanced-clocks.xml:
5935         * docs/manual/advanced-interfaces.xml:
5936         * docs/manual/advanced-metadata.xml:
5937         * docs/manual/advanced-position.xml:
5938         * docs/manual/advanced-schedulers.xml:
5939         * docs/manual/advanced-threads.xml:
5940         * docs/manual/appendix-gnome.xml:
5941         * docs/manual/appendix-programs.xml:
5942         * docs/manual/appendix-quotes.xml:
5943         * docs/manual/autoplugging.xml:
5944         * docs/manual/basics-bins.xml:
5945         * docs/manual/basics-data.xml:
5946         * docs/manual/basics-elements.xml:
5947         * docs/manual/basics-helloworld.xml:
5948         * docs/manual/basics-init.xml:
5949         * docs/manual/basics-pads.xml:
5950         * docs/manual/basics-plugins.xml:
5951         * docs/manual/bins-api.xml:
5952         * docs/manual/bins.xml:
5953         * docs/manual/buffers-api.xml:
5954         * docs/manual/buffers.xml:
5955         * docs/manual/clocks.xml:
5956         * docs/manual/components.xml:
5957         * docs/manual/cothreads.xml:
5958         * docs/manual/debugging.xml:
5959         * docs/manual/dparams-app.xml:
5960         * docs/manual/dynamic.xml:
5961         * docs/manual/elements-api.xml:
5962         * docs/manual/elements.xml:
5963         * docs/manual/factories.xml:
5964         * docs/manual/gnome.xml:
5965         * docs/manual/goals.xml:
5966         * docs/manual/helloworld.xml:
5967         * docs/manual/helloworld2.xml:
5968         * docs/manual/highlevel-components.xml:
5969         * docs/manual/highlevel-xml.xml:
5970         * docs/manual/init-api.xml:
5971         * docs/manual/intro-basics.xml:
5972         * docs/manual/intro-motivation.xml:
5973         * docs/manual/intro-preface.xml:
5974         * docs/manual/intro.xml:
5975         * docs/manual/links-api.xml:
5976         * docs/manual/links.xml:
5977         * docs/manual/manual.xml:
5978         * docs/manual/motivation.xml:
5979         * docs/manual/pads-api.xml:
5980         * docs/manual/pads.xml:
5981         * docs/manual/plugins-api.xml:
5982         * docs/manual/plugins.xml:
5983         * docs/manual/programs.xml:
5984         * docs/manual/queues.xml:
5985         * docs/manual/quotes.xml:
5986         * docs/manual/schedulers.xml:
5987         * docs/manual/states-api.xml:
5988         * docs/manual/states.xml:
5989         * docs/manual/threads.xml:
5990         * docs/manual/typedetection.xml:
5991         * docs/manual/win32.xml:
5992         * docs/manual/xml.xml:
5993           Try 2. This time, include a short preface as a "general
5994           introduction", also add code blocks around all code samples
5995           so they get compiled. We still need a way to tell readers
5996           the filename of the code sample. In some cases, don't show
5997           all code in the documentation, but do include it in the generated
5998           code. This allows for focussing on specific bits in the docs,
5999           while still having a full test application available.
6000         * examples/manual/Makefile.am:
6001           Fix up examples for new ADM. Add several of the new examples that
6002           were either added or were missing from the build system.
6003         * examples/manual/extract.pl:
6004           Allow nameless blocks.
6005
6006 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6007
6008         * docs/manual/elements-api.xml:
6009         * docs/manual/helloworld.xml:
6010         * examples/manual/extract.pl:
6011           fix last example.  Add example of adding code blocks that are not
6012           shown in docbook output.
6013
6014 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6015
6016         * docs/manual/dynamic.xml:
6017         * docs/manual/elements-api.xml:
6018         * docs/manual/gnome.xml:
6019         * docs/manual/helloworld2.xml:
6020         * docs/manual/init-api.xml:
6021         * docs/manual/queues.xml:
6022         * docs/manual/threads.xml:
6023         * docs/manual/xml.xml:
6024         * examples/manual/extract.pl:
6025           Make it possible to extract example code from separate blocks.
6026           Should make Ronald happy.
6027
6028 2004-12-15  Wim Taymans  <wim@fluendo.com>
6029
6030         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6031         (remove_from_group), (group_elements_set_visited),
6032         (normalize_group), (gst_opt_scheduler_iterate):
6033         Fix bug where a flag was not updated on a decoupled entry point 
6034         because we were just checking the group element list and decoupled
6035         elements are not in that list..
6036
6037 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6038
6039         * docs/manual/advanced-autoplugging.xml:
6040         * docs/manual/advanced-clocks.xml:
6041         * docs/manual/advanced-dparams.xml:
6042         * docs/manual/advanced-interfaces.xml:
6043         * docs/manual/advanced-metadata.xml:
6044         * docs/manual/advanced-position.xml:
6045         * docs/manual/advanced-schedulers.xml:
6046         * docs/manual/advanced-threads.xml:
6047         * docs/manual/appendix-debugging.xml:
6048         * docs/manual/appendix-gnome.xml:
6049         * docs/manual/appendix-programs.xml:
6050         * docs/manual/appendix-quotes.xml:
6051         * docs/manual/appendix-win32.xml:
6052         * docs/manual/autoplugging.xml:
6053         * docs/manual/basics-bins.xml:
6054         * docs/manual/basics-data.xml:
6055         * docs/manual/basics-elements.xml:
6056         * docs/manual/basics-helloworld.xml:
6057         * docs/manual/basics-init.xml:
6058         * docs/manual/basics-pads.xml:
6059         * docs/manual/basics-plugins.xml:
6060         * docs/manual/bins-api.xml:
6061         * docs/manual/bins.xml:
6062         * docs/manual/buffers-api.xml:
6063         * docs/manual/buffers.xml:
6064         * docs/manual/clocks.xml:
6065         * docs/manual/components.xml:
6066         * docs/manual/cothreads.xml:
6067         * docs/manual/debugging.xml:
6068         * docs/manual/dparams-app.xml:
6069         * docs/manual/dynamic.xml:
6070         * docs/manual/elements-api.xml:
6071         * docs/manual/elements.xml:
6072         * docs/manual/factories.xml:
6073         * docs/manual/gnome.xml:
6074         * docs/manual/goals.xml:
6075         * docs/manual/helloworld.xml:
6076         * docs/manual/helloworld2.xml:
6077         * docs/manual/highlevel-components.xml:
6078         * docs/manual/highlevel-xml.xml:
6079         * docs/manual/init-api.xml:
6080         * docs/manual/intro-motivation.xml:
6081         * docs/manual/intro-preface.xml:
6082         * docs/manual/intro.xml:
6083         * docs/manual/links-api.xml:
6084         * docs/manual/links.xml:
6085         * docs/manual/manual.xml:
6086         * docs/manual/motivation.xml:
6087         * docs/manual/pads-api.xml:
6088         * docs/manual/pads.xml:
6089         * docs/manual/plugins-api.xml:
6090         * docs/manual/plugins.xml:
6091         * docs/manual/programs.xml:
6092         * docs/manual/queues.xml:
6093         * docs/manual/quotes.xml:
6094         * docs/manual/schedulers.xml:
6095         * docs/manual/states-api.xml:
6096         * docs/manual/states.xml:
6097         * docs/manual/threads.xml:
6098         * docs/manual/typedetection.xml:
6099         * docs/manual/win32.xml:
6100         * docs/manual/xml.xml:
6101           First try at rewriting the ADM. Needs lotsamore work, but some
6102           parts might already be somewhat useful.
6103         * docs/pwg/advanced-interfaces.xml:
6104           Remove properties interface, it never actually existed (except for
6105           on my HD...).
6106
6107 2004-12-13  David Schleef  <ds@schleef.org>
6108
6109         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6110         be NULL (bug #160220).
6111
6112 2004-12-13  David Schleef  <ds@schleef.org>
6113
6114         * configure.ac: remove all mmx stuff, because it's not used.
6115         * docs/random/ds/0.9-suggested-changes: additional notes
6116         * include/Makefile.am: we don't use these anymore
6117         * include/mmx.h: remove
6118         * include/sse.h: remove
6119
6120 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6121
6122         * docs/random/mimetypes:
6123           Add FOURCC code for h264 codec (VSSH)
6124           Add alternate FOURCC codes for h263 related codecs
6125
6126 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6127
6128         * docs/manual/programs.xml:
6129           Added more gst-launch examples.
6130
6131 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6132
6133         * gst/gstqueue.c: (gst_queue_handle_src_query):
6134           Check for availability again.
6135
6136 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6137
6138         * gst/gstcaps.c: (gst_caps_compare_structures):
6139           Simple caps go first. This has the nice side-effect of fixing an
6140           obscure warning.
6141
6142 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6143
6144         * gst/gstversion.h.in:
6145           Protect header.
6146
6147 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6148
6149         * gst/schedulers/gstoptimalscheduler.c:
6150         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6151         (gst_opt_scheduler_get_wrapper):
6152           When we're recursing into a chain run, only run the directly
6153           related group, not all queued ones. This will fix a possible
6154           deadlock in chains with more than two groups.
6155
6156 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6157
6158         * autogen.sh:
6159           remove patch if autopoint fails
6160
6161 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6162
6163         * docs/gst/gstreamer-sections.txt:
6164           Document Thomas' addition, fix build, make Luis the sheriff happy.
6165
6166 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6167
6168         * gst/gstplugin.c:
6169         * gst/gstplugin.h:
6170           add accessor for version field
6171
6172 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6173
6174         submitted by: Luca Ferretti <elle.uca@infinito.it>
6175
6176         * po/LINGUAS:
6177         * po/it.po:
6178           New tranlation added: Italian
6179
6180 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6181
6182         * gst/gstpad.c: (gst_pad_is_negotiated),
6183         (gst_pad_get_negotiated_caps):
6184           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6185           it doesn't actually check the contents), so be sure to hand it
6186           a RealPad else we'll crash.
6187
6188 2004-12-03  Wim Taymans  <wim@fluendo.com>
6189
6190         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6191         (gst_queue_link), (gst_queue_handle_src_query):
6192         Reverted to 1.110 until this makes the testsuite and various
6193         apps work.
6194
6195 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6196
6197         * docs/upload.mak: fix included CVS conflict strings
6198
6199 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6200
6201         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6202
6203         * gst/gstelement.c: (gst_element_error_full):
6204           Use g_error_new_literal because error text may have
6205           percentage signs in it. Fixes #160019.
6206
6207 2004-12-01  Benjamin Otte  <otte@gnome.org>
6208
6209         * gst/elements/gstbufferstore.c:
6210         (gst_buffer_store_add_buffer_func):
6211           don't try to make subbuffers bigger than they can be. (fixes
6212           #159970)
6213
6214 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6215
6216         * docs/gst/gstreamer-sections.txt:
6217         * docs/gst/tmpl/gstvalue.sgml:
6218           Add new function to docs to fix build.
6219
6220 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6221
6222         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6223         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6224         (_gst_pad_default_fixate_foreach):
6225         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6226         * gst/gstvalue.h:
6227           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6228           in some cases (arrays), the fixedness depends on the content.
6229         * gst/gstqueue.c: (gst_queue_handle_src_query):
6230           Check for availability before doing something.
6231
6232 2004-11-29  Wim Taymans  <wim@fluendo.com>
6233
6234         * testsuite/threads/Makefile.am:
6235         * testsuite/threads/signals.c: (gst_test_get_type),
6236         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6237         (gst_test_set_property), (gst_test_get_property),
6238         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6239         (gst_test_do_prop), (run_thread), (main):
6240         Added a bunch of testcases that show threadsafety bugs in glib.
6241
6242 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6243
6244         * docs/manual/programs.xml:
6245           Added a first batch of gst-launch examples, as provided by Ronald
6246           and others from the devel-mlist
6247
6248 2004-11-28  Benjamin Otte  <otte@gnome.org>
6249
6250         * gst/gstelement.c: (gst_element_negotiate_pads):
6251           simplify
6252         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6253         (gst_value_serialize_string), (gst_value_deserialize_string):
6254           add unwrapping of previously wrapped strings. Fix bug in wrapping
6255           while at it.
6256         * testsuite/caps/value_serialize.c: (test1),
6257         (test_string_serialization), (test_string_deserialization), (main):
6258           add tests for string (de)serialization
6259
6260 2004-11-26  Wim Taymans  <wim@fluendo.com>
6261
6262         * testsuite/threads/159566.c: (object_deep_notify), (main):
6263         * testsuite/threads/Makefile.am:
6264         Added testsuite to show bug #159566
6265
6266 2004-11-25  Wim Taymans  <wim@fluendo.com>
6267
6268         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6269         (gst_thread_child_state_change), (gst_thread_main_loop):
6270         Ref the thread object in the GThread mainloop. Break out of the
6271         thread mainloop if it holds the last ref. This properly exits
6272         the threads when disposing the thread from its own context. It
6273         also avoids possible deadlocks in the dispose function.
6274
6275 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6276
6277         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6278         it is necessary to wait.
6279
6280 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6281
6282         * docs/pwg/building-boiler.xml:
6283           Make description somewhat clearer.
6284
6285 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6286
6287         * docs/upload.mak:
6288           Apparently docs changed location on FDO's server.
6289
6290 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6291
6292         * docs/pwg/appendix-checklist.xml:
6293           Add some random notes on things to check when writing an element.
6294           This list can be extended as people see fit.
6295
6296 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6297
6298         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6299         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6300         pad. The queue will now wait until it is empty and forward the new
6301         caps to the source.
6302         * gst/gstbin.c (gst_bin_set_element_sched)
6303         (gst_bin_unset_element_sched): Make sure that all elements and
6304         links are registered and unregistered with the scheduler exactly
6305         once. This elaborates on a fix by Benjamin Otte, but
6306         guarantees that decoupled elements are also registered.
6307
6308 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6309
6310         * docs/manual/quotes.xml:
6311           add a quote
6312         * configure.ac:
6313         * gst/gst.c:
6314         * gst/gstinfo.c:
6315           add LIBDIR and move init message higher up so it's at the start
6316
6317 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6318
6319         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6320         * gstreamer.spec.in: add fair
6321
6322 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6323
6324         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6325         * gst/elements/gstidentity.c: (gst_identity_class_init):
6326           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6327           <teuf@gnome.org> (#157263).
6328         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6329         (gst_type_find_handle_src_query):
6330           Subtract size of internally stored data from position queries.
6331
6332 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6333
6334         * gst/schedulers/fairscheduler.c:
6335         * gst/schedulers/faircothreads.c:
6336         * gst/schedulers/faircothreads.h:
6337         New cothread based scheduler: Fair scheduler.
6338         * gst/schedulers/gthread-cothreads.h: 
6339         Add the standard #if around the whole file.
6340         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6341         compilation of the functions defined in this file. This is
6342         necessary to be able to use this file as a normal header.
6343         * gst/schedulers/Makefile.am: Add compiling support for fair
6344         scheduler.
6345         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6346         scheduler cothreads layer from documentation generation.
6347
6348 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6349
6350         * gst/autoplug/gstspideridentity.c:
6351         (gst_spider_identity_sink_loop_type_finding):
6352           Don't crash if that function is not implemented.
6353
6354 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6355
6356         * docs/pwg/advanced-types.xml:
6357           Another typo.
6358
6359 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6360
6361         * docs/pwg/intro-preface.xml:
6362           Hm, ok, so the brackets weren't really useful...
6363         * docs/pwg/other-ntoone.xml:
6364           Fix embarassing typo.
6365
6366 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6367
6368         * docs/pwg/intro-preface.xml:
6369           Rewrite preface.
6370
6371 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6372
6373         * docs/pwg/advanced-scheduling.xml:
6374         * docs/pwg/advanced-tagging.xml:
6375         * docs/pwg/advanced-types.xml:
6376         * docs/pwg/building-boiler.xml:
6377         * docs/pwg/building-chainfn.xml:
6378         * docs/pwg/building-signals.xml:
6379         * docs/pwg/building-state.xml:
6380         * docs/pwg/building-testapp.xml:
6381         * docs/pwg/intro-basics.xml:
6382         * docs/pwg/other-manager.xml:
6383         * docs/pwg/other-source.xml:
6384           Typo fixes.
6385         * docs/pwg/other-manager.xml:
6386           Add some first content. No example code yet.
6387         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6388           Remove double newlines.
6389
6390 2004-11-04  Wim Taymans  <wim@fluendo.com>
6391
6392         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6393         (remove_from_group), (normalize_group), (group_migrate_connected),
6394         (gst_opt_scheduler_iterate):
6395         * testsuite/schedulers/.cvsignore:
6396         * testsuite/schedulers/Makefile.am:
6397         * testsuite/schedulers/queue_link.c: (main):
6398         Added testcase for scheduler segfault.
6399         Fix scheduler segfault when removing a decoupled
6400         entry point as the last element from a group.
6401
6402 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6403
6404         * gst/gstmarshal.list: add missing marshaller, fixes build
6405
6406 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6407
6408         * docs/random/signal: added notes about using BOXED for GstBuffer
6409         signal marshallers, not POINTER
6410
6411 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6412
6413         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6414         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6415         POINTER=>BOXED changes to marshal GstBuffers
6416
6417 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6418
6419         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6420         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6421
6422 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6423
6424         * docs/gst/gstreamer-sections.txt:
6425         * docs/gst/tmpl/gstcaps.sgml:
6426         * docs/gst/tmpl/gsterror.sgml:
6427         * docs/gst/tmpl/gstinfo.sgml:
6428         * docs/gst/tmpl/gstmacros.sgml:
6429         * docs/gst/tmpl/gstutils.sgml:
6430         * docs/random/ensonic/interfaces.txt:
6431         * gst/gstinfo.h:
6432           added some more docs, removed two obsolete defines
6433
6434 2004-11-02  Kjartan Maraas <as at gnome.org>
6435
6436         reviewed by: Wim Taymans, Ronald Bultje.
6437
6438         * gst/cothreads.c: (cothread_create):
6439         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6440         (gst_bin_child_state_change_func):
6441         * gst/gstbuffer.c: (gst_buffer_span):
6442         * gst/gstelement.c: (gst_element_get_index),
6443         (gst_element_get_event_masks), (gst_element_get_query_types),
6444         (gst_element_get_formats):
6445         * gst/gsterror.c: (_gst_core_errors_init),
6446         (_gst_library_errors_init), (_gst_resource_errors_init),
6447         (_gst_stream_errors_init):
6448         * gst/gstobject.c: (gst_object_default_deep_notify):
6449         * gst/gstpad.c: (gst_pad_get_event_masks),
6450         (gst_pad_get_internal_links_default):
6451         * gst/gstplugin.c: (gst_plugin_register_func),
6452         (gst_plugin_get_module):
6453         * gst/gststructure.c: (gst_structure_get_string),
6454         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6455         (gst_structure_to_abbr):
6456         * gst/gstutils.c: (gst_print_element_args):
6457         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6458         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6459         Aplied part of patch #157127: Cleanup of issues reported by 
6460         sparse.
6461         Also do not try to use cothreads when there is no cothread
6462         context yet.
6463
6464 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6465
6466         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6467         (gst_opt_scheduler_iterate):
6468         Applied patch #154061. Running a pipeline in which an element 
6469         calls GST_ELEMENT_ERROR in the chain function, the opt 
6470         scheduler doesn't unref the chain so it never gets freed.
6471
6472 2004-11-02  Wim Taymans  <wim@fluendo.com>
6473
6474         * gst/gststructure.c: (gst_structure_get_abbrs),
6475         (gst_structure_from_abbr), (gst_structure_to_abbr):
6476         Remove that ugly if-then thing in the code that converts
6477         between strings and types.
6478
6479 2004-11-02  Wim Taymans  <wim@fluendo.com>
6480
6481         * gst/gstscheduler.c: (gst_scheduler_add_element),
6482         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6483         Aplied clock distribution patch, this should fix bug
6484         #148787.
6485
6486 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6487
6488         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6489
6490         * po/LINGUAS:
6491         * po/nb.po:
6492           Added Norwegian Bokmaal translation
6493
6494 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6495
6496         * tools/gst-inspect.c: (print_signal_info):
6497           print signal arguments as pointers if they are
6498
6499 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6500
6501         * docs/pwg/building-boiler.xml:
6502           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6503
6504 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6505
6506         * gst/parse/parse.l:
6507         * testsuite/parse/parse1.c: (main):
6508         Since parse can do 'element name=a:b' make 'a:b.' work as
6509         well. 
6510         Added testcase to verify fix.
6511
6512 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6513
6514         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6515         Use the realpad when printing the direction.
6516         Add extra \n when printing extensions of typefind factories.
6517
6518 2004-10-13  David Schleef  <ds@schleef.org>
6519
6520         * examples/manual/Makefile.am: $< isn't portable in Makefile
6521         rules.
6522
6523 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6524
6525         * docs/gst/tmpl/gstobject.sgml:
6526         * docs/gst/tmpl/gstplugin.sgml:
6527         * docs/gst/tmpl/gstpluginfeature.sgml:
6528         * docs/gst/tmpl/gstregistry.sgml:
6529         * docs/gst/tmpl/gstversion.sgml:
6530         * gst/gstbin.c:
6531           more api documentation
6532         * gst/gstplugin.c: (gst_plugin_register_func),
6533         (gst_plugin_check_file), (gst_plugin_load_file):
6534           better error signaling and logging
6535
6536 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6537
6538         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6539           Subtract current queue contents from position queries.
6540
6541 2004-10-11  Johan Dahlin  <johan@gnome.org>
6542
6543         * gst/gsturi.c (gst_uri_get_location): unescape string
6544         (gst_uri_construct): escape string.
6545
6546 2004-10-11  Benjamin Otte  <otte@gnome.org>
6547
6548         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6549         (gst_pad_try_set_caps_nonfixed):
6550           allow renegotiation of unconnected pads (as inside spider). Simply
6551           return OK if unconnected - mimic try_set_caps there.
6552
6553 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6554
6555         * gst/gstbin.c: (gst_bin_sync_children_state):
6556           Add missing break.
6557
6558 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6559
6560         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6561         Set element to EOS before sending EOS event
6562
6563 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6564
6565         * gst/elements/gsttypefindelement.c:
6566         (gst_type_find_element_handle_event):
6567         Handle EOS events when doing the transition from
6568         typefind to data passing. This should fix the
6569         infinite loops in short files.
6570
6571 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6572
6573         * gst/gstthread.c: (gst_thread_change_state),
6574         (gst_thread_child_state_change):
6575         Make sure no iteration happens while performing
6576         the state change as it could mess up the internal
6577         consistency of the thread state.
6578
6579 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6580
6581         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6582         (gst_thread_change_state), (gst_thread_child_state_change):
6583         Do not try to grab the iterate lock in the state change method
6584         when we are in the same thread as the iterate or else we
6585         could deadlock. Some other cleanups.
6586
6587 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6588
6589         * configure.ac:
6590           bump nano to cvs
6591
6592 === release 0.8.7 ===
6593
6594 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6595
6596         * configure.ac:
6597         * NEWS:
6598         * RELEASE:
6599         * configure.ac:
6600           releasing 0.8.7, "A Cruise"
6601
6602 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6603
6604         * docs/random/mimetypes:
6605         Add an entry for Sony ATRAC3 audio format with mime-type
6606         used by rmdemux et riff-read
6607
6608 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6609
6610         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6611         Push the buffer store instead of clearing it in case that
6612         the stream is not seekable.
6613
6614 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6615
6616         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6617         (gst_thread_main_loop):
6618         Lock the iteration and the state change so that automatic
6619         negotiation and fixation does not happen at the same time
6620         as the in stream negotiation.
6621
6622 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6623
6624         * configure.ac:
6625           bump nano to cvs
6626
6627 === release 0.8.6 ===
6628
6629 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6630
6631         * configure.ac:
6632         * NEWS:
6633         * RELEASE:
6634         * configure.ac:
6635           releasing 0.8.6, "Narc"
6636
6637 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6638
6639         * configure.ac:
6640           prerel bump
6641
6642 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6643
6644         patch by: Steve Lhomme
6645
6646         * gst/elements/gstfakesrc.c:
6647         * gst/elements/gstidentity.c:
6648         * gst/gstthread.c:
6649           Fix for #153881
6650
6651 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6652
6653         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6654         Fix threadsafety of the crc checking function.
6655
6656 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6657
6658         patch by: Ronald Bultje
6659
6660         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6661         (gst_type_find_element_handle_event),
6662         (gst_type_find_element_chain):
6663         * gst/elements/gsttypefindelement.h:
6664          #153657.
6665          Filter out discont event from seekable sources when typefind
6666          asks them to seek.  Fixes typefind with demuxers for
6667          avi, asf and matroska.
6668
6669 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6670
6671         * docs/gst/gstreamer-sections.txt:
6672         * gst/gstcaps.c:
6673         * gst/gstcaps.h:
6674         * gst/gstpad.c:
6675           Revert preferred caps: (#147789)
6676
6677 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6678
6679         * win32/dirent.c:
6680           fix a memory leak
6681
6682 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6683
6684         * configure.ac:
6685           bump for prerelease
6686
6687 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6688
6689         * docs/Makefile.am:
6690         * docs/manual/elements-api.xml:
6691           restructure so that common stuff is shown first
6692         * docs/manual/init-api.xml:
6693           convert to examples
6694         * docs/manual/manual.xml:
6695         * docs/manuals.mak:
6696         * docs/url.entities:
6697           link to API on the website, possibly override later in build
6698         * examples/manual/.cvsignore:
6699           ignore more
6700         * examples/manual/Makefile.am:
6701           add more examples
6702         * examples/manual/extract.pl:
6703           error out on failure
6704
6705 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6706
6707         * docs/gst/tmpl/gstthread.sgml:
6708         * docs/manual/init-api.xml:
6709         * examples/manual/Makefile.am:
6710           convert two code bits to examples
6711
6712 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6713
6714         * gst/gstelement.c: (gst_element_change_state):
6715           Well, actually, I was about to remove this insane assert when
6716           I noticed Wim already did that. A warning is nice so we can
6717           fix actual ugs (using --g-fatal-warnings and backtraces), so
6718           I added that instead.
6719
6720 2004-09-06  Wim Taymans  <wim@fluendo.com>
6721
6722         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6723         (gst_element_threadsafe_properties_post_run),
6724         (gst_element_set_state), (gst_element_change_state):
6725         Added extra refcounting around various places. 
6726
6727 2004-09-06  Wim Taymans  <wim@fluendo.com>
6728
6729         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6730         Fix debug info.
6731
6732 2004-09-06  Wim Taymans  <wim@fluendo.com>
6733
6734         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6735         (remove_from_group):
6736         Some more debug info.
6737
6738 2004-09-03  Wim Taymans  <wim@fluendo.com>
6739
6740         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6741         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6742         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6743         (gst_fakesrc_get), (gst_fakesrc_change_state):
6744         * gst/elements/gstfakesrc.h:
6745         * gst/elements/gstidentity.c: (gst_identity_class_init),
6746         (gst_identity_init), (gst_identity_chain),
6747         (gst_identity_set_property), (gst_identity_get_property),
6748         (gst_identity_change_state):
6749         * gst/elements/gstidentity.h:
6750         Added datarate properties to limit the datarate.
6751
6752 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6753
6754         * gst/autoplug/gstspider.c: (plugin_init):
6755           don't set a rank. We don't want to autoplug by inserting spiders.
6756
6757 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6758
6759         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6760         (gst_spider_identity_plug):
6761           add a template for spider's sink
6762         * gst/gst.c: (gst_register_core_elements):
6763           queue's rank should be NULL, we don't want spider to add it.
6764
6765 2004-08-18  David Schleef  <ds@schleef.org>
6766
6767         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6768         * docs/libs/Makefile.am: same
6769         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6770         * docs/random/ds/0.9-planning: random additions
6771         * docs/random/ds/0.9-suggested-changes: same
6772         * gst/gstxml.h: remove vestigal GstXMLNs definition
6773
6774         Preferred caps: (#147789)
6775         * docs/gst/gstreamer-sections.txt: Add symbols
6776         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6777         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6778         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6779         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6780         (gst_caps_get_preferred), (gst_caps_set_preferred),
6781         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6782         (gst_caps_use_preferred): Handle caps preferences
6783         * gst/gstcaps.h: Add caps preferences
6784         * gst/gstpad.c: (gst_pad_link_get_preferred),
6785         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6786         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6787         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6788         negotiation.
6789
6790 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6791
6792         * gst/autoplug/gstspideridentity.c:
6793         (gst_spider_identity_request_new_pad):
6794         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6795         (gst_aggregator_init):
6796         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6797         (gst_fakesink_init):
6798         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6799         (gst_fakesrc_init):
6800         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6801         (gst_fdsink_init):
6802         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6803         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6804         (gst_filesink_init):
6805         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6806         (gst_filesrc_init):
6807         * gst/elements/gstidentity.c: (gst_identity_base_init),
6808         (gst_identity_init):
6809         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6810         (gst_multifilesrc_init):
6811         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6812         (gst_pipefilter_init):
6813         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6814         (gst_statistics_init):
6815         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6816         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6817           s/gst_pad_new/&_from_template/
6818           register pad templates in the base_init function
6819           add static pad template definitions
6820
6821 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6822
6823         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6824         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6825         * testsuite/refcounting/pad.c: (main):
6826         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6827           s/gst_pad_new/&_from_template/
6828           prepare deprecation of gst_pad_new
6829
6830 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6831
6832         patch by: Luca Ognibene <skaboy81@virgilio.it>
6833
6834         * gst/gstcaps.c:
6835         * gst/gstelement.c:
6836         * gst/gstpad.c:
6837         * gst/gstxml.c:
6838           fix memleaks.  Fixes #150001
6839
6840 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6841
6842         * docs/random/ds/0.9-suggested-changes:
6843           add notes - mostly about pad templates
6844
6845 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6846
6847         * win32/GStreamer.vcproj:
6848           temporary locale files are .gmo not .mo
6849
6850 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6851
6852         * configure.ac: bump nano to cvs
6853
6854 === release 0.8.5 ===
6855
6856 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6857
6858         * configure.ac:
6859           releasing 0.8.5, "Stuttgart"
6860         * NEWS:
6861         * RELEASE:
6862         * configure.ac:
6863         * docs/random/release:
6864           updates for release
6865
6866 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6867
6868         patch by: Wim Taymans (wim@fluendo.com)
6869
6870         * gst/gstbuffer.c:
6871         * gst/gstindex.h:
6872         * libs/gst/dataprotocol/dataprotocol.c:
6873           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6874
6875 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6876
6877         * Makefile.am:
6878         * win32/MANIFEST:
6879           add win32 dir to the build.  Fixes #149981.
6880
6881 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6882
6883         * configure.ac:
6884           bump libtool versioning
6885         * gst/gststructure.c:
6886           mark function as static
6887         * po/af.po:
6888         * po/az.po:
6889         * po/ca.po:
6890         * po/cs.po:
6891         * po/en_GB.po:
6892         * po/fr.po:
6893         * po/nl.po:
6894         * po/sq.po:
6895         * po/sr.po:
6896         * po/sv.po:
6897         * po/tr.po:
6898         * po/uk.po:
6899           translations update
6900         * win32/README.txt:
6901           trademark protection
6902
6903 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6904
6905         * configure.ac:
6906           fix GST_ORIGIN
6907           set GST_PACKAGE to source, and distinguish between release and other
6908         * tools/gst-inspect.c:
6909           print out plugin an element factory is part of so we see this info
6910
6911 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6912
6913         * docs/gst/gstreamer-sections.txt:
6914         * docs/gst/tmpl/gstbuffer.sgml:
6915         * docs/gst/tmpl/gstschedulerfactory.sgml:
6916           reorder docs a little, make GstBuffer's more sensible.
6917         * gst/gstbuffer.h:
6918           API: added GST_BUFFER_FLAG_DELTA_UNIT
6919         * gst/gstscheduler.c:
6920           comment API addition
6921
6922 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6923
6924         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6925           work with non-regular files that can be mmapped (like /dev/zero)
6926         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6927           get rid of typefinds that require a seek when we can't seek instead
6928           of trying them over and over again
6929         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6930           return non-zero failure value when the pipeline was interrupted or
6931           an error occurred
6932
6933 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6934
6935         * win32/config.h:
6936         * win32/GStreamer.vcproj:
6937           compile and install the locales
6938
6939 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6940
6941         * gst/gstvalue.c:
6942           fix a possible memory leak under Windows
6943
6944 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6945
6946         * win32/GStreamer.vcproj:
6947           fix a memory leak that occured under Windows
6948         * win32/gstreamer.def:
6949           add gst_scheduler_register
6950
6951 2004-08-11  Benjamin Otte  <otte@gnome.org>
6952
6953         * docs/gst/gstreamer-sections.txt:
6954         * gst/gstscheduler.c: (gst_scheduler_register):
6955         * gst/gstscheduler.h:
6956           API:
6957           add gst_scheduler_register shortcut similar to gst_element_register
6958         * gst/schedulers/entryscheduler.c: (plugin_init):
6959         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6960         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6961           use it
6962
6963 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6964
6965         * gst/gstvalue.h:
6966           fix a memory leak that occured under Windows
6967
6968 2004-08-10  Colin Walters  <walters@redhat.com>
6969
6970         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6971         Don't use O_EXCL to open temporary registry.  It will prevent
6972         registry creation if a temporary one already exists, which
6973         is unnecessary.
6974
6975 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6976
6977         * docs/gst/gstreamer-sections.txt:
6978         * docs/gst/tmpl/gstvalue.sgml:
6979           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6980
6981 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6982
6983         * win32/gstbytestream.vcproj:
6984         * win32/gstelements.vcproj:
6985         * win32/gstgetbits.vcproj:
6986         * win32/gst-inspect.vcproj:
6987         * win32/gst-launch.vcproj:
6988         * win32/gstoptimalscheduler.vcproj:
6989         * win32/GStreamer.vcproj:
6990         * win32/gst-register.vcproj:
6991         * win32/gstspider.vcproj:
6992           update the include and lib dirs to fit standard libraries as
6993           described in the Win32 manual
6994
6995 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6996
6997         * win32/config.h:
6998         * win32/gstversion.h:
6999           enable NLS again, push the version number for the coming 0.8.5 release
7000
7001 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7002
7003         * gst/gstvalue.h:
7004           export gst_type_XXX for windows DLLs
7005
7006 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7007
7008         * docs/faq/gst-uninstalled:
7009           fix PKG_CONFIG_PATH and PYTHONPATH
7010         * gst/schedulers/Makefile.am:
7011           cleanup
7012         * libs/gst/bytestream/bytestream.c:
7013           remove newline
7014         * po/LINGUAS:
7015         * po/sq.po:
7016           adding Albanian translation (Laurent Dhima)
7017         * po/cs.po:
7018           updated
7019
7020 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7021
7022         * po/ca.po:
7023         * po/sv.po:
7024           updated translations
7025
7026 2004-08-04  Benjamin Otte  <otte@gnome.org>
7027
7028         * tests/mass_elements.c: (main):
7029           allow specifying src and sink element explicitly, so I can test
7030           videotestsrc instead of fakesrc
7031
7032 2004-08-04  Benjamin Otte  <otte@gnome.org>
7033
7034         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
7035         (gst_structure_id_empty_new), (gst_structure_empty_new),
7036         (gst_structure_copy):
7037           add gst_structure_id_empty_new_with_size to allow preallocating
7038           value array sizes. Use this in gst_structure_copy to get rid of
7039           reallocs.
7040           don't do quark=>string=>quark when copying structures
7041
7042 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
7043
7044         * docs/manual/win32.xml:
7045         * win32/README.txt:
7046           update documentation with the clean version of dependencies
7047
7048 2004-08-03  Benjamin Otte  <otte@gnome.org>
7049
7050         * gst/schedulers/entryscheduler.c:
7051         (gst_entry_scheduler_remove_element):
7052           fix for GST_DISABLE_DEBUG
7053         * tools/gst-launch.c: (print_tag):
7054           fixes for G_DISABLE_ASSERT
7055
7056 2004-08-03  Benjamin Otte  <otte@gnome.org>
7057
7058         * gst/gst.c: (gst_register_core_elements):
7059           fix for G_DISABLE_ASSERT
7060         * gst/gstinfo.c: (__gst_in_valgrind):
7061           add for GST_DISABLE_DEBUG
7062
7063 2004-08-03  Benjamin Otte  <otte@gnome.org>
7064
7065         * gst/parse/parse.l:
7066           fix for G_DISABLE_ASSERT
7067
7068 2004-08-03  Wim Taymans  <wim@fluendo.com>
7069
7070         * gst/gstbin.c: (gst_bin_get_type),
7071         (gst_bin_child_state_change_func):
7072         * gst/gstthread.c: (gst_thread_change_state):
7073         Backported some debug logging from a reverted patch
7074         Don't try to destroy the thread twice. Added some more
7075         debugging in GstThread. Unlock and signal even if we
7076         are in the thread context.
7077
7078 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7079
7080         * po/uk.po:
7081           updated translation
7082
7083 2004-07-30  David Schleef  <ds@schleef.org>
7084
7085         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7086
7087 2004-07-29  David Schleef  <ds@schleef.org>
7088
7089         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7090         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7091
7092 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7093
7094         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7095         (gst_bin_add_func), (gst_bin_remove_func),
7096         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7097         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7098         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7099         (gst_bin_sync_children_state):
7100         * gst/gstbin.h:
7101         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7102         (gst_thread_change_state):
7103         * testsuite/states/Makefile.am:
7104           revert state change patches as agreed so we can rework them
7105           gradually
7106
7107 2004-07-29  Benjamin Otte  <otte@gnome.org>
7108
7109         * libs/gst/control/Makefile.am:
7110           link to libgstreamer (fixes Debian bug 262019, see
7111           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7112
7113 2004-07-29  Wim Taymans  <wim@fluendo.com>
7114
7115         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7116         (check_from_fraction_convert), (transform_test), (main):
7117         Make the test less pedantic about float roundoff errors.
7118
7119 2004-07-29  Benjamin Otte  <otte@gnome.org>
7120
7121         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7122         (gst_filesrc_srcpad_event):
7123           make seek events to before start/after end of file not fail, but
7124           seek to start/end instead
7125         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7126           add more output
7127
7128 2004-07-29  Benjamin Otte  <otte@gnome.org>
7129
7130         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7131           check that caps are fixed
7132         * gst/gstpad.c: (gst_pad_template_new):
7133           don't try to simplify caps, costs too much time on gst_init
7134         * gst/gstplugin.c: (gst_plugin_add_feature):
7135           G_ERROR if features are added twice
7136         * gst/gsttypefind.c: (gst_type_find_register):
7137         * gst/gstelementfactory.c: (gst_element_register):
7138           don't add features twice
7139         * docs/random/ds/0.9-suggested-changes:
7140           add note about possible gst_init optimization
7141
7142 2004-07-28  David Schleef  <ds@schleef.org>
7143
7144         * testsuite/elements/Makefile.am:
7145         * testsuite/elements/struct_i386.h:
7146         * testsuite/elements/struct_size.c: (main):  A little test
7147         to keep distcheck from working if someone changes a structure
7148         size accidentally.
7149
7150 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7151
7152         * docs/libs/Makefile.am:
7153         * docs/libs/gstreamer-libs-docs.sgml:
7154         * docs/libs/gstreamer-libs-sections.txt:
7155         * docs/libs/tmpl/gstbytestream.sgml:
7156         * docs/libs/tmpl/gstcontrol.sgml:
7157         * docs/libs/tmpl/gstdataprotocol.sgml:
7158         * docs/libs/tmpl/gstgetbits.sgml:
7159         * libs/gst/bytestream/Makefile.am:
7160         * libs/gst/bytestream/bytestream.c:
7161         * libs/gst/bytestream/bytestream.h:
7162         * libs/gst/control/Makefile.am:
7163         * libs/gst/dataprotocol/Makefile.am:
7164         * libs/gst/getbits/Makefile.am:
7165         * libs/gst/getbits/getbits.h:
7166           various doc and style fixes, adding bytestream to libs docs.
7167
7168 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7169
7170         * docs/gst/gstreamer-docs.sgml:
7171         * docs/libs/Makefile.am:
7172         * docs/libs/gstreamer-libs-docs.sgml:
7173         * docs/libs/gstreamer-libs-sections.txt:
7174         * libs/gst/control/dparam.c:
7175           more doc fixes.  gst-libs docs now build the same way as gst.
7176
7177 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7178
7179         * configure.ac:
7180         * testsuite/Makefile.am:
7181         * testsuite/bins/Makefile.am:
7182         * testsuite/caps/Makefile.am:
7183         * testsuite/cleanup/Makefile.am:
7184         * testsuite/clock/Makefile.am:
7185         * testsuite/debug/Makefile.am:
7186         * testsuite/dlopen/Makefile.am:
7187         * testsuite/dynparams/Makefile.am:
7188         * testsuite/elements/.cvsignore:
7189         * testsuite/elements/Makefile.am:
7190         * testsuite/enumcaps/Makefile.am:
7191         * testsuite/enumcaps/enumcaps.c:
7192         * testsuite/ghostpads/Makefile.am:
7193         * testsuite/indexers/Makefile.am:
7194         * testsuite/negotiation/Makefile.am:
7195         * testsuite/parse/Makefile.am:
7196         * testsuite/plugin/Makefile.am:
7197         * testsuite/refcounting/Makefile.am:
7198         * testsuite/schedulers/.cvsignore:
7199         * testsuite/states/Makefile.am:
7200         * testsuite/tags/Makefile.am:
7201         * testsuite/threads/Makefile.am:
7202           fold enumcaps into caps dir
7203           clean up Makefile.am's for testsuite
7204
7205 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7206
7207         * docs/gst/Makefile.am:
7208         * docs/libs/Makefile.am:
7209           clean up docs build.  Fixes needless rebuilding of template files.
7210
7211 2004-07-28  Wim Taymans  <wim@fluendo.com>
7212
7213         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7214         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7215         Make sure that a bin state change tries to keep the children
7216         in sync. 
7217         Added debug logging to the thread.
7218
7219 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7220
7221         * win32/GStreamer.vcproj:
7222         * win32/gstreamer.def:
7223           more exports for the plugins
7224
7225 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7226
7227         * win32/gstgetbits.vcproj:
7228         * win32/gstgetbits.def:
7229         * win32/msvc71.sln:
7230           add support for the getbits plugin
7231
7232 2004-07-27  Wim Taymans  <wim@fluendo.com>
7233
7234         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7235         (gst_value_transform_fraction_double), (_gst_value_initialize):
7236         * testsuite/caps/Makefile.am:
7237         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7238         (check_from_fraction_convert), (transform_test), (main):
7239         Added transform functions between double and fraction.
7240         Added testcase to verify transforms
7241
7242 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7243
7244         * win32/GStreamer.vcproj:
7245           rename GStreamer-0.8.lib to libgstreamer.lib
7246
7247 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7248
7249         * win32/gstelements.vcproj:
7250         * win32/gstoptimalscheduler.vcproj:
7251           fixes for the Release build
7252
7253 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7254
7255         * win32/config.h:
7256           update the version number
7257
7258 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7259
7260         * win32/GStreamer.vcproj:
7261           add gstinterface to the build
7262
7263 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7264
7265         * win32/gstreamer.def:
7266           add many definitions needed by plugins,
7267           GST_CAT_DEFAULT only available in the Debug build ?
7268
7269 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7270
7271         * gst/gstelement.c: (gst_element_set_eos_recursive):
7272           various whitespace fixes.
7273           doc fix, fixes #148497
7274
7275 2004-07-25  Benjamin Otte  <otte@gnome.org>
7276
7277         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7278           don't delay links on the sink elements, it causes unnegotiated
7279           links.
7280         * gst/elements/gsttypefindelement.c:
7281         (gst_type_find_element_base_init):
7282           add our padtemplates, we indeed do have some.
7283         * gst/elements/gsttypefindelement.c:
7284         (gst_type_find_element_handle_event),
7285         (gst_type_find_element_chain):
7286           don't push data when typefinding failed.
7287         * gst/gstpad.c: (gst_pad_link_fixate):
7288           check that no fixate function returns empty caps.
7289         * gst/gstpad.c: (gst_pad_push):
7290           check that the link is negotiated before data gets pushed.
7291         * tools/gst-register.c: (main):
7292           don't assert (fixes #148283)
7293
7294 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7295
7296         * docs/gst/gstreamer-sections.txt:
7297         * docs/gst/tmpl/gstconfig.sgml:
7298           add GST_PLUGIN_EXPORT definition
7299
7300 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7301
7302         * gst/gstplugin.h:
7303         * gst/gstconfig.h.in:
7304         * win32/gstconfig.h:
7305         * win32/gstelements.def:
7306         * win32/gstelements.vcproj:
7307         * win32/gstoptimalscheduler.def:
7308         * win32/gstoptimalscheduler.vcproj:
7309         * win32/gstspider.def:
7310         * win32/gstspider.vcproj:
7311           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7312
7313 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7314
7315         * docs/gst/gstreamer-sections.txt:
7316           remove GST_CAT_DEFAULT because the type has changed
7317
7318 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7319
7320         * win32/gstbytestream.vcproj:
7321         * win32/gstelements.vcproj:
7322         * win32/gst-inspect.vcproj:
7323         * win32/gst-launch.vcproj:
7324         * win32/gstoptimalscheduler.vcproj:
7325         * win32/GStreamer.vcproj:
7326         * win32/gst-register.vcproj:
7327         * win32/gstspider.vcproj:
7328         * win32/msvc71.sln:
7329           Copy the files where needed after building, The testsuite will be
7330           built separately
7331
7332 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7333
7334         * win32/config.h:
7335         * win32/README.txt:
7336         * docs/manual/win32.xml:
7337         Fixed the plugin and GStreamer location
7338
7339 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7340
7341         * win32/gstreamer.def:
7342         More exports for the plugins
7343
7344 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7345
7346         * gst/gstinfo.h:
7347         Marc was right, we need to export literally GST_CAT_DEFAULT
7348
7349 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7350
7351         * win32/config.h:
7352         NLS crashes in gettext, disabled until this is solved
7353
7354 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7355
7356         * win32/gst-inspect.vcproj:
7357         * win32/gst-launch.vcproj:
7358         Should use NLS when available
7359
7360 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7361
7362         * gst/registries/gstxmlregistry.c:
7363         removing the file doesn't seem to be a good idea on Linux
7364
7365 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7366
7367         * gst/registries/gstxmlregistry.c:
7368         Remove the registry before renaming the tempfile (needed for Windows)
7369
7370 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7371
7372         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7373         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7374         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7375         * gst/elements/gstmultifilesrc.h:
7376         Added newmedia property so it generates newmedia events between each
7377         file when property is set, as well as fixed eos handling
7378
7379 2004-07-22  David Schleef  <ds@schleef.org>
7380
7381         * gst/gststructure.c: (gst_structure_id_empty_new),
7382         (gst_structure_empty_new):  Set type field correctly.
7383         * gst/gststructure.h: Check type field correctly.
7384         * testsuite/caps/Makefile.am:
7385         * testsuite/caps/structure.c: (test1), (main): Add a very small
7386         test for structures.
7387
7388 2004-07-22  David Schleef  <ds@schleef.org>
7389
7390         * docs/random/ds/0.9-suggested-changes: more comments
7391         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7392
7393 2004-07-22  Benjamin Otte  <otte@gnome.org>
7394
7395         * gst/gstelementfactory.c: (gst_element_register):
7396           set the factory in the class struct, so gst_element_get_factory
7397           actually works
7398         * gst/parse/grammar.y:
7399           set element to playing when it gets unlocked as we can't rely on the
7400           bin state - all elements in the bin state might still be locked in
7401           NULL)
7402
7403 2004-07-22  Benjamin Otte  <otte@gnome.org>
7404
7405         * gst/gstelement.c: (gst_element_set_state_func):
7406           make this a static function
7407
7408 2004-07-22  Wim Taymans  <wim@fluendo.com>
7409
7410         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7411         (gst_opt_scheduler_pad_link):
7412         fix 147894-2 and the group_link problem.
7413
7414 2004-07-22  Wim Taymans  <wim@fluendo.com>
7415
7416         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7417         (handoff_identity), (main):
7418         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7419         (handoff_identity), (main):
7420         * testsuite/schedulers/Makefile.am:
7421         * testsuite/schedulers/group_link.c: (main):
7422         Show bug in scheduler when linking chain and loop based element 
7423         where the chain based element was not yet in a group.
7424
7425 2004-07-21  Benjamin Otte  <otte@gnome.org>
7426
7427         * gst/.cvsignore:
7428         * gst/autoplug/.cvsignore:
7429         * gst/elements/.cvsignore:
7430         * gst/indexers/.cvsignore:
7431         * libs/gst/bytestream/.cvsignore:
7432         * libs/gst/control/.cvsignore:
7433         * libs/gst/getbits/.cvsignore:
7434         * testsuite/states/.cvsignore:
7435         * testsuite/threads/.cvsignore:
7436           keep this up to date, since I seem to be the only one who cares
7437           about not missing files on commits (editor's note: no you don't,
7438           but feel free to change them at the time you add stuff instead
7439           of later on)
7440
7441 2004-07-21  Benjamin Otte  <otte@gnome.org>
7442
7443         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7444         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7445         (gst_bin_child_state_change_func), (set_kid_state_func),
7446         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7447           make state changes work correctly and reentrant (so removing
7448           elements from bins during state changes of bins doesn't cause
7449           segfaults or even wrong states)
7450           add debugging category and debugging output to print children states
7451         * gst/gstbin.c: (gst_bin_dispose): 
7452           add some assertion checks
7453         * gst/gstbin.h:
7454         * gst/gstbin.c: (gst_bin_sync_children_state):
7455           deprecate this function - it just does gst_bin_set_state (bin,
7456           GST_STATE (bin)) 
7457         * testsuite/threads/queue.c: (main):
7458           don't use gst_bin_sync_children_state anymore
7459         * testsuite/states/Makefile.am:
7460         * testsuite/states/bin.c:
7461           test that the state changes of bins work as expected
7462         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7463           some adjustments to change states correctly, too
7464         * gst/gstthread.c: (gst_thread_change_state):
7465           don't enable/disable "threadsafe" properties, they're unused and
7466           cause random segfaults
7467         * testsuite/threads/Makefile.am:
7468           the queue check randomly passes now, ignore it
7469
7470 2004-07-21  Benjamin Otte  <otte@gnome.org>
7471
7472         * gst/gstpad.c:
7473           check if data is NULL before outputting debug info. (fixes #145100)
7474
7475 2004-07-21  Benjamin Otte  <otte@gnome.org>
7476
7477         * gst/schedulers/entryscheduler.c:
7478         (gst_entry_scheduler_loop_wrapper),
7479         (gst_entry_scheduler_chain_wrapper),
7480         (gst_entry_scheduler_get_wrapper):
7481           reset the state when the cothread starts, so we don't get assertion
7482           failures on restarting of cothreads
7483
7484 2004-07-20  Benjamin Otte  <otte@gnome.org>
7485
7486         * gst/gstelement.c: (gst_element_link_pads_filtered):
7487           use correct sinkpad, if only sinkpad is specified, but not srcpad
7488           (fixes #147889)
7489         * gst/gstelement.c: (gst_element_set_state_func),
7490         (gst_element_change_state): ref/unref the element, signal handlers
7491         could get rid of the element otherwise
7492
7493 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7494
7495         * docs/random/ds/0.9-suggested-changes:
7496           Make note about renaming fixed-list to array.
7497         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7498         (_gst_value_initialize):
7499           Add array intersections.
7500         * testsuite/caps/intersect2.c: (main):
7501           Add test for array intersections.
7502
7503 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7504
7505         * configure.ac: back to cvs
7506
7507 === release 0.8.4 ===
7508
7509 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7510
7511         * configure.ac:
7512           releasing 0.8.4, "Paella"
7513           bump libtool versioning
7514
7515 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7516
7517         * po/LINGUAS:
7518         * po/ca.po:
7519           adding Catalan translation (Jordi Mallach)
7520
7521 2004-07-20  Wim Taymans  <wim@fluendo.com>
7522
7523         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7524         (handoff_identity), (main):
7525         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7526         (handoff_identity), (main):
7527         * testsuite/schedulers/Makefile.am:
7528         Added failing testcase for variant of #147894
7529
7530 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7531
7532         patch by: David Moore
7533
7534         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7535         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7536         (group_migrate_connected):
7537         * testsuite/schedulers/Makefile.am:
7538           fix for #142813 (Deadlock in optimal scheduler)
7539
7540 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7541
7542         patch by: Wim Taymans
7543
7544         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7545         (gst_opt_scheduler_schedule_run_queue),
7546         (gst_opt_scheduler_get_wrapper), (get_group),
7547         (group_migrate_connected):
7548         * testsuite/schedulers/Makefile.am:
7549           fix for #147819 (Add some checks in the opt scheduler)
7550
7551 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7552
7553         patch by: Benjamin Otte
7554
7555         * gst/gstelementfactory.c: (__gst_element_details_set):
7556           fix for #147929: running gst-register in non-utf8 locale can cause
7557           invalid registry
7558
7559 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7560
7561         patch by: Wim Taymans
7562
7563         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7564         (group_has_element), (element_get_reachables_func),
7565         (group_migrate_connected):
7566           fix for #147894 (opt scheduler decoupled elements mismanagement)
7567         * testsuite/schedulers/Makefile.am:
7568           testsuite app now passes
7569
7570 2004-07-19  Wim Taymans  <wim@fluendo.com>
7571
7572         * testsuite/schedulers/147819.c: (handoff_identity1),
7573         (handoff_identity2), (main):
7574         * testsuite/schedulers/Makefile.am:
7575         Added testcase for bug 147819
7576
7577 2004-07-19  Wim Taymans  <wim@fluendo.com>
7578
7579         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7580         (handoff_identity), (main):
7581         * testsuite/schedulers/Makefile.am:
7582         Added testcase for bug 147894
7583
7584 2004-07-16  Wim Taymans  <wim@fluendo.com>
7585
7586         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7587         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7588         * testsuite/schedulers/Makefile.am:
7589         Added testsuite for bug 142183 in its two incarnations. Refcount
7590         is not increased for scheduled elements and threadsafe properties
7591         mutexes are not properly unlocked.
7592
7593 2004-07-16  Wim Taymans  <wim@fluendo.com>
7594
7595         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7596         (create_chain), (destroy_chain), (create_group), (destroy_group),
7597         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7598         (group_dec_link), (gst_opt_scheduler_pad_link),
7599         (group_inc_links_for_element), (group_migrate_connected):
7600         Call group_inc_link with the proper src->sink ordering -- 
7601         break this, and we break sort_chain. patch from wingo for bug
7602         147713.
7603         Partially revert patch 1.89. When adding a loop based element to 
7604         the scheduler, the links to other groups are automatically followed
7605         and incremented. This should not happen because the bin will call
7606         pad_link explicitly for those connection, resulting in them counted 
7607         twice. Results in assertion failure on pipeline cleanup.
7608
7609 2004-07-16  Wim Taymans  <wim@fluendo.com>
7610
7611         * testsuite/schedulers/143777-2.c: (main):
7612         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7613         (main):
7614         * testsuite/schedulers/Makefile.am:
7615         Added cleanup code to testcase 143777-2.
7616         Added testcase to show bug 147713, does not really show the
7617         deadlock as I can't figure out how to trigger it, but it does
7618         demonstrate bad ordering in the scheduler.
7619
7620 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7621
7622         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7623           change strndup to g_strndup.  Fixes #147707
7624
7625 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7626
7627         * po/af.po:
7628         * po/az.po:
7629         * po/cs.po:
7630         * po/en_GB.po:
7631         * po/fr.po:
7632         * po/nl.po:
7633         * po/sr.po:
7634         * po/sv.po:
7635         * po/tr.po:
7636         * po/uk.po:
7637           updated translations
7638
7639 2004-07-16  Benjamin Otte  <otte@gnome.org>
7640
7641         * gst/gstvalue.c: (gst_greatest_common_divisor):
7642           use ints and return ints, fractions only use ints, too, so this
7643           avoids accidently casting multiplications to unsigned
7644         (gst_value_lcopy_fraction): it's ints, not uint32
7645         (gst_value_set_fraction): disallow minint, multiplying and negation
7646           are broken with it
7647         (gst_value_fraction_multiply): fix to make large numbers work and get
7648         rid of the assumption that the multiplication of two ints fits an
7649         int64 - dunno if that's true for all systems
7650         * testsuite/caps/Makefile.am:
7651         * testsuite/caps/fraction-multiply-and-zero.c:
7652         (check_multiplication), (check_equal), (zero_test), (main):
7653           add tests for all the stuff above
7654         * testsuite/caps/value_compare.c: (test1):
7655           fix comment
7656         * tests/.cvsignore:
7657         * testsuite/caps/.cvsignore:
7658         * testsuite/debug/.cvsignore:
7659         * testsuite/dlopen/.cvsignore:
7660         * testsuite/states/.cvsignore:
7661           get up to date
7662
7663 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7664
7665         * docs/manual/bins-api.xml:
7666         * docs/manual/factories.xml:
7667         * docs/manual/helloworld.xml:
7668         * docs/manual/links-api.xml: 
7669           fixes for out of date info, incorrect info and grammar
7670
7671 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7672
7673         * docs/manual/pads.xml:
7674         * docs/manual/pads-api.xml: grammar fix
7675
7676 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7677
7678         * docs/manual/pads-api.xml: typo + grammar fix
7679
7680 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7681
7682         * docs/gst/gstreamer-sections.txt:
7683           add new symbols
7684         * docs/gst/tmpl/gstelement.sgml:
7685         * docs/gst/tmpl/gstpad.sgml:
7686         * docs/gst/tmpl/gsttypes.sgml:
7687         * docs/gst/tmpl/gstvalue.sgml:
7688           update docs
7689         * gst/gststructure.c: (gst_structure_set_valist),
7690         (gst_structure_from_abbr), (gst_structure_to_abbr):
7691         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7692         (gst_greatest_common_divisor), (gst_value_init_fraction),
7693         (gst_value_copy_fraction), (gst_value_collect_fraction),
7694         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7695         (gst_value_get_fraction_numerator),
7696         (gst_value_get_fraction_denominator),
7697         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7698         (gst_value_deserialize_fraction),
7699         (gst_value_transform_fraction_string),
7700         (gst_value_transform_string_fraction),
7701         (gst_value_compare_fraction), (_gst_value_initialize):
7702         * gst/gstvalue.h:
7703           adding GstFraction GValue type, get/set, and multiply
7704         * testsuite/caps/Makefile.am:
7705         * testsuite/caps/fraction.c: (test), (main):
7706         * testsuite/caps/string-conversions.c: (main):
7707         * testsuite/caps/value_compare.c: (test1), (main):
7708           add regression tests for GstFraction
7709
7710 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7711         
7712         * docs/manual/init-api.xml: Grammar fix
7713
7714 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7715
7716         * docs/manual/states.xml: Fix inconsistent information
7717
7718 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7719
7720         * gst/gstelement.c: (gst_element_set_state):
7721         * gst/gstpad.c: (gst_pad_try_set_caps):
7722         * gst/gststructure.c:
7723         * gst/gstthread.c: (gst_thread_child_state_change):
7724         * gst/gstvalue.c: (gst_value_compare_double):
7725         * gst/gstvalue.h:
7726         * testsuite/parse/parse1.c: (main):
7727           debugging additions and style cleanups
7728
7729 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7730
7731         * docs/manual/states.xml: Grammar fix
7732
7733 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7734
7735         * docs/manual/pads.xml: Grammar fix
7736
7737 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7738
7739         * docs/manual/elements.xml: Fixed image reference
7740
7741 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7742
7743         * docs/manual/goals.xml: Grammar fix
7744
7745 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7746
7747         * docs/manual/motivation.xml:
7748         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7749
7750 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7751
7752         * docs/manual/motivation.xml: Fix spelling
7753
7754 2004-07-15  Benjamin Otte  <otte@gnome.org>
7755
7756         * gst/gstelement.h: 
7757           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7758           strings.
7759         * gst/gstelement.c (gst_element_class_init):
7760           GError's are boxed, not objects
7761         * gst/gstmarshal.list:
7762           update list for the fixed error signal
7763
7764 2004-07-14  Andy Wingo  <wingo@pobox.com>
7765
7766         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7767         there all along, but the function wasn't. (guile-gstreamer's build
7768         system uses the address of the function -- I wasn't actually
7769         trying to use this.)
7770
7771 2004-07-14  Andy Wingo  <wingo@pobox.com>
7772
7773         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7774         as gst_pad_proxy_pad_link) just link to every other pad when they
7775         are called. In the case where the graph has cycles, this will mean
7776         that a call to try_set_caps will recurse. Allow this recursion
7777         and return OK, while we wait for the first try_set_caps to give a
7778         proper return value.
7779         (gst_pad_link_call_link_functions): Since this function is the
7780         only one to set the NEGOTIATING flag on a pad, if the flag is set
7781         it means that the link functions have indirectly recursed. If this
7782         happens, error out to avoid infinite recursion and an eventual
7783         SEGV.
7784         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7785         (gst_pad_proxy_getcaps): Intersect the result with the template
7786         caps to ensure that the return value is valid.
7787
7788 2004-07-14  Andy Wingo  <wingo@pobox.com>
7789
7790         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7791         one refcount, the calling function is the owner of the buffer.
7792
7793 2004-07-14  Wim Taymans  <wim@fluendo.com>
7794
7795         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7796         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7797         Fix stupid warning when an element is to be migrated but
7798         is already migrated.
7799
7800 2004-07-14  Wim Taymans  <wim@fluendo.com>
7801
7802         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7803         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7804         Make sure that a single non-loop-based element does not 
7805         end up in a group. This fixes the testsuite again.
7806
7807 2004-07-14  Wim Taymans  <wim@fluendo.com>
7808
7809         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7810         (add_to_group), (merge_groups), (schedule_group),
7811         (gst_opt_scheduler_get_wrapper), (group_elements),
7812         (group_dec_link), (gst_opt_scheduler_pad_link),
7813         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7814         (gst_opt_scheduler_iterate):
7815         move isolated groups to a new chain.
7816         Emit a warning instead of segfaulting in some error cases.
7817         Fix a bug where the link count between groups was not calculated 
7818         correctly. Fixes #144510.
7819
7820 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7821         * gst/elements/gstfilesrc.c:
7822           Binary files support under Windows now OK
7823       
7824 2004-07-13  Benjamin Otte  <otte@gnome.org>
7825
7826           compatibility fixes for Solaris 8/gcc 2.95
7827         * configure.ac:
7828           include libintl libs in LDFLAGS
7829         * gstvalue.c (gst_value_deserialize_buffer):
7830           cast isxdigit stuff to int to silence compiler warning
7831
7832 2004-07-12  Benjamin Otte  <otte@gnome.org>
7833
7834         * gst/gsttypes.h:
7835           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7836           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7837           just causes support madness
7838         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7839           make it work without this
7840         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7841         (gst_file_index_commit):
7842           glib IO channels don't want binary mode
7843         * testsuite/bytestream/filepadsink.c: (main):
7844         * testsuite/bytestream/test1.c: (read_param_file):
7845           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7846
7847 2004-07-12  Benjamin Otte  <otte@gnome.org>
7848
7849         * gst/gstelement.c: (gst_element_class_init),
7850         (gst_element_set_state), (gst_element_set_state_func):
7851           virutalize gst_element_set_state, use set_state member in class
7852           struct that was already added in 0.7 for this.
7853         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7854         (gst_bin_change_state):
7855           make gst_bin_foreach works similar to other foreach functions, plug
7856           memleaks in it. Make functions using it work with the new approach.
7857           Document gst_bin_foreach, so it can be exported if we want to
7858         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7859           use virtualized set_state to make set_state on bins set the state of
7860           all its children.
7861
7862 2004-07-12  Benjamin Otte  <otte@gnome.org>
7863
7864         * configure.ac:
7865           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7866           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7867         * gst/gstpad.c: (gst_pad_alloc_buffer):
7868           allow buffer_alloc functions to return NULL and allocate a normal
7869           buffer in that case
7870
7871 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7872         * gst/elements/gstfilesink.c:
7873         * gst/elements/gstfilesrc.c:
7874         * gst/indexers/gstfileindex.c:
7875         * gst/gsttypes.h:
7876         * testsuite/bytestream/filepadsink.c:
7877         * testsuite/bytestream/test1.c:
7878           Handle binary files under Windows
7879
7880 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7881         * docs/manual/win32.xml:
7882         * win32/config.h:
7883         * win32/gst-register.vcproj:
7884         * win32/gstreamer.def:
7885           Update to another gettext public build
7886
7887 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7888         * gst/gstplugin.c:
7889           Fix an impossible C syntax
7890         * win32/config.h:
7891           Disable i18n under Windows for the moment
7892         * win32/gst-register.vcproj:
7893           Use this configuration
7894
7895 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7896         * docs/manual/quotes.xml:
7897           Keep the quotes file alive
7898         * docs/random/ds/0.9-suggested-changes:
7899           Add the suggestion of including a 'rowstride' as part of video
7900           format caps
7901
7902 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7903
7904         * gst/gstelement.c: (gst_element_set_state),
7905         (gst_element_change_state):
7906           d'oh.  Set PENDING state correctly before forcing bin to change.
7907         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7908         (gst_structure_parse_fixed_list):
7909         * gst/schedulers/gstoptimalscheduler.c:
7910         (gst_opt_scheduler_state_transition):
7911         * testsuite/states/parent.c: (main):
7912           remove comment now that it's fixed.
7913
7914 2004-07-11  Benjamin Otte  <otte@gnome.org>
7915
7916         * gst/gstclock.h:
7917           GST_SECOND shouldn't cause a conversion to unsigned.
7918         * testsuite/clock/.cvsignore:
7919         * testsuite/clock/Makefile.am:
7920         * testsuite/clock/signedness.c: (main):
7921           make sure it never will again
7922
7923 2004-07-11  Andy Wingo  <wingo@pobox.com>
7924
7925         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7926         whose state is higher than the bin state, raise the bin state to
7927         ensure that bin state := highest child state.
7928         
7929 2004-07-11  Andy Wingo  <wingo@pobox.com>
7930
7931         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7932         procedure on the children of a bin. Assumes that the procedure can
7933         change the set of children.
7934         (set_kid_state_func): New static function.
7935         (gst_bin_change_state): Use gst_bin_foreach to call
7936         set_kid_state_func. Fixes a bug: if a child had a state-change
7937         handler that removes it from the bin, there would be a segfault.
7938         Hopefully it should also work in the case where the state-change
7939         handler on one child adds or removes other children. In any case,
7940         fixes should go to gst_bin_foreach.
7941
7942 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7943
7944         * gst/gstelement.c: (gst_element_set_state):
7945           compatibility fix for latest plugins release.  Change loop back
7946           to while {}
7947
7948 2004-07-09  Wim Taymans  <wim@fluendo.com>
7949
7950         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7951         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7952         (gst_thread_main_loop):
7953         Since remove is virtual in GstBin we must not assume the 
7954         elements GList to have anothing useful.
7955         Add some more logging to GstThread and be a bit more paranoid
7956         when resetting the scheduler.
7957         Set the state of the bin to NULL before removing the children.
7958
7959 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7960
7961         * testsuite/threads/Makefile.am:
7962         * testsuite/threads/threadg.c:
7963           added test to check if problem when removing all elements from a
7964           GstThread before setting GstThread state to NULL
7965
7966 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7967
7968         * docs/gst/tmpl/gstelement.sgml:
7969         * docs/gst/tmpl/gsttypes.sgml:
7970         * gst/gstbin.c: (gst_bin_change_state):
7971         * gst/gstelement.c: (gst_element_set_state),
7972         (gst_element_change_state):
7973           rework so that for bins we try to set the state on all children
7974           as well even if the bin is in the correct state already.
7975           change while to do so at least one iteration is done.
7976           For regular elements, we fall back to the previous behaviour for
7977           now since we first need a new plugins release.
7978         * testsuite/states/parent.c: (main):
7979           test for this case
7980           Fixes #123774
7981
7982 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7983
7984         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7985         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7986         (gst_queue_release_locks), (gst_queue_change_state),
7987         (gst_queue_set_property):
7988           add proper lock debugging.  Change dispose to finalize, since
7989           we're freeing mutexes and other stuff which should happen only once.
7990
7991 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7992
7993         * docs/gst/tmpl/gstelement.sgml:
7994         * docs/gst/tmpl/gstplugin.sgml:
7995         * docs/gst/tmpl/gsttypes.sgml:
7996         * docs/pwg/building-state.xml:
7997         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7998         * gst/gstelement.c: (gst_element_change_state):
7999         * gst/gstthread.c: (gst_thread_change_state):
8000           catch wrong state changes in element base class.
8001
8002 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8003
8004         * gst/gstinfo.h:
8005           clean up layout a little.
8006
8007 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8008
8009         * configure.ac:
8010         * testsuite/Makefile.am:
8011         * testsuite/states/Makefile.am:
8012         * testsuite/states/parent.c: (main):
8013           re-enable states testsuite dir.  Add test for state changes and
8014           parent behaviour
8015
8016 2004-07-09  Wim Taymans  <wim@fluendo.com>
8017
8018         * gst/schedulers/gstoptimalscheduler.c:
8019         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
8020         (element_get_reachables_func), (element_get_reachables),
8021         (debug_element), (rechain_group), (group_migrate_connected),
8022         (gst_opt_scheduler_pad_unlink):
8023         Do not try to migrate decoupled elements to a new group since
8024         they are not added to groups.
8025
8026 2004-07-08  Benjamin Otte  <otte@gnome.org>
8027
8028         * gst/gstelement.c: (gst_element_error_func):
8029           make reentrant (= allow removing elements in error handler)
8030
8031 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8032
8033         * gst/gstpad.c: (gst_pad_event_default_dispatch),
8034         (gst_pad_send_event), (gst_pad_call_chain_function):
8035           events sent to elements below PAUSED cannot be handled, so
8036           don't try to
8037
8038 2004-07-08  Wim Taymans  <wim@fluendo.com>
8039
8040         * gst/schedulers/gstoptimalscheduler.c:
8041         (chain_recursively_migrate_group), (create_group),
8042         (schedule_group), (gst_opt_scheduler_pad_link),
8043         (group_elements_set_visited), (element_get_reachables_func),
8044         (element_get_reachables), (group_can_reach_group), (debug_element),
8045         (rechain_group), (group_migrate_connected),
8046         (gst_opt_scheduler_pad_unlink):
8047         * testsuite/schedulers/Makefile.am:
8048         Implemented group splitting and rechaining.
8049         Fixes 143777 and 143777-2 in the testsuite.
8050
8051 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8052
8053         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8054           extra debugging
8055         * gst/gstevent.h:
8056         * gst/gstinfo.c: (gst_debug_log_default):
8057           print time nicely.  add thread pointer until someone figures out
8058           a completely portable way of getting at thread id's.
8059         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
8060         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
8061         (gst_pad_call_chain_function):
8062           extra debugging
8063         * gst/schedulers/gstoptimalscheduler.c:
8064         (get_group_schedule_function), (loop_group_schedule_function),
8065         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8066         (pad_clear_queued), (gst_opt_scheduler_iterate):
8067           rename BUFPEN and friends to DATAPEN since that's what they are.
8068
8069 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8070
8071         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8072         * gst/gstbuffer.h:
8073         * gst/gstpad.c:
8074           cleanups and debugging
8075
8076 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8077
8078         * configure.ac:
8079         * gst/gstvalue.c: (gst_value_compare_enum),
8080         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8081         (gst_value_can_compare), (gst_value_compare):
8082         * testsuite/Makefile.am:
8083         * testsuite/enumcaps/Makefile.am:
8084         * testsuite/enumcaps/enumcaps.c:
8085           Fix enum serialization, deserialization, comparison in caps, add
8086           a test to ensure that this continues working in the future.
8087
8088 2004-07-06  David Schleef  <ds@schleef.org>
8089
8090         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8091         Fix memleak.
8092
8093 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8094
8095         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8096         * gst/gstplugin.h:
8097         * gst/registries/gstxmlregistry.c:
8098         (plugin_times_older_than_recurse), (plugin_times_older_than),
8099         (gst_xml_registry_parse_padtemplate):
8100           only rebuild registry when actual plugins have a newer time than
8101           the registry.  Fixes #145520
8102
8103 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8104
8105         * docs/manual/manual.xml:
8106         * docs/manual/win32.xml:
8107           add chapter on win32 building.  fixes #142422
8108
8109 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8110
8111         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8112
8113         * gst/autoplug/gstspider.c: (gst_spider_init),
8114         (gst_spider_dispose):
8115           fix spider memleaks.  fixes #137863
8116
8117 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8118
8119         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8120
8121         * gst/schedulers/gstoptimalscheduler.c:
8122         (gst_opt_scheduler_pad_unlink):
8123           fix SIGBUS error, fixes #145338
8124
8125 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8126
8127         * gst/gstobject.c: (gst_object_replace):
8128         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8129         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8130           clean up clock lifecycle.  Fixes #109831
8131
8132 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8133
8134         * po/LINGUAS:
8135         * po/cs.po:
8136           added Czech translation (Miloslav Trmac)
8137
8138 2004-07-04  David Schleef  <ds@schleef.org>
8139
8140         * tools/Makefile.am:
8141         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8142
8143 2004-07-04  David Schleef  <ds@schleef.org>
8144
8145         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8146
8147 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8148
8149         * gst/gstbin.c: (gst_bin_restore_thyself):
8150           chain to parent restore so the bins get restored correctly
8151           in the editor
8152
8153 2004-07-03  David Schleef  <ds@schleef.org>
8154
8155         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8156         Actually do something in these functions, like before the big
8157         caps change.  (bug #145137)
8158
8159 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8160
8161         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8162         (gst_element_get_compatible_pad_filtered):
8163         * gst/gstthread.c: (gst_thread_main_loop):
8164           more debugging
8165
8166 2004-07-02  David Schleef  <ds@schleef.org>
8167
8168         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8169         * gst/gstobject.h:
8170         * gst/gstparse.h:
8171         * gst/gsttrace.h:
8172         * gst/gstxml.h:
8173
8174 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8175
8176         * gst/gstpad.c: (gst_pad_check_schedulers),
8177         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8178         (gst_pad_link_prepare):
8179           revert until testsuite is fixed
8180
8181 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8182
8183         * testsuite/Makefile.am:
8184         * testsuite/caps/filtercaps.c: (main):
8185         * testsuite/clock/clock1.c: (main):
8186         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8187           fix some more tests
8188
8189 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8190
8191         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8192         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8193         * testsuite/cleanup/cleanup4.c: (main):
8194           fix testsuite
8195
8196 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8197
8198         * libs/gst/control/control.c:
8199         * libs/gst/control/dparam.c:
8200         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8201         * libs/gst/control/dparammanager.c:
8202         * libs/gst/control/dparammanager.h:
8203         * testsuite/dynparams/Makefile.am:
8204         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8205         (gst_dptest_change_state), (gst_dptest_chain), (main):
8206           fix testcase for dparams
8207           add debugging category
8208
8209 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8210
8211         * testsuite/Rules:
8212           change path
8213
8214 2004-07-02  Benjamin Otte  <otte@gnome.org>
8215
8216         * tests/.cvsignore:
8217         * tests/Makefile.am:
8218         * tests/mass_elements.c: (gst_get_current_time), (main):
8219           add simple benchmark to test various speeds of fakesrc ! identity !
8220           identity ! ... ! fakesink.
8221           Usage: mass_elements [num_identities] [num_buffers]
8222           If not specified they default to 1000.
8223
8224 2004-07-02  Benjamin Otte  <otte@gnome.org>
8225
8226         * gst/gstpad.c: (gst_pad_check_schedulers),
8227         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8228         (gst_pad_link_prepare):
8229           check that pads that get linked belong to the same manager. The old
8230           code allowed linking elements before putting them into bins, so it
8231           worked to link them and then put them in different threads, which
8232           lead to weird behaviour.
8233           Since this effectively disallows linking elements before putting
8234           them in a bin, some applications might not work after this and error
8235           out. If these applications are too critical, we might need to revert
8236           that patch. Please test this before the next release...
8237
8238 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8239
8240         * gst/gstpad.c: (gst_pad_get_caps):
8241           throw an error if the getcaps function does not return a subset of
8242           the template caps.
8243         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8244           make disconts without position info an error in debugging
8245         * tests/spidey_bench.c: (handoff), (main):
8246           don't count first try when averaging
8247
8248 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8249
8250         * gst/gstplugin.c: (gst_plugin_load_file):
8251           figure out problem with dynamic test
8252
8253 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8254
8255         * docs/gst/Makefile.am:
8256           fix docs build
8257
8258 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8259
8260         * po/POTFILES.in:
8261         * po/af.po:
8262         * po/az.po:
8263         * po/en_GB.po:
8264         * po/fr.po:
8265         * po/nl.po:
8266         * po/sr.po:
8267         * po/sv.po:
8268         * po/tr.po:
8269         * po/uk.po:
8270         * tools/gst-register.c: (plugin_added_func), (main):
8271           i18n-ize -register, fix plural
8272
8273 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8274
8275         * gst/elements/gstidentity.c: (gst_identity_class_init),
8276         (gst_identity_init), (gst_identity_chain),
8277         (gst_identity_set_property), (gst_identity_get_property):
8278         * gst/elements/gstidentity.h:
8279           check for perfect stream
8280
8281 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8282
8283         * gst/elements/gstidentity.c: (gst_identity_chain):
8284           print offset_end
8285
8286 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8287
8288         * docs/gst/Makefile.am:
8289         * docs/gst/gstreamer-docs.sgml:
8290           doc fixes
8291
8292 2004-06-24  David Schleef  <ds@schleef.org>
8293
8294         * autogen.sh:  Remove call to env, since the buildbot isn't
8295         broken anymore.
8296
8297 2004-06-24  Wim Taymans  <wim@fluendo.com>
8298
8299         * gst/elements/Makefile.am:
8300         * gst/elements/gstelements.c:
8301         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8302         (gst_multifdsink_class_init), (gst_multifdsink_init),
8303         (gst_multifdsink_add), (gst_multifdsink_remove),
8304         (gst_multifdsink_clear), (gst_multifdsink_chain),
8305         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8306         * gst/elements/gstmultifdsink.h:
8307         Added an element that writes to multiple filedescriptors at once.
8308
8309 2004-06-24  Benjamin Otte  <otte@gnome.org>
8310
8311         * gst/parse/grammar.y:
8312           don't try to link elements before they have been added to bins
8313
8314 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8315
8316         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8317         (gst_file_pad_get_length):
8318         * libs/gst/bytestream/filepad.h:
8319           add 2 new functions
8320
8321 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8322
8323         * docs/gst/gstreamer-sections.txt:
8324         remove from docs, the define that Benjamin removed from gstelement.h
8325
8326 2004-06-22  Benjamin Otte  <otte@gnome.org>
8327
8328         * gst/gstelement.h:
8329           remove define that referenced a nonexisting GstElement struct member
8330
8331 2004-06-20  Benjamin Otte  <otte@gnome.org>
8332
8333         * gst/gstdata.c: (gst_data_is_writable):
8334           whoops, return values were wrong, so writable data was marked as
8335           non-writable and vice versa. (fixes #143953, spotted by Francis
8336           Labonte)
8337           Shows how rarely we need to copy data ;)
8338
8339 2004-06-20  Benjamin Otte  <otte@gnome.org>
8340
8341         * testsuite/schedulers/.cvsignore:
8342         * testsuite/schedulers/Makefile.am:
8343         * testsuite/schedulers/143777-2.c: (main):
8344           add test for opt breakage in bug #143777
8345
8346 2004-06-20  Benjamin Otte  <otte@gnome.org>
8347
8348         * gst/gstpad.c: (gst_pad_call_chain_function):
8349           check for if we were unlinked while inside the chainfunction (fixes
8350           entrygthread having issues with #143777)
8351         * testsuite/schedulers/143777.c: (main):
8352         * testsuite/schedulers/Makefile.am:
8353           add a test for that fix
8354
8355 2004-06-20  Benjamin Otte  <otte@gnome.org>
8356
8357         * gst/gstvalue.c: (gst_value_set_int_range):
8358           test that start is smaller then end
8359         * libs/gst/bytestream/Makefile.am:
8360         * libs/gst/bytestream/filepad.c: 
8361         * libs/gst/bytestream/filepad.h:
8362           add GstFilePad - a pad that behaves like a FILE*
8363         * testsuite/bytestream/.cvsignore:
8364         * testsuite/bytestream/Makefile.am:
8365         * testsuite/bytestream/filepadsink.c: 
8366           test for the GstFilePad
8367
8368 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8369
8370         * gst/elements/gstidentity.c: (gst_identity_class_init),
8371         (gst_identity_init), (gst_identity_set_clock),
8372         (gst_identity_chain), (gst_identity_set_property),
8373         (gst_identity_get_property):
8374         * gst/elements/gstidentity.h:
8375         * gst/gstclock.c: (gst_clock_id_wait):
8376           add a "sync" property to sync to the clock
8377
8378 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8379
8380         * gst/gstelementfactory.c: (gst_element_factory_create):
8381           make the freakin "elementfactory bla has no type" message more
8382           useful. So we actually can do something when someone shows up
8383           complaining about it.
8384
8385 2004-06-15  Johan Dahlin  <johan@gnome.org>
8386
8387         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8388         found. This matches the old behavior better. Thanks to Thomas for
8389         pointing out.
8390
8391 2004-06-14  David Schleef  <ds@schleef.org>
8392
8393         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8394         -fomit-frame-pointer.  Appears to generate correct code in
8395         other cases as well.
8396
8397 2004-06-14  Johan Dahlin  <johan@gnome.org>
8398
8399         * tools/gst-inspect.c (main): Add two new command line options: -a
8400         to print all elements and -n to print the name on each line. Also
8401         fix some error reporting.
8402         (main): Simplify, remove -n and always print names if -a is specified
8403
8404 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8405
8406         * win32/gstconfig.h:
8407         * win32/GSTreamer.vcproj:
8408         * win32/Makefile:
8409         * gst/gstconfig.h.in:
8410         * gst/gst.h:
8411         * gst/gstbin.h:
8412         * gst/gstelement.h:
8413         * gst/gstevent.h:
8414         * gst/gstobject.h:
8415         * gst/gstpad.h:
8416         * docs/gst/gstreamer-sections.txt:
8417         * docs/gst/tmpl/gstconfig.sgml:
8418           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8419
8420 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8421         * docs/gst/gstreamer-sections.txt:
8422         * docs/gst/tmpl/gstconfig.sgml:
8423         Add the GSTREAMER_EXPORT macro to the docs
8424
8425 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8426
8427         * tools/gst-compprep.c: (handle_xmlerror), (main):
8428         Add a check for the version that introduced SetStructuredError to fix
8429         the build on FC1
8430
8431 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8432
8433         * win32/msvc71.sln:
8434         * win32/testsuite/:
8435           prepare to compile the testsuite with MSVC
8436
8437 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8438
8439         * docs/manual/win32.xml:
8440           attempt to transform the Win32 README into an XML doc
8441
8442 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8443
8444         * gst/gst.c:
8445         * gst/gstbin.*:
8446         * gst/config.h.in:
8447         * gst/gstelement.*:
8448         * gst/gstevent.h:
8449         * gst/gstobject.*:
8450         * gst/gstpad.h:
8451         * tools/gst-register.c:
8452         * win32/gstreamer.def:
8453           extern symbols are now exported for the Windows DLL
8454
8455 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8456
8457         * gst/gstinfo.h:
8458           fix a problem to enable/disable DEBUG under MSVC
8459
8460 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8461
8462         * win32/:
8463           enable more debug code in DEBUG build
8464
8465 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8466
8467         * win32/config.h:
8468         * gst/gst-i18n-app.h:
8469           enable NLS under Windows
8470
8471 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8472         * tools/gst-compprep.c: (handle_xmlerror), (main):
8473           Make an error that baffled me a bit clearer
8474
8475 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8476
8477         * gst/gstqueue.c:
8478           don't use g_queue_get_length () because it's 2.4, use ->length
8479
8480 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8481
8482         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8483
8484         * tools/gst-inspect.c: (print_signal_info):
8485           don't free random data twice. (fixes #144185)
8486
8487 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8488
8489         * gst/gstqueue.c:
8490         * gst/gstqueue.h:
8491           fix removing from the wrong queue on event timeout
8492           fix disposing of the event queue by casting correctly
8493           add mutexes for handling the event queue
8494           someone was sleeping when fixing queue last time around :)
8495
8496 2004-06-10  Johan Dahlin  <johan@gnome.org>
8497
8498         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8499         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8500
8501 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8502
8503         * docs/random/gdp:
8504         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8505         * libs/gst/dataprotocol/dataprotocol.c:
8506         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8507         (gst_dp_buffer_from_header):
8508         * libs/gst/dataprotocol/dataprotocol.h:
8509         * libs/gst/dataprotocol/dp-private.h:
8510           rev version to 0.1, add buffer flags and copy them
8511
8512 2004-06-09  Johan Dahlin  <johan@gnome.org>
8513
8514         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8515         the flags from the buffer we're copying.
8516
8517 2004-06-09  Wim Taymans  <wim@fluendo.com>
8518
8519         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8520         * gst/elements/gstidentity.c: (gst_identity_init),
8521         (gst_identity_chain):
8522         Print more buffer info in fakesink.
8523         Make identity output similar to fakesink.
8524
8525 2004-06-07  Daniel Gazard  <dany42@free.fr>
8526
8527         reviewed by Benjamin Otte  <otte@gnome.org>
8528
8529         * configure.ac:
8530           fix cross compiling not working. (fixes #143741)
8531
8532 2004-06-07  Benjamin Otte  <otte@gnome.org>
8533
8534         * gst/gstelement.c: (gst_element_set_time_delay):
8535           add failure check
8536         * gst/gstinfo.h:
8537           put brackets around macro arguments of GST_TIME_ARGS, add note to
8538           move it to correct header in 0.9
8539
8540 2004-06-07  Benjamin Otte  <otte@gnome.org>
8541
8542         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8543         (gst_file_index_load), (_file_index_id_save_entries),
8544         (gst_file_index_commit), (gst_file_index_add_association),
8545         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8546         (gst_file_index_plugin_init):
8547           make debugging use a default category
8548
8549 2004-06-06  David Moore  <dcm@acm.org>
8550
8551         reviewed by Benjamin Otte  <otte@gnome.org>
8552
8553         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8554         (gst_fdsrc_change_state):
8555           reset offset counter when going READY => PAUSED. (fixes #142903)
8556
8557 2004-06-06  ed@catmur.co.uk
8558
8559         reviewed by Benjamin Otte  <otte@gnome.org>
8560
8561         * gst/registries/gstxmlregistry.c:
8562         (gst_xml_registry_rebuild_recurse):
8563           don't rely on g_dir_open to figure out if a file is a directory, use
8564           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8565           directories. (fixes #142850)
8566
8567 2004-06-06  Benjamin Otte  <otte@gnome.org>
8568
8569         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8570           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8571         * libs/gst/bytestream/adapter.c:
8572         * libs/gst/bytestream/adapter.h:
8573           fix copyright in header and typo in debugging category name
8574
8575 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8576
8577         * configure.ac:
8578           bump nano to cvs
8579
8580 === release 0.8.3 ===
8581
8582 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8583
8584         * configure.ac:
8585           update libtool versioning
8586           do a new release
8587         * docs/gst/tmpl/gstelement.sgml:
8588         * docs/gst/tmpl/gsttypes.sgml:
8589         * gst/gstinfo.c: (_gst_debug_init):
8590           put back GST_CAT_DATAFLOW to fix API breakage
8591
8592 2004-06-04  David Schleef  <ds@schleef.org>
8593
8594         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8595
8596 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8597
8598         * configure.ac:
8599           bump nano to cvs
8600
8601 === release 0.8.2 ===
8602
8603 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8604
8605         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8606           check GST_DEBUG environment variable which is parsed the same way
8607           as --gst-debug=
8608
8609 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8610
8611         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8612                             gstmd5sink.c gstshaper.c gsttee.c
8613                             gsttypefindelement.c
8614         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8615
8616           - removing trailing commas at end of enums
8617             it is correct C99 code but C90 compilers would complain
8618             (AIX, Forte, ...)
8619             ('should' fix #143290, at least partially)
8620
8621 2004-05-27  Wim Taymans  <wim@fluendo.com>
8622
8623         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8624         (chain_group_set_enabled), (create_group), (add_to_group),
8625         (merge_groups), (setup_group_scheduler), (group_elements),
8626         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8627         Don't try to follow the pad connections with other groups
8628         when a loop based element is added to the scheduler because
8629         the bin will inform the scheduler about the pad links a little
8630         later.
8631
8632 2004-05-27  Wim Taymans  <wim@fluendo.com>
8633
8634         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8635         (remove_from_chain), (chain_group_set_enabled),
8636         (setup_group_scheduler), (group_element_set_enabled),
8637         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8638         (gst_opt_scheduler_show):
8639         Elements without a group can do a state change as well, just wait
8640         with the setup of the scheduling function when it is added to a
8641         chain.
8642
8643 2004-05-27  Wim Taymans  <wim@fluendo.com>
8644
8645         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8646         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8647         (merge_groups), (setup_group_scheduler),
8648         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8649         (gst_opt_scheduler_show):
8650         Fixes to maintain internal consistency of the scheduler data
8651         structures. 
8652          - adding an enabled group to a chain should increment the
8653            number of enabled elements in that chain.
8654          - removing an enabled group from a chain could disable the
8655            chain.
8656          - removing a disabled group from a chain could enable the
8657            chain.
8658          - add g_assert when internal inconsistency is detected.
8659          - adding an element to a group could increase the number of
8660            links this group has with other groups.
8661          - merging two groups also merges the chains.
8662          - also show group links in the _show method.
8663            
8664
8665 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8666
8667         * gst/gstcaps.c: (gst_caps_structure_simplify):
8668           don't print error messages when there is no error
8669         * gst/gstvalue.c: (gst_value_compare_int_range):
8670           compare the second value, too
8671         * testsuite/caps/Makefile.am:
8672         * testsuite/caps/random.c: (assert_on_error), (main):
8673           add tests to make sure the two things above are checked for
8674
8675 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8676
8677         * configure.ac:
8678         * libs/gst/dataprotocol/Makefile.am:
8679         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8680         * libs/gst/dataprotocol/dataprotocol.h:
8681           wrap header in GST_ENABLE_NEW.  make code use it
8682
8683 2004-05-23  Johan Dahlin  <johan@gnome.org>
8684
8685         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8686         so verbose and print GstElement signal names all the time.
8687
8688 2004-05-22  David Schleef  <ds@schleef.org>
8689
8690         * gst/registries/gstxmlregistry.c:
8691         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8692         (bug #142957)
8693
8694 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8695
8696         * configure.ac:
8697           scrub cflags for glib2 so gcc doesn't complain when glib is in
8698           /usr/local
8699
8700 2004-05-21  Johan Dahlin  <johan@gnome.org>
8701
8702         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8703         __GNUC__, patch from Brian Cameron, fixes bug #142804
8704
8705 2004-05-20  David Schleef  <ds@schleef.org>
8706
8707         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8708         comparison code.  (bug #142819)
8709
8710 2004-05-20  Wim Taymans  <wim@fluendo.com>
8711
8712         * gst/gstbuffer.c: (gst_buffer_default_copy):
8713         * gst/gstbuffer.h:
8714         Added Comment to a flag.
8715         copy relevant flags in _buffer_copy.
8716
8717 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8718
8719         reviewed by: Wim Taymans <wim at fluendo dot com>
8720
8721         * gst/gstbuffer.h:
8722           add GST_BUFFER_IN_CAPS buffer flag
8723         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8724         (gst_structure_parse_any_list), (gst_structure_parse_list),
8725         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8726         * gst/gstvalue.c: (gst_value_serialize_any_list),
8727         (gst_value_transform_any_list_string),
8728         (gst_value_list_prepend_value), (gst_value_list_append_value),
8729         (gst_value_list_get_size), (gst_value_list_get_value),
8730         (gst_value_transform_list_string),
8731         (gst_value_transform_fixed_list_string),
8732         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8733         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8734         (_gst_value_initialize):
8735         * gst/gstvalue.h:
8736           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8737           < , > as a format.
8738         * testsuite/caps/string-conversions.c: (main):
8739           add regression tests for < >
8740
8741 2004-05-20  Johan Dahlin  <johan@gnome.org>
8742
8743         * docs/gst/Makefile.am (all-local): Re-add
8744
8745 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8746
8747         * docs/gst/Makefile.am:
8748         * docs/gst/gstreamer-docs.sgml:
8749         * docs/libs/Makefile.am:
8750         * docs/libs/gstreamer-libs-docs.sgml:
8751           fix distcheck issues
8752
8753 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8754
8755         * libs/gst/dataprotocol/Makefile.am:
8756           add to autotest
8757
8758 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8759
8760         * libs/gst/dataprotocol/Makefile.am:
8761         * libs/gst/dataprotocol/dataprotocol.c:
8762         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8763         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8764         * libs/gst/dataprotocol/dp-private.h:
8765           use GST macros to read/write fixed length ints
8766           add some more asserts
8767
8768 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8769
8770         * docs/libs/gstreamer-libs-docs.sgml:
8771         * docs/libs/gstreamer-libs-sections.txt:
8772           remove idct and putbits
8773         * configure.ac:
8774         * docs/libs/tmpl/gstdataprotocol.sgml:
8775         * libs/gst/Makefile.am:
8776         * libs/gst/dataprotocol/Makefile.am:
8777         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8778         (buffer_test), (caps_test), (event_test), (main):
8779         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8780         (gst_dp_dump_byte_array), (gst_dp_init),
8781         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8782         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8783         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8784         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8785         (gst_dp_validate_header), (gst_dp_validate_payload),
8786         (gst_dp_validate_packet), (plugin_init):
8787         * libs/gst/dataprotocol/dataprotocol.h:
8788         * libs/gst/dataprotocol/dp-private.h:
8789           add dataprotocol
8790
8791 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8792
8793         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8794           fix int variable deserialization and add a helper so we can actually
8795           debug this.
8796
8797 2004-05-18  David Schleef  <ds@schleef.org>
8798
8799         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8800           argv[0].  Calling yourself is probably not the best way to
8801           construct a test like this, btw.
8802
8803 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8804
8805         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8806           don't claim to be more intelligent than a scheduler when the
8807           scheduler claims the pipeline is stopped
8808         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8809         (safe_cothread_destroy),
8810         (gst_entry_scheduler_remove_all_cothreads),
8811         (gst_entry_scheduler_reset), (_remove_cothread),
8812         (gst_entry_scheduler_state_transition):
8813           hold off cothread destruction if we're not in main cothread
8814         * configure.ac:
8815         * testsuite/Makefile.am:
8816           add new test dir
8817         * testsuite/schedulers/.cvsignore:
8818         * testsuite/schedulers/Makefile.am:
8819           add tests
8820         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8821           check relinking and adding/removing elements from a running pipeline
8822         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8823           check unlinking in a running pipeline
8824         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8825           check unreffing a running pipeline
8826         * testsuite/schedulers/useless_iteration.c: (main):
8827           check iterating a pipeline that contains running threads works
8828
8829 2004-05-18  David Schleef  <ds@schleef.org>
8830
8831         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8832           is false.
8833
8834 2004-05-18  Wim Taymans  <wim@fluendo.com>
8835
8836         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8837         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8838         Fixed an error introduced with patch for 1.63. When setting
8839         a get based element as the entry point in a group, make sure
8840         to mark the group as GET based.
8841
8842 2004-05-18  Wim Taymans  <wim@fluendo.com>
8843
8844         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8845         (setup_group_scheduler), (loop_group_schedule_function),
8846         (gst_opt_scheduler_pad_link):
8847         Added some more debug info and fixed a bug where the group
8848         type was set to LOOP but it was in fact unknown.
8849
8850 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8851
8852         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8853           make resetting scheduler work twice in a row
8854
8855 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8856
8857         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8858         (CREATE_USERIALIZATION), (_gst_value_initialize),
8859         (gst_value_compare_float), (gst_value_serialize_float),
8860         (gst_value_deserialize_float), (gst_value_compare_enum),
8861         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8862           add serialization and comparison functions for long, int64, enum and
8863           float values
8864         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8865           use best serialization function in type hierarchy instead of only a
8866           matching one. This is required for enums to work.
8867         * gst/parse/grammar.y:
8868           use gst_caps_deserialize
8869         * testsuite/parse/Makefile.am:
8870           parse1 now works
8871         * testsuite/parse/parse1.c: (main):
8872           remove aggregator check, aggregator is broken, this test works now
8873           but fails because of bug #138012
8874         * testsuite/parse/parse2.c: (main):
8875           s/xvideosink/xvimagesink - this test looks a lot like we should
8876           disable it
8877
8878 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8879
8880         * gst/gstelement.c: (gst_element_class_init):
8881           whoops, store the signal id correctly
8882         * gst/schedulers/gstbasicscheduler.c:
8883         (gst_basic_scheduler_chain_wrapper):
8884           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8885           chain function isn't linked
8886
8887 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8888         * configure.ac:
8889         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8890         support until we decide where the flags should be used
8891         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8892         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8893         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8894         Output refused caps in the debug info
8895
8896 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8897
8898         * gst/elements/gstidentity.c: (gst_identity_chain):
8899           add duration debug
8900         * gst/gstinfo.c: (gst_debug_log_default):
8901           add timestamp
8902
8903 2004-05-13  Benjamin Otte  <otte@gnome.org>
8904
8905         * gst/gstpipeline.c: (gst_pipeline_dispose),
8906         (gst_pipeline_change_state):
8907           call gst_scheduler_reset on dispose (fixes #141416)
8908
8909 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8910
8911         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8912           compute mapsize correctly
8913         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8914           use correct datatypes when calling a varargs function
8915         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8916           push a DISCONT event as first thing
8917         * gst/gst_private.h:
8918         * gst/gstinfo.c: (_gst_debug_init):
8919           remove GST_DATAFLOW debugging category
8920         * gst/gstbin.c: (gst_bin_iterate):
8921           use GST_SCHEDULING category
8922         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8923         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8924         (gst_pad_call_get_function):
8925           add GST_DATAFLOW to easily track flow of buffers or events.
8926         * gst/gstqueue.c: (gst_queue_get_type),
8927         (gst_queue_handle_pending_events), (gst_queue_chain),
8928         (gst_queue_get), (gst_queue_handle_src_event):
8929           use own static debugging category GST_DATAFLOW for dataflow,
8930           use DEBUG category for showing which path events go, use LOG
8931           category for buffers.
8932
8933 2004-05-10  David Schleef  <ds@schleef.org>
8934
8935         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8936
8937 2004-05-10  David Schleef  <ds@schleef.org>
8938
8939         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8940         symbols, because otherwise we don't know what they are.  Thanks,
8941         the GStreamer team.
8942         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8943
8944 2004-05-10  David Schleef  <ds@schleef.org>
8945
8946         (from Steve Lhomme)
8947         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8948         are deleted.  Fix.
8949         * win32/Makefile.inspect:
8950         * win32/Makefile.launch:
8951         * win32/Makefile.register:
8952
8953 2004-05-10  David Schleef  <ds@schleef.org>
8954
8955         * gst/gstinfo.h: Add missing inline function.
8956         * gst/gsttrace.c: add include
8957         * gst/parse/grammar.y: remove unused code
8958         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8959         more portable.
8960         * tools/gst-register.c: wrap unistd.h
8961         
8962         More additions/fixes from Steve for the MSVC build.
8963         * win32/GStreamer.vcproj:
8964         * win32/Makefile:
8965         * win32/Makefile.inspect:
8966         * win32/Makefile.launch:
8967         * win32/Makefile.register:
8968         * win32/README.txt:
8969         * win32/gst-inspect.vcproj:
8970         * win32/gst-launch.vcproj:
8971         * win32/gst-register.vcproj:
8972         * win32/gstbytestream.def:
8973         * win32/gstbytestream.vcproj:
8974         * win32/gstconfig.h:
8975         * win32/gstelements.def:
8976         * win32/gstelements.vcproj:
8977         * win32/gstenumtypes.c:
8978         * win32/gstenumtypes.h:
8979         * win32/gstoptimalscheduler.def:
8980         * win32/gstoptimalscheduler.vcproj:
8981         * win32/gstreamer.def:
8982         * win32/gstspider.def:
8983         * win32/gstspider.vcproj:
8984         * win32/gstversion.h:
8985         * win32/msvc71.sln:
8986
8987 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8988
8989         * gst/gstelement.c: (gst_element_class_init),
8990         (gst_element_no_more_pads):
8991         * gst/gstelement.h:
8992           add gst_element_no_more_pads and the "no-more-pads" signal
8993
8994 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8995
8996         * gst/gstregistry.c: (gst_registry_add_plugin):
8997           refuse to add plugins when a plugin with same name is already
8998           registered. Fixes a bunch of "How to remove plugins?" issues.
8999           May lead to other problems though, let's test
9000
9001 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9002
9003         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
9004         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
9005         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
9006
9007 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9008
9009         * tests/Makefile.am: fix am16 issue
9010
9011 2004-05-09  Benjamin Otte  <otte@gnome.org>
9012
9013         * libs/gst/bytestream/Makefile.am:
9014           we should indeed add .c files to makefiles or they won't be built
9015           (d'oh)
9016
9017 2004-05-08  Benjamin Otte  <otte@gnome.org>
9018
9019         * gst/gstpad.c: (gst_pad_proxy_fixate):
9020           really reduce the set of caps
9021
9022 2004-05-08  Benjamin Otte  <otte@gnome.org>
9023
9024         * tests/Makefile.am:
9025         * tests/spidey_bench.c: (handoff), (main):
9026           add benchmark to test how long spider needs to create a pipeline
9027
9028 2004-05-08  Benjamin Otte  <otte@gnome.org>
9029
9030         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
9031           mark links as unengaged when unnegotiating instead of deactivating.
9032           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
9033
9034 2004-05-08  Benjamin Otte  <otte@gnome.org>
9035
9036         * docs/manual/helloworld.xml:
9037           s/audiosink/osssink (patch by Patrick Guimond)
9038
9039 2004-05-07  David Schleef  <ds@schleef.org>
9040
9041         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
9042         since it contains important stuff.
9043
9044 2004-05-07  David Schleef  <ds@schleef.org>
9045
9046         * testsuite/caps/caps.c: (test3), (main): A check for appending
9047         ANY caps.
9048
9049 2004-05-07  David Schleef  <ds@schleef.org>
9050
9051         * common/m4/as-compiler-flag.m4: Properly quote arguments,
9052         which may contain commas.  Fixes detection of -Wa,-mregnames
9053
9054 2004-05-06  David Schleef  <ds@schleef.org>
9055
9056         Changes to handle compilers that don't have variadic macro
9057         support.  In particular, glib headers define some inlines
9058         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
9059         builds.
9060         * gst/Makefile.am:
9061         * gst/cothreads.c:
9062         * gst/elements/gstfdsink.c:
9063         * gst/elements/gstfdsrc.c:
9064         * gst/elements/gstfilesink.c:
9065         * gst/elements/gstfilesrc.c:
9066         * gst/gst_private.h:
9067         * gst/gstatomic.c:
9068         * gst/gstcaps.c: (gst_caps_append):
9069         * gst/gstcpu.c: (gst_cpuid_i386):
9070         * gst/gstelement.c:
9071         * gst/gsterror.c:
9072         * gst/gstfilter.c:
9073         * gst/gstinfo.h:
9074         * gst/gstprobe.c:
9075         * gst/gstquery.c:
9076         * gst/gstregistry.c:
9077         * gst/gststructure.c:
9078         * gst/gsttaginterface.c:
9079         * gst/gsttrace.c: (gst_trace_new):
9080         * gst/gsttrashstack.c:
9081         * gst/gsturi.c:
9082         * gst/gstvalue.c:
9083         * gst/parse/grammar.y:
9084         * gst/parse/parse.l:
9085         * tools/gst-inspect.c: (main):
9086         * tools/gst-launch.c: (main):
9087         * tools/gst-xmlinspect.c: (PUT_STRING):
9088
9089 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9090
9091         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9092         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9093         * gst/elements/gstfilesrc.h:
9094           send NEW_MEDIA events correctly
9095         * gst/elements/gsttypefindelement.c: (start_typefinding),
9096         (gst_type_find_element_handle_event):
9097           restart typefinding when we get a NEW_MEDIA event
9098         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9099         (gst_bin_dispose):
9100           don't die when someone removes elements in callbacks
9101         * gst/gstelement.c: (gst_element_change_state):
9102           improve debugging
9103         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9104           we need a NEW_MEDIA event to engage a link
9105         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9106           don't g_print debugging stuff
9107         * testsuite/caps/simplify.c: (check_caps):
9108
9109 2004-05-04  Benjamin Otte  <otte@gnome.org>
9110
9111         * gst/parse/grammar.y:
9112           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9113
9114 2004-05-04  Benjamin Otte  <otte@gnome.org>
9115
9116         * testsuite/caps/renegotiate.c: (main):
9117           improve output in error case
9118
9119 2004-05-04  Benjamin Otte  <otte@gnome.org>
9120
9121         * gst/parse/grammar.y:
9122           fix assert to not trigger when there's no error argument
9123         * gst/parse/parse.l:
9124           fix definition of caps to allow more than two structures
9125         * testsuite/caps/Makefile.am:
9126         * testsuite/caps/renegotiate.c: (main):
9127           it's sinesrc and works in that case
9128
9129 2004-05-04  Wim Taymans  <wim@fluendo.com>
9130
9131         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9132         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9133         when removing an element from a group, we always need to
9134         decrement the link count that this group had with other 
9135         groups through the element.
9136         added an extra assert to catch inconsistencies when decrementing
9137         the link count.
9138
9139 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9140
9141         * configure.ac:
9142         * docs/gst/Makefile.am:
9143         * docs/gst/gstreamer-sections.txt:
9144         * docs/gst/tmpl/gstcompat.sgml:
9145         * examples/appreader/Makefile.am:
9146         * examples/cutter/Makefile.am:
9147         * examples/events/Makefile.am:
9148         * examples/helloworld/Makefile.am:
9149         * examples/helloworld2/Makefile.am:
9150         * examples/launch/Makefile.am:
9151         * examples/manual/Makefile.am:
9152         * examples/mixer/Makefile.am:
9153         * examples/pingpong/Makefile.am:
9154         * examples/plugins/Makefile.am:
9155         * examples/queue/Makefile.am:
9156         * examples/queue2/Makefile.am:
9157         * examples/queue3/Makefile.am:
9158         * examples/queue4/Makefile.am:
9159         * examples/retag/Makefile.am:
9160         * examples/thread/Makefile.am:
9161         * examples/typefind/Makefile.am:
9162         * examples/xml/Makefile.am:
9163         * gst/Makefile.am:
9164         * gst/autoplug/Makefile.am:
9165         * gst/elements/Makefile.am:
9166         * gst/gstcompat.h:
9167         * gst/indexers/Makefile.am:
9168         * gst/parse/Makefile.am:
9169         * gst/registries/Makefile.am:
9170         * gst/schedulers/Makefile.am:
9171         * libs/gst/bytestream/Makefile.am:
9172         * libs/gst/control/Makefile.am:
9173         * libs/gst/getbits/Makefile.am:
9174         * po/af.po:
9175         * po/az.po:
9176         * po/en_GB.po:
9177         * po/fr.po:
9178         * po/nl.po:
9179         * po/sr.po:
9180         * po/sv.po:
9181         * po/tr.po:
9182         * po/uk.po:
9183         * tests/Makefile.am:
9184         * tests/bufspeed/Makefile.am:
9185         * tests/instantiate/Makefile.am:
9186         * tests/memchunk/Makefile.am:
9187         * tests/muxing/Makefile.am:
9188         * tests/negotiation/Makefile.am:
9189         * tests/probes/Makefile.am:
9190         * tests/sched/Makefile.am:
9191         * tests/seeking/Makefile.am:
9192         * tests/threadstate/Makefile.am:
9193         * testsuite/caps/Makefile.am:
9194         * testsuite/cleanup/Makefile.am:
9195         * testsuite/dlopen/Makefile.am:
9196         * testsuite/dynparams/Makefile.am:
9197         * testsuite/plugin/Makefile.am:
9198         * testsuite/states/Makefile.am:
9199         * tools/Makefile.am:
9200           reorganize compile/link flags to be consistent
9201           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9202
9203 2004-05-04  David Schleef  <ds@schleef.org>
9204
9205         The "once more, with feeling" check-in.
9206         * testsuite/caps/Makefile.am: dist caps_strings
9207         * testsuite/caps/renegotiate.c: (main): This test triggers a
9208           segfault in the core.  Marking as failing.
9209
9210 2004-05-03  David Schleef  <ds@schleef.org>
9211
9212         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9213           by the build bots.
9214         * testsuite/caps/renegotiate.c: (main): Same.
9215
9216 2004-05-03  David Schleef  <ds@schleef.org>
9217
9218         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9219
9220 2004-05-03  David Schleef  <ds@schleef.org>
9221
9222         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9223           variable to find our source file.
9224
9225 2004-05-03  David Schleef  <ds@schleef.org>
9226
9227         * configure.ac:  Link plugins with libgstreamer and dependent
9228           libraries
9229         * testsuite/caps/Makefile.am:
9230         * testsuite/caps/caps_strings:
9231         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9232           through a file of caps strings and test each one
9233
9234 2004-05-04  Benjamin Otte  <otte@gnome.org>
9235
9236         * libs/gst/bytestream/Makefile.am:
9237         * libs/gst/bytestream/adapter.c: 
9238         * libs/gst/bytestream/adapter.h:
9239           add GstAdapter, similar to bytestream, but doesn't require ugly event
9240           handling or uglier loopbased elements
9241
9242 2004-05-03  David Schleef  <ds@schleef.org>
9243
9244         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9245         * testsuite/caps/erathostenes.c:
9246         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9247
9248 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9249
9250         * docs/pwg/pwg.xml:
9251           remove hardcoded stylesheet path (duh)
9252         * docs/random/release:
9253         * docs/gst/gstreamer-sections.txt:
9254         * gst/Makefile.am:
9255         * gst/gst.h:
9256         * gst/gst_private.h:
9257         * gst/gstcaps.c:
9258         * gst/gstevent.c:
9259         * gst/gstformat.c:
9260         * gst/gstinfo.c:
9261         * gst/gstinfo.h:
9262         * gst/gstinterface.c:
9263         * gst/gstmemchunk.c:
9264         * gst/gstprobe.c:
9265         * gst/gstquery.c:
9266         * gst/gstregistry.c:
9267         * gst/gstregistrypool.c:
9268         * gst/gststructure.c:
9269         * gst/gsttaginterface.c:
9270         * gst/gstthread.c:
9271         * gst/gsttrace.c:
9272         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9273         * gst/gsturi.c:
9274         * gst/gstvalue.c:
9275           deprecate gst_info; remove gstlog.h
9276    
9277
9278 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9279
9280         * Makefile.am:
9281         * po/en_GB.po:
9282         * po/sv.po:
9283         * po/uk.po:
9284           updated translations
9285
9286 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9287
9288         * gst/gstbin.c: (gst_bin_dispose):
9289           better debugging
9290
9291 2004-05-03  Johan Dahlin  <johan@gnome.org>
9292
9293         * gst/schedulers/gstoptimalscheduler.c
9294         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9295         really is a GstElement. Avoids critical when running gst-launch -v
9296         and a oggdemux/decoding pipeline.
9297
9298 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9299
9300         * docs/gst/tmpl/gstpipeline.sgml :
9301         * docs/manual/elements-api.xml :
9302                 doc fix by Patrick Guimond (Protector) from devel ML
9303                 reviewed by ronald
9304
9305 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9306
9307         * docs/gst/Makefile.am :
9308         * docs/libs/Makefile.am :
9309                 apply a patch from Arwed v. Merkatz so that gtk-doc
9310                 generated docs install (same for .devhelp file)
9311                 (fixes part 1 of #138836)
9312
9313 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9314
9315         * docs/faq/dependencies.xml: typo
9316         * docs/faq/getting.xml :
9317             - fix download URL for new gstreamer site
9318             - hide sf.net download page as latest version aren't there
9319             - fix apt URLs
9320             - fill "get via CVS" paragraph (link to dev page on the site)
9321         * docs/faq/general.xml:
9322             hide status tables as they no more exists
9323             change case on plugins license file to reflect reality
9324         * docs/faq/troubleshooting.xml:
9325             remove the wiki question/answer as there is no more wiki
9326
9327 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9328
9329         * gst/gsterror.h:
9330           include the headers needed for declarations used in this header
9331
9332 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9333
9334         * docs/random/uraeus/gstreamer_and_midi.txt :
9335           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9336           (fixes #132288)
9337
9338 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9339
9340         reviewed by Benjamin Otte  <otte@gnome.org>
9341
9342         * gst/schedulers/gthread-cothreads.h:
9343           free allocated data for main cothread, too when destroying context
9344           (fixes #141417)
9345
9346 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9347
9348         * docs/manual/goals.xml : remove duplicated paragraph at end 
9349         of doc page (fixes #141448)
9350
9351 2004-04-29  David Schleef  <ds@schleef.org>
9352
9353         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9354         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9355
9356 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9357
9358         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9359           fix property
9360         * gst/gstcaps.c:
9361           fix doc string
9362         * po/POTFILES.in:
9363           rename typefind source file
9364
9365 2004-04-28  David Schleef  <ds@schleef.org>
9366
9367         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9368         * win32/GStreamer.vcproj:
9369         * win32/Makefile:
9370         * win32/config.h:
9371         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9372         (_trewinddir), (_ttelldir), (_tseekdir):
9373         * win32/dirent.h:
9374         * win32/gst-inspect.vcproj:
9375         * win32/gst-launch.vcproj:
9376         * win32/gst-register.vcproj:
9377         * win32/gstbytestream.vcproj:
9378         * win32/gstelements.vcproj:
9379         * win32/gstoptimalscheduler.vcproj:
9380         * win32/gstspider.vcproj:
9381         * win32/gtchar.h:
9382         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9383         * win32/mman.h:
9384         * win32/mman.inl:
9385         * win32/msvc71.sln:
9386
9387 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9388
9389         * gst/gst.c: (init_post):
9390         * gst/gstinfo.c:
9391           remove useless _gst_progname stuff
9392         * tools/gst-inspect.c: (print_field), (print_caps):
9393           improve caps output
9394
9395 2004-04-28  David Schleef  <ds@schleef.org>
9396
9397         Disable parsing of a lot of files that aren't part of the
9398         exported API.  Move corresponding template files to old/,
9399         waiting for removal when they don't contain anything
9400         interesting.
9401         * docs/gst/Makefile.am:
9402         * docs/gst/gstreamer-sections.txt:
9403         * docs/gst/tmpl/cothreads.sgml:
9404         * docs/gst/tmpl/cothreads_compat.sgml:
9405         * docs/gst/tmpl/gettext.sgml:
9406         * docs/gst/tmpl/gobject2gtk.sgml:
9407         * docs/gst/tmpl/grammar.tab.sgml:
9408         * docs/gst/tmpl/gst-i18n-app.sgml:
9409         * docs/gst/tmpl/gst-i18n-lib.sgml:
9410         * docs/gst/tmpl/gst_private.sgml:
9411         * docs/gst/tmpl/gstaggregator.sgml:
9412         * docs/gst/tmpl/gstarch.sgml:
9413         * docs/gst/tmpl/gstatomic_impl.sgml:
9414         * docs/gst/tmpl/gstbufferstore.sgml:
9415         * docs/gst/tmpl/gstdata_private.sgml:
9416         * docs/gst/tmpl/gstdisksink.sgml:
9417         * docs/gst/tmpl/gstdisksrc.sgml:
9418         * docs/gst/tmpl/gstelementfactory.sgml:
9419         * docs/gst/tmpl/gstextratypes.sgml:
9420         * docs/gst/tmpl/gstfakesink.sgml:
9421         * docs/gst/tmpl/gstfakesrc.sgml:
9422         * docs/gst/tmpl/gstfdsink.sgml:
9423         * docs/gst/tmpl/gstfdsrc.sgml:
9424         * docs/gst/tmpl/gstfilesink.sgml:
9425         * docs/gst/tmpl/gstfilesrc.sgml:
9426         * docs/gst/tmpl/gsthttpsrc.sgml:
9427         * docs/gst/tmpl/gstidentity.sgml:
9428         * docs/gst/tmpl/gstindexfactory.sgml:
9429         * docs/gst/tmpl/gstmarshal.sgml:
9430         * docs/gst/tmpl/gstmd5sink.sgml:
9431         * docs/gst/tmpl/gstmultidisksrc.sgml:
9432         * docs/gst/tmpl/gstmultifilesrc.sgml:
9433         * docs/gst/tmpl/gstpadtemplate.sgml:
9434         * docs/gst/tmpl/gstpipefilter.sgml:
9435         * docs/gst/tmpl/gstschedulerfactory.sgml:
9436         * docs/gst/tmpl/gstsearchfuncs.sgml:
9437         * docs/gst/tmpl/gstshaper.sgml:
9438         * docs/gst/tmpl/gstspider.sgml:
9439         * docs/gst/tmpl/gstspideridentity.sgml:
9440         * docs/gst/tmpl/gststatistics.sgml:
9441         * docs/gst/tmpl/gsttee.sgml:
9442         * docs/gst/tmpl/gsttimecache.sgml:
9443         * docs/gst/tmpl/gsttypefind.sgml:
9444         * docs/gst/tmpl/gsttypefindfactory.sgml:
9445         * docs/gst/tmpl/gstxmlregistry.sgml:
9446         * docs/gst/tmpl/gthread-cothreads.sgml:
9447         * docs/gst/tmpl/old/cothreads.sgml:
9448         * docs/gst/tmpl/old/cothreads_compat.sgml:
9449         * docs/gst/tmpl/old/gettext.sgml:
9450         * docs/gst/tmpl/old/gobject2gtk.sgml:
9451         * docs/gst/tmpl/old/grammar.tab.sgml:
9452         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9453         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9454         * docs/gst/tmpl/old/gst_private.sgml:
9455         * docs/gst/tmpl/old/gstaggregator.sgml:
9456         * docs/gst/tmpl/old/gstarch.sgml:
9457         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9458         * docs/gst/tmpl/old/gstbufferstore.sgml:
9459         * docs/gst/tmpl/old/gstdata_private.sgml:
9460         * docs/gst/tmpl/old/gstdisksink.sgml:
9461         * docs/gst/tmpl/old/gstdisksrc.sgml:
9462         * docs/gst/tmpl/old/gstelementfactory.sgml:
9463         * docs/gst/tmpl/old/gstextratypes.sgml:
9464         * docs/gst/tmpl/old/gstfakesink.sgml:
9465         * docs/gst/tmpl/old/gstfakesrc.sgml:
9466         * docs/gst/tmpl/old/gstfdsink.sgml:
9467         * docs/gst/tmpl/old/gstfdsrc.sgml:
9468         * docs/gst/tmpl/old/gstfilesink.sgml:
9469         * docs/gst/tmpl/old/gstfilesrc.sgml:
9470         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9471         * docs/gst/tmpl/old/gstidentity.sgml:
9472         * docs/gst/tmpl/old/gstindexfactory.sgml:
9473         * docs/gst/tmpl/old/gstmarshal.sgml:
9474         * docs/gst/tmpl/old/gstmd5sink.sgml:
9475         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9476         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9477         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9478         * docs/gst/tmpl/old/gstpipefilter.sgml:
9479         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9480         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9481         * docs/gst/tmpl/old/gstshaper.sgml:
9482         * docs/gst/tmpl/old/gstspider.sgml:
9483         * docs/gst/tmpl/old/gstspideridentity.sgml:
9484         * docs/gst/tmpl/old/gststatistics.sgml:
9485         * docs/gst/tmpl/old/gsttee.sgml:
9486         * docs/gst/tmpl/old/gsttimecache.sgml:
9487         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9488         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9489         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9490         * docs/gst/tmpl/old/types.sgml:
9491         * docs/gst/tmpl/types.sgml:
9492
9493         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9494         gtkdoc-scan doesn't like files with the same name in different
9495         directories.
9496         * gst/elements/Makefile.am:
9497         * gst/elements/gstelements.c:
9498         * gst/elements/gsttypefind.c: 
9499         * gst/elements/gsttypefind.h:
9500         * gst/elements/gsttypefindelement.c:
9501         * gst/elements/gsttypefindelement.h:
9502
9503 2004-04-28  David Schleef  <ds@schleef.org>
9504
9505         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9506         patch (bug #141317):
9507         * gst/gst-i18n-lib.h: Allow disabling gettext.
9508         * gst/gstatomic_impl.h: disable warning when it's dumb.
9509         * gst/gstclock.c: fix include
9510         * gst/gstcompat.h: fix variadic macro
9511         * gst/gstinfo.c: fix include
9512         * gst/gstmacros.h: add defines for inlines on MSVC
9513         * gst/gstplugin.c: fix includes
9514         * gst/gstregistry.c: fix includes
9515         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9516         * gst/gstsystemclock.c: fix include
9517         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9518         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9519         * gst/registries/gstxmlregistry.c:
9520         (gst_xml_registry_parse_element_factory): fix use of non-portable
9521         functions
9522         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9523         * libs/gst/control/dparammanager.h: same
9524
9525 2004-04-28  David Schleef  <ds@schleef.org>
9526
9527         Move a bunch of unused files to old/ with names that are
9528         not case-insensitive-unique.  These files still contain some
9529         useful information that needs to be merged into gstbin.sgml,
9530         etc., so they shouldn't be deleted yet.
9531         * docs/gst/tmpl/GstBin.sgml:
9532         * docs/gst/tmpl/GstBuffer.sgml:
9533         * docs/gst/tmpl/GstCaps.sgml:
9534         * docs/gst/tmpl/GstClock.sgml:
9535         * docs/gst/tmpl/GstCompat.sgml:
9536         * docs/gst/tmpl/GstData.sgml:
9537         * docs/gst/tmpl/GstElement.sgml:
9538         * docs/gst/tmpl/GstEvent.sgml:
9539         * docs/gst/tmpl/GstIndex.sgml:
9540         * docs/gst/tmpl/GstStructure.sgml:
9541         * docs/gst/tmpl/GstTag.sgml:
9542         * docs/gst/tmpl/old/GstBin.sgml:
9543         * docs/gst/tmpl/old/GstBuffer.sgml:
9544         * docs/gst/tmpl/old/GstCaps.sgml:
9545         * docs/gst/tmpl/old/GstClock.sgml:
9546         * docs/gst/tmpl/old/GstCompat.sgml:
9547         * docs/gst/tmpl/old/GstData.sgml:
9548         * docs/gst/tmpl/old/GstElement.sgml:
9549         * docs/gst/tmpl/old/GstEvent.sgml:
9550         * docs/gst/tmpl/old/GstIndex.sgml:
9551         * docs/gst/tmpl/old/GstStructure.sgml:
9552         * docs/gst/tmpl/old/GstTag.sgml:
9553
9554 2004-04-28  David Schleef  <ds@schleef.org>
9555
9556         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9557         (gst_caps_append), (gst_caps_append_structure),
9558         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9559         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9560         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9561         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9562         (gst_caps_intersect), (gst_caps_normalize),
9563         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9564         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9565         * gst/gstcaps.h: use GST_IS_CAPS().
9566
9567 2004-04-26  David Schleef  <ds@schleef.org>
9568
9569         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9570         assembly.  gcc doesn't handle it correctly. (bug #141083)
9571         * gst/gsttrashstack.h: same
9572
9573 2004-04-25  Benjamin Otte  <otte@gnome.org>
9574
9575         * gst/gstelement.c: (gst_element_change_state):
9576           fix assertion to do an int comparison
9577
9578 2004-04-25  Benjamin Otte  <otte@gnome.org>
9579
9580         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9581           better debugging output on error
9582
9583 2004-04-25  Benjamin Otte  <otte@gnome.org>
9584
9585         * gst/gstcaps.c: (gst_caps_subtract):
9586           fix memleak
9587
9588 2004-04-23  Benjamin Otte  <otte@gnome.org>
9589
9590         * gst/gstvalue.c: (gst_value_compare_buffer),
9591         (_gst_value_initialize):
9592           add comparison function for buffers
9593
9594 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9595
9596         * docs/pwg/pwg.xml:
9597           Just found out that this so-called "ima-wav" format is really
9598           just "dvi adpcm" (according to the MS WAV documentation). So
9599           renaming it. We didn't use it yet anyway.
9600
9601 2004-04-23  Benjamin Otte  <otte@gnome.org>
9602
9603         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9604           call gst_caps_is_subset
9605
9606 2004-04-23  Benjamin Otte  <otte@gnome.org>
9607
9608         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9609         (gst_caps_is_subset):
9610           add documentation
9611
9612 2004-04-23  Benjamin Otte  <otte@gnome.org>
9613           
9614         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9615         (gst_caps_structure_subtract), (gst_caps_subtract),
9616         (gst_caps_structure_figure_out_union),
9617         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9618           fix simplifying and subtracting not working correctly with optional
9619           properties
9620           solve assorted problems that make it now simplify ebven more
9621         * docs/gst/tmpl/gstcaps.sgml:
9622         * gst/gstcaps.h:
9623           make gst_caps_do_simplify return a bool to indicate if it simplified
9624         * testsuite/caps/simplify.c: (main):
9625           add more checks. The tests is quite a bit useless right now because
9626           the core is heavily simplifying itself.
9627         * testsuite/caps/caps.h:
9628           fix caps to contain all optional properties
9629
9630 2004-04-22  Benjamin Otte  <otte@gnome.org>
9631
9632         * docs/gst/tmpl/gstcaps.sgml:
9633         * docs/gst/tmpl/gstfilesrc.sgml:
9634         * docs/gst/tmpl/gststructure.sgml:
9635         * docs/gst/tmpl/gstvalue.sgml:
9636           update for recent API changes
9637         * gst/gstcaps.c: (gst_caps_do_simplify):
9638           fix to stop trying with a freed structure
9639         * gst/gstpad.c: (gst_pad_link_fixate):
9640           simplify caps
9641         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9642           remove C++ comment
9643         * gst/gstpad.h:
9644           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9645         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9646         (gst_structure_to_string):
9647           keep the correct type when using lists of ranges
9648         * gst/gstvalue.c: (gst_value_list_prepend_value),
9649         (gst_value_list_append_value):
9650           copy the value before adding to the list (d'oh)
9651         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9652         (gst_value_subtract_int_range_int_range):
9653           handle overflows correctly
9654         * gst/gstvalue.c: (gst_value_subtract_from_list):
9655           fix memleak
9656         * testsuite/caps/caps.h:
9657           add a caps that caused segfaults
9658
9659 2004-04-22  Benjamin Otte  <otte@gnome.org>
9660
9661         * testsuite/refcounting/pad.c: (main):
9662           fix test
9663
9664 2004-04-22  Benjamin Otte  <otte@gnome.org>
9665
9666         * gst/gstcaps.c: (gst_caps_subtract):
9667           allow subtracting ANY and EMPTY from ANY caps
9668
9669 2004-04-22  Benjamin Otte  <otte@gnome.org>
9670
9671         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9672         (gst_caps_union):
9673           only simplify in functions that create new caps. Simplifying in
9674           gst_caps_append breaks tests.
9675
9676 2004-04-22  Benjamin Otte  <otte@gnome.org>
9677
9678         * gst/gstcaps.c: (gst_caps_structure_simplify):
9679           unset GValue after use
9680         * gst/gstcaps.c: (gst_caps_append), 
9681         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9682           use gst_caps_simplify (reduces registry size by 30%)
9683         * gst/gstpad.c: (gst_pad_template_new):
9684           don't allow NULL caps
9685
9686 2004-04-22  Benjamin Otte  <otte@gnome.org>
9687
9688         * docs/gst/gstreamer-sections.txt:
9689           add gst_caps_do_simplify
9690         * gst/gstcaps.c:
9691           add documentation for gst_caps_do_simplify
9692         * gst/gstvalue.h:
9693           fix typo in gst_value_register_subtract_func declaration for gst-doc
9694
9695 2004-04-22  Benjamin Otte  <otte@gnome.org>
9696
9697         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9698           fix bug when converting from empty string.
9699         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9700         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9701           use gst_caps_new_empty to allocate a new caps. Only that function
9702           allocates memory for caps now.
9703         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9704         (gst_caps_remove_structure):
9705           add ability to remove one structure (but not to header yet)
9706         * gst/gstcaps.c: (gst_caps_compare_structures),
9707         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9708         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9709         * gst/gstcaps.h:
9710           add gst_caps_do_simplify that tries to simplify a caps in place.
9711           Deprecate old gst_caps_simplify function.
9712         * testsuite/caps/caps.h:
9713           add caps.h containing a common set of caps to test against.
9714         * testsuite/caps/sets.c: (check_caps), (main):
9715           use it.
9716         * testsuite/caps/.cvsignore:
9717         * testsuite/caps/Makefile.am:
9718         * testsuite/caps/simplify.c: (check_caps), (main):
9719           add test to check correctness and efficency of caps simplification.
9720
9721 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9722
9723         reviewed by Benjamin Otte  <otte@gnome.org>
9724
9725         * gst/gstparse.c: (_gst_parse_escape):
9726           Free the GString used in _gst_parse_escape()
9727
9728 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9729
9730         * gst/gstpad.c: (gst_pad_link_negotiate):
9731           refuse to link if the link is not possible
9732         * configure.ac:
9733         * testsuite/Makefile.am:
9734         * testsuite/negotiation/.cvsignore:
9735         * testsuite/negotiation/Makefile.am:
9736         * testsuite/negotiation/pad_link.c: (main):
9737           add test that checks the above behaviour
9738
9739 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9740
9741         * docs/gst/gstreamer-sections.txt:
9742           add newly added API
9743
9744 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9745
9746         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9747         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9748         (gst_filesrc_open_file), (gst_filesrc_close_file),
9749         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9750         * gst/elements/gstfilesrc.h:
9751           add support for non-regular files (#140734)
9752
9753 2004-04-21  Benjamin Otte  <otte@gnome.org>
9754
9755         * gst/gstpad.c: (gst_pad_link_fixate):
9756           add sophisticated error checking code to see if fixation functions
9757           did their fixation right
9758
9759 2004-04-21  Benjamin Otte  <otte@gnome.org>
9760
9761         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9762           check for ANY caps before appending/unioning
9763         * gst/gstcaps.c: (gst_caps_is_subset),
9764         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9765         (gst_caps_structure_subtract), (gst_caps_subtract):
9766         * gst/gstcaps.h:
9767           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9768           the API. deprecate gst_caps_is_equal_fixed
9769         * gst/gstpad.c: (gst_pad_try_set_caps):
9770         * gst/gstqueue.c: (gst_queue_link):
9771           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9772         * gst/gststructure.c: (gst_structure_get_name_id):
9773         * gst/gststructure.h:
9774           add function gst_structure_get_name_id
9775         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9776         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9777         (gst_value_subtract_int_range_int_range),
9778         (gst_value_subtract_double_double_range),
9779         (gst_value_subtract_double_range_double),
9780         (gst_value_subtract_double_range_double_range),
9781         (gst_value_subtract_from_list), (gst_value_subtract_list),
9782         (gst_value_can_intersect), (gst_value_subtract),
9783         (gst_value_can_subtract), (gst_value_register_subtract_func),
9784         (_gst_value_initialize):
9785         * gst/gstvalue.h:
9786           add support for subtracting values from each other. Note that
9787           subtracting means subtracting as in set theory. Required for caps
9788           stuff above.
9789         * testsuite/caps/.cvsignore:
9790         * testsuite/caps/Makefile.am:
9791         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9792         * testsuite/caps/sets.c: (check_caps), (main):
9793         * testsuite/caps/subtract.c: (check_caps), (main):
9794           add tests for subtraction and equality code.
9795
9796 2004-04-20  David Schleef  <ds@schleef.org>
9797
9798         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9799         * gst/indexers/Makefile.am:
9800         * gst/schedulers/Makefile.am:
9801         * libs/gst/bytestream/Makefile.am:
9802         * libs/gst/control/Makefile.am:
9803         * libs/gst/getbits/Makefile.am:
9804
9805 2004-04-20  David Schleef  <ds@schleef.org>
9806
9807         * common/as-libtool.mak: Fine-tune DLL building.
9808         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9809         (like gst-plugins)
9810         * examples/plugins/Makefile.am: remove plugindir
9811         * gst/autoplug/Makefile.am: DLL building fixes
9812         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9813         Windows.
9814         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9815         * gst/indexers/Makefile.am: DLL building fixes
9816         * gst/schedulers/Makefile.am: DLL building fixes.
9817         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9818         * libs/gst/control/Makefile.am: same
9819         * libs/gst/getbits/Makefile.am: same
9820         * testsuite/Makefile.am: New dlopen directory
9821         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9822         when dlopened.
9823         * testsuite/dlopen/dlopen_gst.c: (main): same
9824         * testsuite/dlopen/loadgst.c: (do_test): same
9825
9826 2004-04-20  David Schleef  <ds@schleef.org>
9827
9828         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9829         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9830
9831 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9832
9833         * gst/gstelement.c: (gst_element_wait),
9834         (gst_element_set_time_delay), (gst_element_change_state):
9835           Use GST_TIME_*
9836
9837 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9838
9839         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9840         (gst_spider_identity_plug):
9841           improve debugging messages
9842         * gst/gstbin.c: (gst_bin_remove_func):
9843           make sure the state_change function is only called with simple state
9844           transitions
9845
9846 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9847
9848         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9849         (gst_fakesink_set_property), (gst_fakesink_chain):
9850         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9851         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9852         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9853         * gst/elements/gstidentity.c: (gst_identity_chain),
9854         (gst_identity_set_property):
9855         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9856         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9857           add warnings to _set_property for unknown arguments
9858           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9859
9860 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9861
9862         * Makefile.am:
9863         * docs/manuals.mak:
9864           add .po file download snippet
9865           fix a bug in the doc makefile
9866
9867 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9868
9869         * Makefile.am:
9870         * po/LINGUAS:
9871         * po/en_GB.po:
9872           Added en_GB translation (Gareth Owen)
9873
9874 2004-04-20  Johan Dahlin  <johan@gnome.org>
9875
9876         * gst/gstpad.c (_invent_event): Clean up
9877
9878 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9879
9880         * testsuite/caps/filtercaps.c: (main):
9881           fix test to test things correctly (caps are complicated)
9882
9883 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9884
9885         * testsuite/caps/Makefile.am:
9886         * testsuite/caps/filtercaps.c: (main):
9887           add test (that doesn't work right now, but should)
9888
9889 2004-04-19  David Schleef  <ds@schleef.org>
9890
9891         * configure.ac: Add test for allowing unaligned access.  Add define
9892         to put in gstconfig.h.
9893         * docs/gst/gstreamer-sections.txt: New symbols
9894         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9895         * docs/gst/tmpl/gstfilesrc.sgml:
9896         * docs/gst/tmpl/gstparse.sgml:
9897         * docs/gst/tmpl/gsttypes.sgml:
9898         * docs/gst/tmpl/gstutils.sgml:
9899         * docs/gst/tmpl/gstvalue.sgml:
9900         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9901         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9902         on most !i386/!powerpc architectures.  From Daniel Gazard
9903         <daniel.gazard@free.fr>.  (bug #140156)
9904         * po/af.po: Check in changes made by gettext.
9905         * po/az.po:
9906         * po/fr.po:
9907         * po/nl.po:
9908         * po/sr.po:
9909         * po/sv.po:
9910
9911 2004-04-20  Benjamin Otte  <otte@gnome.org>
9912
9913         * gst/schedulers/entryscheduler.c: 
9914         (gst_entry_scheduler_yield):
9915           refuse to yield when decoupled elements insist on doing that.
9916           At least it's better than crashing
9917
9918 2004-04-19  David Schleef  <ds@schleef.org>
9919
9920         * docs/libs/Makefile.am: Change sinclude to include
9921         * docs/gst/Makefile.am: same
9922         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9923
9924 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9925
9926         * po/LINGUAS:
9927         * po/uk.po:
9928           Added Ukrainian translation (Maxim V. Dziumanenko)
9929
9930 2004-04-19  Johan Dahlin  <johan@gnome.org>
9931
9932         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9933         checking here, do it before calling the function.
9934         Clean up, use for loops instead of while loops while iterating
9935         over lists.
9936
9937         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9938         in debug message.
9939         (gst_spider_create_and_plug): Improve debug message.
9940         General: Replace while loops which iterates over GLists with for
9941         loops. Which are much cleaner, improves readability, especially
9942         for gst_spider_identity_plug
9943
9944         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9945         fixes bug 140477
9946
9947 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9948
9949         * po/LINGUAS:
9950         * po/tr.po:
9951           Added Turkish translation (Baris Cicek)
9952
9953 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9954
9955         * docs/faq/troubleshooting.xml:
9956           Mention gst-register in the FAQ (fixes 139045).
9957
9958 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9959
9960         * docs/gst/gstreamer-sections.txt:
9961
9962 2004-04-17  Benjamin Otte  <otte@gnome.org>
9963
9964         * gst/gstelement.c: (gst_element_dispose):
9965           simplify
9966         * gst/gstpad.c: (gst_pad_call_chain_function):
9967           don't create loads of events due to bad macro usage
9968
9969 2004-04-16  David Schleef  <ds@schleef.org>
9970
9971         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9972         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9973         * gst/gstvalue.c: (gst_value_serialize_buffer),
9974         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9975         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9976         to indicate types that are fixed wrt caps or not.  Switching to
9977         this function fixes (bug #140298).
9978         * gst/gstvalue.h:
9979
9980 2004-04-16  David Schleef  <ds@schleef.org>
9981
9982         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9983         for GST_UNALIGNED_ACESS, since we essentially know which archs
9984         are ok.
9985
9986 2004-04-17  Benjamin Otte  <otte@gnome.org>
9987
9988         * docs/gst/Makefile.am:
9989           ignore gst/parse directory when building docs (fixes #140205)
9990
9991 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9992
9993         * testsuite/refcounting/mem.c: (vmsize):
9994           do error checking
9995
9996 2004-04-16  Johan Dahlin  <johan@gnome.org>
9997
9998         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9999         and gst_pad_call_get_function.
10000
10001 2004-04-15  David Schleef  <ds@schleef.org>
10002
10003         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
10004         checks if we can access unaligned memory.
10005         * configure.ac: Use it.
10006
10007 2004-04-16  Benjamin Otte  <otte@gnome.org>
10008
10009         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
10010         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10011         * gst/elements/gstfilesrc.h:
10012           s/seek_happened/need_discont/ and require discont before sending any
10013           data
10014
10015 2004-04-15  David Schleef  <ds@schleef.org>
10016
10017         * gst/gstvalue.c: (gst_value_serialize_buffer),
10018         (gst_value_deserialize_buffer), (_gst_value_initialize):
10019         Register these types as fundamental types. (bug #140015)
10020
10021 2004-04-16  Benjamin Otte  <otte@gnome.org>
10022
10023         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
10024         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
10025         (gst_pad_pull):
10026           implement enforcing discont events before buffers are passed. This
10027           allows state changes of only some elements and later correctly going
10028           on where they left off (or in short: you can now set audio sinks to
10029           NULL to release the device when the pipeline is paused)
10030         * gst/gstpad.c: (gst_pad_call_chain_function),
10031         (gst_pad_call_get_function):
10032         * gst/gstpad.h:
10033           add gst_pad_call_chain_function and gst_pad_call_get_function for
10034           scheduler interaction. They are required because of the changes
10035           above.
10036         * gst/schedulers/entryscheduler.c: (get_buffer),
10037         (gst_entry_scheduler_chain_wrapper),
10038         (gst_entry_scheduler_get_wrapper),
10039         (gst_entry_scheduler_state_transition),
10040         (gst_entry_scheduler_pad_link):
10041         * gst/schedulers/gstbasicscheduler.c:
10042         (gst_basic_scheduler_chain_wrapper),
10043         (gst_basic_scheduler_src_wrapper),
10044         (gst_basic_scheduler_chainhandler_proxy),
10045         (gst_basic_scheduler_gethandler_proxy),
10046         (gst_basic_scheduler_cothreaded_chain),
10047         (gst_basic_scheduler_chain_elements):
10048         * gst/schedulers/gstoptimalscheduler.c:
10049         (get_group_schedule_function), (pad_clear_queued),
10050         (gst_opt_scheduler_pad_link):
10051           use the new functions instead of calling get/chain-functions
10052           directly.
10053
10054 2004-04-15  David Schleef  <ds@schleef.org>
10055
10056         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
10057         * docs/gst/tmpl/gstinfo.sgml: same
10058         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
10059         gtk-doc put here.
10060         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
10061         * examples/queue/queue.c: (main):  We iterate pipelines, not
10062         bins.  (bug #139996)
10063
10064 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10065
10066         * docs/pwg/advanced-types.xml:
10067           Add MS RLE support. Also document Qt RLE although I have no sample
10068           files for that yet. And document an extra property for ADPCM.
10069
10070 2004-04-15  David Schleef  <ds@schleef.org>
10071
10072         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10073         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10074         Windows.
10075
10076 2004-04-15  David Schleef  <ds@schleef.org>
10077
10078         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10079         symbol names to not conflict with new gstinfo.h symbols.
10080         * gst/gstinfo.h: Add inline functions for all those crazy
10081         compilers that don't know how to handle variadic macros (MSVC).
10082
10083 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10084
10085         * configure.ac: bump nano to 1
10086
10087 === release 0.8.1 ===
10088
10089 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10090
10091         * NEWS:
10092         * RELEASE:
10093         * configure.ac:
10094           releasing 0.8.1, "Snow Brigade"
10095
10096 2004-04-14  David Schleef  <ds@schleef.org>
10097
10098         * testsuite/Makefile.am: define tests_ignore
10099         * testsuite/Rules: Added new tests_ignore, which get compiled,
10100         but not run (generally because they're inconsistent or have
10101         heisenbugs).  Now we can ensure all the .c files compile in
10102         testsuite/.
10103         * testsuite/bins/Makefile.am: define tests_ignore
10104         * testsuite/bytestream/Makefile.am:
10105         * testsuite/caps/Makefile.am:
10106         * testsuite/clock/Makefile.am:
10107         * testsuite/debug/Makefile.am:
10108         * testsuite/debug/global.c: (gst_debug_log_one),
10109         (gst_debug_log_two): Fix compilation problem.
10110         * testsuite/dynparams/Makefile.am:
10111         * testsuite/elements/Makefile.am:
10112         * testsuite/ghostpads/Makefile.am:
10113         * testsuite/indexers/Makefile.am:
10114         * testsuite/parse/Makefile.am:
10115         * testsuite/plugin/Makefile.am:
10116         * testsuite/refcounting/Makefile.am:
10117         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10118         results, because it's not calculated correctly.
10119         * testsuite/refcounting/pad.c: (main): same
10120         * testsuite/states/Makefile.am:
10121         * testsuite/tags/Makefile.am:
10122         * testsuite/threads/Makefile.am:
10123
10124 2004-04-14  David Schleef  <ds@schleef.org>
10125
10126         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10127         generating bad code around the cpu detection asm code.
10128
10129 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10130
10131         * tools/gst-inspect.c: (print_element_info):
10132           print numeric version of rank as well, since we added some - 1
10133           rank values to elements
10134
10135 2004-04-13  David Schleef  <ds@schleef.org>
10136
10137         * configure.ac:  Disable various code when compiling for MinGW.
10138         * gst/elements/Makefile.am:
10139         * gst/elements/gstelements.c:
10140         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10141         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10142         * gst/registries/gstxmlregistry.c: (make_dir):
10143
10144 2004-04-13  David Schleef  <ds@schleef.org>
10145
10146         * gst/Makefile.am:
10147         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10148         assembly.
10149         * gst/gstcpuid_i386.s: remove
10150
10151 2004-04-13  David Schleef  <ds@schleef.org>
10152
10153         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10154         seems to think it needs to be done.
10155         * docs/gst/tmpl/gstfakesink.sgml:
10156         * docs/gst/tmpl/gstfakesrc.sgml:
10157         * docs/gst/tmpl/gstfdsink.sgml:
10158         * docs/gst/tmpl/gstfdsrc.sgml:
10159         * docs/gst/tmpl/gstfilesink.sgml:
10160         * docs/gst/tmpl/gstfilesrc.sgml:
10161         * docs/gst/tmpl/gstidentity.sgml:
10162         * docs/gst/tmpl/gstmd5sink.sgml:
10163         * docs/gst/tmpl/gstmultifilesrc.sgml:
10164         * docs/gst/tmpl/gstpipefilter.sgml:
10165         * docs/gst/tmpl/gstshaper.sgml:
10166         * docs/gst/tmpl/gstspider.sgml:
10167         * docs/gst/tmpl/gstspideridentity.sgml:
10168         * docs/gst/tmpl/gststatistics.sgml:
10169         * docs/gst/tmpl/gsttee.sgml:
10170         * docs/gst/tmpl/gsttypefind.sgml:
10171         * docs/gst/tmpl/gstutils.sgml:
10172
10173 2004-04-13  David Schleef  <ds@schleef.org>
10174
10175         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10176         and to build DLLs on Windows.
10177         * gst/Makefile.am:
10178         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10179         (gst_filesrc_open_file):
10180         * gst/schedulers/Makefile.am:
10181
10182 2004-04-13  David Schleef  <ds@schleef.org>
10183
10184         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10185         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10186         fixating lists.
10187
10188 2004-04-12  David Schleef  <ds@schleef.org>
10189
10190         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10191         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10192         to using it.
10193         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10194         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10195         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10196         * gst/gststructure.c: (gst_structure_set_valist),
10197         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10198         support for buffers.
10199         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10200         intended to be const.
10201         * gst/gsttag.h: same
10202         * gst/gstvalue.c: (gst_value_serialize_buffer),
10203         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10204         to (de)serialize buffers.
10205         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10206         * testsuite/caps/string-conversions.c: (main):
10207         * testsuite/caps/value_serialize.c: add new test
10208
10209 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10210
10211         * docs/pwg/advanced-types.xml:
10212           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10213
10214 2004-04-11  Benjamin Otte  <otte@gnome.org>
10215
10216         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10217           rename categories to basic_*
10218         * gst/schedulers/gstbasicscheduler.c: 
10219         (gst_basic_scheduler_chain_wrapper),
10220         (gst_basic_scheduler_chainhandler_proxy),
10221         (gst_basic_scheduler_gethandler_proxy),
10222         (gst_basic_scheduler_eventhandler_proxy):
10223           debugging category fixes - put common stuff in log category
10224         * gst/schedulers/gstbasicscheduler.c: 
10225         (gst_basic_scheduler_chain_elements):
10226           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10227           active and linking two active chains
10228
10229 2004-04-10  Benjamin Otte  <otte@gnome.org>
10230
10231         * docs/pwg/intro-preface.xml:
10232           fix dead links and remove reference to Wiki
10233
10234 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10235
10236         * gst/schedulers/gstbasicscheduler.c:
10237           make sure we can switch back to the main function if we're still in
10238           the main function (supposed to fix #139617)
10239         * gst/schedulers/gthread-cothreads.h:
10240           don't throw an error when switching to the same cothread
10241
10242 2004-04-09  Benjamin Otte  <otte@gnome.org>
10243
10244         * gst/gstbin.c: (gst_bin_get_type):
10245         * gst/gstclock.c: (gst_clock_get_type):
10246         * gst/gstindex.c: (gst_index_get_type):
10247         * gst/gstobject.c: (gst_object_get_type),
10248         (gst_signal_object_get_type):
10249         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10250         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10251         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10252         * gst/gstqueue.c: (gst_queue_get_type):
10253         * gst/gstregistry.c: (gst_registry_get_type):
10254         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10255         * gst/gstthread.c: (gst_thread_get_type):
10256           don't use memchunks for these objects, use malloc instead
10257
10258 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10259
10260         * docs/gst/.cvsignore:
10261         * docs/gst/Makefile.am:
10262         * docs/gst/gstreamer-sections.txt:
10263         * docs/gst/tmpl/gstaggregator.sgml:
10264         * docs/gst/tmpl/gstbuffer.sgml:
10265         * docs/gst/tmpl/gstclock.sgml:
10266         * docs/gst/tmpl/gstelement.sgml:
10267         * docs/gst/tmpl/gstfakesink.sgml:
10268         * docs/gst/tmpl/gstfakesrc.sgml:
10269         * docs/gst/tmpl/gstfdsink.sgml:
10270         * docs/gst/tmpl/gstfdsrc.sgml:
10271         * docs/gst/tmpl/gstfilesink.sgml:
10272         * docs/gst/tmpl/gstfilesrc.sgml:
10273         * docs/gst/tmpl/gstidentity.sgml:
10274         * docs/gst/tmpl/gstindex.sgml:
10275         * docs/gst/tmpl/gstinfo.sgml:
10276         * docs/gst/tmpl/gstmd5sink.sgml:
10277         * docs/gst/tmpl/gstmultifilesrc.sgml:
10278         * docs/gst/tmpl/gstpad.sgml:
10279         * docs/gst/tmpl/gstpipefilter.sgml:
10280         * docs/gst/tmpl/gstpipeline.sgml:
10281         * docs/gst/tmpl/gstpluginfeature.sgml:
10282         * docs/gst/tmpl/gstqueue.sgml:
10283         * docs/gst/tmpl/gstregistry.sgml:
10284         * docs/gst/tmpl/gstscheduler.sgml:
10285         * docs/gst/tmpl/gstshaper.sgml:
10286         * docs/gst/tmpl/gstspider.sgml:
10287         * docs/gst/tmpl/gstspideridentity.sgml:
10288         * docs/gst/tmpl/gststatistics.sgml:
10289         * docs/gst/tmpl/gstsystemclock.sgml:
10290         * docs/gst/tmpl/gsttee.sgml:
10291         * docs/gst/tmpl/gstthread.sgml:
10292         * docs/gst/tmpl/gsttypefind.sgml:
10293         * docs/gst/tmpl/gstutils.sgml:
10294           further doc build fixes
10295
10296 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10297
10298         * docs/gst/Makefile.am:
10299           make docs exit on scanning problems
10300           fix nonsrcdir build issues
10301         * docs/gst/gstreamer-sections.txt:
10302           adding stuff from -unused
10303         * gst/gstqueue.h:
10304           create GstQueueSize
10305         * gst/schedulers/cothreads_compat.h:
10306           fix cothread warnings
10307
10308 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10309
10310         * docs/gst/gstreamer-sections.txt:
10311           remove defines deprecated by Benjamin
10312
10313 2004-04-07  Benjamin Otte  <otte@gnome.org>
10314
10315         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10316           when the buffer is complete, don't check if other buffers are needed
10317         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10318           check that the offset is >0 so we don't try to read before the
10319           beginning of the file
10320         * gst/gstpad.c: (gst_pad_set_pad_template):
10321           sink the template, so we don't end up with 130k pad templates
10322
10323 2004-04-06  Benjamin Otte  <otte@gnome.org>
10324
10325         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10326           don't ref the element, adding already reffed it. And we didn't unref
10327           it later anyway... (huge memleak when you used many spider elements)
10328         * gst/gstelement.c: (gst_element_base_class_finalize):
10329         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10330         (gst_element_register):
10331         * gst/gsturi.c: (gst_element_make_from_uri):
10332           use gst_object_(un)ref instead of g_object(un)ref
10333
10334 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10335
10336         * gst/gstbuffer.h:
10337           remove macro that wouldn't work anymore because struct member has
10338           been removed.
10339         * gst/schedulers/entryscheduler.c: (schedule_forward):
10340           fix segfault for unconnected pads
10341         
10342 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10343
10344         reviewed by David Schleef <ds@schleef.org>
10345
10346         * gst/gstinfo.h:
10347           *_FORMAT modifiers should require putting a % in front of them for
10348           consistency reasons.
10349
10350 2004-04-05  Colin Walters  <walters@redhat.com>
10351
10352         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10353         space.
10354
10355 2004-04-05  Benjamin Otte  <otte@gnome.org>
10356
10357         * configure.ac:
10358         * gst/Makefile.am:
10359         * gst/gst_private.h:
10360         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10361           add support for detecting if GStreamer runs inside valgrind.
10362           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10363           print a big message in valgrind that GStreamer has detected it's
10364           running inside and might now use different code.
10365         * gst/gstmemchunk.c: (populate), (free_area),
10366         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10367         (gst_mem_chunk_free):
10368           flag memchunks for valgrind, so it can detect leaking of chunks.
10369           This allows detecting leaks of GstBuffer and GstEvent correctly
10370           inside valgrind.
10371
10372 2004-04-05  David Schleef  <ds@schleef.org>
10373
10374         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10375           jensgr@gmx.net (Jens Granseuer)
10376
10377 2004-04-05  David Schleef  <ds@schleef.org>
10378
10379         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10380         (gst_buffer_default_free), (gst_buffer_default_copy),
10381         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10382         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10383         structures in one place.
10384
10385 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10386
10387         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10388           (GST_TIME_FORMAT, GST_TIME_ARGS)
10389
10390 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10391
10392         * testsuite/elements/Makefile.am:
10393           disable test until it stops breaking make distcheck
10394
10395 2004-04-05  Johan Dahlin  <johan@gnome.org>
10396
10397         * po/sv.po: Updated translation
10398
10399 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10400
10401         * gst/gstplugin.c: (gst_plugin_load_file):
10402           fix segfault for when original plugin was loaded statically
10403
10404 2004-04-05  Benjamin Otte  <otte@gnome.org>
10405
10406         * testsuite/debug/category.c: (main):
10407         * testsuite/debug/commandline.c: (main):
10408         * testsuite/debug/output.c: (main):
10409           fix tests to work again with debugging enabled
10410
10411 2004-04-05  Benjamin Otte  <otte@gnome.org>
10412
10413         * gst/schedulers/gstbasicscheduler.c:
10414         (gst_basic_scheduler_pad_link):
10415           fix to work with recent scheduling changes
10416
10417 2004-04-05  Benjamin Otte  <otte@gnome.org>
10418
10419         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10420         prepareChangeLog doesn't work when cvs indents):
10421           don't throw an error when no element can be scheduled, there's too
10422           many weird reasons why it doesn't work. Return STOPPED instead.
10423           decoupled elemts' schedulability doesn't depend on bufpens.
10424
10425 2004-04-04  Benjamin Otte  <otte@gnome.org>
10426
10427         * gst/schedulers/gstbasicscheduler.c:
10428         (gst_basic_scheduler_pad_select):
10429           fix uninitialized variable warnings
10430
10431 2004-04-04  Benjamin Otte  <otte@gnome.org>
10432
10433         * gst/gstpad.c: (gst_pad_collect_valist):
10434           fix uninitialized variable warning
10435         * gst/schedulers/entryscheduler.c: (schedule_forward):
10436           fix shadowed variable
10437
10438 2004-04-04  Benjamin Otte  <otte@gnome.org>
10439
10440         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10441         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10442         (gst_pad_select):
10443         * gst/gstpad.h:
10444         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10445         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10446         * gst/gstscheduler.h:
10447           implement gst_pad_collect as replacement for gst_pad_select.
10448           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10449           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10450           new pad_select, lock and unlock calls.
10451         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10452         * gst/cothreads.h:
10453         * gst/schedulers/cothreads_compat.h:
10454         * gst/schedulers/gthread-cothreads.h:
10455           remove unused cothread_lock and cothread_unlock calls
10456         * gst/schedulers/entryscheduler.c:
10457         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10458         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10459         (gst_entry_scheduler_pad_select):
10460           update to new API
10461         * gst/schedulers/gstbasicscheduler.c:
10462         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10463         (gst_basic_scheduler_pad_select):
10464           remove useless lock and unlock calls, update pad_select to new API
10465           (untested)
10466         * gst/schedulers/gstoptimalscheduler.c:
10467         (gst_opt_scheduler_class_init):
10468           remove useless select, lock and unlock function calls
10469         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10470           use gst_pad_collect instead of gst_pad_select
10471
10472 2004-04-04  Benjamin Otte  <otte@gnome.org>
10473
10474         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10475         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10476         (schedule_next_element), (print_entry):
10477           add can_schedule_pad to handle element states.
10478           add schedule_forward to select the correct entry to schedule next
10479
10480 2004-04-03  Benjamin Otte  <otte@gnome.org>
10481
10482         * gst/schedulers/entryscheduler.c: 
10483           remove unused variable, fix error inside Rb, fix compile warning in
10484           unreachable code
10485
10486 2004-04-03  Benjamin Otte  <otte@gnome.org>
10487
10488         * gst/schedulers/entryscheduler.c:
10489           completely revamp the inner workings, so it's a lot easier to
10490           understand and extend
10491
10492 2004-04-03  Andy Wingo  <wingo@pobox.com>
10493
10494         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10495         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10496         This allows better introspection of pipeline topology.
10497         (add_to_chain): Don't do trickery to put loop elements first;
10498         rather, queue a chain sort by marking the chain as dirty.
10499         (remove_from_chain): Mark the chain dirty.
10500         (sort_chain): New function. Sorts the group list so that terminal
10501         sinks are first. This means elements on the sink side will be
10502         preferentially sscheduled before elements on the src side of the
10503         pipeline.
10504         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10505         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10506         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10507         (group_inc_link): Change argument and variable names to match the
10508         new link structure member names (src and sink).
10509         (group_dec_link): Add some description
10510
10511 2004-04-03  Benjamin Otte  <otte@gnome.org>
10512
10513         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10514         * gst/gstinfo.h:
10515         * testsuite/debug/category.c: (main):
10516         * testsuite/debug/commandline.c: (main):
10517         * testsuite/debug/output.c: (main):
10518         * testsuite/debug/printf_extension.c: (main):
10519           fix to successfully build and test with --disable-gst-debug
10520           configure switch (fixes #138705)
10521
10522 2004-04-03  Benjamin Otte  <otte@gnome.org>
10523
10524         * docs/pwg/building-boiler.xml:
10525           add cvs login line and s/anonymous/anoncvs/
10526
10527 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10528
10529         reviewed by Benjamin Otte  <otte@gnome.org>
10530
10531         * gst/gststructure.c: (gst_structure_free):
10532           memleak fix: free fields array (partial fix for #134839)
10533
10534 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10535
10536         * docs/random/ds/0.9-suggested-changes:
10537           Add a note to change handoff use in fakesrc to be usable in
10538           a more generic way (fakesrc should be renamed to appsrc or so).
10539         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10540           Change signal type to scope, so we can fill the buffer in the
10541           handoff handler (that's the whole use of this signal...).
10542
10543 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10544
10545         * docs/pwg/other-ntoone.xml:
10546           Document muxers and n-to-1 elements.
10547
10548 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10549
10550         * gst/registries/gstxmlregistry.c
10551         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10552         determine if a file is a G_MODULE. The old one discards paths
10553         containing "so" somewhere in the middle. My home directory is
10554         called "soto". Go figure...
10555
10556 2004-03-31  David Schleef  <ds@schleef.org>
10557
10558         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10559         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10560         * gst/gstbuffer.h:
10561
10562 2004-03-31  David Schleef  <ds@schleef.org>
10563
10564         * gst/gstvalue.c: (gst_value_union_int_int_range),
10565         (gst_value_union_int_range_int_range), (gst_value_can_union),
10566         (gst_value_union), (_gst_value_initialize):  Add some union
10567         implementations.  We didn't have any previously.
10568         * testsuite/caps/Makefile.am:
10569         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10570         (gst_audioscale_getcaps), (test_caps), (main): A little test
10571         that is the same as the caps manipulation in audioscale.
10572
10573 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10574
10575         * docs/faq/general.xml:
10576           add entry about "does gst support format X?"
10577
10578 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10579
10580         * gst/gstthread.c:
10581           fix docs
10582         * gst/gstutils.h:
10583           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10584
10585 2004-03-30  Benjamin Otte  <otte@gnome.org>
10586
10587         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10588           set the offset of the buffer to the requested offset
10589         * gst/elements/gsttypefind.c: (stop_typefinding):
10590           revert patch 1.18 (which I unfortunately don't know the reason for).
10591           This is needed to allow downstream elements to seek. Otherwise
10592           typefind might overwrite a previous seek by downstream elements.
10593           This lead to errors with id3tag and typefind on some mp3s.
10594         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10595         (gst_entry_scheduler_iterate):
10596           be more verbose when debugging
10597
10598 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10599
10600         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10601           make sure we don't get NULL strings
10602
10603 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10604
10605         * gst/gstcaps.c:
10606         * gst/gstelement.c:
10607         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10608         * gst/gstindex.c: (gst_index_resolver_get_type),
10609         (gst_index_get_type), (gst_index_factory_get_type):
10610         * gst/gstinfo.c:
10611         * gst/gstpad.c:
10612         * gst/gstplugin.c:
10613         * gst/gsturi.c: (gst_uri_handler_get_type):
10614         * gst/gstvalue.c:
10615           first batch of documentation fixes
10616
10617 2004-03-29  David Schleef  <ds@schleef.org>
10618
10619         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10620         * docs/gst/gstreamer-docs.sgml:  More hacking
10621         * docs/gst/gstreamer-sections.txt:
10622         * docs/gst/tmpl/cothreads_compat.sgml:
10623         * docs/gst/tmpl/gstcaps.sgml:
10624         * docs/gst/tmpl/gstclock.sgml:
10625         * docs/gst/tmpl/gstelement.sgml:
10626         * docs/gst/tmpl/gstevent.sgml:
10627         * docs/gst/tmpl/gstpad.sgml:
10628         * docs/gst/tmpl/gstutils.sgml:
10629         * docs/gst/tmpl/gstxml.sgml:
10630         * docs/gst/tmpl/gthread-cothreads.sgml:
10631         * docs/random/ds/0.9-suggested-changes:
10632         * gst/elements/gstfakesink.h: doc fixes
10633         * gst/elements/gstfakesrc.h: doc fixes
10634         * gst/gstcaps.c: doc fixes
10635         * gst/gstcaps.h: doc fixes
10636         * gst/gstelement.c: doc fixes
10637         * gst/gstelement.h: doc fixes
10638         * gst/gstindex.c: doc fixes
10639         * gst/gstinfo.c: doc fixes
10640         * gst/gstpad.c: doc fixes
10641         * gst/gstpad.h: doc fixes
10642         * gst/gstplugin.c: doc fixes
10643         * gst/gsttypefind.h: doc fixes
10644         * gst/gsturi.c: doc fixes
10645         * gst/gstvalue.c: doc fixes
10646
10647 2004-03-29  Colin Walters  <walters@redhat.com>
10648
10649         * gst/registries/gstxmlregistry.c (get_time)
10650         (plugin_times_older_than_recurse):
10651         Use the result of stat to determine whether a path is a file,
10652         so we don't attempt to opendir() files.
10653
10654 2004-03-29  Benjamin Otte  <otte@gnome.org>
10655
10656         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10657           print caps in debugging output when setting caps failed
10658         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10659         (schedule_next_element), (get_buffer), (run_chainhandler),
10660         (element_may_start), (gst_entry_scheduler_chain_handler),
10661         (gst_entry_scheduler_get_handler),
10662         (gst_entry_scheduler_state_transition),
10663         (gst_entry_scheduler_pad_link):
10664           make this scheduler a testcase for mandatory
10665           discont-before-first-buffer which is needed if we want to allow apps
10666           to release the sound device.
10667           add SCHED_ASSERT macro to print scheduler state before an assertion
10668           triggers.
10669
10670 2004-03-29  Benjamin Otte  <otte@gnome.org>
10671
10672         * COPYING:
10673           replace by LGPL (former COPYING.LIB). The core is completely
10674           licensed LGPL.
10675         * COPYING.LIB:
10676           remove
10677
10678 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10679
10680         * po/af.po:
10681         * po/sv.po:
10682           updated Afrikaans and Swedish
10683
10684 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10685
10686         * po/LINGUAS:
10687         * po/az.po:
10688           adding Azerbaijani (Mətin Əmirov)
10689
10690 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10691
10692         * gst/gstelement.h: 
10693         * gst/gstelement.c (gst_element_set_time_delay): New function for
10694         setting element time taking into account a hardware buffering
10695         delay.
10696         (gst_element_set_time): Now just an invocation of
10697         gst_element_set_time_delay.
10698         * gst/gstclock.h: 
10699         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10700         allowing to set event times in the future.
10701         (gst_clock_get_event_time): Now just an invocation of
10702         gst_clock_get_event_time_delay.
10703
10704 2004-03-28  Benjamin Otte  <otte@gnome.org>
10705
10706         * gst/gstbin.c: (gst_bin_set_element_sched),
10707         (gst_bin_unset_element_sched):
10708           don't add decoupled elements to schedulers - otherwise it's
10709           impossible to control if a link to a decoupled element was already
10710           removed from a scheduler or not.
10711         * gst/schedulers/cothreads_compat.h:
10712         * gst/schedulers/gthread-cothreads.h:
10713           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10714           is no "unused" warning.
10715         * gst/schedulers/Makefile.am:
10716         * gst/schedulers/entryscheduler.c:
10717           add new scheduler, based on ideas from talking to David and Martin.
10718           It's supposed to be small and correct. Currently it's also slow (but
10719           it's not noticable)
10720         * examples/retag/retag.c: (main):
10721         * testsuite/bytestream/test1.c: (main):
10722           fix missing NULLs at end of variadic functions
10723         * testsuite/elements/.cvsignore:
10724           update
10725
10726 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10727
10728         * gst/gstevent.h:
10729         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10730
10731 2004-03-25  David Schleef  <ds@schleef.org>
10732
10733         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10734         * docs/gst/tmpl/gstaggregator.sgml:
10735         * docs/gst/tmpl/gstautoplugfactory.sgml:
10736         * docs/gst/tmpl/gstbin.sgml:
10737         * docs/gst/tmpl/gstbuffer.sgml:
10738         * docs/gst/tmpl/gstbufferstore.sgml:
10739         * docs/gst/tmpl/gstfakesink.sgml:
10740         * docs/gst/tmpl/gstfakesrc.sgml:
10741         * docs/gst/tmpl/gstmd5sink.sgml:
10742         * docs/gst/tmpl/gstreamer-unused.sgml:
10743         * docs/gst/tmpl/gstsearchfuncs.sgml:
10744         * docs/gst/tmpl/gstshaper.sgml:
10745         * docs/gst/tmpl/gstspider.sgml:
10746         * docs/gst/tmpl/gsttee.sgml:
10747         * docs/gst/tmpl/gstutils.sgml:
10748         * docs/gst/tmpl/gstvalue.sgml:
10749         * docs/gst/tmpl/gstxml.sgml:
10750         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10751         and we don't support it.
10752         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10753         (gst_use_threads), (gst_has_threads): same
10754         * gst/gstthreaddummy.c: same
10755         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10756         * gst/autoplug/gstspider.h: same
10757         * gst/elements/gstaggregator.h: Remove bogus function from header
10758         * gst/elements/gstfakesink.h: same
10759         * gst/elements/gstfakesrc.h: same
10760         * gst/elements/gstmd5sink.h: same
10761         * gst/elements/gstshaper.h: same
10762         * gst/elements/gsttee.h: same
10763         * gst/gstbin.c: doc fixes
10764         * gst/gstbin.h: Remove unused definition.
10765         * gst/gstbuffer.c: doc fixes
10766         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10767         * gst/gstfilter.c: doc fixes
10768         * gst/gsttag.c: doc fixes
10769         * gst/gstvalue.c: doc fixes
10770
10771 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10772
10773         * docs/pwg/advanced-types.xml:
10774           Document typefinding.
10775         * docs/pwg/other-oneton.xml:
10776           Document one-to-n elements, demuxers and parsers.
10777
10778 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10779
10780         reviewed by: David Schleef  <ds@schleef.org>
10781
10782         * configure.ac: Check bison version (bug #127838)
10783
10784 2004-03-25  David Schleef  <ds@schleef.org>
10785
10786         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10787         * docs/gst/gstreamer-sections.txt:
10788         * docs/gst/tmpl/gstautoplug.sgml:
10789         * docs/gst/tmpl/gststaticautoplug.sgml:
10790         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10791         * docs/gst/tmpl/gstutils.sgml:
10792         * docs/gst/tmpl/gstxml.sgml:
10793
10794 2004-03-24  David Schleef  <ds@schleef.org>
10795
10796         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10797         manual being such complete crap, that I decided to do major
10798         hacking of it.  This checkin replaces any fine tuning that
10799         may have been done previously, with the benefit of actually
10800         being complete for much of the API that was changed since
10801         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10802         * docs/gst/gstreamer-sections.txt:
10803         * docs/gst/tmpl/GstBin.sgml:
10804         * docs/gst/tmpl/GstBuffer.sgml:
10805         * docs/gst/tmpl/GstCaps.sgml:
10806         * docs/gst/tmpl/GstClock.sgml:
10807         * docs/gst/tmpl/GstCompat.sgml:
10808         * docs/gst/tmpl/GstData.sgml:
10809         * docs/gst/tmpl/GstElement.sgml:
10810         * docs/gst/tmpl/GstEvent.sgml:
10811         * docs/gst/tmpl/GstIndex.sgml:
10812         * docs/gst/tmpl/GstStructure.sgml:
10813         * docs/gst/tmpl/GstTag.sgml:
10814         * docs/gst/tmpl/cothreads.sgml:
10815         * docs/gst/tmpl/cothreads_compat.sgml:
10816         * docs/gst/tmpl/gettext.sgml:
10817         * docs/gst/tmpl/grammar.tab.sgml:
10818         * docs/gst/tmpl/gst-i18n-app.sgml:
10819         * docs/gst/tmpl/gst-i18n-lib.sgml:
10820         * docs/gst/tmpl/gst.sgml:
10821         * docs/gst/tmpl/gst_private.sgml:
10822         * docs/gst/tmpl/gstaggregator.sgml:
10823         * docs/gst/tmpl/gstarch.sgml:
10824         * docs/gst/tmpl/gstatomic.sgml:
10825         * docs/gst/tmpl/gstatomic_impl.sgml:
10826         * docs/gst/tmpl/gstbin.sgml:
10827         * docs/gst/tmpl/gstbuffer.sgml:
10828         * docs/gst/tmpl/gstbufferstore.sgml:
10829         * docs/gst/tmpl/gstcaps.sgml:
10830         * docs/gst/tmpl/gstclock.sgml:
10831         * docs/gst/tmpl/gstcompat.sgml:
10832         * docs/gst/tmpl/gstconfig.sgml:
10833         * docs/gst/tmpl/gstcpu.sgml:
10834         * docs/gst/tmpl/gstdata.sgml:
10835         * docs/gst/tmpl/gstdata_private.sgml:
10836         * docs/gst/tmpl/gstelement.sgml:
10837         * docs/gst/tmpl/gstenumtypes.sgml:
10838         * docs/gst/tmpl/gsterror.sgml:
10839         * docs/gst/tmpl/gstevent.sgml:
10840         * docs/gst/tmpl/gstfakesink.sgml:
10841         * docs/gst/tmpl/gstfakesrc.sgml:
10842         * docs/gst/tmpl/gstfilesink.sgml:
10843         * docs/gst/tmpl/gstfilter.sgml:
10844         * docs/gst/tmpl/gstindex.sgml:
10845         * docs/gst/tmpl/gstinfo.sgml:
10846         * docs/gst/tmpl/gstinterface.sgml:
10847         * docs/gst/tmpl/gstlog.sgml:
10848         * docs/gst/tmpl/gstmacros.sgml:
10849         * docs/gst/tmpl/gstmarshal.sgml:
10850         * docs/gst/tmpl/gstmd5sink.sgml:
10851         * docs/gst/tmpl/gstmultifilesrc.sgml:
10852         * docs/gst/tmpl/gstobject.sgml:
10853         * docs/gst/tmpl/gstpad.sgml:
10854         * docs/gst/tmpl/gstparse.sgml:
10855         * docs/gst/tmpl/gstpipeline.sgml:
10856         * docs/gst/tmpl/gstplugin.sgml:
10857         * docs/gst/tmpl/gstpluginfeature.sgml:
10858         * docs/gst/tmpl/gstqueue.sgml:
10859         * docs/gst/tmpl/gstreamer-unused.sgml:
10860         * docs/gst/tmpl/gstregistry.sgml:
10861         * docs/gst/tmpl/gstregistrypool.sgml:
10862         * docs/gst/tmpl/gstscheduler.sgml:
10863         * docs/gst/tmpl/gstsearchfuncs.sgml:
10864         * docs/gst/tmpl/gstshaper.sgml:
10865         * docs/gst/tmpl/gstspider.sgml:
10866         * docs/gst/tmpl/gstspideridentity.sgml:
10867         * docs/gst/tmpl/gststructure.sgml:
10868         * docs/gst/tmpl/gstsystemclock.sgml:
10869         * docs/gst/tmpl/gsttag.sgml:
10870         * docs/gst/tmpl/gsttaginterface.sgml:
10871         * docs/gst/tmpl/gsttee.sgml:
10872         * docs/gst/tmpl/gstthread.sgml:
10873         * docs/gst/tmpl/gsttrace.sgml:
10874         * docs/gst/tmpl/gsttrashstack.sgml:
10875         * docs/gst/tmpl/gsttypefind.sgml:
10876         * docs/gst/tmpl/gsttypes.sgml:
10877         * docs/gst/tmpl/gsturi.sgml:
10878         * docs/gst/tmpl/gsturitype.sgml:
10879         * docs/gst/tmpl/gstutils.sgml:
10880         * docs/gst/tmpl/gstvalue.sgml:
10881         * docs/gst/tmpl/gstversion.sgml:
10882         * docs/gst/tmpl/gstxml.sgml:
10883         * docs/gst/tmpl/gstxmlregistry.sgml:
10884         * docs/gst/tmpl/gthread-cothreads.sgml:
10885         * docs/gst/tmpl/types.sgml:
10886
10887 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10888
10889         * docs/pwg/other-sink.xml:
10890         * docs/pwg/other-source.xml:
10891           Documentation on how to write source and sink elements. Other
10892           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10893           manager, autoplugger) are all still pending.
10894
10895 2004-03-25  Benjamin Otte  <otte@gnome.org>
10896
10897         * testsuite/elements/Makefile.am:
10898         * testsuite/elements/gst-compprep-check:
10899           add check to make sure gst-compprep works
10900         * testsuite/elements/gst-inspect-check.in:
10901           improve initialization output
10902         * testsuite/Makefile.am:
10903         * testsuite/gst-inspect-check:
10904           remove old file
10905
10906 2004-03-24  David Schleef  <ds@schleef.org>
10907
10908         * testsuite/elements/Makefile.am:
10909         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10910         to the testsuite.
10911
10912 2004-03-24  Benjamin Otte  <otte@gnome.org>
10913
10914         * libs/gst/control/dparam.c: (gst_dparam_attach),
10915         (gst_dparam_detach):
10916         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10917           fix lvalue casts for real
10918
10919 2004-03-24  Benjamin Otte  <otte@gnome.org>
10920
10921         * gst/schedulers/gstbasicscheduler.c:
10922         (gst_basic_scheduler_src_wrapper):
10923         * gst/schedulers/gstoptimalscheduler.c:
10924         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10925         (pad_clear_queued), (gst_opt_scheduler_add_element),
10926         (gst_opt_scheduler_remove_element):
10927           fix GStreamer to not have issues with lvalue casts anymore (fixes
10928           #136841)
10929
10930 2004-03-24  Benjamin Otte  <otte@gnome.org>
10931
10932         * gst/gstelement.c:
10933           add documentation about a gobject quirk where the object hasn't the
10934           correct class pointer set on initialization
10935         * gst/schedulers/gstbasicscheduler.c:
10936         (gst_basic_scheduler_src_wrapper):
10937           make sure to not run into an infinite loop
10938
10939 2004-03-22  Benjamin Otte  <otte@gnome.org>
10940
10941         * gst/gstutils.c: (gst_util_dump_mem):
10942         * gst/gstutils.h:
10943           first argument of gst_util_dump_mem should be const
10944
10945 2004-03-22  Johan Dahlin  <johan@gnome.org>
10946
10947         * gst/gstvalue.h: Clean up a little bit.
10948
10949 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10950
10951         reviewed by Benjamin Otte  <otte@gnome.org>
10952
10953         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10954         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10955         (gst_aggregator_class_init), (gst_aggregator_init):
10956         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10957         (gst_filesrc_dispose), (gst_filesrc_set_location):
10958         * gst/elements/gstidentity.c: (gst_identity_finalize),
10959         (gst_identity_class_init), (gst_identity_chain):
10960         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10961         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10962         (gst_statistics_class_init):
10963         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10964         (gst_tee_get_property):
10965           clean up used memory in this elements correctly on teardown (closes
10966           #137279)
10967
10968 2004-03-20  Colin Walters  <walters@redhat.com>
10969
10970         * gst/registries/gstxmlregistry.c:
10971         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10972         registry saving atomic.
10973
10974 2004-03-20  Colin Walters  <walters@redhat.com>
10975
10976         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10977         Just use
10978         access() instead of actually creating and deleting files.
10979
10980 2004-03-18  David Schleef  <ds@schleef.org>
10981
10982         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10983         (bug #137625)
10984
10985 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10986
10987         * po/sv.po: updated translation (Christian Rose)
10988
10989 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10990
10991         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10992         (gst_filesink_get_query_types), (_do_init),
10993         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10994           return FALSE silently
10995         * po/af.po: updated translation (Petri Jooste)
10996
10997 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10998
10999         * Makefile.am:
11000         * configure.ac:
11001           dist common properly
11002         * po/af.po:
11003         * po/fr.po:
11004         * po/nl.po:
11005         * po/sr.po:
11006         * po/sv.po:
11007           refreshing translations
11008
11009 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11010
11011         * po/LINGUAS:
11012         * po/sv.po:
11013         * po/af.po:
11014           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
11015
11016 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11017
11018         * Makefile.am: use common/release.mak
11019
11020 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11021
11022         * docs/faq/gst-uninstalled:
11023           adding gst-monkeysaudio to the list of possible plugin dirs
11024
11025 2004-03-16  David Schleef  <ds@schleef.org>
11026
11027         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
11028         (gst_init_check_with_popt_table):  Fix some gettext strings to
11029         make them easier to translate.  Required making the strings
11030         non-const.
11031
11032 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11033
11034         * configure.ac: bump nano to 1
11035
11036 === release 0.8.0 ===
11037
11038 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11039
11040         * configure.ac: release 0.8.0, "Executive Slacks"
11041
11042 2004-03-16  Johan Dahlin  <johan@gnome.org>
11043
11044         * gst/schedulers/gstoptimalscheduler.c
11045         (gst_opt_scheduler_pad_unlink): Remove double ;,
11046         spotted by Scott Wheeler
11047
11048 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11049
11050         * configure.ac: bump libtool version
11051
11052 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11053
11054         * gst/gstcaps.h:
11055         * gst/gststructure.h:
11056           add reserved padding
11057
11058 2004-03-15  Benjamin Otte  <otte@gnome.org>
11059
11060         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11061           set the first parameter for select call correctly.
11062           (fixes #137230)
11063
11064 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11065
11066         * *.c,*.h: don't mix tabs and spaces
11067
11068 2004-03-15  Johan Dahlin  <johan@gnome.org>
11069
11070         * gst/schedulers/gstoptimalscheduler.c
11071         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11072         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11073
11074         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11075         
11076 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11077
11078         * testsuite/Rules:
11079           fix gst-register rules
11080
11081 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11082
11083         * testsuite/Rules:
11084           use versioned gst-register
11085
11086 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11087
11088         * docs/libs/gstreamer-libs-sections.txt:
11089           remove </SUBSECTION>
11090         * gst/gstplugin.c:
11091         * gst/gstregistry.c: (gst_registry_add_plugin):
11092         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11093         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11094           add debugging and fix some comment blocks
11095
11096 2004-03-15  Johan Dahlin  <johan@gnome.org>
11097
11098         * *.h: Revert indent changes.
11099         
11100 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11101
11102         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11103           g_error_free the g_error
11104         * tools/gst-feedback-m.m:
11105           check for other versions of gstreamer
11106         * tools/gst-indent:
11107           use sh, not bash
11108
11109 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11110
11111         * tools/gst-register.c: do not spill paths when registries are not
11112           writable, until we fix the "user running gst-register" case.
11113
11114 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11115
11116         * *.c, *.h: commit of gst-indent run on core
11117
11118 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11119
11120         * tools/gst-indent:
11121         * tools/Makefile.am:
11122           add our indentation style as a script
11123
11124 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11125
11126         * po/sr.po:
11127         * po/LINGUAS:
11128           added Serbian translation
11129
11130 2004-03-13  Benjamin Otte  <otte@gnome.org>
11131
11132         * gst/gstelement.c:
11133           add documentation note about gst_element_found_tags_for_pad not
11134           being usable in getfunctions. (see #137042)
11135
11136 2004-03-12  David Schleef  <ds@schleef.org>
11137
11138         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11139         change API right now!  Readd gst_caps_is_simple() macro.
11140         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11141         uninitialized variable.  I'd bet this caused crashes.
11142         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11143
11144 2004-03-12  Johan Dahlin  <johan@gnome.org>
11145
11146         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11147         * gst/gstcaps.h: Clean up
11148
11149         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11150         _gst_caps_initalize()
11151
11152         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11153         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11154
11155         * gst/gststructure.c (gst_structure_get_type): Ditto
11156
11157         * gst/gststructure.h: Ditto
11158         
11159 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11160
11161         * gst/gstqueue.c: (gst_queue_init):
11162           Reset default max. values in queues. Reason is simply to avoid
11163           braindead use. If you want wider values, use the properties. The
11164           default is supposed to always work. Wider values would make this
11165           beast a memory hog by default (250 full-PAL RGB32 video frames?
11166           That's 440 MB! No thank you).
11167
11168 2004-03-10  David Schleef  <ds@schleef.org>
11169
11170         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11171         were found.  (bug #136793)
11172
11173 2004-03-10  Johan Dahlin  <johan@gnome.org>
11174
11175         * gst/schedulers/gstoptimalscheduler.c
11176         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11177         links to elements within the same group, so we can finally remove
11178         that annoying warning. Refactor the code a little bit
11179         (group_dec_links_for_element): Split out
11180
11181 2004-03-09  David Schleef  <ds@schleef.org>
11182
11183         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11184         (bug #134863)
11185
11186 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11187
11188         * configure.ac: first bug fix due to major/minor bump
11189
11190 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11191
11192         * configure.ac: bump nano to 1
11193
11194 === release 0.7.6 ===
11195
11196 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11197
11198         * NEWS:
11199         * RELEASE:
11200         * configure.ac:
11201           releasing 0.7.6, "Almost"
11202         * po/fr.po:
11203         * po/nl.po:
11204         * tools/Makefile.am:
11205         * tools/gst-feedback-m.m:
11206           unversioned source
11207
11208 2004-03-09  Johan Dahlin  <johan@gnome.org>
11209
11210         Reviewed by: Thomas Vander Stichele
11211
11212         * gst/gstelement.c (gst_element_class_init): register second
11213         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11214         language bindings can (de)marshall correctly.
11215
11216         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11217
11218         * gst/gsterror.c (gst_g_error_get_type): New function
11219
11220         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11221         with VOID:OBJECT,OBJECT,STRING 
11222
11223 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11224
11225         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11226         Free a leaked g_timer on early returns.
11227
11228 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11229
11230         * docs/pwg/advanced-types.xml:
11231           Add cinepak description.
11232
11233 2004-03-07  David Schleef  <ds@schleef.org>
11234
11235         * docs/random/mimetypes:  Added cinepak description
11236
11237 2004-03-07  Andy Wingo  <wingo@pobox.com>
11238
11239         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11240
11241         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11242         there are no links to other groups when a group is destroyed.
11243         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11244         removed from a group, make sure the link count to elements linked
11245         to other pads is appropriately decremented. This really fixes
11246         #135672.
11247
11248         The 1.60->1.61 patch has been reapplied in light of this fix.
11249
11250         * gst/gstelement.c (gst_element_dispose): Really protect against
11251         multiple invocations this time.
11252
11253 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11254
11255         * docs/gst/gstreamer-sections.txt:
11256         * docs/gst/tmpl/gsttag.sgml:
11257           remove some deprecated functions, document some existing ones
11258         * gst/gsttag.c: (gst_tag_get_flag):
11259         * gst/gsttag.h:
11260           add accessor function
11261
11262 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11263
11264         * docs/gst/gstreamer-sections.txt:
11265         * docs/gst/tmpl/gsttag.sgml:
11266         * docs/gst/tmpl/gstxml.sgml:
11267         * gst/gsttag.c: (gst_tag_get_flag):
11268         * gst/gsttag.h:
11269
11270 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11271
11272         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11273         leak
11274
11275 2004-03-05  David Schleef  <ds@schleef.org>
11276
11277         * REQUIREMENTS: Add bison and flex.
11278         * configure.ac: Fix comment about bison.
11279         * docs/random/ds/0.9-suggested-changes: yer ma
11280         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11281
11282 2004-03-05  Benjamin Otte  <otte@gnome.org>
11283
11284         * gst/gstelement.c: (gst_element_error_full):
11285           revert recent recursive state changing commit - messing with other
11286           elements' states is evil and should be done by apps only.
11287
11288 2004-03-05  Benjamin Otte  <otte@gnome.org>
11289
11290         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11291           check for empty intersection instead of NULL caps
11292         (gst_element_get_compatible_pad_filtered):
11293           remove old workaround that is only a bug nowadays
11294
11295 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11296
11297         * gst/gstelement.c: (gst_element_error_full):
11298           make elements try to recursively change state to PAUSED on all
11299           parents after an error to suppress ensuing warnings
11300         * gst/parse/grammar.y:
11301           make it check if it was able to sync the state, and throw an error
11302           if not, so stuff like
11303           oggdemux ! vorbisdec ! osssink gets caught
11304
11305 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11306
11307         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11308           it contains lib64; use AS_AC_EXPAND to handle it properly
11309
11310 2004-03-05  David Schleef  <ds@schleef.org>
11311
11312         * gst/gstcpuid_i386.s:  Remove unused code
11313         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11314         (gst_getbits_newbuf): Remove MMX code
11315         * libs/gst/getbits/getbits.h: Remove MMX code
11316
11317 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11318
11319         * debian/.cvsignore:
11320         * debian/README.Debian:
11321         * debian/changelog:
11322         * debian/control:
11323         * debian/control.in:
11324         * debian/copyright:
11325         * debian/gstreamer-core-libs-dev.files:
11326         * debian/gstreamer-core-libs.files:
11327         * debian/gstreamer-core.files:
11328         * debian/gstreamer-core.postinst:
11329         * debian/gstreamer-core.postrm:
11330         * debian/gstreamer-doc.files:
11331         * debian/gstreamer-doc.links:
11332         * debian/gstreamer-doc.lintian:
11333         * debian/gstreamer-runtime.files:
11334         * debian/gstreamer-runtime.manpages:
11335         * debian/gstreamer-runtime.postinst:
11336         * debian/gstreamer-runtime.postrm:
11337         * debian/gstreamer-tools.files:
11338         * debian/gstreamer-tools.manpages:
11339         * debian/libgstreamer-dev.files:
11340         * debian/libgstreamer0.4.1.files:
11341         * debian/libgstreamerVERSION.files:
11342         * debian/rules:
11343         Debian package info not maintained here.
11344
11345 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11346
11347         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11348         * gst/gstbin.c: (gst_bin_class_init):
11349         * gst/gstelement.c: (gst_element_class_init):
11350         * gst/gstindex.c: (gst_index_class_init):
11351         * gst/gstobject.c: (gst_object_class_init),
11352         (gst_signal_object_class_init):
11353         * gst/gstpad.c: (gst_pad_template_class_init):
11354         * gst/gstregistry.c: (gst_registry_class_init):
11355         * gst/gsturi.c: (gst_uri_handler_base_init):
11356         * gst/gstxml.c: (gst_xml_class_init):
11357         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11358         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11359           make all signal names use dashes instead of underscore
11360
11361 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11362
11363         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11364
11365 2004-03-03  Benjamin Otte  <otte@gnome.org>
11366
11367         * gst/schedulers/gstoptimalscheduler.c:
11368           revert last commit by Andy Wingo. It causes segfaults on unreffing
11369           in Rhythmbox. (see bug #135672)
11370
11371 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11372
11373         * po/fr.po: fix typo
11374
11375 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11376
11377         * tools/gst-inspect.c: (main): 
11378         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11379
11380 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11381
11382         * configure.ac:
11383           get GLIB_ONLY and POPT flags for the nonversioned binaries
11384         * tools/Makefile.am:
11385           use them
11386
11387 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11388
11389         * gst/gst.c: (init_post):
11390           change so that GST_REGISTRY now is where the global registry gets
11391           saved, since that is where plugins now get attached to first, and
11392           spilled over to the user registry.  Note that in the case of using
11393           GST_REGISTRY env var, we don't want to affect any real registries
11394           beyond the one given by this var, and thus we don't set a user
11395           registry to spill to.  So make sure GST_REGISTRY is writable.
11396
11397 2004-03-01  David Schleef  <ds@schleef.org>
11398
11399         * AUTHORS:  Added some names.  Add yourself if you're missing.
11400
11401 2004-03-01  David Schleef  <ds@schleef.org>
11402
11403         * MAINTAINERS: Add
11404
11405 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11406
11407         * configure.ac:
11408           remove whitespace
11409         * docs/gst/tmpl/gstbuffer.sgml:
11410         * docs/gst/tmpl/gstdata.sgml:
11411         * docs/gst/tmpl/gstreamer-unused.sgml:
11412         * docs/gst/tmpl/gstxml.sgml:
11413           doc update
11414         * docs/manuals.mak:
11415           add a FIXME
11416         * docs/pwg/intro-preface.xml:
11417         * docs/pwg/pwg.xml:
11418           remove GNOME
11419         * gst/gst.c: (init_post):
11420           try GST_PLUGIN_PATH paths for the _global_registry first
11421         * gst/gstelement.h:
11422           add the error message as well, otherwise (null) debug info doesn't
11423           make much sense
11424         * tools/gst-register.c: (main):
11425           spill paths to next registry if this registry is not writable
11426         * po/fr.po:
11427         * po/nl.po:
11428           translation updates
11429
11430 2004-03-01  Johan Dahlin  <johan@gnome.org>
11431
11432         * gst/gstbuffer.c (_gst_buffer_initialize): 
11433         * gst/gstdata.c (gst_data_get_type): 
11434         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11435         instead of ref, since some applications that uses GBoxed
11436         routines depends on a function that actually returns a copy.
11437
11438 2004-02-27  Benjamin Otte  <otte@gnome.org>
11439
11440         * gst/gstbuffer.h:
11441           remove gst_buffer_free, use gst_data_unref
11442         * gst/gstdata.c: (gst_data_get_type):
11443           use refcounting in GstData GBoxed registration
11444         * gst/gstdata.h:
11445           remove gst_data_free, use gst_data_unref
11446
11447 2004-02-27  Johan Dahlin  <johan@gnome.org>
11448
11449         * gst/gstdata.c (gst_data_get_type): New function, register
11450         GstData as a GBoxed type.
11451
11452         * gst/gstdata.h (GST_TYPE_DATA): New macro
11453
11454 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11455
11456         * Makefile.am:
11457         * gstreamer.spec.in:
11458           put back RELEASE
11459         * gst/Makefile.am:
11460           clean up non-disting of built files
11461         * testsuite/debug/commandline.c:
11462           test fix for option rename
11463
11464 2004-02-26  David Schleef  <ds@schleef.org>
11465
11466         * configure.ac:  We don't really need glib-2.3.  Also remove
11467         some unneeded checks for library functions.
11468         * gst/Makefile.am:  Instead, we need to not dist files created
11469         by glib-genmarshal.
11470
11471 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11472
11473         * configure.ac:
11474           bump glib required version to 2.3.0 for g_value_takes_boxed
11475
11476  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11477
11478         * common/m4/gst-docs.m4
11479         change flavour text from enable to disable as enable is our default
11480         closes bug Bug 135304
11481
11482 === release 0.7.5 ===
11483  
11484  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11485  
11486         * NEWS:
11487           instate NEWS file
11488         * Makefile.am:
11489         * gstreamer.spec.in:
11490         * RELEASE:
11491           put back release
11492         * configure.ac:
11493         * docs/random/release:
11494           more updates
11495
11496 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11497
11498         * gst/gsttag.c: (_gst_tag_initialize):
11499         * po/fr.po:
11500         * po/nl.po:
11501           remove hyphen from codec tags
11502
11503 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11504
11505         * gst/parse/Makefile.am:
11506           fix dependency so that a make from a clean build works the first
11507           time
11508
11509 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11510
11511         * docs/random/release:
11512           update release strategy
11513         * po/fr.po:
11514           auto-update po file
11515         * po/nl.po:
11516           update dutch translation
11517
11518 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11519
11520         * docs/manual/debugging.xml:
11521         fix manual for new debugging system
11522
11523 2004-02-25  Andy Wingo  <wingo@pobox.com>
11524
11525         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11526         gst_pad_link_prepare. Please email the list with specific reasons
11527         for reverting.
11528
11529 2004-02-24  Andy Wingo  <wingo@pobox.com>
11530
11531         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11532         invocations.
11533
11534         * gst/schedulers/gstoptimalscheduler.c:
11535         I added a mess of prototypes at the top of the file by way of
11536         documentation. Some of the operations on chains and groups were
11537         re-organized.
11538
11539         (create_group): Added a type argument so if the group is enabled,
11540         the setup_group_scheduler knows what to do.
11541         (group_elements): Added a type argument here, too, to be passed on
11542         to create_group.
11543         (group_element_set_enabled): If an unlinked PLAYING element is
11544         added to a bin, we have to create a new group to hold the element,
11545         and this function will be called before the group is added to the
11546         chain. Thus we have a valid case for group->chain==NULL. Instead
11547         of calling chain_group_set_enabled, just set the flag on the group
11548         (the chain's status will be set when the group is added to it).
11549         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11550         Setup the group scheduler when the group is enabled, not
11551         specifically when an element goes PAUSED->PLAYING. This means
11552         PLAYING elements can be added, linked, and scheduled into a
11553         PLAYING pipeline, as was intended.
11554         (add_to_group): Don't ref the group twice. I don't know when this
11555         double-ref got in here. Removing it has the potential to cause
11556         segfaults if other parts of the scheduler are buggy. If you find
11557         that the scheduler is segfaulting for you, put in an extra ref
11558         here and see if that hacks over the underlying issue. Of course,
11559         then find out what code is unreffing a group it doesn't own...
11560         (create_group): Make the extra refcount floating, and remove it
11561         after adding the element. This means that...
11562         (unref_group): Destroy when the refcount reaches 0, not 1, like
11563         every other refcounted object in the known universe.
11564         (remove_from_group): When a group becomes empty, set it to be not
11565         active, and remove it from its chain. Don't unref it again,
11566         there's no floating reference any more.
11567         (destroy_group): We have to remove the group from the chain in
11568         remove_from_group (rather than here) to break refcounting cycles
11569         (the chain always has a ref on the group). So assert that
11570         group->chain==NULL.
11571         (ref_group_by_count): Removed, it was commented out anyway.
11572         (merge_chains): Use the remove_from_chain and add_to_chain
11573         primitives to do the reparenting, instead of rolling our own
11574         implementation.
11575         (add_to_chain): The first non-disabled group in the chain's group
11576         list will be the entry point for the chain. Because buffers can
11577         accumulate in loop elements' peer bufpens, we preferentially
11578         schedule loop groups before get groups to avoid unnecessary
11579         execution of get-based groups when the bufpens are already full.
11580         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11581         (get_group_schedule_function): Ditto.
11582         (loop_group_schedule_function): Ditto.
11583         (gst_opt_scheduler_loop_wrapper): Ditto.
11584         (gst_opt_scheduler_iterate): Ditto.
11585
11586         I understand the opt scheduler now, yippee!
11587
11588         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11589         (gst_pad_get_name, gst_pad_set_chain_function) 
11590         (gst_pad_set_get_function, gst_pad_set_event_function) 
11591         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11592         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11593         (gst_pad_set_query_function, gst_pad_get_query_types) 
11594         (gst_pad_get_query_types_default) 
11595         (gst_pad_set_internal_link_function) 
11596         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11597         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11598         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11599         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11600         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11601         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11602         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11603         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11604         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11605         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11606         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11607         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11608         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11609         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11610         argument checks, and some doc fixes.
11611
11612         (gst_pad_custom_new_from_template): Um, does anyone
11613         use these functions? Actually make a custom pad instead of a
11614         normal one.
11615         (gst_pad_try_set_caps): Transpose some checks.
11616         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11617         the pad is in negotiation.
11618         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11619         
11620         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11621
11622         * gst/gstelement.h: 
11623         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11624         on the list.
11625
11626 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11627
11628         * gst/gstbin.c: (gst_bin_add):
11629           add error for not being able to add elements
11630
11631 2004-02-22  Julien MOUTTE <julien@moutte.net>
11632
11633         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11634         audio-codec and video-codec.
11635
11636 2004-02-22  Benjamin Otte  <otte@gnome.org>
11637
11638         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11639
11640         * autogen.sh:
11641           replace test -e with test -x for mkinstalldirs to be more portable.
11642           (fixes #134816)
11643
11644 2004-02-22  Benjamin Otte  <otte@gnome.org>
11645
11646         * gst/gstpad.c:
11647           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11648           too noisy
11649         * gst/gsttag.c: (_gst_tag_initialize):
11650         * gst/gsttag.h:
11651           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11652         * libs/gst/control/dparam.c: (gst_dparam_attach):
11653         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11654           check that types for attached dparams match
11655
11656 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11657
11658         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11659         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11660         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11661           fix errors
11662
11663 2004-02-20  Andy Wingo  <wingo@pobox.com>
11664
11665         * gst/gstbin.c:
11666         * gst/gstbuffer.c:
11667         * gst/gstplugin.c:
11668         * gst/registries/gstxmlregistry.c: 
11669         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11670
11671         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11672         (gst_element_add_pad): DEBUG->INFO, some fixes.
11673         (gst_element_get_compatible_pad_template): Just see if the
11674         templates' caps intersect, not if one is a strict subset of the
11675         other. This conforms more to what gst_pad_link_intersect() does.
11676         (gst_element_class_add_pad_template): Don't memcpy the pad
11677         template, just ref it.
11678         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11679
11680         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11681         (gst_pad_link_filtered): Debug changes.
11682         (gst_pad_link_prepare): New function, consolidated from
11683         can_link_filtered and link_filtered.
11684
11685         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11686         look more like that of the functions in gstelement.c
11687
11688         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11689         object, and return the empty string if object is NULL.
11690
11691         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11692         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11693         LOG, not DEBUG. We still get flex info on debug.
11694
11695         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11696         debug string more verbose.
11697         (plugin_times_older_than): DEBUG->LOG.
11698
11699 2004-02-20  Julien MOUTTE <julien@moutte.net>
11700
11701         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11702         will emit found_tag for each stream they demux with the codec.
11703
11704 2004-02-20  Benjamin Otte  <otte@gnome.org>
11705
11706         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11707           copy navigation event correctly. Check freeing tag lists. 
11708         * gst/gstthread.c: (gst_thread_change_state):
11709           don't abort() on state changing mess - it might happen because of
11710           bugs.
11711         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11712           use boxed functions
11713         * gst/gstvalue.h:
11714           fix GST_VALUE_HOLDS_CAPS
11715
11716 2004-02-19  David Schleef  <ds@schleef.org>
11717
11718         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11719         and use it for GST_FUNCTION.  (bug #134750)
11720
11721 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11722
11723         * po/fr.po:
11724         * po/nl.po:
11725           updating translations
11726
11727 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11728
11729         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11730
11731 2004-02-18  kost@imn.htwk-leipzig.de
11732
11733         reviewed by: David Schleef  <ds@schleef.org>
11734
11735         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11736         for libgstcontrol.
11737
11738 2004-02-18  David Schleef  <ds@schleef.org>
11739
11740         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11741         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11742         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11743         * tools/gst-inspect.c: (print_element_info): Support dumping of
11744         double dparam information.
11745
11746 2004-02-17  David Schleef  <ds@schleef.org>
11747
11748         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11749         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11750         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11751         Use GST_TYPE_CAPS in signal prototype.
11752         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11753         Convert GST_TYPE_CAPS to boxed.
11754         * gst/gstelement.c: (gst_element_class_init):
11755         Use GST_TYPE_TAG_LIST in signal prototype.
11756         * gst/gstindex.c: (gst_index_class_init):
11757         * gst/gstindex.h:
11758         Add GST_TYPE_INDEX_ENTRY type.
11759         * gst/gstmarshal.list:
11760         Add necessary marshal types.
11761         * gst/gstpad.c: (gst_real_pad_class_init),
11762         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11763         (gst_pad_recover_caps_error):
11764         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11765         * gst/gststructure.c: (_gst_structure_initialize),
11766         (gst_structure_copy), (_gst_structure_copy_conditional):
11767         * gst/gststructure.h:
11768         Convert GST_TYPE_STRUCTURE to boxed.
11769         * gst/gsttag.c: (gst_tag_list_get_type):
11770         * gst/gsttag.h:
11771         Add GST_TYPE_TAG_LIST type.
11772
11773 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11774
11775         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11776         to what we agreed with david.
11777         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11778
11779 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11780
11781         * po/nl.po: update translation
11782
11783 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11784
11785         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11786           throw an error if spider is trying to play a mime type there is
11787           no decoder for
11788         * po/POTFILES.in:
11789           add gst/autoplug/gstspider.c for translation
11790
11791 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11792
11793         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11794         silently when the pad is negotiating.
11795
11796 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11797
11798         * docs/faq/Makefile.am:
11799           add script to run gstreamer uninstalled 
11800         * docs/faq/faq.xml:
11801         * docs/faq/developing.xml:
11802         * docs/faq/gst-uninstalled:
11803           extract script to run gstreamer uninstalled
11804         * docs/manuals.mak:
11805           add EXTRA_SOURCES variable for Makefile.am's to set to
11806           use additional SOURCE files for the doc build
11807
11808 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11809
11810         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11811
11812 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11813
11814         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11815         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11816         an error was thrown by osssink. Basically a state change failure for
11817         an element in a different scheduling group was considered as
11818         successful, which means that caps nego was going on and weird stuff
11819         happened. Like I wrote in the comment there, if someone wants to
11820         revert that please drop me a mail explaining why because I really see
11821         no point in keeping that broken behaviour there.
11822         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11823         be empty, we then return NULL which will trigger a nice error when 
11824         pulling from the pad.
11825
11826 2004-02-13  David Schleef  <ds@schleef.org>
11827
11828         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11829         (gst_dparam_get_property), (gst_dparam_set_property),
11830         (gst_dparam_do_update_default):
11831         * libs/gst/control/dparam.h:
11832         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11833         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11834         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11835         (gst_dpsmooth_do_update_double):
11836         * libs/gst/control/dparam_smooth.h:
11837         * libs/gst/control/dparammanager.c:
11838         (gst_dpman_inline_direct_update):
11839         Add support for double dparams.
11840
11841 2004-02-13  David Schleef  <ds@schleef.org>
11842
11843         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11844         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11845
11846 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11847
11848         reviewed by: David Schleef  <ds@schleef.org>
11849
11850         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11851         (gst_fdsrc_init), (gst_fdsrc_set_property),
11852         (gst_fdsrc_get_property), (gst_fdsrc_get):
11853         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11854         and sends an EOS event if file descriptor reading times out.
11855
11856 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11857
11858         * configure.ac:
11859           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11860
11861 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11862
11863         * configure.ac: pass required libxml version as argument
11864         (bug reported by Christophe Fergeau)
11865
11866 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11867   
11868         * docs/gst/gstreamer-docs.sgml:
11869         * docs/gst/tmpl/gstxml.sgml:
11870         * docs/libs/gstreamer-libs-docs.sgml:
11871           version API docs
11872
11873 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11874
11875         * gst/gstinfo.c:
11876         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11877         (gst_registry_pool_feature_filter):
11878         * gst/gstthread.c: (gst_thread_class_init):
11879         * gst/gstvalue.c:
11880           add includes exposed by building without libxml
11881         * gst/indexers/Makefile.am:
11882           do not build fileindex when LOADSAVE disabled; we should have
11883           a better libxml check later since fileindex depends on xml, not
11884           LOADSAVE or REGISTRY
11885         * libs/gst/control/Makefile.am:
11886           link with m
11887         * tools/Makefile.am:
11888           fix wrong source code for gst-xmlinspect
11889
11890 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11891
11892         * configure.ac:
11893           fix gcov help output
11894           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11895         * docs/random/release:
11896           some updated releasing notes
11897         * gstreamer.spec.in:
11898           more updates
11899
11900 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11901
11902         * docs/faq/faq.xml:
11903         * docs/manual/manual.xml:
11904         * docs/pwg/pwg.xml:
11905         * docs/pwg/titlepage.xml:
11906           put version in documentation
11907
11908 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11909
11910         * tools/Makefile.am: fix man page installation
11911
11912 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11913
11914         * configure.ac:
11915           don't check for libxml when load/save and registry disabled (#105844)
11916         * gstreamer.spec.in:
11917           sync with fedora candidate spec
11918
11919 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11920
11921         * po/fr.po:
11922         * po/nl.po:
11923           replace multidisksrc with multifilesrc
11924
11925 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11926
11927         * po/POTFILES.in:
11928           update to multidisksrc => multifilesrc file renaming (#134145)
11929
11930 2004-02-11  David Schleef  <ds@schleef.org>
11931
11932         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11933         * docs/gst/tmpl/gstpadtemplate.sgml: same
11934         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11935         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11936         fixing dance.
11937         * gst/gstutils.c: Remove disabled code that uses GstProps.
11938         * gst/registries/gstxmlregistry.h: same
11939         * docs/random/ds/0.9-suggested-changes: random notes
11940
11941 2004-02-11  kost@imn.htwk-leipzig.de
11942
11943         reviewed by: David Schleef  <ds@schleef.org>
11944
11945         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11946         initialisation of clock (bug #134128)
11947
11948 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11949
11950         * configure.ac:
11951         * gst/elements/Makefile.am:
11952         * gst/elements/gstelements.c:
11953         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11954         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11955         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11956         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11957         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11958         * gst/elements/gstmultifilesrc.h:
11959           rename multidisksrc to multifilesrc (part of #122200)
11960
11961 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11962
11963         * docs/manuals.mak:
11964           fix automake complaints
11965         * gst-element-check.m4:
11966           fix unquotedness
11967
11968 2004-02-11  David Schleef  <ds@schleef.org>
11969
11970         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11971         * gst/gstatomic_impl.h: Disable sparc implementation.
11972
11973 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11974
11975         * gst-element-check.m4:
11976           fix underquoted macros as reported by automake 1.8.x (#133800)
11977         * configure.ac:
11978           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11979           by autopoint (fixes #132996)
11980
11981 2004-02-10  Andy Wingo  <wingo@pobox.com>
11982
11983         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11984         way to do inheritance.
11985         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11986         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11987         Routine docs.
11988         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11989         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11990         doc.
11991         (gst_pad_unlink, gst_pad_is_linked): Docs.
11992         (gst_pad_renegotiate): A brief description of capsnego.
11993         (gst_pad_try_set_caps): Document.
11994         (gst_pad_try_set_caps_nonfixed): Document.
11995         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11996         (gst_pad_set_parent): Deprecated (although not out of the API).
11997         (gst_pad_get_parent): Deprecated, although many plugins use this.
11998         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11999         are private and will go away in 0.9.
12000         (gst_pad_perform_negotiate): Doc.
12001         (gst_pad_link_unnegotiate): I think this is meant to be static.
12002         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
12003         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
12004         (gst_pad_get_peer): Doc updates.
12005         (gst_pad_caps_change_notify): Doc.
12006         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
12007         (gst_ghost_pad_new): Doc fixes.
12008
12009         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
12010         (gst_object_check_uniqueness): 
12011
12012         * gst/gstelement.c (gst_element_add_pad) 
12013         (gst_element_add_ghost_pad, gst_element_remove_pad) 
12014         (gst_element_remove_ghost_pad, gst_element_get_pad) 
12015         (gst_element_get_static_pad, gst_element_get_pad_list) 
12016         (gst_element_class_get_pad_template_list) 
12017         (gst_element_class_get_pad_template): Work on the docs.
12018         (gst_element_get_pad_template_list): Uses the class method.
12019         (gst_element_get_compatible_pad_template): Docs, and consolidate
12020         some test conditions. 
12021         (gst_element_get_pad_from_template): New static function.
12022         (gst_element_request_compatible_pad): Docs, and work with
12023         non-request compatible templates. 
12024         (gst_element_get_compatible_pad_filtered): Docs and remove
12025         redundant checks.
12026         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
12027         (gst_element_link_filtered, gst_element_link_many) 
12028         (gst_element_link, gst_element_link_pads) 
12029         (gst_element_unlink_many): Docs.
12030
12031 2004-02-05  Andy Wingo  <wingo@pobox.com>
12032
12033         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
12034         s/pointer/boxed/.
12035
12036         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
12037
12038         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
12039         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
12040         with the type=GST_TYPE_CAPS. This allows language bindings to know
12041         what kind of data they're dealing with.
12042
12043         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
12044         to NULL when g_value_init is called. GstCaps, which rolls its own
12045         type implementation, now does the same instead of allocating empty
12046         caps.
12047         (_gst_caps_initialize, _gst_caps_collect_value,
12048         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
12049         table methods. This allows G_VALUE_COLLECT to work.
12050
12051 2004-02-05  Andy Wingo  <wingo@pobox.com>
12052
12053         * configure.ac:
12054         * testsuite/Makefile.am (SUBDIRS): 
12055         * testsuite/ghostpads/Makefile.am: 
12056         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
12057
12058         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
12059         These two routines are the only ones that set
12060         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
12061         pad template. They should be made static, depending on ABI needs.
12062         (gst_real_pad_dispose): Handle the case of ghost pads without a
12063         parent. Assert after dealing with ghost pads that the ghost pad
12064         list is empty.
12065         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12066         set after creation.
12067         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12068         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12069         functions. set_property will call add_ghost_pad/remove_ghost_pad
12070         as appropriate.
12071         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12072
12073         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12074         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12075         (gst_element_remove_pad): Handle ghost pads as well.
12076         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12077         depending on API-stability needs).
12078
12079 2004-02-05  Andy Wingo  <wingo@pobox.com>
12080
12081         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12082         of course they're const
12083
12084 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12085
12086         * tools/Makefile.am:
12087         * tools/gst-feedback:
12088         * tools/gst-feedback-0.7:
12089           make gst-feedback versioned too for consistency
12090
12091 2004-02-11  David Schleef  <ds@schleef.org>
12092
12093         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12094         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12095
12096 2004-02-10  Julien MOUTTE <julien@moutte.net>
12097
12098         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12099         the structure does not contain a valid tag list. Adding a safety check
12100         to remove a noisy warning in that case.
12101
12102 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12103
12104         * gst/gst.c: fix name to be in line with others
12105
12106 2004-02-09  Julien MOUTTE <julien@moutte.net>
12107
12108         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12109         not shout that loud when len is 0. Just return 0 silently.
12110
12111 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12112
12113         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12114         because data_unref has one and I prefer the debug to be symetric.
12115         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12116         were refed when added to the queue and unrefed only once when the queue
12117         was flushed. Now the flush handler unref the buffers two times : first
12118         unref for the ref added when pushing in the queue's tail and second
12119         unref to destroy the flushed buffer.
12120
12121 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12122
12123         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12124
12125 2004-02-06  David Schleef  <ds@schleef.org>
12126
12127         * docs/random/ds/0.9-suggested-changes: Random ramblings
12128         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12129         to int before printing.
12130         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12131         * gst/parse/parse.l: same.  See bug #129600
12132
12133 2004-02-06  David Schleef  <ds@schleef.org>
12134
12135         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12136         (gst_index_add_entry), (gst_index_add_associationv),
12137         (gst_index_add_association): Add gst_index_add_associationv()
12138         and clean up gst_index_add_association(). #127133
12139
12140 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12141
12142         * autogen.sh: check out common with right tag if CVS/Tag exists
12143
12144 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12145
12146         * testsuite/ghostpads/ghostpads.c: (main):
12147           fix testsuite from segfaulting
12148
12149 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12150
12151         * Makefile.am: add release target
12152         * configure.ac: bump nano to 1
12153         * docs/random/release:
12154
12155 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12156
12157         * gst/gstcaps.h:
12158         * gst/gstelement.c: (gst_element_base_class_init),
12159         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12160         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12161         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12162         (gst_real_pad_dispose):
12163         * gst/gststructure.c: (gst_structure_free),
12164         (gst_structure_from_string):
12165           put reverted patch back in
12166         * gst/gstelement.c: (gst_element_remove_pad):
12167           free explicit caps if they're set
12168         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12169           copy the structure when fixating
12170
12171 2004-02-05  David Schleef  <ds@schleef.org>
12172
12173         * gst/gstmarshal.list:
12174         * gst/gstpad.c: (gst_real_pad_class_init),
12175         (_gst_real_pad_fixate_accumulator):
12176         Revert POINTER->BOXED change in signal marshaller.
12177
12178 === release 0.7.4 ===
12179                                                                                 
12180 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12181                                                                                 
12182         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12183         * configure.ac: changed for release
12184
12185 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12186
12187         * gstreamer.spec.in:
12188           bump required version of gtk-doc
12189
12190 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12191
12192         * gst/gstcaps.h:
12193         * gst/gstelement.c: (gst_element_base_class_init),
12194         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12195         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12196         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12197         (gst_real_pad_dispose):
12198         * gst/gststructure.c: (gst_structure_free),
12199         (gst_structure_from_string):
12200           revert patch that breaks applications, reapply after release
12201           to get this fixed properly
12202
12203 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12204
12205         * gst/gsttag.c: (_gst_tag_initialize):
12206         * gst/gsttag.h:
12207           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12208
12209 2004-02-04  David Schleef  <ds@schleef.org>
12210
12211         Fix some memleaks:
12212         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12213         (gst_spider_plug_from_srcpad):
12214         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12215
12216 2004-02-04  David Schleef  <ds@schleef.org>
12217
12218         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12219         a GstRealPad before accessing its structure members.
12220
12221 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12222
12223         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12224         (gst_clock_get_speed):
12225         * gst/gstclock.h:
12226           reset padding, remove unused fields
12227
12228 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12229
12230         * gst/autoplug/gstspideridentity.c:
12231         (gst_spider_identity_sink_loop_type_finding):
12232           use get_allowed_caps, not get_caps (fixes #132519)
12233         * gst/elements/gsttypefind.c: (stop_typefinding):
12234           use correct order when sending buffers and seeking
12235
12236 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12237
12238         * configure.ac:
12239         * gst/gstelement.h:
12240         * gst/gstpad.h:
12241         * gst/gstqueue.h:
12242           upgrade libtool CURRENT, reset padding
12243
12244 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12245
12246         * configure.ac:
12247           bump to prerelease
12248           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12249
12250 2004-02-04  David Schleef  <ds@schleef.org>
12251
12252         * docs/random/ds/0.9-suggested-changes: random notes
12253         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12254         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12255         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12256         expansion.
12257         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12258         (gst_filesink_get_query_types): same
12259         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12260         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12261         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12262         to use new GST_PTR_FORMAT.
12263         * gst/gstelement.h: deprecate function factory macros
12264         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12265         These are our last variadic macros that can't be replaced with
12266         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12267         attempting to deprecate gst_element_clock_wait().
12268         * gst/gstevent.h: same
12269         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12270         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12271         * gst/gstpad.h: deprecate function factory macros similar to above.
12272
12273 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12274
12275         * configure.ac:
12276         * tools/Makefile.am:
12277         * tools/gst-run.c: (popt_callback), (hash_print_key),
12278         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12279         (get_candidates), (main):
12280           add new source file to generate non-versioned wrapper binaries
12281           for our tools.
12282
12283 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12284
12285         * gst/gstevent.c: (_gst_event_free):
12286           actually break; inside the switch statement
12287         * gst/parse/grammar.y:
12288           fix memleak where GValues weren't unset
12289
12290 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12291
12292         * gst/gststructure.c: (gst_structure_from_string):
12293           fix huge memleak
12294         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12295         (new_entry), (gst_type_find_element_chain):
12296         * gst/gstelement.c: (gst_element_base_class_init),
12297         (gst_element_class_set_details):
12298         * gst/gstpad.c: (gst_pad_can_link_filtered):
12299           fix smaller memleaks
12300         * gst/gstpad.c: (gst_real_pad_dispose):
12301           check that explicit caps are gone
12302         * gst/gststructure.c: (gst_structure_free):
12303           actually free the structure
12304         * gst/gstelement.c: (gst_element_clear_pad_caps):
12305           unset explicit caps
12306
12307 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12308
12309         * tools/Makefile.am:
12310           use AM_CFLAGS since all the CFLAGS are the same
12311           use AM_LDFAGS
12312
12313 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12314
12315         * docs/manual/gnome.xml:
12316           expand example a little
12317         * gst/gst.c: (gst_init_with_popt_table),
12318         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12319           make sure popt option displays are done with right textdomain
12320           use GstPoptOption type
12321         * gst/gst.h:
12322           create GstPoptOption type
12323
12324 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12325
12326         * gst/gsterror.c: (_gst_stream_errors_init):
12327         * gst/gsterror.h:
12328           adding error type for no codec
12329         * po/POTFILES.in:
12330           add gst-inspect
12331         * po/nl.po:
12332           update dutch translation
12333         * tools/gst-inspect.c: (print_element_list), (main):
12334           do proper internationalization
12335         * tools/gst-launch.c: (idle_func):
12336           remove commented out function call
12337
12338 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12339
12340         * docs/README:
12341           add some error fixing notes
12342         * docs/gst/gstreamer-sections.txt:
12343           remove double entries
12344         * docs/gst/tmpl/gstbin.sgml:
12345         * docs/gst/tmpl/gstclock.sgml:
12346           remove override
12347         * docs/gst/tmpl/gstelement.sgml:
12348         * docs/gst/tmpl/gstindex.sgml:
12349         * docs/gst/tmpl/gstobject.sgml:
12350         * docs/gst/tmpl/gstpadtemplate.sgml:
12351         * docs/gst/tmpl/gstreamer-unused.sgml:
12352         * docs/gst/tmpl/gsttag.sgml:
12353         * docs/gst/tmpl/gstthread.sgml:
12354         * docs/gst/tmpl/gstxml.sgml:
12355         * gst/gsttag.h:
12356           sync header prototypes with c decls
12357         * gst/gsttaginterface.c:
12358           fix doc headers
12359
12360 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12361
12362         * gst/parse/Makefile.am:
12363         * gst/gstobject.h:
12364           get rid of gstmarshal.h dependency. It's not needed.
12365         * gst/gst.h:
12366         * gst/elements/gstfakesink.c:
12367         * gst/elements/gstfakesrc.c:
12368         * gst/elements/gstidentity.c:
12369         * gst/gstbin.c:
12370         * gst/gstelement.c:
12371         * gst/gstindex.c:
12372         * gst/gstobject.c:
12373         * gst/gstpad.c:
12374         * gst/gstthread.c:
12375         * gst/gstxml.c:
12376         * libs/gst/control/dparam.c:
12377         * libs/gst/control/dparammanager.c:
12378           include gstmarshal.h.
12379         Fixes #132045
12380
12381 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12382
12383         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12384         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12385         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12386         * gst/elements/gstfilesrc.h:
12387           don't ref the filesrc when creating mmaped buffers. Don't keep a
12388           list of not-yet-destroyed buffers.
12389         * gst/gstbuffer.h:
12390           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12391
12392 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12393
12394         * gst/gst.c: (init_pre):
12395           remove textdomain
12396
12397 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12398
12399         * docs/pwg/advanced-events.xml:
12400         * docs/pwg/advanced-scheduling.xml:
12401         * docs/pwg/intro-basics.xml:
12402         * docs/pwg/other-manager.xml:
12403         * docs/pwg/other-nton.xml:
12404         * docs/pwg/other-ntoone.xml:
12405         * docs/pwg/other-oneton.xml:
12406         * docs/pwg/pwg.xml:
12407           All sort of documentation... Forgot what. Point is that I want this
12408           in before I leave. The 'other-*' will be the last section and will
12409           explain issues specific to these type of elements.
12410
12411 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12412
12413         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12414         (gst_filesrc_get_read):
12415           set all the values on buffers that we can
12416
12417 2004-02-02  David Schleef  <ds@schleef.org>
12418
12419         Change usage of isblah() to g_ascii_isblah() to be more locale
12420         independent.  (#133076)
12421         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12422         * gst/gstutils.c:
12423         * gst/parse/parse.l:
12424
12425 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12426
12427         reviewed by: David Schleef  <ds@schleef.org>
12428
12429         Fix memory leaks:
12430         * gst/gstcaps.c: (gst_caps_to_string):
12431         * gst/registries/gstxmlregistry.c:
12432         (gst_xml_registry_add_path_list_func),
12433         (gst_xml_registry_parse_padtemplate):
12434
12435 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12436
12437         * gst/gstelement.c: (gst_element_default_error):
12438           suffix error messages with period
12439
12440 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12441
12442         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12443         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12444         * gst/gsterror.c: (gst_error_get_message):
12445           Suffix with dots
12446         * po/fr.po:
12447         * po/nl.po:
12448           Update translation files
12449
12450 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12451
12452         * gst/autoplug/gstspideridentity.c:
12453         (gst_spider_identity_sink_loop_type_finding):
12454         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12455         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12456         (gst_filesink_close_file), (gst_filesink_handle_event),
12457         (gst_filesink_chain):
12458         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12459         (gst_filesrc_get_read), (gst_filesrc_open_file):
12460         * gst/elements/gstidentity.c: (gst_identity_chain):
12461         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12462         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12463         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12464         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12465         * gst/gsterror.c: (_gst_core_errors_init),
12466         (_gst_library_errors_init), (_gst_resource_errors_init),
12467         (_gst_stream_errors_init), (gst_error_get_message):
12468         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12469         (gst_pad_recover_caps_error), (gst_pad_pull):
12470         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12471         * gst/schedulers/gstbasicscheduler.c:
12472         (gst_basic_scheduler_chainhandler_proxy),
12473         (gst_basic_scheduler_gethandler_proxy),
12474         (gst_basic_scheduler_cothreaded_chain):
12475           Suffix error messages with period.
12476           Use (NULL) instead of NULL
12477
12478 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12479
12480         * docs/gst/tmpl/gstelement.sgml:
12481         * docs/gst/tmpl/gstxml.sgml:
12482         * gst/gstelement.c: (gst_element_error_full):
12483           add element path to error
12484
12485 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12486
12487         * docs/random/mimetypes:
12488           update raw int/float info
12489         * gst/gsttag.c: (_gst_tag_initialize):
12490         * gst/gsttag.h:
12491           add GST_TAG_ENCODER
12492
12493 2004-01-30  David Schleef  <ds@schleef.org>
12494
12495         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12496           missing (#132991)
12497
12498 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12499
12500         reviewed by Benjamin Otte 
12501           parts of the patch submitted in bug #113913
12502
12503         * configure.ac:
12504           use AC_C_INLINE. Use = instead of == with test
12505         * examples/plugins/example.c:
12506         * gst/autoplug/gstspideridentity.c:
12507         * gst/elements/gstfdsrc.c:
12508         * gst/elements/gstfilesrc.c:
12509         * gst/elements/gstidentity.c:
12510         * gst/elements/gstmultidisksrc.c:
12511         * gst/elements/gststatistics.c:
12512         * gst/gstelement.c:
12513         * gst/gstobject.c:
12514         * gst/gstpad.c:
12515         * gst/gstpipeline.c:
12516         * gst/gstthread.c:
12517           don't end enums with a comma
12518         * gst/gstindex.c: (gst_index_compare_func):
12519           do explicit casting to gint
12520         * gst/gsttrace.c: (gst_trace_text_flush):
12521           #define strsize as a macro
12522
12523 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12524
12525         * docs/README:
12526         * docs/gst/gstreamer-docs.sgml:
12527         * docs/gst/gstreamer-sections.txt:
12528         * docs/gst/tmpl/gstelement.sgml:
12529         * docs/gst/tmpl/gsterror.sgml:
12530         * docs/gst/tmpl/gstinterface.sgml:
12531         * docs/gst/tmpl/gstreamer-unused.sgml:
12532         * docs/gst/tmpl/gststructure.sgml:
12533         * docs/gst/tmpl/gsttag.sgml:
12534         * docs/gst/tmpl/gsttaginterface.sgml:
12535         * docs/gst/tmpl/gstvalue.sgml:
12536         make sure all API ends up in the built docs
12537         * gst/gstinterface.c:
12538         * gst/gststructure.c: (gst_structure_id_set_value),
12539         (gst_structure_set_value), (gst_structure_id_get_value):
12540         * gst/gststructure.h:
12541         * gst/gstvalue.h:
12542         sync .h with .c declarations
12543
12544 2004-01-30  Julien Moutte  <julien@moutte.net>
12545
12546         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12547         Ronald will fix riffread.
12548
12549 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12550
12551         * docs/pwg/advanced-interfaces.xml:
12552           Added tuner interface docs.
12553
12554 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12555
12556         * docs/random/mimetypes:
12557           correct Theora information
12558         * gst/gstelement.h:
12559           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12560
12561 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12562
12563         * gst/gstelement.c: (gst_element_error_full):
12564         * gst/gstelement.h:
12565           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12566
12567 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12568
12569         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12570         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12571         again and even before DISCONT.
12572         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12573         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12574         bytestream so that it's not stopping to fill the bytestream if events
12575         different than EOS or DISCONT are received. Instead it process them so
12576         that they go downstream.
12577
12578 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12579
12580         * docs/gst/tmpl/gstelement.sgml:
12581         * docs/gst/tmpl/gstreamer-unused.sgml:
12582         * docs/gst/tmpl/gstxml.sgml:
12583         * gst/autoplug/gstspideridentity.c:
12584         (gst_spider_identity_sink_loop_type_finding):
12585         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12586         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12587         (gst_filesink_close_file), (gst_filesink_handle_event),
12588         (gst_filesink_chain):
12589         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12590         (gst_filesrc_get_read), (gst_filesrc_open_file):
12591         * gst/elements/gstidentity.c: (gst_identity_chain):
12592         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12593         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12594         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12595         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12596         * gst/gstelement.h:
12597         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12598         (gst_pad_recover_caps_error), (gst_pad_pull):
12599         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12600         * gst/schedulers/gstbasicscheduler.c:
12601         (gst_basic_scheduler_chainhandler_proxy),
12602         (gst_basic_scheduler_gethandler_proxy),
12603         (gst_basic_scheduler_cothreaded_chain):
12604           gst_element_error -> GST_ELEMENT_ERROR
12605
12606 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12607
12608         * docs/Makefile.am:
12609         * docs/gst/tmpl/gstelement.sgml:
12610         * docs/gst/tmpl/gstxml.sgml:
12611         * docs/manuals.mak:
12612         * docs/pwg/advanced-request.xml:
12613         * docs/pwg/advanced-scheduling.xml:
12614         * docs/pwg/advanced-tagging.xml:
12615           fix non-validating docbook using CDATA
12616           make sure make check-local gets run first to check if it validates
12617
12618 2004-01-29  Julien MOUTTE <julien@moutte.net>
12619
12620         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12621         handling (up and downstream).
12622         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12623         my_filter thing.
12624
12625 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12626
12627         * docs/pwg/advanced-tagging.xml:
12628           Add docs about tag writing.
12629
12630 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12631
12632         * docs/pwg/advanced-tagging.xml:
12633           Add a part about tag reading and application signalling... Tag
12634           writing still needs to be documented.
12635         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12636           We can set file locations in READY, too.
12637
12638 2004-01-29  Julien MOUTTE <julien@moutte.net>
12639
12640         * docs/random/ds/element-checklist: Adding some notes about src
12641         events.
12642
12643 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12644
12645         * docs/random/mimetypes:
12646           Update docs to point to correct elements for various mimetypes, and
12647           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12648           <stephane.loeuillet@tiscali.fr>.
12649
12650 2004-01-28  David Schleef  <ds@schleef.org>
12651
12652         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12653
12654 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12655
12656         * docs/random/mimetypes:
12657           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12658           undefined"
12659         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12660           make it only work in NULL.
12661         * gst/gstcaps.c:
12662           don't posion NULL caps
12663         * gst/gstelement.c: (gst_element_set_time):
12664           add debugging statement
12665         * gst/gstelement.c: (gst_element_emit_found_tag),
12666         (gst_element_found_tag_func), (gst_element_found_tags):
12667         * gst/gstelement.h:
12668           These functions take const taglists
12669         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12670           fix memleak
12671         * gst/gstpad.c: (gst_pad_event_default):
12672           make more effort on handling discont and clocks, g_warn if everything
12673           fails
12674         * gst/gststructure.c: (gst_structure_remove_fields),
12675         (gst_structure_remove_fields_valist):
12676         * gst/gststructure.h:
12677           add gst_structure_remove_fields(_valist)
12678         * gst/gsttag.c:
12679           fix doc glitch
12680
12681 2004-01-28  David Schleef  <ds@schleef.org>
12682
12683         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12684         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12685         Fix memory leakage of gst_caps_to_string().
12686
12687         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12688         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12689         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12690         (gst_spider_identity_sink_loop_type_finding):
12691         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12692         (find_suggest):
12693         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12694         (gst_pad_set_explicit_caps):
12695         * gst/parse/grammar.y:
12696
12697 2004-01-28  David Schleef  <ds@schleef.org>
12698
12699         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12700         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12701         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12702         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12703         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12704         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12705         (gst_debug_log_default), (_gst_info_printf_extension),
12706         (_gst_info_printf_extension_arginfo):  Add printf extension.
12707         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12708         * gst/gststructure.c: (gst_structure_to_string),
12709         (_gst_structure_parse_value): Use gst_value_deserialize() and
12710         remove old code.
12711         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12712         (gst_value_deserialize_boolean), (gst_strtoi),
12713         (gst_value_deserialize_int), (gst_value_deserialize_double),
12714         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12715         a bunch of deserialize functions and gst_value_deserialize.
12716         * gst/gstvalue.h: er, _de_serialize, not unserialize
12717         * testsuite/caps/string-conversions.c: (main): We don't currently
12718         handle (float) in caps, so convert these to (double).
12719         * testsuite/debug/Makefile.am: Add new test for the printf extension
12720         * testsuite/debug/printf_extension.c: (main): same
12721
12722 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12723
12724         * docs/random/company/time:
12725           Add some docs about clocking and time
12726
12727 2004-01-28  Julien MOUTTE <julien@moutte.net>
12728
12729         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12730
12731 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12732
12733         * docs/pwg/advanced-clock.xml:
12734         * docs/pwg/advanced-dparams.xml:
12735         * docs/pwg/advanced-events.xml:
12736         * docs/pwg/advanced-interfaces.xml:
12737         * docs/pwg/advanced-midi.xml:
12738         * docs/pwg/advanced-request.xml:
12739         * docs/pwg/advanced-scheduling.xml:
12740         * docs/pwg/advanced-tagging.xml:
12741         * docs/pwg/advanced-types.xml:
12742         * docs/pwg/appendix-checklist.xml:
12743         * docs/pwg/building-boiler.xml:
12744         * docs/pwg/building-chainfn.xml:
12745         * docs/pwg/building-filterfactory.xml:
12746         * docs/pwg/building-pads.xml:
12747         * docs/pwg/building-props.xml:
12748         * docs/pwg/building-signals.xml:
12749         * docs/pwg/building-state.xml:
12750         * docs/pwg/building-testapp.xml:
12751         * docs/pwg/intro-basics.xml:
12752         * docs/pwg/intro-preface.xml:
12753         * docs/pwg/other-autoplugger.xml:
12754         * docs/pwg/other-sink.xml:
12755         * docs/pwg/other-source.xml:
12756         * docs/pwg/titlepage.xml:
12757           fix up id's
12758
12759 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12760
12761         * docs/95NonPath:
12762         * docs/HACKING:
12763         * docs/README:
12764         * docs/building-the-docs-on-debian:
12765           collect relevant bits of doc info
12766
12767 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12768
12769         * docs/pwg/advanced_tagging.xml:
12770           Half-assed commit so Thomas can re-arrange document IDs here to be
12771           consistent, too.
12772
12773 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12774
12775         * docs/manual/autoplugging.xml:
12776         * docs/manual/bins-api.xml:
12777         * docs/manual/bins.xml:
12778         * docs/manual/buffers-api.xml:
12779         * docs/manual/buffers.xml:
12780         * docs/manual/clocks.xml:
12781         * docs/manual/components.xml:
12782         * docs/manual/cothreads.xml:
12783         * docs/manual/debugging.xml:
12784         * docs/manual/dparams-app.xml:
12785         * docs/manual/dynamic.xml:
12786         * docs/manual/elements-api.xml:
12787         * docs/manual/elements.xml:
12788         * docs/manual/factories.xml:
12789         * docs/manual/gnome.xml:
12790         * docs/manual/goals.xml:
12791         * docs/manual/helloworld.xml:
12792         * docs/manual/helloworld2.xml:
12793         * docs/manual/init-api.xml:
12794         * docs/manual/intro.xml:
12795         * docs/manual/links-api.xml:
12796         * docs/manual/links.xml:
12797         * docs/manual/manual.xml:
12798         * docs/manual/motivation.xml:
12799         * docs/manual/pads-api.xml:
12800         * docs/manual/pads.xml:
12801         * docs/manual/plugins-api.xml:
12802         * docs/manual/plugins.xml:
12803         * docs/manual/programs.xml:
12804         * docs/manual/queues.xml:
12805         * docs/manual/quotes.xml:
12806         * docs/manual/schedulers.xml:
12807         * docs/manual/states-api.xml:
12808         * docs/manual/states.xml:
12809         * docs/manual/threads.xml:
12810         * docs/manual/typedetection.xml:
12811         * docs/manual/xml.xml:
12812           use chapter, part, section or misc as id starts for all bits
12813
12814 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12815
12816         * docs/gst/gstreamer-sections.txt:
12817           Fix up TITLE of the sections
12818
12819 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12820
12821         * docs/pwg/advanced_interfaces.xml:
12822           Add documentation on propertyprobing.
12823         * docs/pwg/advanced_events.xml:
12824         * docs/pwg/advanced_tagging.xml:
12825         * docs/pwg/building_boiler.xml:
12826         * docs/pwg/building_filterfactory.xml:
12827         * docs/pwg/pwg.xml:
12828           Move filterfactory and tagging into their own chapter, add a chapter
12829           on events. all these are empty placeholders that will be filled in
12830           some day.
12831
12832 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12833
12834         * docs/pwg/advanced_interfaces.xml:
12835           Docs for mixer interface. Also a check for website uploading.
12836
12837 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12838
12839         * docs/HACKING:
12840         * docs/Makefile.am:
12841         * docs/faq/Makefile.am:
12842         * docs/gst/Makefile.am:
12843         * docs/gst/tmpl/gstelement.sgml:
12844         * docs/gst/tmpl/gstplugin.sgml:
12845         * docs/gst/tmpl/gstreamer-unused.sgml:
12846         * docs/libs/Makefile.am:
12847         * docs/manual/Makefile.am:
12848         * docs/manuals.mak:
12849         * docs/pwg/Makefile.am:
12850         * docs/upload.mak:
12851           Separate out upload target and make it similar for
12852           both docbook and gtk-doc docs
12853
12854 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12855
12856         * docs/manuals.mak:
12857           Fix upload target to work with freedesktop
12858
12859 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12860
12861         * docs/pwg/advanced_types.xml:
12862           Add notes on creating your own types.
12863         * docs/pwg/building_boiler.xml:
12864         * docs/pwg/building_pads.xml:
12865         * docs/pwg/building_state.xml:
12866           Add some stuff about how to retrieve values from structures, how
12867           that relates to types and change layout slightly again to be almost
12868           perfect.
12869
12870 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12871
12872         * docs/pwg/advanced_dparams.xml:
12873         * docs/pwg/advanced_scheduling.xml:
12874           Change index layout slightly.
12875
12876 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12877
12878         * docs/pwg/advanced_clock.xml:
12879         * docs/pwg/advanced_interfaces.xml:
12880         * docs/pwg/advanced_midi.xml:
12881           General placeholders for now.
12882         * docs/pwg/advanced_request.xml:
12883           Explanation about sometimes and request pads.
12884         * docs/pwg/advanced_scheduling.xml:
12885           Concept of bytestream, loopfunctions and schedulers.
12886         * docs/pwg/building_boiler.xml:
12887           Add something about plugin-init.
12888
12889 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12890
12891         * docs/pwg/building_pads.xml:
12892           Fix broken docbook
12893
12894 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12895
12896         * docs/pwg/advanced_interfaces.xml:
12897         * docs/pwg/pwg.xml:
12898           Add as a placeholder for future filling-in.
12899         * docs/pwg/basics_autoplugging.xml:
12900         * docs/pwg/basics_buffers.xml:
12901         * docs/pwg/basics_elements.xml:
12902         * docs/pwg/basics_events.xml:
12903         * docs/pwg/basics_plugins.xml:
12904         * docs/pwg/basics_types.xml:
12905           Remove, because unused (this is all in intro_basics.xml).
12906         * docs/pwg/building_signals.xml:
12907           Short intro to signals + reference to GObject docs - we really
12908           shouldn't go into these sort of things to deply because we don't
12909           use them that extensively anyway.
12910         * docs/pwg/building_state.xml:
12911           Explanation of states. Benjamin, please check.
12912         * docs/pwg/building_testapp.xml:
12913           Put everything in one page - putting only a few lines of content
12914           per page doesn't really make sense.
12915
12916           Time to get into the advanced topics. ;).
12917
12918 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12919
12920         * docs/pwg/advanced_types.xml:
12921           Finish documenting the current state of mimetypes.
12922         * docs/pwg/building_boiler.xml:
12923         * docs/pwg/building_chainfn.xml:
12924         * docs/pwg/building_pads.xml:
12925         * docs/pwg/building_props.xml:
12926         * docs/pwg/building_testapp.xml:
12927           Start documenting the "how to build a simple audio filter" part
12928           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12929           states and (maybe?) a short introduction to capsnego in the chapter
12930           on pads (building_pads.xml). Capsnego should probably be explained
12931           fully in advanced_capsnego.xml or so.
12932
12933 2004-01-26  David Schleef  <ds@schleef.org>
12934
12935         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12936         * gst/gstpad.h: Add new function to allow element to (somewhat)
12937         specify non-fixed caps on a pad.
12938         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12939         that I added a few weeks ago.
12940
12941 2004-01-26  David Schleef  <ds@schleef.org>
12942
12943         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12944           making try_set_caps() work with non-fixed caps.
12945
12946 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12947
12948         * docs/pwg/advanced_types.xml:
12949         * docs/pwg/intro_basics.xml:
12950         * docs/pwg/intro_preface.xml:
12951         * docs/pwg/pwg.xml:
12952         * docs/pwg/titlepage.xml:
12953           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12954           in here (docs/random/mimetypes), and will from there on work on both
12955           updating outdated parts and adding missing parts.
12956           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12957
12958 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12959
12960         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12961           policy is set
12962
12963 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12964
12965         * gst/gstelement.h:
12966           remove gst_element_factory_get_version. It doesn't exist anymore.
12967         * gst/gstplugin.c:
12968         * gst/gstplugin.h:
12969           remove gst_plugin_set_name and change gst_plugin_get_longname to
12970           gst_plugin_get_description to match code.
12971         * gst/gsterror.h:
12972           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12973         * gst/gstpad.c: (gst_pad_try_set_caps):
12974           make it work with nonfixed caps.
12975           Note that even in the nonfixed case the link function of the pad
12976           that tries to set caps isn't called.
12977
12978 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12979
12980         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12981           fix bug where buffer was not assembled correctly
12982         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12983           silence by default
12984         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12985           only seek if there's no more buffers that could work without seeking
12986
12987 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12988
12989         * gst/gsttag.c: (_gst_tag_initialize):
12990         * gst/gsttag.h:
12991           Add application tag (for encoding/muxing app).
12992
12993 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12994
12995         * autogen.sh:
12996           make autopoint force, and libtoolize not copy
12997         * common/m4/as-docbook.m4:
12998           added docbook xml catalog setup check
12999         * common/m4/gst-doc.m4:
13000           use docbook check
13001
13002 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13003
13004         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13005         * gst/gsttag.h:
13006           add GstTagFlag
13007
13008 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13009
13010         * docs/gst/gstreamer-sections.txt:
13011         * docs/gst/tmpl/gst.sgml:
13012         * docs/gst/tmpl/gstbuffer.sgml:
13013         * docs/gst/tmpl/gstclock.sgml:
13014         * docs/gst/tmpl/gstelement.sgml:
13015         * docs/gst/tmpl/gstreamer-unused.sgml:
13016         * docs/gst/tmpl/gstxml.sgml:
13017           sync latest API changes to docs
13018
13019 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13020
13021         * gst/gstpluginfeature.c:
13022           fix doc snippet
13023         * tools/gst-inspect.c: (print_element_list):
13024           fix output of typefind
13025           add GPL header
13026         * tools/gst-launch.c:
13027           add GPL header
13028
13029 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13030
13031         * gst/elements/Makefile.am:
13032         * gst/elements/gstelements.c:
13033         * gst/elements/gsttypefindelement.c:
13034         * gst/elements/gsttypefindelement.h:
13035         * po/POTFILES.in:
13036         * po/fr.po:
13037         * po/nl.po:
13038           renamed gsttypefindelement to gsttypefind, conserving CVS history
13039
13040 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13041
13042         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
13043         * gst/gsttag.h:
13044           add some tags used in ogg as well
13045           fix _ in replaygain tags
13046
13047 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13048
13049         * gst/gsterror.h:
13050           fix wrong GST_LIBRARY_ERROR_ENCODE addition
13051
13052 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13053
13054         * gst/gstelement.c: (gst_element_error_full):
13055         * gst/gstelement.h:
13056           change _extended to _full
13057
13058 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13059
13060         reviewed by: <delete if not using a buddy>
13061
13062         * docs/gst/tmpl/gst.sgml:
13063         * docs/gst/tmpl/gstbuffer.sgml:
13064         * docs/gst/tmpl/gstclock.sgml:
13065         * docs/gst/tmpl/gstelement.sgml:
13066         * docs/gst/tmpl/gstreamer-unused.sgml:
13067         * docs/gst/tmpl/gstxml.sgml:
13068         * gst/gstelement.c: (gst_element_error_full):
13069         * gst/gstelement.h:
13070
13071 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13072
13073         * gst/gstelement.h: fix _gst_element_error_printf prototype
13074
13075 2004-01-20  David Schleef  <ds@schleef.org>
13076
13077         * gst/gststructure.c: (gst_structure_to_string):
13078         Convert function to use gst_value_serialize().
13079         * gst/gstvalue.c: (gst_value_serialize_list),
13080         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13081         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13082         (gst_value_serialize_int), (gst_value_serialize_double),
13083         (gst_string_wrap), (gst_value_serialize_string),
13084         (gst_value_serialize), (gst_value_deserialize):
13085         * gst/gstvalue.h:
13086         Add implementations for serialize.
13087
13088 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13089
13090         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13091         we want to keep that one in the future or change xvidenc.c to use 
13092         another error.
13093
13094 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13095
13096         * gst/gstelement.c: (_gst_element_error_printf):
13097         * gst/gstelement.h:
13098           privatise function
13099
13100 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13101
13102         * docs/random/error:
13103           doc explaining error system
13104         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13105           cleanup
13106
13107 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13108
13109         * gst/gst-i18n-app.h:
13110         * gst/gst-i18n-lib.h:
13111           remove inclusion of config.h
13112         * po/POTFILES.in:
13113         * po/nl.po:
13114           add gst/gstelement.c
13115
13116 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13117
13118         * po/nl.po: updated Dutch translation
13119
13120 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13121
13122         * gst/gsterror.c: (_gst_core_errors_init),
13123         (_gst_library_errors_init), (_gst_resource_errors_init),
13124         (_gst_stream_errors_init):
13125         remove ending punctuation dots
13126
13127 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13128
13129         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13130         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13131         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13132         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13133         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13134         use GST_ERROR_SYSTEM
13135
13136 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13137
13138         * gst/gstelement.c: (gst_element_error_printf),
13139         (gst_element_error_extended):
13140         * gst/gstelement.h:
13141           add a helper printf function so we can have NULL values passed.
13142
13143 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13144
13145         * gst/gstelement.h:
13146           add G_STMT macros to gst_element_error, which isn't strictly
13147           necessary but people tell me to anyway.
13148
13149 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13150
13151         * gst/Makefile.am:
13152         * gst/autoplug/gstspideridentity.c:
13153         (gst_spider_identity_sink_loop_type_finding):
13154         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13155         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13156         (gst_filesink_close_file), (gst_filesink_handle_event),
13157         (gst_filesink_chain):
13158         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13159         (gst_filesrc_map_region), (gst_filesrc_get_read),
13160         (gst_filesrc_open_file):
13161         * gst/elements/gstidentity.c: (gst_identity_chain):
13162         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13163         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13164         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13165         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13166         * gst/gst.h:
13167         * gst/gst_private.h:
13168         * gst/gstelement.c: (gst_element_class_init),
13169         (gst_element_default_error), (gst_element_error_func),
13170         (gst_element_error_extended):
13171         * gst/gstelement.h:
13172         * gst/gsterror.c: (_gst_core_errors_init),
13173         (_gst_library_errors_init), (_gst_resource_errors_init),
13174         (_gst_stream_errors_init), (gst_error_get_message):
13175         * gst/gsterror.h:
13176         * gst/gstinfo.c: (_gst_debug_init):
13177         * gst/gstmarshal.list:
13178         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13179         (gst_pad_recover_caps_error), (gst_pad_pull):
13180         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13181         * gst/schedulers/gstbasicscheduler.c:
13182         (gst_basic_scheduler_chainhandler_proxy),
13183         (gst_basic_scheduler_gethandler_proxy),
13184         (gst_basic_scheduler_cothreaded_chain):
13185         * po/POTFILES.in:
13186         * po/fr.po:
13187         * po/nl.po:
13188           change error signal
13189           add error categories
13190
13191 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13192
13193         * gst/gsttag.c: (_gst_tag_initialize):
13194         * gst/gsttag.h:
13195         Add replaygain tag
13196
13197 2004-01-18  Colin Walters  <walters@verbum.org>
13198
13199         * examples/retag/retag.c: Call gst_init before processing
13200         program args.  Add g_assert to _link_many call.
13201
13202 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13203
13204         * gst/gstpad.c: (gst_pad_alloc_buffer):
13205           Return a newly allocated buffer when the pad has no peer.
13206
13207 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13208
13209         * gst/gstclock.c: (gst_clock_get_time):
13210           make it compile with gcc 2.95 again.
13211           Patch by Scott Wheeler
13212
13213 2004-01-15  David Schleef  <ds@schleef.org>
13214
13215         * gst/gstcaps.h:
13216         Added gst_caps_is_simple() macro.
13217         * testsuite/caps/caps.c: (test1):
13218         * testsuite/caps/intersect2.c: (main):
13219         * testsuite/caps/intersection.c: (main):
13220         Fixes to make 'make check' work again after removing
13221         gst_caps_is_chained().
13222
13223 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13224
13225         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13226         and additions to the MIDI document.
13227
13228 2004-01-15  David Schleef  <ds@schleef.org>
13229
13230         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13231         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13232         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13233
13234 2004-01-15  David Schleef  <ds@schleef.org>
13235
13236         * gst/gstqueue.c:
13237         * gst/gstqueue.h:
13238         Fix the spelling of "treshold" and make min_threshold actually
13239         affect the queue.
13240
13241 2004-01-15  David Schleef  <ds@schleef.org>
13242
13243         * gst/gstcaps.c:
13244         Add lots of documentation.
13245         * gst/gstcaps.h:
13246         Deprecate a few functions.
13247         * gst/gstpad.c:
13248         Removed use of deprecated functions.
13249
13250 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13251
13252         * gst/gstpad.c: (gst_pad_is_linked):
13253         * gst/gstpad.h:
13254           implement gst_pad_is_linked
13255         * gst/gstelement.h:
13256           reserve space for initiate_state_change
13257
13258 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13259
13260         * gst/autoplug/gstspideridentity.c:
13261         (gst_spider_identity_sink_loop_type_finding):
13262           break infinite loop by just returning instead of looping
13263         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13264           set event time difference correctly. Set it to 1 second instead
13265           of 100ms to be more tolerant
13266         * gst/gstelement.c: (gst_element_set_time):
13267           add debugging output
13268
13269 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13270
13271         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13272           query if buffers are inside the pool, ignore events
13273
13274 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13275
13276         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13277         (gst_clock_set_speed), (gst_clock_set_active),
13278         (gst_clock_is_active), (gst_clock_reset),
13279         (gst_clock_handle_discont):
13280         * gst/gstclock.h:
13281           deprecate old interface and disable functions that aren't in use
13282           anymore.
13283         * gst/gstelement.h:
13284         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13285         (gst_element_set_time), (gst_element_adjust_time):
13286           add concept of "element time" and functions to get/set this time.
13287         * gst/gstelement.c: (gst_element_change_state):
13288           update element time correctly.
13289         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13290           This is a debug message, not a g_critical.
13291         * gst/gstpad.c: (gst_pad_event_default):
13292           handle discontinuous events right with element time.
13293         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13294           update to clocking fixes.
13295           set clocks on elements in READY=>PAUSED. The old behaviour caused
13296           a wrong element time on the first element that started playing.
13297         * gst/schedulers/gstbasicscheduler.c:
13298         (gst_basic_scheduler_class_init):
13299         * gst/schedulers/gstoptimalscheduler.c:
13300         (gst_opt_scheduler_class_init):
13301           remove code that just implements the default behaviour.
13302         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13303           update to use new clocking functions
13304         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13305         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13306           update to test new element time.
13307         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13308           use _get_allowed_caps instead of _get_caps. This catches filtered
13309           caps correctly.
13310         * testsuite/debug/commandline.c:
13311           update for new GST_DEBUG syntax.
13312         * testsuite/threads/Makefile.am:
13313           disable a test that only works sometimes.
13314
13315 2004-01-13  Julien MOUTTE <julien@moutte.net>
13316
13317         * po/LINGUAS: Adding fr.
13318         * po/fr.po: Adding french translation.
13319
13320 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13321
13322         * gst/parse/grammar.y:
13323         * po/POTFILES.in:
13324         * po/nl.po:
13325         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13326           translate parsing error messages
13327
13328 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13329
13330         * po/POTFILES.in: adding gst-launch
13331         * po/nl.po: updated translation, all 99 strings translated
13332         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13333         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13334           fix strings for translation
13335
13336 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13337
13338         * gst/gst.c:
13339           - capitalize beginnings of popt options
13340           - fix strings for translation
13341           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13342
13343 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13344
13345         * po/README: add some notes on how to update translations
13346
13347 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13348
13349         * ABOUT-NLS: removed, is autogenerated from autopoint
13350         * autogen.sh: add autopoint stuff
13351         * configure.ac: fix up gettext stuff
13352         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13353         * gst/elements/gsttypefindelement.c: add header include
13354         * gst/gettext.h: add header, copy from system-installed header
13355         * gst/gst-i18n-app.h: to be included by each app having translations
13356         * gst/gst-i18n-lib.h: to be included by each lib having translations
13357         * gst/gst.c: (init_pre): fix up gettext calls
13358         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13359         * po/LINGUAS: the new way to specify translations present
13360         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13361         * po/Makevars: the variables filled in for GStreamer
13362         * po/POTFILES.in: added new files with translations
13363         * po/de.po: has new strings
13364         * po/nl.po: readded, has new strings
13365
13366 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13367
13368         * gst/gsttag.c: fix some strings marked for translation
13369
13370 2004-01-13  Iain <iain@prettypeople.org>
13371
13372         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13373         group when we add an element to it, cos we unref it when we remove one
13374
13375 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13376
13377         * testsuite/debug/commandline.c: (debug_not_reached):
13378         * testsuite/debug/output.c: (check_message):
13379           fix testsuite
13380
13381 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13382
13383         * examples/cutter/.cvsignore:
13384         * examples/helloworld/.cvsignore:
13385         * examples/launch/.cvsignore:
13386         * examples/manual/.cvsignore:
13387         * examples/mixer/.cvsignore:
13388         * examples/pingpong/.cvsignore:
13389         * examples/plugins/.cvsignore:
13390         * examples/queue/.cvsignore:
13391         * examples/queue2/.cvsignore:
13392         * examples/queue3/.cvsignore:
13393         * examples/queue4/.cvsignore:
13394         * examples/retag/.cvsignore:
13395         * examples/thread/.cvsignore:
13396         * examples/typefind/.cvsignore:
13397         * examples/xml/.cvsignore:
13398         * gst/.cvsignore:
13399         * gst/autoplug/.cvsignore:
13400         * gst/elements/.cvsignore:
13401         * gst/indexers/.cvsignore:
13402         * gst/parse/.cvsignore:
13403         * gst/registries/.cvsignore:
13404         * gst/schedulers/.cvsignore:
13405         * libs/gst/bytestream/.cvsignore:
13406         * libs/gst/control/.cvsignore:
13407         * libs/gst/getbits/.cvsignore:
13408         * tests/.cvsignore:
13409         * tests/bufspeed/.cvsignore:
13410         * tests/instantiate/.cvsignore:
13411         * tests/memchunk/.cvsignore:
13412         * tests/muxing/.cvsignore:
13413         * tests/sched/.cvsignore:
13414         * tests/seeking/.cvsignore:
13415         * tests/threadstate/.cvsignore:
13416         * testsuite/.cvsignore:
13417         * testsuite/caps/.cvsignore:
13418         * testsuite/cleanup/.cvsignore:
13419         * testsuite/dynparams/.cvsignore:
13420         * testsuite/plugin/.cvsignore:
13421         * tools/.cvsignore:
13422           update - this is huge, because it includes *.bb, *.bbg and *.da files
13423           which are generated for gcov.
13424
13425 2004-01-11  David Schleef  <ds@schleef.org>
13426
13427         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13428         a function to parse integers in ways that strto[u]l() does not.
13429
13430 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13431
13432         * tools/gst-inspect.c: (print_caps):
13433           improve output of caps a bit
13434
13435 2004-01-11  David Schleef  <ds@schleef.org>
13436
13437         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13438         inherit correct flags (READONLY and DONTKEEP).
13439
13440 2004-01-11  David Schleef  <ds@schleef.org>
13441
13442         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13443         (gst_filesrc_map_region):
13444         * gst/gstbuffer.c: (_gst_buffer_initialize),
13445         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13446         (gst_buffer_new), (gst_buffer_create_sub),
13447         (gst_buffer_is_span_fast), (gst_buffer_span):
13448         * gst/gstbuffer.h:
13449         Change GstBuffer private structure element names. (all files)
13450         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13451         (gst_queue_link):
13452         * gst/gstqueue.h:
13453         Implement getcaps/pad_link functions that handle the case where
13454         there are data in the queue.
13455
13456 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13457
13458         * gst/elements/gstbufferstore.c:
13459           initialize debugging structure correctly
13460         * gst/elements/gsttee.c: (gst_tee_set_property):
13461           g_object_notify when property was changed
13462         * gst/elements/gsttypefindelement.c:
13463         (gst_type_find_element_change_state):
13464           clear caps correctly
13465
13466 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13467
13468         * gst/gstqueue.c: (gst_queue_init):
13469           Use better defaults for when a queue should block. This
13470           gets rid of jerky playback for quite a few files.
13471           It takes more memory.
13472
13473 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13474
13475         (gst_xml_registry_parse_padtemplate):
13476           make critical message slightly more useful
13477
13478 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13479
13480         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13481         (gst_debug_message_get), (gst_debug_log_default):
13482         * gst/gstinfo.h:
13483           Change gst_debug_log(_valist) to take a const format string.
13484           Change prototype of log function and functions using those to 
13485           take a GstDebugMessage instead of a string that requires using
13486           gst_debug_message_get.
13487
13488 2004-01-08  David Schleef  <ds@schleef.org>
13489
13490         * Makefile.am:
13491         * configure.ac:
13492         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13493         and -ftest-coverage, which allows gcov to show information about
13494         testsuite coverage.
13495
13496 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13497
13498         * gst/gstutils.h:
13499           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13500           GST_PARENT_CALL_WITH_DEFAULT
13501         * gst/elements/gstaggregator.c: 
13502         * gst/elements/gstbufferstore.c: 
13503         * gst/elements/gstfakesink.c: 
13504         * gst/elements/gstfakesrc.c: 
13505         * gst/elements/gstfdsink.c: 
13506         * gst/elements/gstfdsrc.c: 
13507         * gst/elements/gstfilesink.c: 
13508         * gst/elements/gstfilesrc.c: 
13509         * gst/elements/gstidentity.c: 
13510         * gst/elements/gstmd5sink.c: 
13511         * gst/elements/gstmultidisksrc.c:
13512         * gst/elements/gstpipefilter.c: 
13513         * gst/elements/gstshaper.c:
13514         * gst/elements/gststatistics.c:
13515         * gst/elements/gsttee.c:
13516         * gst/elements/gsttypefindelement.c:
13517           use them.
13518
13519 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13520
13521         * docs/gst/gstreamer-docs.sgml: remove props
13522         * docs/gst/gstreamer-sections.txt: remove props
13523         * docs/gst/tmpl/gst.sgml:
13524         * docs/gst/tmpl/gstbin.sgml:
13525         * docs/gst/tmpl/gstbuffer.sgml:
13526         * docs/gst/tmpl/gstcaps.sgml:
13527         * docs/gst/tmpl/gstclock.sgml:
13528         * docs/gst/tmpl/gstelement.sgml:
13529         * docs/gst/tmpl/gstindex.sgml:
13530         * docs/gst/tmpl/gstobject.sgml:
13531         * docs/gst/tmpl/gstpad.sgml:
13532         * docs/gst/tmpl/gstpadtemplate.sgml:
13533         * docs/gst/tmpl/gstreamer-unused.sgml:
13534         * docs/gst/tmpl/gstthread.sgml:
13535         * docs/gst/tmpl/gstxml.sgml:
13536           sync with code reorganization
13537
13538 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13539
13540         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13541         Make the 'Could not find compatible pad' message more informative.
13542
13543 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13544                                                                                 
13545         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13546           Fix for if we pass NULL as property to location.
13547         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13548         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13549           Fix for instantiate-test (see below).
13550         * gst/gststructure.c: (_gst_structure_parse_value):
13551           Fix compile error on gcc-2.96.
13552         * configure.ac:
13553         * tests/Makefile.am:
13554         * tests/instantiate/Makefile.am:
13555         * tests/instantiate/create.c: (create_all_elements), (main):
13556           Add a test that instantiates all elements. This makes it easy to
13557           track dead code for old API/design (like setting event functions
13558           on sink pads and so on).
13559
13560 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13561
13562         * gst/gstcaps.c: (gst_caps_append_structure):
13563           Move the poisoning to allow a NULL structure
13564         * gst/gstevent.c: (_gst_event_free):
13565           When freeing a navigation event, free the structure
13566           also
13567
13568 2004-01-04  David Schleef  <ds@schleef.org>
13569
13570         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13571         Remove usage of gst_pad_proxy_fixate.
13572         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13573         (gst_caps_split_one), (gst_caps_replace):
13574         Add poisoning code.
13575         * gst/gstmarshal.list:
13576         Add pointer__pointer for fixate signal
13577         * gst/gstpad.c: (gst_real_pad_class_init),
13578         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13579         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13580         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13581         Add poisoning code. Add fixate signal on RealPad. Change
13582         set_explicit_caps() to take const GstCaps, like try_set_caps().
13583         * gst/gstpad.h:
13584         * testsuite/caps/Makefile.am:
13585         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13586
13587 2004-01-03  David Schleef  <ds@schleef.org>
13588
13589         * gst/elements/gsttypefindelement.c:
13590         (gst_type_find_element_have_type), (gst_type_find_element_init):
13591         Use gst_pad_use_explicit_caps for src pad.
13592         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13593         before using it.
13594
13595 2004-01-03  David Schleef  <ds@schleef.org>
13596
13597         * gst/gstelement.c: (gst_element_link_pads_filtered),
13598         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13599         that linking was successful.
13600         * gst/gstpad.c: (gst_pad_link_free),
13601         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13602         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13603         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13604         GstPadLinkReturn correctly between functions, and don't fail
13605         when DELAYED is used (DELAYED is very important).  Better
13606         cleanup on unlinking and unnegotiation.  Should fix some spider
13607         bugs.
13608
13609 2004-01-02  David Schleef  <ds@schleef.org>
13610
13611         * gst/gstelement.c: (gst_element_class_init),
13612         (gst_element_base_class_init): ->padtemplates should be cleared
13613         in base_init, since we need to have a fresh list for every
13614         class.  (Alternately, we chould copy the list and share the
13615         actual pad templates (not the list), but that would require
13616         changing every plugin to move pad template registration from
13617         base_init to class_init.)
13618
13619 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13620
13621         * gst/gstelement.c: (gst_element_class_add_pad_template):
13622           Refuse registering a pad template if another pad template
13623           with the same name already exists (#114715).
13624
13625 2004-01-02  David Schleef  <ds@schleef.org>
13626
13627         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13628         (gst_caps_is_equal_fixed): Add new function.
13629         * gst/gstcaps.h: ditto.
13630         * gst/gstpad.c: (gst_real_pad_class_init),
13631         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13632         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13633         check new caps against existing caps -- if they're the same, return
13634         OK without renegotiating.  caps-nego-failed signal fixed so that
13635         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13636         to save an extra caps copy.  Don't complete negotiation if a pad
13637         link function returns DELAYED.
13638
13639 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13640
13641         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13642           Fix wrong g_return_if_fail
13643
13644 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13645
13646         * gst/gstbin.c: (gst_bin_class_init):
13647         Change the marshalling of element_added/element_removed
13648         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13649         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13650
13651 2004-01-01  David Schleef  <ds@schleef.org>
13652
13653         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13654         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13655         (gst_pad_use_explicit_caps):
13656         * gst/gstpad.h:
13657         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13658         to use an internal getcaps and link fuction so that negotiation
13659         always results in the explicitly set caps.
13660         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13661         are particularly useful for decoders.
13662
13663 2003-12-31  David Schleef  <ds@schleef.org>
13664
13665         * gst/elements/gstidentity.c: (gst_identity_class_init),
13666         (gst_identity_init), (gst_identity_chain),
13667         (gst_identity_set_property), (gst_identity_get_property):
13668         * gst/elements/gstidentity.h:
13669         * gst/gstqueue.c: (gst_queue_init):
13670           Negotiation fixes.
13671
13672 2003-12-31  David Schleef  <ds@schleef.org>
13673
13674         * gst/gstcaps.c: (gst_caps_intersect),
13675         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13676           Implement gst_caps_normalize().
13677         * testsuite/caps/normalisation.c: (main):
13678           Add an additional test
13679
13680 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13681
13682         * gst/gstqueue.c: (gst_queue_init):
13683           use gst_pad_proxy_getcaps()
13684
13685 2003-12-31  David Schleef  <ds@schleef.org>
13686
13687         * gst/elements/gstshaper.c: (gst_shaper_link):
13688         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13689         * gst/gstqueue.c: (gst_queue_link):
13690           Negotiation fixes.
13691
13692 2003-12-31  David Schleef  <ds@schleef.org>
13693
13694         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13695         * gst/gstpad.h: Add functions that are useful as default pad
13696         link and fixate functions for elements.
13697
13698 2003-12-30  David Schleef  <ds@schleef.org>
13699
13700         * gst/gstpad.c: (gst_pad_link_try):
13701           Fix segfault when attempting to return to old caps
13702
13703 2003-12-29  David Schleef  <ds@schleef.org>
13704
13705         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13706         (gst_caps_structure_simplify), (gst_caps_simplify):
13707         * gst/gstcaps.h:
13708           Add simplify function
13709         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13710         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13711         * gst/gstpad.h:
13712           Copy over srcnotify, sinknotify when calling old pad_link
13713           functions.  Add new is_negotiated() function.
13714         * gst/gststructure.c: (gst_structure_copy):
13715           Fix an incredibly stupid bug that should have been noticed
13716           weeks ago.  _copy() returned the argument, not the new copy.
13717
13718 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13719
13720         * gst/gstcaps.c: (gst_caps_append):
13721           add sanity checks
13722         * gst/gstcaps.h: (gst_caps_debug):
13723           remove, it doesn't exist anymore.
13724         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13725         (gst_element_threadsafe_properties_post_run):
13726           make debugging messages not clutter up THREAD debug category
13727         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13728         (gst_element_change_state):
13729           update to new caps API
13730         * gst/gstinterface.c: (gst_implements_interface_cast):
13731           don't put vital code in g_return_if_fail
13732         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13733         (gst_pad_link_filtered):
13734           add pst_pad_try_link and use it.
13735         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13736           implement correctly, deprecate first one.
13737         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13738           add and implement.
13739         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13740           implement.
13741         (gst_pad_get_negotiated_caps):
13742           add and implement. Make GST_PAD_CAPS call this function.
13743         (gst_pad_get_caps):
13744           remove unneeded check..
13745         (gst_pad_recover_caps_error):
13746           disable, always return FALSE.
13747         (gst_real_pad_dispose):
13748           don't free caps and appfilter anymore, they're unused.
13749         * gst/gstpad.h:
13750           Reflect changes mentioned above.
13751         * gst/gstsystemclock.c: (gst_system_clock_wait):
13752           Make 'clock is way behind' a debugging message.
13753         * gst/gstthread.c: (gst_thread_change_state):
13754           Fix debugging message
13755
13756 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13757
13758         * gst/gstinfo.h:
13759           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13760         * docs/gst/tmpl/gstreamer-unused.sgml:
13761           removed all traces of cvs conflicts
13762
13763 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13764
13765         * configure.ac:
13766         * gst/schedulers/cothreads_compat.h:
13767         * libs/Makefile.am:
13768           remove last instances of wingo cothread usage
13769
13770 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13771
13772         * gst/gstplugin.c:
13773         * gst/gstversion.h.in:
13774         * gst/parse/grammar.y:
13775           change comment block from /** to /* when not gtk-doc comments
13776
13777 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13778
13779         * gst/gst.c: whitespace and doc style fixes
13780
13781 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13782
13783         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13784
13785 2003-12-24  Colin Walters  <walters@verbum.org>
13786
13787         * gst/elements/gsttypefindelement.c:
13788           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13789           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13790           Don't double-free caps.
13791
13792 2003-12-23  David Schleef  <ds@schleef.org>
13793
13794         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13795           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13796           Many little fixes and additions of debug statements to
13797           get rhythmbox working.
13798
13799 2003-12-23  Colin Walters  <walters@verbum.org>
13800
13801         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13802         Use GST_PAD_LINK_SUCCESSFUL.
13803
13804 2003-12-23  David Schleef  <ds@schleef.org>
13805
13806         * gst/elements/gstaggregator.c:
13807         * gst/elements/gsttee.c:
13808           Use gst_pad_proxy_getcaps().
13809         * gst/gstpad.c:
13810         * gst/gstpad.h:
13811           Add gst_pad_proxy_getcaps(), which filter elements can use
13812           as a generic getcaps implementation.
13813           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13814           was advertised.
13815
13816 2003-12-23  David Schleef  <ds@schleef.org>
13817
13818         * gst/gstpad.c:
13819           Rearrange/rewrite much of the pad negotiation code, since it
13820           resembled pasta.  This actually changes the way some
13821           negotiation works, since the previous code was inconsistent
13822           depending on how it was invoked.  Add (internal) structure
13823           GstPadLink, which is used to hold some information (more in
13824           the future) about the link between two pads.  Fixes a number
13825           of bugs, including random lossage of filter caps when the
13826           initial negotiation is delayed.  A few functions are still
13827           unimplemented.
13828         * gst/gstpad.h:
13829           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13830           these when testing GstPadLinkReturn values instead of comparing
13831           directly.
13832
13833 2003-12-23  David Schleef  <ds@schleef.org>
13834
13835         * gst/gstvalue.c: 
13836         * gst/gstvalue.h:
13837           Rearrange lots of code.  Change registration of compare function
13838           into registration of compare/serialize/deserialize functions.
13839           Doesn't include implementation of gst_value_[de]serialize(),
13840           but that should be easy.
13841
13842 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13843
13844         * docs/gst/gstreamer-sections.txt:
13845         * docs/gst/tmpl/gstprops.sgml: removed
13846         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13847           David removed props and caps code, so let's remove their docs as well.
13848           Removed all no longer existing symbols from gstreamer-sections.txt
13849           
13850 2003-12-22  Colin Walters  <walters@verbum.org>
13851
13852         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13853           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13854           of tags directly.
13855
13856 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13857
13858         * gst/elements/gstelements.c:
13859           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13860         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13861           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13862           gst_caps (peer).
13863
13864 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13865
13866         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13867         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13868         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13869         (gst_spider_identity_sink_loop_type_finding):
13870         * gst/autoplug/gstspideridentity.h:
13871           Fix autoplugging in spider element, so it works with new caps.
13872           This was mainly caused by identifying empty caps incorrectly.
13873
13874 2003-12-22  David Schleef  <ds@schleef.org>
13875
13876         * gststructure.c, gstvalue.c, gstvalue.h: Add
13877           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13878           using g_value_copy()
13879
13880 2003-12-21  David Schleef  <ds@schleef.org>
13881
13882         * many, many files: Merge CAPS branch.  This includes:
13883           - implemention of GstValue and several GstValue types
13884           - implemention of GstStructure
13885           - entire rewrite of GstCaps
13886           - removal of GstProps
13887           - many changes to GstPad to compensate for new caps paradigm
13888           - removal of GstBufferpool
13889         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13890         gstvalue.h, gst/gstcaps[2]*.[ch]:
13891           - rename gstcaps2.[ch] to gstcaps.[ch]
13892
13893 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13894
13895         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13896         (gst_queue_chain), (gst_queue_handle_src_event):
13897           implement timeout for sending events. Workaround for if the
13898           pipeline on this queue is not passing any data.
13899
13900 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13901                                                                                 
13902         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13903         * moved CVS to freedesktop.org