gst/gstiterator.h: Fix wrong include and 'make distcheck'.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
2
3         * gst/gstiterator.h:
4           Fix wrong include and 'make distcheck'.
5
6 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7
8         * gst/gstbin.c: (bin_bus_handler):
9           Use gst_element_post_message() instead.
10
11 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
12
13         * gst/base/gstadapter.h:
14         * gst/base/gstbasesink.h:
15         * gst/base/gstbasesrc.h:
16         * gst/base/gstbasetransform.h:
17         * gst/base/gstcollectpads.h:
18         * gst/base/gstpushsrc.h:
19         * gst/gstiterator.h:
20           Add padding to our base elements' class and instance structs and
21           to GstIterator (you will need to rebuild all plugins and apps!)
22
23 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
24
25         * gst/gstbin.c: (bin_bus_handler):
26           Make default message forwarding from child->bus to bin->bus
27           threadsafe and make it not emit warnings if the parent has no bus.
28
29 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
30
31         * gst/gstelement.c: (activate_pads):
32           On paused->ready, set pad->caps to NULL, as is the documented
33           behaviour in this state change. Fixes playback of series of
34           media files when visualization is enabled in Totem.
35
36 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
37
38         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
39           Allow NULL as filter-caps (which means "any").
40
41 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
42
43         * docs/libs/gstreamer-libs-sections.txt:
44         * libs/gst/controller/gst-controller.c:
45         * libs/gst/controller/gst-controller.h:
46         * libs/gst/controller/gst-helper.c:
47           adding more entries to the docs and fix small doc-bugs
48
49 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
50
51         * docs/gst/gstreamer-docs.sgml:
52         * docs/gst/gstreamer-sections.txt:
53         * docs/gst/gstreamer.types:
54         * docs/gst/tmpl/gstbasesink.sgml:
55         * docs/gst/tmpl/gstbasesrc.sgml:
56         * docs/gst/tmpl/gstbasetransform.sgml:
57         * docs/gst/tmpl/gstfakesrc.sgml:
58         * gst/base/gstcollectpads.c:
59         * gst/base/gstcollectpads.h:
60         * libs/gst/controller/gst-controller.c:
61         * libs/gst/controller/gst-controller.h:
62         * libs/gst/controller/gst-helper.c:
63         * libs/gst/controller/gst-interpolation.c:
64         * libs/gst/controller/lib.c:
65           added long/short desc for controller docs
66           added collectpads base class docs
67           added correct includes to base-class docs
68
69 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
70
71         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
72         (gst_test_mono_source_set_property),
73         (gst_test_mono_source_class_init), (GST_START_TEST),
74         (gst_controller_suite):
75         * docs/gst/gstreamer-docs.sgml:
76         * docs/gst/gstreamer-sections.txt:
77         * docs/gst/gstreamer.types:
78         * docs/libs/gstreamer-libs-docs.sgml:
79         * docs/libs/gstreamer-libs-sections.txt:
80         * gst/base/gstadapter.c:
81         * libs/gst/controller/gst-controller.c:
82         (gst_controlled_property_new), (gst_controlled_property_free),
83         (gst_controller_new_valist),
84         (gst_controller_remove_properties_valist),
85         (gst_controller_sink_values), (_gst_controller_finalize):
86         * libs/gst/controller/gst-controller.h:
87         * libs/gst/controller/gst-helper.c:
88         (gst_object_control_properties), (gst_object_uncontrol_properties),
89         (gst_object_get_controller), (gst_object_set_controller),
90         (gst_object_sink_values), (gst_object_get_value_arrays),
91         (gst_object_get_value_array):
92           more tests (and fixes) for the controller
93           more docs for the controller
94           integrated companies docs for the adapter 
95
96 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
97
98         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
99         (GST_START_TEST), (fakesrc_suite):
100           add tests for sizetype
101
102 2005-08-04  Andy Wingo  <wingo@pobox.com>
103
104         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
105         fixes buffer_alloc proxying among other things.
106
107         * gst/base/gstbasetransform.c:
108         * gst/base/gstbasetransform.h:
109         Revert patch to gstbasetransform from 7-28 removing
110         delay_configure.
111
112         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
113         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
114         Semantics changed, should return not the size of the output buffer
115         but the byte size of a buffer with a given caps.
116
117         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
118         debug object.
119         (gst_base_transform_configure_caps): Don't set out_size here: (in,
120         out) are not the pad caps until setcaps finishes.
121         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
122         not-in-place case as well. Deal with changing from in-place to
123         not-in-place within calling pad_alloc_buffer. Still a bit
124         concerned about the overhead here...
125
126 2005-08-03  Andy Wingo  <wingo@pobox.com>
127
128         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
129         fixating is an error.
130
131 2005-08-04  Edward Hervey  <edward@fluendo.com>
132
133         * gst/base/gstadapter.h: 
134         Added gst_adapter_get_type() to the header
135
136 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
137
138         * check/Makefile.am:
139         * check/gst-libs/controller.c:
140         * libs/gst/controller/gst-controller.c:
141         (gst_controller_new_valist):
142           added check test suite for the controller
143         * gst/base/gstpushsrc.c:
144           fixed a doc typo
145
146 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
147
148         * docs/gst/Makefile.am:
149         * docs/gst/gstreamer-docs.sgml:
150         * docs/gst/gstreamer-sections.txt:
151         * docs/gst/gstreamer.types:
152         * docs/gst/tmpl/gstfakesrc.sgml:
153         * gst/base/README:
154         * gst/base/gstbasesink.c:
155         * gst/base/gstbasesink.h:
156         * gst/base/gstbasesrc.c:
157         * gst/base/gstbasesrc.h:
158         * gst/base/gstbasetransform.c:
159         * gst/base/gstpushsrc.c:
160         * gst/base/gstpushsrc.h:
161           add short/long description docs to base classes
162           add pushsrc to the docs
163           remove consolidated doc fragments
164
165 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
166
167         * configure.ac:
168         * docs/libs/Makefile.am:
169         * docs/libs/gstreamer-libs-docs.sgml:
170         * docs/libs/gstreamer-libs-sections.txt:
171         * docs/libs/gstreamer-libs.types:
172         * examples/Makefile.am:
173         * examples/controller/.cvsignore:
174         * examples/controller/Makefile.am:
175         * examples/controller/audio-example.c: (main):
176         * libs/gst/Makefile.am:
177         * libs/gst/controller/.cvsignore:
178         * libs/gst/controller/Makefile.am:
179         * libs/gst/controller/gst-controller.c:
180         (on_object_controlled_property_changed), (gst_timed_value_compare),
181         (gst_timed_value_find),
182         (gst_controlled_property_set_interpolation_mode),
183         (gst_controlled_property_new), (gst_controlled_property_free),
184         (gst_controller_find_controlled_property),
185         (gst_controller_new_valist), (gst_controller_new),
186         (gst_controller_remove_properties_valist),
187         (gst_controller_remove_properties), (gst_controller_set),
188         (gst_controller_set_from_list), (gst_controller_unset),
189         (gst_controller_get), (gst_controller_get_all),
190         (gst_controller_sink_values), (gst_controller_get_value_arrays),
191         (gst_controller_get_value_array),
192         (gst_controller_set_interpolation_mode),
193         (_gst_controller_finalize), (_gst_controller_init),
194         (_gst_controller_class_init), (gst_controller_get_type):
195         * libs/gst/controller/gst-controller.h:
196         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
197         (g_object_uncontrol_properties), (g_object_get_controller),
198         (g_object_set_controller), (g_object_sink_values),
199         (g_object_get_value_arrays), (g_object_get_value_array):
200         * libs/gst/controller/gst-interpolation.c:
201         (gst_controlled_property_find_timed_value_node),
202         (interpolate_none_get), (interpolate_trigger_get),
203         (interpolate_trigger_get_value_array):
204         * libs/gst/controller/lib.c: (gst_controller_init):
205         * pkgconfig/Makefile.am:
206         * pkgconfig/gstreamer-control-uninstalled.pc.in:
207         * pkgconfig/gstreamer-control.pc.in:
208         * testsuite/Makefile.am:
209         * testsuite/controller/.cvsignore:
210         * testsuite/controller/Makefile.am:
211         * testsuite/controller/interpolator.c: (main):
212           added controller code
213           removed dparam pc files
214
215 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
216         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
217         (gst_collectpads_stop):
218           Broadcast the condition when shutting down, to make sure we wake all
219           threads up. Shut down pads on finalize, for safety.
220
221 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
222         * gst/base/gstbasetransform.c: (gst_base_transform_init),
223         (gst_base_transform_handle_buffer),
224         (gst_base_transform_change_state):
225           Handle PAUSED->READY->PAUSED transition after negotiation
226           occurred already.
227         * gst/gstmessage.c: (gst_message_init):
228           Extra piece of debug for new messages.
229
230 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
231
232         * configure.ac:
233         * docs/gst/tmpl/gstbasesrc.sgml:
234         * docs/gst/tmpl/gstelement.sgml:
235         * docs/gst/tmpl/gstevent.sgml:
236         * docs/gst/tmpl/gstfakesrc.sgml:
237         * docs/gst/tmpl/gstformat.sgml:
238         * docs/gst/tmpl/gstghostpad.sgml:
239         * docs/gst/tmpl/gstpad.sgml:
240         * docs/gst/tmpl/gstquery.sgml:
241         * docs/gst/tmpl/gststructure.sgml:
242         * docs/gst/tmpl/gsttaglist.sgml:
243         * docs/gst/tmpl/gstvalue.sgml:
244         * docs/libs/gstreamer-libs-docs.sgml:
245         * docs/libs/gstreamer-libs-sections.txt:
246         * docs/libs/gstreamer-libs.types:
247         * libs/gst/Makefile.am:
248         * libs/gst/control/.cvsignore:
249         * libs/gst/control/Makefile.am:
250         * libs/gst/control/control.c:
251         * libs/gst/control/control.h:
252         * libs/gst/control/dparam.c:
253         * libs/gst/control/dparam.h:
254         * libs/gst/control/dparam_smooth.c:
255         * libs/gst/control/dparam_smooth.h:
256         * libs/gst/control/dparamcommon.h:
257         * libs/gst/control/dparammanager.c:
258         * libs/gst/control/dparammanager.h:
259         * libs/gst/control/dplinearinterp.c:
260         * libs/gst/control/dplinearinterp.h:
261         * libs/gst/control/unitconvert.c:
262         * libs/gst/control/unitconvert.h:
263         * testsuite/Makefile.am:
264         * testsuite/dynparams/.cvsignore:
265         * testsuite/dynparams/Makefile.am:
266         * testsuite/dynparams/dparamstest.c:
267         * tools/Makefile.am:
268         * tools/gst-inspect.c: (print_element_info), (main):
269         * tools/gst-xmlinspect.c: (print_element_info), (main):
270           deactivate and remove dparams (libgstcontrol)
271
272 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
273
274         * gst/elements/gsttypefindelement.c:
275         (gst_type_find_element_have_type), (gst_type_find_element_init),
276         (stop_typefinding), (gst_type_find_element_handle_event),
277         (gst_type_find_element_chain), (gst_type_find_element_getrange):
278         * gst/elements/gsttypefindelement.h:
279           Set caps on all outgoing buffers, not just the first one.
280
281 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
282
283         * gst/elements/gsttypefindelement.c:
284         (gst_type_find_element_have_type),
285         (gst_type_find_element_check_set_buffer_caps),
286         (gst_type_find_element_init), (stop_typefinding),
287         (gst_type_find_element_handle_event),
288         (gst_type_find_element_chain), (gst_type_find_element_getrange):
289         * gst/elements/gsttypefindelement.h:
290           Set caps on first outgoing buffer when we've found the type.
291
292 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
293
294         * docs/gst/gstreamer-docs.sgml:
295         * docs/gst/gstreamer-sections.txt:
296         * docs/gst/tmpl/gstscheduler.sgml:
297         * docs/gst/tmpl/gstschedulerfactory.sgml:
298           Remove some old cruft from docs.
299
300 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
301
302         * gst/gstpad.h:
303           Fix inline docs for GstPadLinkReturn.
304           
305         * gst/gststructure.c: (gst_structure_has_name):
306         * gst/gststructure.h:
307         * docs/gst/gstreamer-sections.txt:
308           New API: gst_structure_has_name().
309
310 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
311
312         * configure.ac:
313           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
314           and _LARGEFILE_SOURCE in config.h as required. Do not 
315           export those flags in our .pc files any longer (#142209).
316
317           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
318
319         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
320         (gst_file_sink_do_seek), (gst_file_sink_event),
321         (gst_file_sink_get_current_offset), (gst_file_sink_render):
322           Redo seek/tell calls with large file support in mind; add some
323           debugging messages; add log message that tells us when large
324           file support is unavailable or not enabled for some reason.
325
326         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
327           Add log message that tells us when large file support 
328           is unavailable or not enabled for some reason.
329
330 2005-07-29  Wim Taymans  <wim@fluendo.com>
331
332         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
333         Added test for removing an element with ghostpad from a bin.
334         Fixed test as current implementation does the right thing.
335
336         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
337         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
338         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
339         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
340         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
341         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
342         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
343         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
344         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
345         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
346         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
347         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
348         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
349         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
350         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
351         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
352         * gst/gstghostpad.h:
353         Clean up ghostpads, remove properties for internal stuff.
354         Make threadsafe.
355         Fix refcounting.
356         Prepare for switching targets, not all use cases work yet.
357
358 2005-07-29  Wim Taymans  <wim@fluendo.com>
359
360         * docs/design/part-gstghostpad.txt:
361         Small update.
362
363         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
364         (gst_bin_remove_func):
365         Unlinking pads while holding the bin LOCK is not a good
366         idea.
367
368         * gst/gstpad.c: (gst_pad_class_init),
369         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
370         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
371         No prob setting template after creating the pad.
372
373 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
374
375         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
376         (gst_bus_peek), (gst_bus_source_dispatch),
377         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
378         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
379           gst_bus_poll may be called from other threads. Handle
380           this nicely by not making poll_data disappear off the
381           stack once gst_bus_poll returns.
382           gst_bus_peek now increments the refcount on the returned
383           message.
384
385 2005-07-29  Wim Taymans  <wim@fluendo.com>
386
387         * docs/design/part-gstghostpad.txt:
388         Overview of current GhostPad datastructures and use
389         cases for changing the target.
390
391 2005-07-28  Wim Taymans  <wim@fluendo.com>
392
393         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
394         Added checks for hierarchy consistency whan adding linked
395         elements to bins.
396
397         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
398         Added check to test element scheduling without bin/pipeline.
399
400         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
401         First add elements to bin, then link.
402         
403         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
404         (gst_bin_remove_func):
405         Unlink pads from elements added/removed from bin to maintain
406         hierarchy consistency.
407
408 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
409
410         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
411         (gst_base_transform_handle_buffer):
412         * gst/base/gstbasetransform.h:
413           Remove broken delay_configure (fixes renegotiation of software
414           scaling pipelines); remove some leftover printf()s.
415
416 2005-07-28  Wim Taymans  <wim@fluendo.com>
417
418         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
419         Added some more tests for wrong hierarchy
420
421         * docs/design/part-overview.txt:
422         Some updates.
423
424         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
425         Cleanups.
426
427         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
428         (gst_element_dispose):
429         Some more cleanups.
430
431         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
432         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
433         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
434         (gst_pad_set_caps), (gst_pad_send_event):
435         Check for correct hierarchy when linking pads. Moving to
436         strict requirement for ghostpads when linking elements in
437         different bins.
438
439         * gst/gstpad.h:
440         Clean ups. Added WRONG_HIERARCHY return value.
441
442 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
443
444         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
445           Better debug if no transform is possible.
446
447 2005-07-27  Wim Taymans  <wim@fluendo.com>
448
449         * docs/random/wtay/network-transp:
450         Some old doc I had.
451
452 2005-07-27  Wim Taymans  <wim@fluendo.com>
453
454         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
455         (gst_dp_event_from_packet):
456         Fix serialization of seek events.
457
458 2005-07-27  Wim Taymans  <wim@fluendo.com>
459
460         * check/gst-libs/gdp.c: (GST_START_TEST):
461         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
462         Fix compilation and fix event serialization.
463
464 2005-07-27  Wim Taymans  <wim@fluendo.com>
465
466         * CHANGES-0.9:
467         * docs/design/part-TODO.txt:
468         * docs/design/part-events.txt:
469         Some docs updates
470
471         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
472         (gst_base_sink_event), (gst_base_sink_do_sync),
473         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
474         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
475         (gst_base_src_do_seek), (gst_base_src_event_handler),
476         (gst_base_src_loop):
477         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
478         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
479         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
480         (gst_base_transform_event), (gst_base_transform_handle_buffer),
481         (gst_base_transform_set_passthrough),
482         (gst_base_transform_is_passthrough):
483         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
484         * gst/elements/gstfilesink.c: (gst_file_sink_event):
485         Event updates.
486
487         * gst/gstbuffer.h:
488         Use faster casts.
489
490         * gst/gstelement.c: (gst_element_seek):
491         * gst/gstelement.h:
492         Update gst_element_seek.
493
494         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
495         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
496         (gst_event_new_flush_start), (gst_event_new_flush_stop),
497         (gst_event_new_eos), (gst_event_new_newsegment),
498         (gst_event_parse_newsegment), (gst_event_new_tag),
499         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
500         (gst_event_parse_qos), (gst_event_new_seek),
501         (gst_event_parse_seek), (gst_event_new_navigation):
502         * gst/gstevent.h:
503         Make GstEvent use GstStructure. Add parsing code, make sure the
504         API is sufficiently generic.
505         Mark possible directions of events and serialization.
506
507         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
508         (_gst_message_copy), (gst_message_new_segment_start),
509         (gst_message_new_segment_done), (gst_message_new_custom),
510         (gst_message_parse_segment_start),
511         (gst_message_parse_segment_done):
512         Small cleanups.
513
514         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
515         (gst_pad_set_caps), (gst_pad_send_event):
516         Update for new events. 
517         Catch events sent in wrong directions.
518
519         * gst/gstqueue.c: (gst_queue_link_src),
520         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
521         (gst_queue_handle_src_query):
522         Event updates.
523
524         * gst/gsttag.c:
525         * gst/gsttag.h:
526         Remove event code from this file.
527
528         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
529         (gst_dp_event_from_packet):
530         Event updates.
531
532 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
533
534         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
535         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
536         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
537           Make debugging actually useful.
538
539 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
540
541         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
542         (gst_pad_fixate_caps):
543           Implement default fixation once again, so that gst_pad_fixate()
544           actually does anything at all. This probably needs to be some
545           sort of a last resort, and use profile-based fixation first, but
546           since that doesn't exist yet, this is the best we have. Fixes
547           visualization in Totem.
548
549 2005-07-22  Wim Taymans  <wim@fluendo.com>
550
551         * docs/design/part-events.txt:
552         Small update.
553
554         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
555         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
556         (gst_base_sink_activate_pull):
557         Some more comments.
558
559         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
560         (gst_fake_src_create):
561         Fix handoff marshall.
562
563         * gst/elements/gstidentity.c: (gst_identity_class_init),
564         (gst_identity_transform_ip):
565         We're a real inplace element.
566
567         * gst/gstbus.c: (gst_bus_post):
568         Added some comments.
569
570         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
571         * tests/muxing/case1.c: (main):
572         * tests/sched/dynamic-pipeline.c: (main):
573         * tests/sched/interrupt1.c: (main):
574         * tests/sched/interrupt2.c: (main):
575         * tests/sched/interrupt3.c: (main):
576         * tests/sched/runxml.c: (main):
577         * tests/sched/sched-stress.c: (main):
578         * tests/seeking/seeking1.c: (event_received), (main):
579         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
580         (main):
581         * tests/threadstate/threadstate3.c: (main):
582         * tests/threadstate/threadstate4.c: (main):
583         * tests/threadstate/threadstate5.c: (main):
584         Fix the tests.
585
586 2005-07-21  Wim Taymans  <wim@fluendo.com>
587
588         * docs/design/part-seeking.txt:
589         Some small additions.
590
591         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
592         (gst_base_sink_get_times), (gst_base_sink_do_sync),
593         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
594         * gst/base/gstbasesink.h:
595         discont values are gint64, handle the math correctly.
596
597         * gst/base/gstbasesrc.c: (gst_base_src_loop):
598         Make the basesrc report error if the source pad is not linked.
599
600         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
601         (gst_queue_loop), (gst_queue_handle_src_query),
602         (gst_queue_src_activate_push):
603         Make queue collect data even if the srcpad is not linked.
604         Start pushing out data as soon as it is linked.
605
606         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
607         * gst/gstutils.h:
608         Added gst_flow_get_name() to ease error reporting.
609
610 2005-07-20  Wim Taymans  <wim@fluendo.com>
611
612         * gst/gstmessage.c: (gst_message_new_segment_start),
613         (gst_message_new_segment_done), (gst_message_parse_segment_start),
614         (gst_message_parse_segment_done):
615         * gst/gstmessage.h:
616         Added a bunch of messages for advanced seeking.
617
618         * gst/parse/grammar.y:
619         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
620         (gst_dpman_state_changed):
621         Fix some new-pad -> pad-added signals
622
623 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
624
625         * docs/manual/appendix-porting.xml:
626         * docs/pwg/appendix-porting.xml:
627           Document new-pad/state-change signal renames and the FixedList
628           type rename.
629
630 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
631
632         * docs/manual/advanced-autoplugging.xml:
633         * docs/manual/basics-helloworld.xml:
634         * docs/manual/basics-pads.xml:
635         * docs/random/ds/0.9-suggested-changes:
636         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
637         * gst/gstelement.h:
638         * gst/gstevent.h:
639         * gst/gstformat.h:
640         * gst/gstquery.h:
641         * gst/gststructure.c: (gst_structure_value_get_generic_type),
642         (gst_structure_parse_array), (gst_structure_parse_value):
643         * gst/gstvalue.c: (gst_type_is_fixed),
644         (gst_value_list_prepend_value), (gst_value_list_append_value),
645         (gst_value_list_get_size), (gst_value_list_get_value),
646         (gst_value_transform_array_string), (gst_value_serialize_array),
647         (gst_value_deserialize_array), (gst_value_intersect_array),
648         (gst_value_is_fixed), (_gst_value_initialize):
649         * gst/gstvalue.h:
650           GstElement::new-pad -> pad-added, GstElement::state-change ->
651           state-changed, GstValueFixedList -> GstValueArray, add format and
652           flags as their own arguments in gst_element_seek() (should improve
653           "bindeability"), remove function generators since they don't work
654           under a whole bunch of compilers (they were deprecated already
655           anyway).
656
657 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
658
659         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
660         (_gst_debug_register_funcptr):
661         * gst/gstinfo.h:
662           Fix illegal cast on some platforms (#309253).
663
664 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
665
666         * gst/gstmessage.c: (gst_message_new_custom):
667         * gst/gstmessage.h:
668           Add _new_custom, make _new_application a macro to _new_custom.
669
670 2005-07-20  Wim Taymans  <wim@fluendo.com>
671
672         * gst/base/gstbasesrc.c: (gst_base_src_init),
673         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
674         * gst/base/gstbasesrc.h:
675         Add a gboolean to decide when to push out a discont.
676
677         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
678         (gst_queue_loop), (gst_queue_handle_src_query),
679         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
680         (gst_queue_set_property), (gst_queue_get_property):
681         Some cleanups.
682
683         * tests/threadstate/threadstate1.c: (main):
684         Make a thread test compile and run... very silly..
685
686
687 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
688
689         * docs/manual/appendix-porting.xml:
690           Mention removal of libgstgconf-0.9.la and existence of gconf
691           elements.
692
693 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
694
695         * docs/pwg/advanced-clock.xml:
696         * docs/pwg/appendix-porting.xml:
697         * docs/pwg/intro-preface.xml:
698         * docs/pwg/other-base.xml:
699         * docs/pwg/other-manager.xml:
700         * docs/pwg/other-nton.xml:
701         * docs/pwg/other-ntoone.xml:
702         * docs/pwg/other-oneton.xml:
703         * docs/pwg/pwg.xml:
704           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
705           demuxer), remove n-to-n (was never written), fix some code examples
706           and links and update the porting section to include all this.
707
708 2005-07-19  Wim Taymans  <wim@fluendo.com>
709
710         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
711         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
712         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
713         (gst_queue_src_activate_push), (gst_queue_change_state),
714         (gst_queue_get_property):
715         * gst/gstqueue.h:
716         Propagate GstFlowReturn more intelligently upstream and output
717         an ERROR/EOS when streaming stopped due to fatal error.
718
719 2005-07-19  Wim Taymans  <wim@fluendo.com>
720
721         * tools/gst-launch.c: (check_intr), (event_loop), (main):
722         Don't block forever for the state change to complete, the
723         pipeline already did with a sensible timeout.
724
725 2005-07-19  Wim Taymans  <wim@fluendo.com>
726
727         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
728         Make sure we never call the create function is we
729         got deactivated.
730
731 2005-07-19  Andy Wingo  <wingo@pobox.com>
732
733         * gst/parse/parse.l: Attempt to solve bug #172815.
734
735 2005-07-19  Wim Taymans  <wim@fluendo.com>
736
737         * docs/design/part-clocks.txt:
738         * docs/design/part-events.txt:
739         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
740         Small docs updates.
741         Only update the seeking values when we are not
742         busy streaming.
743
744 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
745
746         * gst/base/gstbasesrc.c: (gst_base_src_loop):
747           Oops, ignore the result of gst_pad_push_event here.
748
749 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
750
751         * gst/base/gstbasesrc.c: (gst_base_src_loop),
752         (gst_base_src_activate_push):
753           Send discont event from the loop function, as pads
754           aren't activated yet in the activate_push handler.
755
756         * gst/gstbin.c: (bin_bus_handler):
757           Don't leak element name.
758
759 2005-07-18  Andy Wingo  <wingo@pobox.com>
760
761         * configure.ac: Use AS_LIBTOOL_TAGS.
762
763 2005-07-18  Wim Taymans  <wim@fluendo.com>
764
765         * docs/gst/gstreamer.types:
766         Remove deleted types.
767
768 2005-07-18  Wim Taymans  <wim@fluendo.com>
769
770         * check/elements/gstfakesrc.c: (GST_START_TEST):
771         * configure.ac:
772         * gst/Makefile.am:
773         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
774         (init_popt_callback):
775         * gst/gst.h:
776         * gst/gst_private.h:
777         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
778         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
779         * gst/gstbin.h:
780         * gst/gstbus.h:
781         * gst/gstconfig.h.in:
782         * gst/gstelement.c: (gst_element_class_init),
783         (gst_element_set_base_time), (gst_element_get_base_time),
784         (iterator_fold_with_resync), (gst_element_change_state),
785         (gst_element_dispose), (gst_element_get_bus):
786         * gst/gstelement.h:
787         * gst/gstelementfactory.h:
788         * gst/gsterror.c: (_gst_core_errors_init):
789         * gst/gsterror.h:
790         * gst/gstevent.h:
791         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
792         * gst/gstindex.c:
793         * gst/gstinfo.c: (_gst_debug_init):
794         * gst/gstmessage.c: (_gst_message_copy):
795         * gst/gstmessage.h:
796         * gst/gstminiobject.h:
797         * gst/gstobject.c:
798         * gst/gstobject.h:
799         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
800         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
801         * gst/gstpad.h:
802         * gst/gstparse.h:
803         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
804         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
805         (gst_pipeline_get_last_stream_time):
806         * gst/gstpipeline.h:
807         * gst/gstpluginfeature.h:
808         * gst/gstquery.h:
809         * gst/gstscheduler.c:
810         * gst/gstscheduler.h:
811         * gst/gststructure.h:
812         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
813         (gst_task_finalize), (gst_task_func), (gst_task_create),
814         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
815         (gst_task_stop), (gst_task_pause):
816         * gst/gsttask.h:
817         * gst/gsttypefind.h:
818         * gst/gsttypes.h:
819         * gst/registries/gstlibxmlregistry.c: (load_feature),
820         (gst_xml_registry_load), (gst_xml_registry_save_feature):
821         * gst/registries/gstxmlregistry.c:
822         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
823         * gst/schedulers/threadscheduler.c:
824         * libs/gst/control/dparammanager.h:
825         * tools/gst-inspect.c: (print_element_list),
826         (print_plugin_features), (print_element_features):
827         * tools/gst-xmlinspect.c: (print_element_list),
828         (print_plugin_info), (main):
829         Removed plugable schedulers.
830         Removed Scheduler/Manager from elements.
831         Removed gsttypes.h, rearranged includes.
832         Removed dependency pad<->element, element<>pipeline, and
833         various others,  fix includes.
834         implement gst_pad_get_parent() with gst_object_get_parent()
835         Make GstTask sefcontained.
836         Fix _get_state() on GstBin, it did not return ASYNC with a 0
837         timeout.
838         Fix endless loop in iterator_fold_with_resync.
839
840
841 2005-07-18  Wim Taymans  <wim@fluendo.com>
842
843         * gst/Makefile.am:
844         * gst/gstarch.h:
845         Remove old file.
846
847 2005-07-18  Wim Taymans  <wim@fluendo.com>
848
849         * gst/Makefile.am:
850         No more cothreads.h
851
852 2005-07-18  Wim Taymans  <wim@fluendo.com>
853
854         * gst/cothreads.c:
855         * gst/cothreads.h:
856         Let's remove these.
857
858 2005-07-18  Wim Taymans  <wim@fluendo.com>
859
860         * docs/design/part-dynamic.txt:
861         * docs/design/part-events.txt:
862         * docs/design/part-seeking.txt:
863         Some more docs in the works.
864
865         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
866         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
867         (gst_base_transform_setcaps), (gst_base_transform_get_size),
868         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
869         (gst_base_transform_handle_buffer),
870         (gst_base_transform_sink_activate_push),
871         (gst_base_transform_src_activate_pull),
872         (gst_base_transform_set_passthrough),
873         (gst_base_transform_is_passthrough):
874         Refcounting fixes.
875
876         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
877         Cleanups.
878
879         * gst/gstevent.c: (gst_event_finalize):
880         Set SRC to NULL.
881
882         * gst/gstutils.c: (gst_element_unlink),
883         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
884         (gst_pad_proxy_setcaps):
885         * gst/gstutils.h:
886         Add _get_parent_element() to get a pads parent as an element.
887
888 2005-07-18  Wim Taymans  <wim@fluendo.com>
889
890         * check/gst/gstbin.c: (GST_START_TEST):
891         Remove bogus test.
892
893 2005-07-18  Wim Taymans  <wim@fluendo.com>
894
895         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
896         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
897         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
898         (gst_base_sink_event), (gst_base_sink_do_sync),
899         (gst_base_sink_chain), (gst_base_sink_loop),
900         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
901         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
902         Refcounting fixes.
903         Fix logic for returning ASYNC when not prerolled.
904
905 2005-07-18  Wim Taymans  <wim@fluendo.com>
906
907         * gst/gstqueue.c: (gst_queue_handle_sink_event):
908         Fix nasty refcount bug.
909
910 2005-07-16 Philippe Khalaf <burger@speedy.org>
911         * gst/elements/gstfdsrc.c:
912         * gst/elements/gstfdsrc.h:
913         * gst/elements/gstelements.c:
914         * gst/elements/Makefile.am:
915         Ported fdsrc to 0.9.
916
917 2005-07-16  Wim Taymans  <wim@fluendo.com>
918
919         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
920         (gst_base_sink_do_sync):
921         Fix compile error.
922
923 2005-07-16  Wim Taymans  <wim@fluendo.com>
924
925         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
926         (gst_base_sink_event), (gst_base_sink_get_times),
927         (gst_base_sink_do_sync), (gst_base_sink_change_state):
928         * gst/base/gstbasesink.h:
929         Store and use discont values when syncing buffers as described
930         in design docs.
931         
932         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
933         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
934         (gst_base_src_activate_push):
935         Push discont event when starting.
936
937         * gst/elements/gstidentity.c: (gst_identity_transform):
938         Small cleanups.
939
940         * gst/gstbin.c: (gst_bin_change_state):
941         Small cleanups in base_time  distribution.
942
943         * gst/gstelement.c: (gst_element_set_base_time),
944         (gst_element_get_base_time), (gst_element_change_state):
945         * gst/gstelement.h:
946         Added methods for the base_time of the element.
947         Some MT fixes.
948
949         * gst/gstpipeline.c: (gst_pipeline_send_event),
950         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
951         (gst_pipeline_get_last_stream_time):
952         * gst/gstpipeline.h:
953         MT fixes.
954         Handle seeking as described in design doc, remove stream_time
955         hack.
956         Cleanups clock and stream_time selection code. Added accessors
957         for the stream_time.
958         
959
960 2005-07-16  Andy Wingo  <wingo@pobox.com>
961
962         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
963         (#305291).
964
965 2005-07-16  Wim Taymans  <wim@fluendo.com>
966
967         * check/gst/gstbin.c: (GST_START_TEST):
968         Make elements silent as the deep_notify refs the
969         parent, which might make the test fail.
970
971         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
972         Don't hold the lock for too long.
973
974 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
975
976         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
977           Don't unref the caps we passed to gst_caps_make_writable() after
978           passing them. gst_caps_make_writable() will do that for us.
979
980 2005-07-15  Andy Wingo  <wingo@pobox.com>
981
982         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
983         (#157311).
984
985         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
986         own marshalling function for the handoff signal. Properly type the
987         buffer as a buffer. Fixes some warnings. Should do a more general
988         solution.
989         (gst_identity_class_init): Plug into the right marshaller.
990
991 2005-07-15  Wim Taymans  <wim@fluendo.com>
992
993         * docs/design/part-TODO.txt:
994         * docs/design/part-clocks.txt:
995         * docs/design/part-element-sink.txt:
996         * docs/design/part-events.txt:
997         * docs/design/part-gstpipeline.txt:
998         Updated docs, mostly DISCONT related.
999
1000 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1001
1002         * docs/pwg/building-pads.xml:
1003           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1004
1005 2005-07-15  Andy Wingo  <wingo@pobox.com>
1006
1007         * tools/gst-typefind.c: Update, add copyright block.
1008
1009         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1010         Normalize and truncate caps before fixation.
1011
1012         * gst/gstcaps.h:
1013         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1014         discards all but the first structure from its argument.
1015
1016 2005-07-15  Wim Taymans  <wim@fluendo.com>
1017
1018         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1019         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1020         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1021         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1022         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1023         (gst_base_transform_chain), (gst_base_transform_change_state),
1024         (gst_base_transform_set_passthrough),
1025         (gst_base_transform_is_passthrough):
1026         * gst/base/gstbasetransform.h:
1027         Make passthrough work using the bufferpools.
1028         Changed API a bit, subclasses have to write into a buffer
1029         provided by the base class.
1030         More debug info in nego functions.
1031         
1032         * gst/elements/gstidentity.c: (gst_identity_init),
1033         (gst_identity_transform):
1034         Port to new base class.
1035
1036 2005-07-15  Wim Taymans  <wim@fluendo.com>
1037
1038         * gst/gstmessage.c: (gst_message_new_state_changed):
1039         * tools/gst-launch.c: (event_loop), (main):
1040         Totally dump messages in -launch with the -m option.
1041         Fix message name for State messages,
1042
1043 2005-07-14  Wim Taymans  <wim@fluendo.com>
1044
1045         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1046         Post error messages on errors.
1047
1048 2005-07-14  Wim Taymans  <wim@fluendo.com>
1049
1050         * gst/gstcaps.c: (gst_caps_do_simplify):
1051         Remove debug info.
1052
1053         * gst/gsterror.h:
1054         Define error for stream stopped.
1055
1056         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1057         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1058         Do proper return values.
1059
1060         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1061         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1062         (gst_pad_get_range):
1063         Better return values.
1064
1065         * gst/gstpad.h:
1066         Reorganise return values, add macro to check for fatal errors.
1067
1068         * gst/gstqueue.c: (gst_queue_chain):
1069         Return proper GstFlowReturn values,
1070
1071 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1072
1073         * docs/gst/gstreamer-sections.txt:
1074         * docs/gst/gstreamer.types:
1075         * docs/gst/tmpl/gst.sgml:
1076         * docs/gst/tmpl/gstbasesink.sgml:
1077         * docs/gst/tmpl/gstbasesrc.sgml:
1078         * docs/gst/tmpl/gstbasetransform.sgml:
1079         * docs/gst/tmpl/gstbin.sgml:
1080         * docs/gst/tmpl/gstbuffer.sgml:
1081         * docs/gst/tmpl/gstcaps.sgml:
1082         * docs/gst/tmpl/gstclock.sgml:
1083         * docs/gst/tmpl/gstcompat.sgml:
1084         * docs/gst/tmpl/gstconfig.sgml:
1085         * docs/gst/tmpl/gstelement.sgml:
1086         * docs/gst/tmpl/gstelementdetails.sgml:
1087         * docs/gst/tmpl/gstelementfactory.sgml:
1088         * docs/gst/tmpl/gstenumtypes.sgml:
1089         * docs/gst/tmpl/gsterror.sgml:
1090         * docs/gst/tmpl/gstevent.sgml:
1091         * docs/gst/tmpl/gstfakesink.sgml:
1092         * docs/gst/tmpl/gstfakesrc.sgml:
1093         * docs/gst/tmpl/gstfilesink.sgml:
1094         * docs/gst/tmpl/gstfilesrc.sgml:
1095         * docs/gst/tmpl/gstfilter.sgml:
1096         * docs/gst/tmpl/gstformat.sgml:
1097         * docs/gst/tmpl/gstghostpad.sgml:
1098         * docs/gst/tmpl/gstimplementsinterface.sgml:
1099         * docs/gst/tmpl/gstindex.sgml:
1100         * docs/gst/tmpl/gstindexfactory.sgml:
1101         * docs/gst/tmpl/gstinfo.sgml:
1102         * docs/gst/tmpl/gstiterator.sgml:
1103         * docs/gst/tmpl/gstmacros.sgml:
1104         * docs/gst/tmpl/gstmemchunk.sgml:
1105         * docs/gst/tmpl/gstminiobject.sgml:
1106         * docs/gst/tmpl/gstobject.sgml:
1107         * docs/gst/tmpl/gstpad.sgml:
1108         * docs/gst/tmpl/gstpadtemplate.sgml:
1109         * docs/gst/tmpl/gstparse.sgml:
1110         * docs/gst/tmpl/gstpipeline.sgml:
1111         * docs/gst/tmpl/gstplugin.sgml:
1112         * docs/gst/tmpl/gstpluginfeature.sgml:
1113         * docs/gst/tmpl/gstquery.sgml:
1114         * docs/gst/tmpl/gstqueue.sgml:
1115         * docs/gst/tmpl/gstregistry.sgml:
1116         * docs/gst/tmpl/gstregistrypool.sgml:
1117         * docs/gst/tmpl/gstscheduler.sgml:
1118         * docs/gst/tmpl/gstschedulerfactory.sgml:
1119         * docs/gst/tmpl/gststructure.sgml:
1120         * docs/gst/tmpl/gstsystemclock.sgml:
1121         * docs/gst/tmpl/gsttaglist.sgml:
1122         * docs/gst/tmpl/gsttagsetter.sgml:
1123         * docs/gst/tmpl/gsttrace.sgml:
1124         * docs/gst/tmpl/gsttrashstack.sgml:
1125         * docs/gst/tmpl/gsttypefind.sgml:
1126         * docs/gst/tmpl/gsttypefindfactory.sgml:
1127         * docs/gst/tmpl/gsttypes.sgml:
1128         * docs/gst/tmpl/gsturihandler.sgml:
1129         * docs/gst/tmpl/gsturitype.sgml:
1130         * docs/gst/tmpl/gstutils.sgml:
1131         * docs/gst/tmpl/gstvalue.sgml:
1132         * docs/gst/tmpl/gstversion.sgml:
1133         * docs/gst/tmpl/gstxml.sgml:
1134         * docs/libs/tmpl/gstcontrol.sgml:
1135         * docs/libs/tmpl/gstdataprotocol.sgml:
1136         * docs/libs/tmpl/gstdparam.sgml:
1137         * docs/libs/tmpl/gstdplinint.sgml:
1138         * docs/libs/tmpl/gstdpman.sgml:
1139         * docs/libs/tmpl/gstdpsmooth.sgml:
1140         * docs/libs/tmpl/gstgetbits.sgml:
1141         * docs/libs/tmpl/gstunitconvert.sgml:
1142         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1143         (gst_push_src_base_init), (gst_push_src_class_init),
1144         (gst_push_src_init), (gst_push_src_create):
1145         * gst/base/gstpushsrc.h:
1146         * gst/elements/gstelements.c:
1147         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1148         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1149         (gst_fake_sink_init), (gst_fake_sink_set_property),
1150         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1151         (gst_fake_sink_event), (gst_fake_sink_preroll),
1152         (gst_fake_sink_render), (gst_fake_sink_change_state):
1153         * gst/elements/gstfakesink.h:
1154         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1155         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1156         (gst_fake_src_base_init), (gst_fake_src_class_init),
1157         (gst_fake_src_init), (gst_fake_src_event_handler),
1158         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1159         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1160         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1161         (gst_fake_src_create_buffer), (gst_fake_src_create),
1162         (gst_fake_src_start), (gst_fake_src_stop):
1163         * gst/elements/gstfakesrc.h:
1164         * gst/elements/gstfilesink.c: (_do_init),
1165         (gst_file_sink_base_init), (gst_file_sink_class_init),
1166         (gst_file_sink_init), (gst_file_sink_dispose),
1167         (gst_file_sink_set_location), (gst_file_sink_set_property),
1168         (gst_file_sink_get_property), (gst_file_sink_open_file),
1169         (gst_file_sink_close_file), (gst_file_sink_query),
1170         (gst_file_sink_event), (gst_file_sink_render),
1171         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1172         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1173         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1174         * gst/elements/gstfilesink.h:
1175         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1176         (gst_file_src_class_init), (gst_file_src_init),
1177         (gst_file_src_finalize), (gst_file_src_set_location),
1178         (gst_file_src_set_property), (gst_file_src_get_property),
1179         (gst_file_src_map_region), (gst_file_src_map_small_region),
1180         (gst_file_src_create_mmap), (gst_file_src_create_read),
1181         (gst_file_src_create), (gst_file_src_is_seekable),
1182         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1183         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1184         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1185         (gst_file_src_uri_handler_init):
1186         * gst/elements/gstfilesrc.h:
1187           more autistic cleanliness in functions/names/defines
1188
1189 2005-07-13  Andy Wingo  <wingo@pobox.com>
1190
1191         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1192         source couldn't negotiate.
1193
1194         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1195         connections again.
1196
1197         * gst/gstutils.h:
1198         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1199         function. I am channeling Hades. Put your boots on suckers!!!
1200
1201 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1202
1203         * testsuite/caps/Makefile.am:
1204         * testsuite/caps/value_compare.c:
1205         * testsuite/caps/value_intersect.c:
1206         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1207           move two testsuite apps over to the check dir
1208
1209 2005-07-12  Wim Taymans  <wim@fluendo.com>
1210
1211         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1212         Added more debug info in the negotiate process.
1213
1214         * gst/gstmessage.h:
1215         Prepare for segment playback.
1216
1217         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1218         Better debugging.
1219
1220         * gst/gstutils.c:
1221         Some more docs.
1222
1223         * tools/gst-launch.c: (main):
1224         NULL pipeline on errors.
1225
1226 2005-07-12  Andy Wingo  <wingo@pobox.com>
1227
1228         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1229         not it comes from a malloc region. Make sure our copy gets freed.
1230
1231 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1232
1233         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1234         * check/gst/gstmessage.c: (GST_START_TEST):
1235         * check/gst/gststructure.c: (GST_START_TEST),
1236         (gst_structure_suite), (main):
1237           more testing
1238         * gst/gstelement.c: (gst_element_message_full):
1239           clean up GError and debug string now that they get copied
1240         * gst/gstmessage.c: (gst_message_new_error),
1241         (gst_message_new_warning), (gst_message_parse_error),
1242         (gst_message_parse_warning):
1243           use GST_TYPE_G_ERROR for structure_new, and take copies of
1244           arguments, so that we don't mess up refcounting
1245
1246 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1247
1248         * check/Makefile.am:
1249           add per-test valgrind targets
1250         * check/gst-libs/gdp.c: (GST_START_TEST),
1251         (gst_data_protocol_suite), (main):
1252           clean up
1253
1254 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1255
1256         * check/Makefile.am:
1257           instate more valgrindable tests
1258         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1259         (GST_START_TEST), (fakesrc_suite):
1260         * check/gst/gstpad.c: (GST_START_TEST):
1261         * check/gst/gststructure.c: (GST_START_TEST):
1262           fix test leaks
1263         * docs/gst/tmpl/gstminiobject.sgml:
1264         * gst/gstpad.c: (gst_pad_finalize):
1265           fix the static mutex leak
1266
1267 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1268
1269         * check/Makefile.am:
1270           add two more tests for valgrinding
1271         * check/gst/gstvalue.c: (GST_START_TEST):
1272           test refcount of deserialized buffer, found a leak
1273         * docs/gst/gstreamer-docs.sgml:
1274         * docs/gst/gstreamer-sections.txt:
1275         * docs/gst/gstreamer.types:
1276         * docs/gst/tmpl/gstminiobject.sgml:
1277           add miniobject to docs
1278         * gst/gstminiobject.c:
1279           add some docs
1280         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1281         (gst_string_unwrap):
1282           fix a hard-to-find invalid write for one of the tests
1283           fix a leak for deserialized buffers
1284
1285 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1286
1287         * docs/pwg/advanced-events.xml:
1288         * docs/pwg/advanced-request.xml:
1289         * docs/pwg/advanced-scheduling.xml:
1290         * docs/pwg/appendix-porting.xml:
1291         * docs/pwg/building-boiler.xml:
1292         * docs/pwg/intro-preface.xml:
1293         * docs/pwg/other-ntoone.xml:
1294           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1295           of example code and explanation for pad activation, loop() and
1296           getrange() functions and a bit more. Remove old comments pointing
1297           to loop-functions.
1298         * examples/pwg/Makefile.am:
1299           Add loop/getrange examples.
1300
1301 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1302
1303         * configure.ac:
1304           check for valgrind binary + some fixes
1305         * check/gst.supp:
1306           valgrind suppressions for the tests
1307         * check/Makefile.am:
1308           add a valgrind: target that valgrinds the unit tests
1309         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1310         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1311         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1312         * check/gst/gstghostpad.c:
1313           added some cleanup
1314         * check/gst/gstdata.c:
1315           removed
1316         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1317         (thread_unref), (gst_mini_object_suite), (main):
1318           added
1319         * gst/gst.c: (gst_deinit):
1320         * gst/gst.h:
1321           add a method to clean up.
1322         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1323         (gst_system_clock_obtain):
1324           allow for disposing the system clock.
1325         * tools/gst-launch.c: (main):
1326           deinit
1327
1328 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1329
1330         * docs/gst/tmpl/gstbasesrc.sgml:
1331         * docs/gst/tmpl/gstfakesrc.sgml:
1332         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1333         (gst_base_src_init), (gst_base_src_set_property),
1334         (gst_base_src_get_property), (gst_base_src_get_range),
1335         (gst_base_src_start):
1336         * gst/base/gstbasesrc.h:
1337           add num-buffers property
1338         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1339         (gst_fakesrc_init), (gst_fakesrc_set_property),
1340         (gst_fakesrc_get_property), (gst_fakesrc_create),
1341         (gst_fakesrc_start):
1342           remove num-buffers property
1343
1344 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1345
1346         * docs/gst/gstreamer-sections.txt:
1347         * docs/gst/tmpl/gstbasesink.sgml:
1348         * docs/gst/tmpl/gstbasesrc.sgml:
1349         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1350         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1351         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1352         (gst_base_sink_set_property), (gst_base_sink_get_property),
1353         (gst_base_sink_handle_object), (gst_base_sink_event),
1354         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1355         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1356         (gst_base_sink_loop), (gst_base_sink_deactivate),
1357         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1358         (gst_base_sink_change_state):
1359         * gst/base/gstbasesink.h:
1360         * gst/base/gstbasesrc.h:
1361         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1362         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1363         (gst_filesink_init):
1364           more macro splitting
1365
1366 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1367
1368         * gst/gstelement.c: (gst_element_get_bus):
1369           add debug
1370         * tools/gst-launch.c: (check_intr), (event_loop):
1371           fix bus leaks
1372
1373 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1374
1375         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1376           fix a caps leak
1377
1378 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1379
1380         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1381         (gst_base_src_finalize):
1382           add finalize method and clean up properly
1383         * gst/gstpipeline.c: (gst_pipeline_dispose):
1384           add debug
1385
1386 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1387
1388         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1389         (gst_bin_suite):
1390           add more things to check
1391         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1392         * gst/gstelement.c:
1393           more debug
1394
1395 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1396
1397         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1398         (GST_START_TEST), (fakesrc_suite):
1399         * check/gst-libs/gdp.c: (GST_START_TEST):
1400         * check/gst/gst.c: (GST_START_TEST):
1401         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1402         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1403         * check/gst/gstbus.c: (GST_START_TEST):
1404         * check/gst/gstcaps.c: (GST_START_TEST):
1405         * check/gst/gstdata.c: (GST_START_TEST):
1406         * check/gst/gstelement.c: (GST_START_TEST):
1407         * check/gst/gstghostpad.c: (GST_START_TEST):
1408         * check/gst/gstiterator.c: (GST_START_TEST):
1409         * check/gst/gstmessage.c: (GST_START_TEST):
1410         * check/gst/gstobject.c: (GST_START_TEST):
1411         * check/gst/gstpad.c: (GST_START_TEST):
1412         * check/gst/gststructure.c: (GST_START_TEST):
1413         * check/gst/gstsystemclock.c: (GST_START_TEST),
1414         (gst_systemclock_suite):
1415         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1416         * check/gst/gstvalue.c: (GST_START_TEST):
1417         * check/pipelines/cleanup.c: (GST_START_TEST):
1418         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1419         * check/states/sinks.c: (GST_START_TEST):
1420         * check/gstcheck.c: (gst_check_init):
1421         * check/gstcheck.h:
1422           add debugging category
1423           use GST_START_TEST now, so we add a debug line
1424
1425 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1426
1427         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1428           add test for state change message on a bin
1429         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1430           add another test
1431         * gst/gstbin.c: (gst_bin_init):
1432         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1433         * gst/gstelement.c: (gst_element_post_message),
1434         (gst_element_set_state):
1435         * gst/gstelementfactory.c: (gst_element_factory_create):
1436         * gst/gstmessage.c: (gst_message_new):
1437         * gst/gstscheduler.c:
1438           various debugging additions and cleanups
1439
1440 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1441
1442         * check/Makefile.am:
1443         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1444         (main):
1445           adding tests for elements
1446         * gst/gstelement.c: (gst_element_dispose):
1447
1448 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1449
1450         * gst/registries/gstlibxmlregistry.c: (load_feature):
1451           plug more leaks.  A simple gst_init() now is leakfree, yay.
1452
1453 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1454
1455         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1456         (gst_xml_registry_load):
1457           plug another memleak
1458
1459 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1460
1461         * configure.ac:
1462           use GST_SET_ERROR_CFLAGS
1463         * docs/faq/cvs.xml:
1464           change to ERROR_CFLAGS
1465
1466 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1467
1468         * configure.ac:
1469           make GST_ERROR_CFLAGS overridable and re-enable Werror
1470         * docs/faq/cvs.xml:
1471           add a note about error CFLAGS
1472         * docs/gst/tmpl/gstfakesrc.sgml:
1473         * gst/elements/gstfakesrc.c:
1474           comment out some unused code
1475         * gst/gst.c: (split_and_iterate):
1476         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1477         (load_feature):
1478           plug some memleaks
1479
1480 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1481
1482         * common/Makefile.am:
1483         * common/gtk-doc.mak:
1484         * docs/gst/Makefile.am:
1485           factor out gtk-doc.mak
1486
1487 2005-07-07  Wim Taymans  <wim@fluendo.com>
1488
1489         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1490         (gst_thread_scheduler_dispose):
1491         Unlock the STREAM_LOCK completely.
1492
1493 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1494
1495         * check/Makefile.am:
1496         * check/elements/.cvsignore:
1497         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1498         (START_TEST), (fakesrc_suite), (main):
1499         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1500         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1501         (gst_fakesrc_create), (gst_fakesrc_start):
1502         * gst/elements/gstfakesrc.h:
1503           adding a first element test
1504
1505 2005-07-07  Andy Wingo  <wingo@pobox.com>
1506
1507         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1508         debug message.
1509
1510 2005-07-07  Wim Taymans  <wim@fluendo.com>
1511
1512         * gst/gstquery.c:
1513         * gst/gstquery.h:
1514         Remove old types
1515
1516 2005-07-07  Wim Taymans  <wim@fluendo.com>
1517
1518         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1519         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1520         Allow subclasses to implement their own negotiation.
1521
1522 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1523
1524         * docs/design/part-gstbin.txt:
1525         * docs/design/part-gstpipeline.txt:
1526           Update design notes to reflect the movement of
1527           responsibility for bus handling from GstPipeline to
1528           GstBin
1529
1530 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1531
1532         * configure.ac:
1533           Remove unnecessary queue2/3/4 examples.
1534
1535 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1536
1537         * examples/Makefile.am:
1538         * examples/helloworld/helloworld.c: (event_loop), (main):
1539         * examples/queue/queue.c: (event_loop), (main):
1540         * examples/queue2/queue2.c: (main):
1541           Update a couple of the examples to work again.
1542
1543         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1544         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1545          Spelling corrections and extra debug.
1546         
1547         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1548         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1549         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1550         * gst/gstbin.h:
1551         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1552         (gst_pipeline_change_state):
1553         * gst/gstpipeline.h:
1554           Move the bus handler for children to the GstBin, and create a
1555           separate bus for receiving messages from children to the one the
1556           bus sends 'upwards' on.
1557
1558 2005-07-06  Wim Taymans  <wim@fluendo.com>
1559
1560         * gst/base/README:
1561         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1562         (gst_base_sink_handle_object), (gst_base_sink_loop),
1563         (gst_base_sink_change_state):
1564         * gst/base/gstbasesink.h:
1565         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1566         (gst_base_src_init), (gst_base_src_setcaps),
1567         (gst_base_src_getcaps), (gst_base_src_loop),
1568         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1569         (gst_base_src_start), (gst_base_src_change_state):
1570         * gst/base/gstbasesrc.h:
1571         Make basesrc negotiate.
1572         Handle the case where preroll fails in basesink.
1573         Update README.
1574
1575 2005-07-06  Wim Taymans  <wim@fluendo.com>
1576
1577         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1578         Implement the fixate function.
1579         Clean up acceptcaps.
1580
1581 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1582
1583         * docs/pwg/building-filterfactory.xml:
1584         * docs/pwg/pwg.xml:
1585           Remove never-written filter-factory chapter; I'll add the various
1586           base classes to part 4 ("other element types") later on.
1587
1588 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1589
1590         * docs/pwg/advanced-negotiation.xml:
1591         * docs/pwg/building-boiler.xml:
1592         * docs/pwg/building-pads.xml:
1593         * docs/pwg/pwg.xml:
1594         * examples/pwg/Makefile.am:
1595           Add a chapter on caps negotiation, simplify the original code
1596           samples a bit w.r.t. caps negotiation, add link to the advanced
1597           section. Add a bunch of examples showing different use cases of
1598           different types of caps negotiation. Upstream renegotiation isn't
1599           fully documented yet since nobody knows how that works.
1600
1601 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1602
1603         * check/gst/gstpad.c:
1604         * check/gstcheck.c:
1605         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1606           if pad has no parent, return NULL as list of internal links
1607
1608 2005-07-05  Andy Wingo  <wingo@pobox.com>
1609
1610         * gst/elements/gstfilesrc.c:
1611         * gst/elements/gstfakesrc.c: 
1612         * gst/base/gstpushsrc.c:
1613         * gst/base/gstbasesrc.h: 
1614         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1615         
1616 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1617
1618         * Makefile.am:
1619           better report generation target (lcov needs a patch)
1620
1621 2005-07-05  Andy Wingo  <wingo@pobox.com>
1622
1623         * gst/elements, testsuite: Null if we got it...
1624
1625 2005-07-05  Wim Taymans  <wim@fluendo.com>
1626
1627         * configure.ac:
1628         * libs/gst/dataprotocol/Makefile.am:
1629         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1630         * libs/gst/dataprotocol/dataprotocol.h:
1631         * pkgconfig/Makefile.am:
1632         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1633         * pkgconfig/gstreamer-dataprotocol.pc.in:
1634         Ported dataprotol to 0.9. 
1635         Added pkgconfig files.
1636
1637 2005-07-05  Andy Wingo  <wingo@pobox.com>
1638
1639         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1640         Default to returning TRUE for the case when tranform_caps returns
1641         a fixed caps, like for identity or volume.
1642
1643         * check/gst/gstbus.c (pound_bus_with_messages): 
1644         * check/gst/gstmessage.c (START_TEST): 
1645         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1646         message API change.
1647
1648         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1649         logic weaks here: always run transform_caps, trying passthrough
1650         operation only if the original caps intersects with the transform.
1651
1652         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1653         source and sink caps.
1654
1655         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1656         Intersect the peer caps with the pad template before going into
1657         transform_caps.
1658         (gst_base_transform_transform_caps): More debugging.
1659
1660         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1661         src argument.
1662
1663 2005-07-04  Edward Hervey  <edward@fluendo.com>
1664
1665         * gst/gstutils.c:
1666         * gst/gstutils.h:
1667         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1668         in bindings.
1669
1670 2005-07-04  Andy Wingo  <wingo@pobox.com>
1671
1672         * check/gst/gstpad.c: Only set explicit caps on pads.
1673
1674 2005-07-01  Andy Wingo  <wingo@pobox.com>
1675
1676         * tests/network-clock.scm: Commentary update.
1677
1678         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1679         Didn't really make sense, not implementable with basetransform,
1680         etc.
1681         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1682         attempt at implementing the sync property, needs an unlock method.
1683
1684         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1685         New func, by default returns the same caps (the identity
1686         transformation).
1687         (gst_base_transform_getcaps): Uses transform_caps to return
1688         something sensible.
1689         (gst_base_transform_setcaps): Complicated logic to get caps on
1690         both pads, even if they are different, and to call set_caps once
1691         for every time both pads get their caps set.
1692         (gst_base_transform_handle_buffer): Give the ref to the transform
1693         function. Allows in-place modification of the buffer.
1694
1695         * gst/base/gstbasetransform.h (transform_caps): New class method.
1696         Given caps on one side, what can I do on the other.
1697         (set_caps): Take two caps, one for each side of the element.
1698
1699         * gst/gstpad.h:
1700         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1701         caps in place. This is safe because we can check the mutability of
1702         the caps, and a good idea because fixate functions are just called
1703         as a matter of last resort. (Not actually implemented.)
1704         (gst_pad_set_caps): If the caps we're setting is actually the same
1705         as the existing pad caps, just update the pointer without calling
1706         setcaps. Assert that caps is either NULL or fixed, as per the
1707         docs.
1708
1709         * gst/gstghostpad.c: Update for fixate changes.
1710
1711 2005-07-02  Andy Wingo  <wingo@pobox.com>
1712
1713         * gst/gstcaps.c:
1714         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1715         two refcounts makes it immutable, which is enough. Doc more.
1716
1717 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1718
1719         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1720           Put the mini_object into GValue as a mini_object,
1721           not a gpointer, since that's how we declared
1722           the signal.
1723
1724 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1725
1726         * examples/pwg/Makefile.am:
1727           Fix buildbot again.
1728
1729 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1730
1731         * docs/pwg/building-testapp.xml:
1732           Add extra check.
1733         * examples/pwg/Makefile.am:
1734           Fix buildbot.
1735
1736 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1737
1738         * configure.ac:
1739         * examples/Makefile.am:
1740         * examples/pwg/Makefile.am:
1741         * examples/pwg/extract.pl:
1742           Enable building the PWG examples.
1743         * docs/pwg/advanced-interfaces.xml:
1744           Add URI interface stub.
1745         * docs/pwg/advanced-types.xml:
1746         * docs/pwg/other-autoplugger.xml:
1747         * docs/pwg/appendix-porting.xml:
1748         * docs/pwg/pwg.xml:
1749           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1750         * docs/pwg/building-boiler.xml:
1751         * docs/pwg/building-chainfn.xml:
1752         * docs/pwg/building-pads.xml:
1753         * docs/pwg/building-props.xml:
1754         * docs/pwg/building-state.xml:
1755         * docs/pwg/building-testapp.xml:
1756           Update the building-*.xml parts for 0.9 changes. All examples
1757           code blocks compile in examples/pwg/*.
1758
1759 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1760
1761         * docs/manual/advanced-autoplugging.xml:
1762         * docs/manual/appendix-checklist.xml:
1763         * docs/manual/appendix-integration.xml:
1764         * docs/manual/highlevel-components.xml:
1765           Fix playbin/decodebin examples, update docs a bit, mention bus
1766           instead of signals in various places, mention kmplayer and
1767           kaffeine since they have a working GStreamer backend in the KDE
1768           section.
1769
1770 2005-06-30  Wim Taymans  <wim@fluendo.com>
1771
1772         * CHANGES-0.9:
1773         * docs/design/draft-ghostpads.txt:
1774         * docs/design/draft-push-pull.txt:
1775         * docs/design/draft-query.txt:
1776         * docs/design/part-TODO.txt:
1777         * docs/design/part-query.txt:
1778         Added CHANGES-0.9 doc, updated status of other docs.
1779         
1780         * gst/gstquery.h:
1781         Remove "hmm" macro
1782
1783 2005-06-30  Wim Taymans  <wim@fluendo.com>
1784
1785         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1786         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1787         (gst_base_sink_change_state):
1788         * gst/base/gstbasesink.h:
1789         Some tweaks, only EOS and a buffer complete a preroll.
1790
1791 2005-06-30  Andy Wingo  <wingo@pobox.com>
1792
1793         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1794         activate_push down to the internal pad as well.
1795
1796 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1797
1798         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1799
1800         * gst/gsttaginterface.c:
1801           Some documentation fixes (#307394 and #307397).
1802
1803 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1804
1805         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1806
1807         * gst/gstvalue.c: (gst_value_intersect_list):
1808           Fix memleak (#309125).
1809
1810 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1811
1812         * docs/manual/advanced-dataaccess.xml:
1813           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1814         * docs/manual/basics-pads.xml:
1815           Add reference for filtered caps to above chapter.
1816
1817 2005-06-30  Wim Taymans  <wim@fluendo.com>
1818
1819         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1820         (gst_bin_change_state):
1821         Probes are gone.
1822         Lame attempt at making the state change function a bit
1823         more readable.
1824
1825 2005-06-30  Wim Taymans  <wim@fluendo.com>
1826
1827         * docs/design/part-clocks.txt:
1828         * docs/design/part-element-sink.txt:
1829         * docs/design/part-events.txt:
1830         * docs/design/part-preroll.txt:
1831         * docs/design/part-states.txt:
1832         Some more tweeks and additions to the docs.
1833
1834 2005-06-30  Wim Taymans  <wim@fluendo.com>
1835
1836         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1837         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1838         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1839         (gst_pad_check_pull_range), (gst_pad_get_range),
1840         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1841         * gst/gstpad.h:
1842         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1843         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1844         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1845         (gst_pad_remove_buffer_probe):
1846         Removed atomic operations, use existing LOCK.
1847         Move exception handling out of main code path.
1848
1849 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1850
1851         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1852         (silly_return_true_function), (gst_pad_class_init),
1853         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1854         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1855         (gst_pad_send_event):
1856           Fix accumulator, add default value by using _emitv() instead
1857           of _emit() for signal emission.
1858
1859 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1860
1861         * docs/manual/advanced-dataaccess.xml:
1862         * examples/manual/Makefile.am:
1863           Add probe example.
1864         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1865           Make work (??).
1866
1867 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1868
1869         * gst/elements/gstfilesink.c: (gst_filesink_render):
1870           Simplify code so that we don't have to handle short
1871           writes and return GST_FLOW_ERROR if an error occured.
1872
1873 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1874
1875         * docs/gst/gstreamer-docs.sgml:
1876           Remove probes more.
1877
1878 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1879
1880         * docs/gst/gstreamer-sections.txt:
1881         * docs/gst/tmpl/gstpad.sgml:
1882         * docs/gst/tmpl/gstprobe.sgml:
1883         * gst/Makefile.am:
1884         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1885         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1886         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1887         (gst_pad_push_event), (gst_pad_send_event):
1888         * gst/gstpad.h:
1889         * gst/gstutils.c: (gst_pad_add_data_probe),
1890         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1891         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1892         (gst_pad_remove_buffer_probe):
1893         * gst/gstutils.h:
1894           Remove old probes, add new g-signal-based probes and some utility
1895           functions.
1896
1897 2005-06-29  Edward Hervey  <edward@fluendo.com>
1898
1899         * gst/gstelementfactory.c:
1900         * gst/gstutils.h:
1901         * gst/gstutils.c:
1902         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1903         the definition to the header file.
1904
1905 2005-06-29  Andy Wingo  <wingo@pobox.com>
1906
1907         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1908         plugins from the source directory.
1909
1910 2005-06-29  Wim Taymans  <wim@fluendo.com>
1911
1912         * docs/gst/tmpl/gstbuffer.sgml:
1913         * docs/gst/tmpl/gstclock.sgml:
1914         Some fixings for blantently wrong text.
1915
1916 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1917
1918         * check/Makefile.am:
1919         * gst/gst.c: (add_path_func), (init_pre):
1920         * gst/gstregistry.c: (gst_registry_add_path):
1921           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1922           only scan the GST_PLUGIN_PATH locations, and not add
1923           system locations
1924
1925 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1926
1927         * docs/gst/gstreamer-sections.txt:
1928         * docs/gst/tmpl/gstbasesrc.sgml:
1929         * gst/gstelement.c:
1930         * gst/gstelement.h:
1931         * gst/gstevent.c:
1932         * gst/gstutils.c:
1933           doc fixes
1934
1935 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1936
1937         * docs/manual/advanced-autoplugging.xml:
1938           Fix autoplugging example.
1939
1940 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1941
1942         * docs/manual/advanced-autoplugging.xml:
1943         * docs/manual/mime-world.fig:
1944           Try to get autoplugging working, fix type detection. Fix text
1945           in hello-world image.
1946
1947 2005-06-29  Wim Taymans  <wim@fluendo.com>
1948
1949         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1950         (gst_base_sink_change_state):
1951         Small debug line.
1952
1953         * gst/gstclock.h:
1954         map SIGNAL and BROADCAST to the right function.
1955
1956         * gst/gstobject.h:
1957         Remove redundant braces.
1958
1959         * gst/gstpad.c: (gst_pad_set_caps):
1960         Don't call setcaps function when reseting caps to NULL.
1961
1962         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1963         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1964         (gst_system_clock_id_unschedule):
1965         Use BROADCAST as this is what we do.
1966
1967 2005-06-29  Wim Taymans  <wim@fluendo.com>
1968
1969         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1970         We are actually prerolling before commiting the state
1971         change. 
1972
1973 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1974
1975         * docs/manual/advanced-clocks.xml:
1976         * docs/manual/advanced-interfaces.xml:
1977         * docs/manual/advanced-metadata.xml:
1978         * docs/manual/advanced-position.xml:
1979         * docs/manual/advanced-schedulers.xml:
1980         * docs/manual/advanced-threads.xml:
1981         * docs/manual/appendix-porting.xml:
1982         * docs/manual/basics-bins.xml:
1983         * docs/manual/basics-bus.xml:
1984         * docs/manual/basics-elements.xml:
1985         * docs/manual/basics-helloworld.xml:
1986         * docs/manual/basics-pads.xml:
1987         * docs/manual/highlevel-components.xml:
1988         * docs/manual/manual.xml:
1989         * docs/manual/thread.fig:
1990           Update (until threads/scheduling) Application Development Manual;
1991           remove GstThread, add GstBus, add simple porting checklist, add
1992           documentation for tag writing, clocks, make all examples until this
1993           part compile and run.
1994         * examples/manual/Makefile.am:
1995           Update from changes to Application Development Manual; add bus
1996           example, remove thread example.
1997
1998 2005-06-28  Wim Taymans  <wim@fluendo.com>
1999
2000         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2001         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2002         (gst_bus_source_dispatch):
2003         Add debugging messages.
2004         Make internal methods static.
2005         Handle the case where the bus is flushed in the handler.
2006         
2007         * gst/gstelement.c: (gst_element_get_bus):
2008         Fix refcount in _get_bus();
2009
2010         * gst/gstpipeline.c: (gst_pipeline_change_state),
2011         (gst_pipeline_get_clock_func):
2012         Clock refcounting fixes.
2013         Handle the case where preroll timed out more gracefully.
2014         
2015         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2016         Clean up the internal thread in dispose. This is needed
2017         for subclasses that actually get disposed.
2018         
2019         * gst/schedulers/threadscheduler.c:
2020         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2021         (gst_thread_scheduler_dispose):
2022         Free thread pool in dispose.
2023
2024 2005-06-28  Andy Wingo  <wingo@pobox.com>
2025
2026         * tests/network-clock-utils.scm (debug, print-event): New utils.
2027
2028         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2029         (*packet-loss*): Unified loss probability.
2030         (network-time): Report out-of-band events.
2031
2032         * tests/plot-data: Add support for out-of-band events. Hack it
2033         into this script instead of passing it down the pipe; should fix
2034         this later.
2035
2036 2005-06-28  Wim Taymans  <wim@fluendo.com>
2037
2038         * docs/gst/gstreamer.types:
2039         * docs/gst/tmpl/gstbasesrc.sgml:
2040         * docs/gst/tmpl/gstpad.sgml:
2041         Docs fixes.
2042
2043 2005-06-28  Wim Taymans  <wim@fluendo.com>
2044
2045         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2046         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2047         (gst_proxy_pad_do_fixatecaps):
2048         Correctly proxy the check_pull_range function.
2049
2050 2005-06-28  Andy Wingo  <wingo@pobox.com>
2051
2052         * tests/network-clock.scm: Removed need for slib.
2053         
2054 2005-06-28  Wim Taymans  <wim@fluendo.com>
2055
2056         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2057         (gst_basesink_preroll_queue_flush):
2058         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2059         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2060         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2061         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2062         (gst_proxy_pad_set_property):
2063         * gst/gstpad.c:
2064         * gst/gstpad.h:
2065         * gst/gstqueue.c: (gst_queue_init):
2066         The deprecated pad loop function is removed now.
2067
2068 2005-06-28  Andy Wingo  <wingo@pobox.com>
2069
2070         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2071         New parameters, simulate network packet loss.
2072
2073         * tests/network-clock-utils.scm: Initialize the RNG.
2074
2075 2005-06-28  Wim Taymans  <wim@fluendo.com>
2076
2077         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2078         (gst_basesink_event), (gst_basesink_deactivate):
2079         Flushing the preroll queue always needs to unlock the waiters.
2080
2081 2005-06-28  Edward Hervey  <edward@fluendo.com>
2082
2083         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2084         Wheen a seek was successful on a pipeline, set the stream_time to the
2085         seek offset in order to have a synchronized stream_time.
2086
2087 2005-06-28  Wim Taymans  <wim@fluendo.com>
2088
2089         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2090         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2091         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2092         (gst_proxy_pad_do_fixatecaps):
2093         Call wrapper function instead of just calling the function
2094         pointers. This takes care of any locking and whatmore.
2095
2096 2005-06-28  Wim Taymans  <wim@fluendo.com>
2097
2098         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2099         (gst_pad_pull_range):
2100         * gst/gstpad.h:
2101         CONNECTED -> LINKED.
2102
2103 2005-06-28  Andy Wingo  <wingo@pobox.com>
2104
2105         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2106         source-munging commit!!!
2107
2108         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2109         (gst_object_sink): Take gpointer arguments, not GstObject --
2110         avoids casts. Like GLib.
2111
2112         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2113         activate.
2114
2115 2005-06-27  Andy Wingo  <wingo@pobox.com>
2116
2117         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2118         remaining buffer.
2119
2120         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2121         returns a sorted copy of the trace list.
2122         (gst_alloc_trace_print_live): New API, only prints traces with
2123         live objects. Sort the list.
2124         (gst_alloc_trace_print_all): Sort the list.
2125         (gst_alloc_trace_print): Align columns.
2126
2127         * gst/elements/gstttypefindelement.c:
2128         * gst/elements/gsttee.c:
2129         * gst/base/gstbasesrc.c:
2130         * gst/base/gstbasesink.c:
2131         * gst/base/gstbasetransform.c:
2132         * gst/gstqueue.c: Adapt for pad activation changes.
2133
2134         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2135         sched.
2136         (gst_pipeline_dispose): Drop ref on sched.
2137
2138         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2139         (gst_pad_activate_default): Push mode by default.
2140         (pre_activate_switch, post_activate_switch): New stubs, things to
2141         do before and after switching activation modes on pads.
2142         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2143         the pad's activate function to choose which mode to activate.
2144         Shortcut on deactivation and call the right function directly.
2145         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2146         mode.
2147         (gst_pad_activate_push): New API, same for push mode.
2148         (gst_pad_set_activate_function) 
2149         (gst_pad_set_activatepull_function) 
2150         (gst_pad_set_activatepush_function): Setters for new API.
2151
2152         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2153         Trace all miniobjects.
2154         (gst_mini_object_make_writable): Unref the arg if we copy, like
2155         gst_caps_make_writable.
2156
2157         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2158
2159         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2160         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2161         Adapt for new pad API.
2162
2163         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2164
2165         * gst/gstelement.h:
2166         * gst/gstelement.c (gst_element_iterate_src_pads) 
2167         (gst_element_iterate_sink_pads): New API functions.
2168         
2169         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2170         should fold into gstiterator.c in some form.
2171         (gst_element_pads_activate): Simplified via use of fold and
2172         delegation of decisions to gstpad->activate.
2173
2174         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2175         help in debugging.
2176
2177         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2178         class once in init, like gstmessage. Didn't run into this issue
2179         but it seems correct. Don't initialize a trace, gstminiobject does
2180         that.
2181
2182         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2183         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2184         to the bus.
2185         (assert_live_count): New util function, uses alloc traces to check
2186         cleanup.
2187
2188         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2189         To be modified when unlink drops the internal pad.
2190
2191 2005-06-27  Wim Taymans  <wim@fluendo.com>
2192
2193         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2194         (gst_bin_change_state):
2195         Cleanup the get_state() function a little, make sure it
2196         iterates the same set of elements.
2197         Added stub iterate_state_order().
2198
2199 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2200
2201         * docs/gst/gstreamer-docs.sgml:
2202         * docs/gst/gstreamer-sections.txt:
2203         * docs/gst/gstreamer.types:
2204         * docs/gst/tmpl/gstbasesink.sgml:
2205         * docs/gst/tmpl/gstbasesrc.sgml:
2206         * docs/gst/tmpl/gstbasetransform.sgml:
2207         * docs/gst/tmpl/gstelement.sgml:
2208         * docs/gst/tmpl/gstiterator.sgml:
2209         * gst/base/gstbasesrc.c:
2210         * gst/base/gstbasesrc.h:
2211         * gst/base/gstbasetransform.h:
2212         * gst/gstelement.c:
2213         * gst/gstiterator.h:
2214           adding basetransform and iterator docs
2215
2216 2005-06-27  Andy Wingo  <wingo@pobox.com>
2217
2218         * docs/design/part-activation.txt: Notes on how activation should
2219         work -- not quite implemented yet.
2220
2221 2005-06-25  Wim Taymans  <wim@fluendo.com>
2222
2223         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2224         At least get the chain function correct, needs more
2225         fixing.
2226
2227 2005-06-25  Wim Taymans  <wim@fluendo.com>
2228
2229         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2230         (gst_basesink_handle_object), (gst_basesink_event),
2231         (gst_basesink_do_sync), (gst_basesink_handle_event),
2232         (gst_basesink_change_state):
2233         * gst/gsttask.h:
2234         Right, two problems here: ghostpads don't take locks and
2235         glib _rec_mutex_lock_full() with depth==0 still locks.
2236         Catch illegal locking and g_warn them.
2237
2238 2005-06-25  Wim Taymans  <wim@fluendo.com>
2239
2240         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2241         Have to check for completion now...
2242
2243 2005-06-25  Wim Taymans  <wim@fluendo.com>
2244
2245         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2246         (gst_basesink_handle_object), (gst_basesink_event),
2247         (gst_basesink_do_sync), (gst_basesink_handle_event),
2248         (gst_basesink_change_state):
2249         * gst/gstpad.h:
2250         Unlock STREAM_LOCK whatever the recursion was.
2251
2252 2005-06-25  Wim Taymans  <wim@fluendo.com>
2253
2254         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2255         (gst_basesink_preroll_queue_empty),
2256         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2257         (gst_basesink_event), (gst_basesink_do_sync),
2258         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2259         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2260         (gst_basesink_change_state):
2261         Reworked the base sink, handle event and buffer serialisation
2262         correctly and removed possible deadlock.
2263         Handle EOS correctly.
2264
2265 2005-06-25  Wim Taymans  <wim@fluendo.com>
2266
2267         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2268         (gst_pipeline_change_state):
2269         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2270         Allow elements to post EOS in the state change function.
2271         Fix up -launch, make it exit the poll loop when the
2272         pipeline actually changed state.
2273         Fix up warning parsing in -launch.
2274
2275 2005-06-25  Wim Taymans  <wim@fluendo.com>
2276
2277         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2278         (gst_tee_sink_activate):
2279         Core takes STREAM_LOCK for us now.
2280
2281 2005-06-25  Wim Taymans  <wim@fluendo.com>
2282
2283         * gst/gstelement.c: (gst_element_get_state_func),
2284         (gst_element_set_state):
2285         * gst/gstelement.h:
2286         * gst/gstmessage.c: (gst_message_parse_error),
2287         (gst_message_parse_warning):
2288         Keep track of current target state while performing a state
2289         change so that subclasses can do something interesting.
2290         Fix parsing of warning/error messages when GError is NULL.
2291
2292 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2293
2294         * docs/gst/Makefile.am:
2295         * docs/gst/gstreamer-docs.sgml:
2296         * docs/gst/gstreamer-sections.txt:
2297         * docs/gst/gstreamer.types:
2298         * docs/gst/tmpl/gstbasesink.sgml:
2299         * docs/gst/tmpl/gstbasesrc.sgml:
2300         * docs/gst/tmpl/gstbin.sgml:
2301         * docs/gst/tmpl/gstcompat.sgml:
2302         * docs/gst/tmpl/gstfakesink.sgml:
2303         * docs/gst/tmpl/gstfakesrc.sgml:
2304         * docs/gst/tmpl/gstfilesink.sgml:
2305         * docs/gst/tmpl/gstfilesrc.sgml:
2306         * docs/gst/tmpl/gstindex.sgml:
2307         * docs/manual/appendix-quotes.xml:
2308         * gst/base/gstbasesrc.h:
2309         * gst/elements/gstfakesrc.h:
2310         * gst/gstmessage.h:
2311           start pulling in base classes and elements in our docs
2312
2313 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2314
2315         * docs/gst/Makefile.am:
2316         * docs/libs/Makefile.am:
2317           fixed make distcheck with gtk-doc 1.3
2318
2319 2005-06-23  Wim Taymans  <wim@fluendo.com>
2320
2321         * gst/gstelement.c: (gst_element_get_state_func),
2322         (gst_element_set_state), (gst_element_change_state):
2323         When the state did not change, also report NO_PREROLL
2324         when it matters.
2325
2326 2005-06-23  Wim Taymans  <wim@fluendo.com>
2327
2328         * gst/gstpad.c: (gst_pad_event_default):
2329         * gst/gstqueue.c: (gst_queue_loop):
2330         No unsafe task pausing please.
2331
2332 2005-06-23  Wim Taymans  <wim@fluendo.com>
2333
2334         * gst/schedulers/threadscheduler.c:
2335         (gst_thread_scheduler_task_start),
2336         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2337         Ref the task before pushing it on the threadpool. This
2338         makes sure that we have a ref when the threadfunction is
2339         actually called.
2340
2341 2005-06-23  Andy Wingo  <wingo@pobox.com>
2342
2343         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2344         offset is greater than the file's size.
2345
2346         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2347         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2348         * gst/gstobject.c (gst_object_class_init): Make the class lock
2349         recursive. Wim won't let me drop deep_notify. Decodebin works
2350         again, whoopdy doo.
2351
2352         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2353         internal pad, and hacks accordingly. Doesn't do it on the target
2354         pad because we change its caps. Probably catches all cases of
2355         interest tho.
2356         (gst_ghost_pad_set_property): Connect to notify::caps as
2357         appropritate.
2358
2359         * tests/network-clock.scm (plot-simulation): Pipe data to the
2360         elite python skript.
2361
2362         * tests/network-clock-utils.scm (define-parameter): New macro,
2363         defines a parameter that can be set via the command line.
2364         (set-parameter!, parse-parameter-arguments): Command line args
2365         parser.
2366
2367         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2368         stdin.
2369
2370 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2371
2372         * gst/elements/gsttypefindelement.c:
2373         (gst_type_find_element_handle_event):
2374           Don't restart typefinding on a discont.
2375         * gst/gstelement.c: (gst_element_set_state):
2376           Debug spelling fix.
2377         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2378           Allow changing mode of an active pad.
2379           Debug output fixes.
2380         * gst/registries/gstlibxmlregistry.c: (load_feature):
2381           Don't cast a static pad template to a normal pad template.
2382
2383 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2384
2385         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2386         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2387           remove gst_strtoll completely, since it didn't actually do
2388           anything more than what g_ascii_strtoull already does.
2389           check for range errors when deserializing
2390           do a cast for the unsigned cases; but further fixing needs
2391           a decision on what the interpretation of "(int)" and
2392           deserialization should be for values that fall outside the
2393           type's boundaries (ie, refuse, or interpret as casting)
2394
2395 2005-06-23  Wim Taymans  <wim@fluendo.com>
2396
2397         * check/Makefile.am:
2398         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2399         * docs/design/part-live-source.txt:
2400         * docs/design/part-states.txt:
2401         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2402         (gst_basesrc_set_live), (gst_basesrc_is_live),
2403         (gst_basesrc_get_range), (gst_basesrc_activate),
2404         (gst_basesrc_change_state):
2405         * gst/base/gstbasesrc.h:
2406         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2407         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2408         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2409         * gst/gstelement.c: (gst_element_get_state_func),
2410         (gst_element_set_state):
2411         * gst/gstelement.h:
2412         * gst/gsttypes.h:
2413         * tools/gst-launch.c: (event_loop), (main):
2414         Added support for live sources and other elements that
2415         cannot do preroll.
2416         Updated design docs, added live-source design doc.
2417         Implemented live source functionality in basesrc
2418         Fix error condition in _bin_get_state()
2419         Implement live source handling in -launch.
2420         Added check for live sources.
2421         Fixed case in GstBin where elements were changed state
2422         multiple times.
2423
2424
2425 2005-06-23  Andy Wingo  <wingo@pobox.com>
2426
2427         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2428         borken refcounting.
2429
2430         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2431         gst_caps_replace takes care of this for us.
2432
2433         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2434         gst_pad_set_caps on the target, not just its setcaps() function.
2435
2436         * tests/network-clock.scm: 
2437         * tests/network-clock-utils.scm: A network clock simulator.
2438         Something of an algorithmic testbed before doing something in C.
2439
2440 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2441
2442         * check/Makefile.am:
2443         * check/gst/capslist.h:
2444           copy over from 0.8, and add two with bitmasks specified with
2445           (int) 0xFF...
2446         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2447           add test to parse everything from capslist.h
2448         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2449         (main):
2450           add test for structure deserialization
2451         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2452           add tests for deserialization of strings to int types
2453         * gst/gststructure.c: (gst_structure_nth_field_name):
2454         * gst/gststructure.h:
2455           add a way to get the name of a field referenced by index
2456         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2457           instead of checking if the resulting long long lies between
2458           min and max, we check if the long long would fit into
2459           a number of bytes for the final type.
2460           This fixes cases where a string represents 2^32 - 1, which
2461           when cast to int would be the (valid) -1, but is bigger than
2462           G_MAXINT
2463
2464 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2465
2466         * gst/parse/grammar.y:
2467           add a log line for type deserialization
2468
2469 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2470
2471         * check/gst/gstvalue.c: (START_TEST):
2472         * gst/gstvalue.c: (gst_value_deserialize):
2473           return long long, not int, so gint64 deserialization actually
2474           works.  Is there any flag that makes the compiler check this ?
2475           Fixes #308559
2476
2477 2005-06-22  Wim Taymans  <wim@fluendo.com>
2478
2479         * gst/gstbuffer.h:
2480         Added convenience macros for setting buffers in GValue.
2481
2482 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2483
2484         * check/gst/.cvsignore:
2485         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2486           add a test deserializing int64, and comment part out because
2487           it fails, yay !
2488
2489 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2490
2491         * check/Makefile.am:
2492         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2493         * testsuite/Makefile.am:
2494         * testsuite/caps/Makefile.am:
2495         * testsuite/caps/value_serialize.c:
2496         * testsuite/test_gst_init.c:
2497           move a value_serialize test over
2498
2499 2005-06-20  Wim Taymans  <wim@fluendo.com>
2500
2501         * gst/gstpad.c:
2502         Small doc updates.
2503         
2504         * gst/gstvalue.c: (gst_value_compare_buffer),
2505         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2506         (gst_value_compare_flags), (gst_value_serialize_flags),
2507         (gst_value_deserialize_flags), (_gst_value_initialize):
2508         Fix serialisation of buffers, they are not boxed types anymore
2509
2510 2005-06-20  Wim Taymans  <wim@fluendo.com>
2511
2512         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2513         Testcase to show error in buffer-on-caps serialisation.
2514
2515 2005-06-20  Andy Wingo  <wingo@pobox.com>
2516
2517         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2518         will be adding to later.
2519
2520         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2521         if its socks fill with rocks.
2522         (gst_system_clock_obtain): Set the name on object construction.
2523         Avoid double-checked locking.
2524
2525 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2526
2527         * gst/gsturi.c: (gst_element_make_from_uri):
2528           Fix potential endless loop.
2529
2530 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2531
2532         * check/Makefile.am:
2533           add gsttag
2534         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2535         (main):
2536           move over from testsuite dir and clean up
2537         * configure.ac:
2538         * gst/gsttag.c:
2539         * testsuite/Makefile.am:
2540         * testsuite/tags/.cvsignore:
2541         * testsuite/tags/Makefile.am:
2542         * testsuite/tags/merge.c:
2543           remove testsuite/tags
2544
2545 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2546
2547         * docs/gst/gstreamer-sections.txt:
2548         * docs/gst/tmpl/gstenumtypes.sgml:
2549         * win32/gstenumtypes.c:
2550           clean up documentation build a little
2551
2552 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2553
2554         * check/gstcheck.h:
2555           add macros for checking refcounts on objects and caps
2556         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2557           add some more unit tests
2558         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2559         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2560           fix leaked refcounts (I hope :)) so unittest works
2561         * gst/gstpad.h:
2562           whitespace removal
2563
2564 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2565
2566         * configure.ac: back to HEAD
2567
2568 === release 0.9.1 ===
2569
2570 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2571
2572         * NEWS:
2573         * RELEASE:
2574           updated
2575
2576 2005-06-17  Andy Wingo  <wingo@pobox.com>
2577
2578         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2579         assert; it's always possible that the pad gets deactivated in
2580         between the checks in gstpad.c and the implementation. Rely on
2581         finish_preroll() to return a FLUSHING or similar instead of on the
2582         assert.
2583         
2584         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2585         clock and post an EOS message if we come out of finish_preroll in
2586         the playing state.
2587
2588 2005-06-16  David Schleef  <ds@schleef.org>
2589
2590         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2591         (gst_capsfilter_set_property): Allow NULL as possible value
2592         for filter_caps property, indicating GST_CAPS_ANY.
2593
2594 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2595
2596         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2597           fix debug output
2598         * gst/schedulers/Makefile.am:
2599           use libgst prefix
2600         * gstreamer.spec.in:
2601           fix spec for it
2602
2603 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2604
2605         * gstreamer.spec.in:
2606           clean up
2607
2608 2005-06-08  Andy Wingo  <wingo@pobox.com>
2609
2610         * gst/gstutils.c: RPAD fixes all around.
2611         (gst_element_link_pads): Refcounting fixes.
2612
2613         * tools/gst-inspect.c:
2614         * tools/gst-xmlinspect.c:
2615         * parse/grammar.y:
2616         * gst/base/gsttypefindhelper.c:
2617         * gst/base/gstbasesink.c:
2618         * gst/gstqueue.c: RPAD fixes.
2619
2620         * gst/gstghostpad.h:
2621         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2622         pads. The tricky thing is they provide both source and sink
2623         interfaces, since they proxy the internal pad for the external
2624         pad, and vice versa. Implement with lower-level ProxyPad objects,
2625         with the interior proxy pad as a child of the exterior ghost pad.
2626         Should write a doc on this.
2627         
2628         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2629         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2630         gst_object API.
2631         
2632         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2633         pads are real pads. No ghost pads in this file. Not documenting
2634         the myriad s/RPAD/PAD/ and REALIZE fixes.
2635         (gst_pad_class_init): Add properties for "direction" and
2636         "template". Both are construct-only, so they can't change during
2637         the life of the pad. Fixes properly deriving from GstPad.
2638         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2639         derived objects, just set properties when creating the objects via
2640         g_object_new.
2641         (gst_pad_get_parent): Implement as a function, return NULL if the
2642         parent is not an element.
2643         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2644         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2645         
2646         * gst/gstobject.c (gst_object_class_init): Make name a construct
2647         property. Don't set it in the object init.
2648
2649         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2650         with UNKNOWN direction.
2651         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2652         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2653         (gst_element_remove_pad): Remove ghost-pad special cases.
2654         (gst_element_pads_activate): Remove rpad cruft.
2655
2656         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2657         catch the pad's-parent-not-an-element case.
2658
2659         * gst/gst.h: Include gstghostpad.h.
2660
2661         * gst/gst.c (init_post): No more real, ghost pads.
2662
2663         * gst/Makefile.am: Add gstghostpad.[ch].
2664
2665         * check/Makefile.am:
2666         * check/gst/gstbin.c:
2667         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2668         into a bin creates ghost pads, and that the refcounts are right.
2669         Partly moved from gstbin.c.
2670
2671 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2672
2673         * check/gst-libs/.cvsignore:
2674         * check/gst/.cvsignore:
2675         * check/pipelines/.cvsignore:
2676           ignore more
2677         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2678         (START_TEST), (cleanup_suite), (main):
2679           add some tests related to cleanup after running pipelines
2680
2681 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2682
2683         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2684           add a testsuite for GstBuffer
2685
2686 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2687
2688         * gst/gstminiobject.h:
2689           add defines for accessing the refcount
2690
2691 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2692
2693         * Makefile.am: added support for html unit test coverage reports
2694
2695 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2696
2697         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2698           Free existing caps if the capsfilter changes. Add a FIXME about
2699           setting those caps on the pads.
2700
2701         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2702           Before adding a ghost pad to a parent bin, check that there isn't
2703           already one for the element on the bin. Prevents infinite recursion
2704           when using decodebin in parse pipelines. Andy says he'll rewrite the
2705           way this works anyway, so ignore the hack.
2706
2707 2005-06-02  Andy Wingo  <wingo@pobox.com>
2708
2709         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2710         file size, pass it on to the type find helper.
2711
2712         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2713         segment_start and segment_end properly according to the seek
2714         method. Segment_end is still a bit flaky because offset can be
2715         negative for CUR and END cases, but it takes -1 as an "unset"
2716         value.
2717
2718 2005-06-02  Wim Taymans  <wim@fluendo.com>
2719
2720         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2721         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2722         (gst_basesink_activate):
2723         * gst/base/gstbasesink.h:
2724         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2725         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2726         (gst_pad_query), (gst_pad_start_task):
2727         * gst/gstpad.h:
2728         * gst/gstqueue.c: (gst_queue_bufferalloc),
2729         (gst_queue_handle_sink_event), (gst_queue_chain):
2730         Bufferalloc: return GstFlowReturn to more accuratly report
2731         why allocation failed.
2732
2733 2005-06-02  Wim Taymans  <wim@fluendo.com>
2734
2735         * gst/gstpipeline.c: (gst_pipeline_send_event):
2736         Take snapshot of state without blocking.
2737
2738 2005-06-02  Wim Taymans  <wim@fluendo.com>
2739
2740         * docs/design/part-TODO.txt:
2741         * docs/design/part-caps.txt:
2742         * docs/design/part-clocks.txt:
2743         * docs/design/part-negotiation.txt:
2744         * docs/design/part-preroll.txt:
2745         Small doc updates 
2746
2747 2005-05-30  Wim Taymans  <wim@fluendo.com>
2748
2749         * gst/elements/gstidentity.c: (gst_identity_event),
2750         (gst_identity_transform), (gst_identity_get_property):
2751         Protect last_message property as it is accessed from
2752         multiple threads.
2753
2754 2005-05-30  Wim Taymans  <wim@fluendo.com>
2755
2756         * gst/gstelement.c: (gst_element_init),
2757         (gst_element_pads_activate), (gst_element_change_state):
2758         Slicker pad activation code.
2759
2760 2005-05-30  Wim Taymans  <wim@fluendo.com>
2761
2762         * gst/Makefile.am:
2763         * gst/gstelement.h:
2764         * gst/gstelementfactory.h:
2765         * gst/gsttypes.h:
2766         Move elementfactory methods to separate .h file.
2767
2768 2005-05-30  Wim Taymans  <wim@fluendo.com>
2769
2770         * docs/design/part-overview.txt:
2771         * gst/gstsystemclock.h:
2772         Small typo fixes, doc updates.
2773
2774 2005-05-30  Wim Taymans  <wim@fluendo.com>
2775
2776         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2777         (init_popt_callback):
2778         Remove cpu-opt flag.
2779
2780 2005-05-30  Wim Taymans  <wim@fluendo.com>
2781
2782         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2783         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2784         * gst/gstbuffer.h:
2785         Avoid typechecking in places where not needed.
2786         Added accessor for malloc_data.
2787
2788 2005-05-30  Wim Taymans  <wim@fluendo.com>
2789
2790         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2791         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2792         (gst_pad_configure_sink), (gst_pad_configure_src),
2793         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2794         (gst_pad_start_task):
2795         Propagate errors from _set_caps() in configure_src/sink
2796         functions instead of returning TRUE.
2797         FLUSH events can travel up and downstream
2798
2799
2800 2005-05-30  Wim Taymans  <wim@fluendo.com>
2801
2802         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2803         (gst_basesink_activate):
2804         Handle EOS in preroll.
2805
2806 2005-05-30  Wim Taymans  <wim@fluendo.com>
2807
2808         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2809         (gst_queue_loop), (gst_queue_handle_src_event):
2810         Remove old pieces of code
2811         Flushing the queue in an upstream event is a very bad idea.
2812
2813 2005-05-26  Andy Wingo  <wingo@pobox.com>
2814
2815         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2816         gst_value_set_mini_object so as to add a ref on the object (which
2817         will be removed when the value is unset).
2818
2819         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2820         arg type in ::handoff.
2821
2822         * gst/gstelement.c (gst_element_change_state): Also deactivate
2823         pads in READY->NULL, just in case the element didn't make it to
2824         PAUSED. Wingo tested, Wim approved.
2825
2826 2005-05-26  Wim Taymans  <wim@fluendo.com>
2827
2828         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2829         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2830         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2831         A flushing pad cannot be used to alloc_buffer from.
2832
2833 2005-05-26  Wim Taymans  <wim@fluendo.com>
2834
2835         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2836         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2837         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2838         (gst_bus_create_watch), (gst_bus_add_watch_full):
2839         * gst/gstbus.h:
2840         Implement a real GSource and use g_main_context_wakeup() to
2841         signal new messages instead of the socketpair.
2842
2843 2005-05-25  Wim Taymans  <wim@fluendo.com>
2844
2845         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2846         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2847         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2848         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2849         (gst_pad_send_event), (gst_pad_start_task):
2850         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2851         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2852         (gst_queue_sink_activate), (gst_queue_src_activate),
2853         (gst_queue_change_state):
2854         * gst/gstqueue.h:
2855         Fix state changes for non sinks. We now change sinks, then elements
2856         with unconnected srcpads, then the rest.
2857         More efficient queue unlocking in flush and state changes.
2858         Set the pad activate mode even if it does not have an activate
2859         function.
2860
2861 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2862
2863         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2864           Don't go in pull mode for non-seekable sources.
2865         * gst/elements/gsttypefindelement.h:
2866         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2867         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2868         (free_entry), (stop_typefinding),
2869         (gst_type_find_element_handle_event), (find_peek),
2870         (gst_type_find_element_chain), (do_pull_typefind),
2871         (gst_type_find_element_change_state):
2872           Allow typefinding (w/o seeking) in push-mode, simplified version
2873           of what was in 0.8.
2874         * gst/gstutils.c: (gst_buffer_join):
2875         * gst/gstutils.h:
2876           gst_buffer_join() from 0.8.
2877
2878 2005-05-25  Wim Taymans  <wim@fluendo.com>
2879
2880         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2881         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2882         (gst_pad_send_event), (gst_pad_start_task):
2883         Disable attempt at mode switching until it is figured out.
2884
2885 2005-05-25  Wim Taymans  <wim@fluendo.com>
2886
2887         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2888         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2889         (gst_basesink_finish_preroll), (gst_basesink_chain),
2890         (gst_basesink_loop), (gst_basesink_activate),
2891         (gst_basesink_change_state):
2892         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2893         (gst_basesrc_get_range), (gst_basesrc_loop),
2894         (gst_basesrc_activate):
2895         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2896         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2897         (gst_real_pad_init), (gst_real_pad_set_property),
2898         (gst_real_pad_get_property), (gst_pad_set_active),
2899         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2900         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2901         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2902         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2903         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2904         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2905         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2906         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2907         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2908         (gst_pad_stop_task):
2909         * gst/gstpad.h:
2910         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2911         (gst_queue_loop), (gst_queue_src_activate):
2912         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2913         (gst_task_get_state):
2914         * gst/gsttask.h:
2915         * gst/schedulers/threadscheduler.c:
2916         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2917         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2918         in task function.
2919         Remove ACTIVE pad flag, use FLUSHING everywhere
2920         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2921         functions.
2922         Add locks around IS_FLUSHING when reading.
2923         Take STREAM lock in chain(), get_range() functions so plugins
2924         don't need to take it anymore.
2925         
2926
2927
2928 2005-05-25  Wim Taymans  <wim@fluendo.com>
2929
2930         * tools/gst-launch.c: (event_loop):
2931         Unref message after using its contents instead of
2932         before.
2933
2934 2005-05-24  Wim Taymans  <wim@fluendo.com>
2935
2936         * docs/design/draft-ghostpads.txt:
2937         * docs/design/draft-push-pull.txt:
2938         * docs/design/draft-query.txt:
2939         * docs/design/part-overview.txt:
2940         Docs updates, added general overview doc.
2941
2942 2005-05-21  David Schleef  <ds@schleef.org>
2943
2944         * docs/gst/tmpl/old/GstBin.sgml:
2945         * docs/gst/tmpl/old/GstBuffer.sgml:
2946         * docs/gst/tmpl/old/GstCaps.sgml:
2947         * docs/gst/tmpl/old/GstClock.sgml:
2948         * docs/gst/tmpl/old/GstCompat.sgml:
2949         * docs/gst/tmpl/old/GstData.sgml:
2950         * docs/gst/tmpl/old/GstElement.sgml:
2951         * docs/gst/tmpl/old/GstEvent.sgml:
2952         * docs/gst/tmpl/old/GstIndex.sgml:
2953         * docs/gst/tmpl/old/GstStructure.sgml:
2954         * docs/gst/tmpl/old/GstTag.sgml:
2955         * docs/gst/tmpl/old/cothreads.sgml:
2956         * docs/gst/tmpl/old/cothreads_compat.sgml:
2957         * docs/gst/tmpl/old/gettext.sgml:
2958         * docs/gst/tmpl/old/gobject2gtk.sgml:
2959         * docs/gst/tmpl/old/grammar.tab.sgml:
2960         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2961         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2962         * docs/gst/tmpl/old/gst_private.sgml:
2963         * docs/gst/tmpl/old/gstaggregator.sgml:
2964         * docs/gst/tmpl/old/gstarch.sgml:
2965         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2966         * docs/gst/tmpl/old/gstbufferstore.sgml:
2967         * docs/gst/tmpl/old/gstdata_private.sgml:
2968         * docs/gst/tmpl/old/gstdisksink.sgml:
2969         * docs/gst/tmpl/old/gstdisksrc.sgml:
2970         * docs/gst/tmpl/old/gstelementfactory.sgml:
2971         * docs/gst/tmpl/old/gstextratypes.sgml:
2972         * docs/gst/tmpl/old/gstfakesink.sgml:
2973         * docs/gst/tmpl/old/gstfakesrc.sgml:
2974         * docs/gst/tmpl/old/gstfdsink.sgml:
2975         * docs/gst/tmpl/old/gstfdsrc.sgml:
2976         * docs/gst/tmpl/old/gstfilesink.sgml:
2977         * docs/gst/tmpl/old/gstfilesrc.sgml:
2978         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2979         * docs/gst/tmpl/old/gstidentity.sgml:
2980         * docs/gst/tmpl/old/gstindexfactory.sgml:
2981         * docs/gst/tmpl/old/gstmarshal.sgml:
2982         * docs/gst/tmpl/old/gstmd5sink.sgml:
2983         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2984         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2985         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2986         * docs/gst/tmpl/old/gstpipefilter.sgml:
2987         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2988         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2989         * docs/gst/tmpl/old/gstshaper.sgml:
2990         * docs/gst/tmpl/old/gstspider.sgml:
2991         * docs/gst/tmpl/old/gstspideridentity.sgml:
2992         * docs/gst/tmpl/old/gststatistics.sgml:
2993         * docs/gst/tmpl/old/gsttee.sgml:
2994         * docs/gst/tmpl/old/gsttimecache.sgml:
2995         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2996         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2997         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2998         * docs/gst/tmpl/old/types.sgml:
2999           I didn't intend to add these or check them in.
3000
3001 2005-05-19  David Schleef  <ds@schleef.org>
3002
3003         * configure.ac: Use -no-common everywhere.  In a sane world, it
3004           would be the default in libtool, because without it, you can't
3005           build DLLs on Windows.
3006         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3007         * docs/gst/gstreamer-sections.txt:
3008         * docs/gst/tmpl/gstcpu.sgml:
3009         * docs/gst/tmpl/gstdata.sgml:
3010         * docs/gst/tmpl/gstthread.sgml:
3011
3012 2005-05-19  David Schleef  <ds@schleef.org>
3013
3014         * gst/gstminiobject.c: (gst_value_set_mini_object),
3015         (gst_value_take_mini_object), (gst_value_get_mini_object):
3016         * gst/gstminiobject.h: Add GValue set/get functions.
3017
3018 2005-05-19  Wim Taymans  <wim@fluendo.com>
3019
3020         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3021         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3022         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3023         * gst/gstbuffer.h:
3024         * gst/gstbus.c: (gst_bus_post):
3025         * gst/gstelement.c: (gst_element_get_random_pad):
3026         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3027         Make subbufer unref the parent in finalize.
3028         some more debugging info.
3029
3030
3031 2005-05-19  Wim Taymans  <wim@fluendo.com>
3032
3033         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3034         (gst_basesink_init), (gst_basesink_finalize),
3035         (gst_basesink_activate), (gst_basesink_change_state):
3036         Don't free preroll queue too early.
3037
3038 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3039
3040         * gst/Makefile.am:
3041         * gst/ROADMAP:
3042           Hi, I'm outdated. Please shoot me.
3043
3044 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3045
3046         * gst/gstpipeline.c: (gst_pipeline_send_event):
3047           Do not access variables after they have been deleted.
3048
3049 2005-05-19  Wim Taymans  <wim@fluendo.com>
3050
3051         * tools/gst-inspect.c: (print_plugin_features):
3052         A plugin feature does unfortunatly not use the
3053         object name yet...
3054
3055 2005-05-18  Wim Taymans  <wim@fluendo.com>
3056
3057         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3058         Port _span() functions to new subbuffers.
3059
3060 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3061
3062         * gst/gstbin.c: (gst_bin_add_func):
3063           Fix clock settery in bins when adding kids after the clock has
3064           been selected.
3065
3066 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3067
3068         * gst/elements/gstidentity.c: (gst_identity_class_init):
3069           Workaround until signals support GstMiniObject.
3070
3071 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3072
3073         * gst/gstbuffer.c:
3074         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3075
3076 2005-05-18  Wim Taymans  <wim@fluendo.com>
3077
3078         * gst/base/Makefile.am:
3079         * gst/base/gstadapter.c: (gst_adapter_base_init),
3080         (gst_adapter_class_init), (gst_adapter_init),
3081         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3082         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3083         (gst_adapter_flush), (gst_adapter_available),
3084         (gst_adapter_available_fast):
3085         * gst/base/gstadapter.h:
3086         Ported and added adapter to the base classes.
3087
3088 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3089
3090         * gst/gst.c:
3091         * gst/gstmessage.c:
3092           Make sure the class is reffed/unreffed once before threads can be
3093           used.  Fixes #304551.
3094
3095 2005-05-17  Wim Taymans  <wim@fluendo.com>
3096
3097         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3098         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3099         * gst/gstminiobject.c: (gst_mini_object_get_type),
3100         (gst_mini_object_free):
3101         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3102         (gst_pad_push), (gst_pad_push_event):
3103         * gst/gstqueue.c: (gst_queue_change_state):
3104         Don't queue buffers in basesink when we are flushing.
3105         Unref buffer when flushing in basesink.
3106         Flush queue when going to READY
3107         Unref buffer when _push() returns an error.
3108         Don't free MiniObject instance when refcount is incremented
3109         in _finalize() so that we can recover objects.
3110
3111 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3112
3113         * docs/manual/advanced-schedulers.xml:
3114         * docs/manual/appendix-checklist.xml:
3115         * docs/pwg/advanced-clock.xml:
3116         * docs/pwg/advanced-interfaces.xml:
3117         * docs/pwg/advanced-request.xml:
3118         * docs/pwg/advanced-types.xml:
3119         * docs/pwg/intro-preface.xml:
3120         * examples/plugins/example.c: (gst_example_get_type),
3121         (gst_example_class_init), (gst_example_chain),
3122         (gst_example_set_property), (gst_example_get_property),
3123         (gst_example_change_state), (plugin_init):
3124         * examples/plugins/example.h:
3125           small doc fixes
3126
3127 2005-05-17  Wim Taymans  <wim@fluendo.com>
3128
3129         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3130         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3131         * gst/gstqueue.c: (gst_queue_change_state):
3132         Clear queue when going to READY.
3133         Remove IN_SETCAPS flag too.
3134
3135 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3136
3137         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3138           Remove implicit cast from gboolean to GstElementStateReturn;
3139           make sure we still return failure in paused => ready case if
3140           the parent class fails to change state and our own stop 
3141           vfunc succeeds.
3142
3143 2005-05-17  Wim Taymans  <wim@fluendo.com>
3144
3145         * tools/gst-launch.c: (event_loop):
3146         Message was unreffed too soon.
3147
3148 2005-05-16  Andy Wingo  <wingo@pobox.com>
3149
3150         * gst/gstbin.c (sink_iterator_filter): Err... um...
3151
3152         * check/gst/gstbin.c (test_ghost_pads): New test for the
3153         ghosting-if-elements-not-in-same-bin behavior.
3154
3155 2005-05-16  David Schleef  <ds@schleef.org>
3156
3157         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3158         accessing refcount directly.
3159
3160 2005-05-15  David Schleef  <ds@schleef.org>
3161
3162         * check/Makefile.am: remove GstData checks
3163         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3164         * gst/Makefile.am: add miniobject, remove data
3165         * gst/gst.h: add miniobject, remove data
3166         * gst/gstdata.c: remove
3167         * gst/gstdata.h: remove
3168         * gst/gstdata_private.h: remove
3169         * gst/gsttypes.h: remove GstEvent and GstMessage
3170         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3171         * gst/gstmarshal.list: change BOXED -> OBJECT
3172
3173         Implement GstMiniObject.
3174         * gst/gstminiobject.c:
3175         * gst/gstminiobject.h:
3176
3177         Modify to be subclasses of GstMiniObject.
3178         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3179         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3180         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3181         (gst_subbuffer_get_type), (gst_subbuffer_init),
3182         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3183         (gst_buffer_span):
3184         * gst/gstbuffer.h:
3185         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3186         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3187         (_gst_event_copy), (gst_event_new):
3188         * gst/gstevent.h:
3189         * gst/gstmessage.c: (_gst_message_initialize),
3190         (gst_message_get_type), (gst_message_class_init),
3191         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3192         (gst_message_new), (gst_message_new_error),
3193         (gst_message_new_warning), (gst_message_new_tag),
3194         (gst_message_new_state_changed), (gst_message_new_application):
3195         * gst/gstmessage.h:
3196         * gst/gstprobe.c: (gst_probe_perform),
3197         (gst_probe_dispatcher_dispatch):
3198         * gst/gstprobe.h:
3199         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3200         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3201         (_gst_query_copy), (gst_query_new):
3202
3203         Update elements for GstData -> GstMiniObject changes
3204         * gst/gstquery.h:
3205         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3206         (gst_queue_chain), (gst_queue_loop):
3207         * gst/elements/gstbufferstore.c:
3208         (gst_buffer_store_add_buffer_func),
3209         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3210         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3211         (gst_fakesink_render):
3212         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3213         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3214         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3215         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3216         (gst_filesrc_create_read):
3217         * gst/elements/gstidentity.c: (gst_identity_class_init):
3218         * gst/elements/gsttypefindelement.c:
3219         (gst_type_find_element_src_event), (free_entry_buffers),
3220         (gst_type_find_element_handle_event):
3221         * libs/gst/dataprotocol/dataprotocol.c:
3222         (gst_dp_header_from_buffer):
3223         * libs/gst/dataprotocol/dataprotocol.h:
3224         * libs/gst/dataprotocol/dp-private.h:
3225
3226 2005-05-15  David Schleef  <ds@schleef.org>
3227
3228         * gst/elements/gstelements.c: Don't include headers that were
3229         just removed.
3230
3231 2005-05-15  David Schleef  <ds@schleef.org>
3232
3233         * gst/elements/Makefile.am: Remove some elements that don't
3234         need to be in the core (or even exist at all).
3235         * gst/elements/gstaggregator.c:
3236         * gst/elements/gstaggregator.h:
3237         * gst/elements/gstmd5sink.c:
3238         * gst/elements/gstmd5sink.h:
3239         * gst/elements/gstmultifilesrc.c:
3240         * gst/elements/gstmultifilesrc.h:
3241         * gst/elements/gstpipefilter.c:
3242         * gst/elements/gstpipefilter.h:
3243         * gst/elements/gstshaper.c:
3244         * gst/elements/gstshaper.h:
3245         * gst/elements/gststatistics.c:
3246         * gst/elements/gststatistics.h:
3247         * po/POTFILES.in: Remove above files.
3248
3249 2005-05-14  Andy Wingo  <wingo@pobox.com>
3250
3251         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3252         so as to get the refs right.
3253         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3254         unreffing objects that don't pass the filter.
3255
3256         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3257         gst_element_set_bus.
3258         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3259         normal cases, this will destroy the bus.
3260
3261         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3262         object.
3263
3264         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3265         has no sinks.
3266
3267 2005-05-13  Andy Wingo  <wingo@pobox.com>
3268
3269         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3270         gst_pad_link, call pad_link_maybe_ghosting,
3271         (pad_link_maybe_ghosting): Links pads, making sure that the
3272         elements being linked are in the same bin.
3273         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3274         Helpers for pad_link_maybe_ghosting.
3275
3276 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3277
3278         * configure.ac:
3279           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3280
3281 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3282
3283         * docs/design/part-element-source.txt:
3284           Mention GstPushSrc
3285
3286 2005-05-12  Wim Taymans  <wim@fluendo.com>
3287
3288         * gst/base/gstbasesink.c: (gst_basesink_init),
3289         (gst_basesink_activate):
3290         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3291         (gst_basesrc_is_seekable):
3292         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3293         (bin_element_is_sink), (gst_bin_change_state):
3294         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3295         * gst/gstelement.h:
3296         Identify sinks by their flag to avoid overly complicated
3297         checks (fow now).
3298         Do state changes even for elements not reachable from the
3299         sinks.
3300         BaseSink is a sink now :)
3301         Some more debugging info in the basesrc.
3302
3303
3304 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3305
3306         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3307           Implement _query on a bin, similar to _send_event.
3308
3309 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3310
3311         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3312           Discont event offset format should be GST_FORMAT_BYTES,
3313           not GST_FORMAT_TIME.
3314
3315 2005-05-12  Wim Taymans  <wim@fluendo.com>
3316
3317         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3318         Same fix as Ronald's but without the signal. 
3319
3320 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3321
3322         * gst/gstutils.c: (gst_element_query_position):
3323           No, an element is not a pad.
3324
3325 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3326
3327         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3328         (gst_bin_get_state):
3329           If a child is removed from a bin while we remove the child from
3330           the bin and while we're retrieving its state, signal this to the
3331           get_state function so we abort the wait (instead of waiting for
3332           a timeout) and can immediately re-iterate over all other elements.
3333
3334 2005-05-12  Wim Taymans  <wim@fluendo.com>
3335
3336         * gst/base/Makefile.am:
3337         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3338         (gst_basesrc_start):
3339         * gst/base/gstbasesrc.h:
3340         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3341         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3342         (gst_pushsrc_init), (gst_pushsrc_create):
3343         * gst/base/gstpushsrc.h:
3344         Added is_seekable to BaseSrc
3345         Added simple PushSrc.
3346
3347 2005-05-11  Wim Taymans  <wim@fluendo.com>
3348
3349         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3350         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3351         (gst_element_link_pads), (gst_element_query_position),
3352         (gst_element_query_convert), (intersect_caps_func),
3353         (gst_pad_query_position), (gst_pad_query_convert):
3354         Fix refcounting in utils function.
3355         No point in trying to activate a pad when it's added, it could
3356         be added from the state change function and then we deadlock, the
3357         element has to decide what to do.
3358
3359 2005-05-10  Andy Wingo  <wingo@pobox.com>
3360
3361         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3362         *all* the arguments.
3363
3364         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3365         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3366         lock (according to the docs -- if this is wrong change the docs).
3367
3368         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3369         flush messages in the NULL state.
3370
3371         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3372         message immediately and return.
3373         (gst_bus_set_flushing): New function. If a bus is flushing, it
3374         flushes out any queued messages and immediately unrefs new
3375         messages. This is so when an element goes to NULL, all of the
3376         unhandled messages coming from it can be freed, and their
3377         references to the element dropped. In other words: message source
3378         ref considered harmful :P
3379
3380         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3381         we're finished with it.
3382
3383         * gst/gstmessage.c (gst_message_new_state_changed): 
3384
3385 2005-05-10  Wim Taymans  <wim@fluendo.com>
3386
3387         * gst/gstvalue.c: (gst_value_compare_flags),
3388         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3389         (_gst_value_initialize):
3390         Added flags serialize/deserialize/compare code.
3391
3392 2005-05-09  Andy Wingo  <wingo@pobox.com>
3393
3394         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3395         Intersect the peer's caps with our caps.
3396
3397 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3398
3399         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3400         * gst/elements/gsttypefindelement.c: (find_peek):
3401           Handle negative offsets better. Fixes decodebin.
3402
3403 2005-05-09  Wim Taymans  <wim@fluendo.com>
3404
3405         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3406         (gst_base_transform_event):
3407         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3408         Implement accept_caps.
3409         Fix silly lock/unlock mismatch in base class.
3410
3411 2005-05-09  Wim Taymans  <wim@fluendo.com>
3412
3413         * docs/design/draft-push-pull.txt:
3414         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3415         * gst/elements/gstfilesink.c: (gst_filesink_init),
3416         (gst_filesink_query):
3417         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3418         (gst_type_find_handle_src_query), (find_element_get_length):
3419         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3420         * gst/gstelement.h:
3421         * gst/gstmessage.c:
3422         * gst/gstmessage.h:
3423         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3424         (gst_real_pad_get_caps_unlocked),
3425         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3426         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3427         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3428         (gst_real_pad_dispose), (gst_real_pad_finalize),
3429         (gst_pad_load_and_link), (gst_pad_save_thyself),
3430         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3431         (gst_pad_check_pull_range), (gst_pad_pull_range),
3432         (gst_pad_template_get_type), (gst_pad_template_class_init),
3433         (gst_pad_template_init), (gst_pad_template_dispose),
3434         (name_is_valid), (gst_static_pad_template_get),
3435         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3436         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3437         (gst_pad_get_element_private), (gst_pad_start_task),
3438         (gst_pad_pause_task), (gst_pad_stop_task),
3439         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3440         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3441         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3442         (gst_ghost_pad_new):
3443         * gst/gstpad.h:
3444         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3445         (gst_query_new_position), (gst_query_set_position),
3446         (gst_query_parse_position), (gst_query_new_convert),
3447         (gst_query_set_convert), (gst_query_parse_convert):
3448         * gst/gstquery.h:
3449         * gst/gstqueryutils.c:
3450         * gst/gstqueryutils.h:
3451         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3452         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3453         (gst_queue_handle_src_query):
3454         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3455         (gst_element_query_position), (gst_element_query_convert),
3456         (intersect_caps_func), (gst_pad_query_position),
3457         (gst_pad_query_convert):
3458         * gst/gstutils.h:
3459         * tools/gst-inspect.c: (print_pad_info):
3460         * tools/gst-xmlinspect.c: (print_element_info):
3461         Remove old query functions. Ported old code.
3462         Added position/convert helper functions to gstutils.
3463         Reordered gstpad.c code, grouping relevant things.
3464         Remove gst_message_new(), always need to speficy a specific
3465         message.
3466
3467
3468 2005-05-09  Andy Wingo  <wingo@pobox.com>
3469
3470         * gst/gstiterator.h: Add some includes.
3471
3472         * gst/gstqueryutils.h: Include more headers.
3473
3474         * gst/gstpad.h:
3475         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3476         some uses of gst_pad_query.
3477
3478         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3479         NULL out parameters.
3480         (gst_query_new_position): New proc, allocates a new position
3481         query.
3482
3483         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3484         gstqueryutils.c to the build.
3485
3486         * gst/gststructure.c (gst_structure_set_valist): Implement with
3487         the generic G_VALUE_COLLECT.
3488         
3489 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3490
3491         * gst/Makefile.am: (gst_headers):
3492         Added gstqueryutils.h to the list of headers to install, that was
3493         a 'nachty' move wingo :)
3494
3495 2005-05-06  Andy Wingo  <wingo@pobox.com>
3496
3497         * gst/gstquery.h
3498         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3499         GstData, init a memchunk.
3500         (standard_definitions): Add a few query types, deprecate a few.
3501         (gst_query_get_type): New proc.
3502         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3503         implementation.
3504         (gst_query_new_application, gst_query_get_structure): New public
3505         procs.
3506
3507         * docs/design/draft-query.txt: Removed LINKS from the query types,
3508         because all the rest can be dispatched to other pads -- seemed
3509         ugly to have a query that couldn't be dispatched. internal_links
3510         is fine as a pad method.
3511
3512         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3513         in gstpad.c, but maintain binary compatibility for the moment.
3514         Will fix before 0.9 is out.
3515
3516         * gst/gstqueryutils.c: 
3517         * gst/gstqueryutils.h: New files, implement 3 methods for each
3518         query type: parse_query, parse_response, and set. Probably need an
3519         allocator as well.
3520
3521         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3522
3523         * gst/elements/gstfilesink.c (gst_filesink_query2):
3524         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3525         query_types, and formats methods.
3526
3527         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3528         (gst_pad_set_query2_function): New functions.
3529         (gst_real_pad_init): Set query2_default as the default query2
3530         function. Basically just dispatches to internally linked pads.
3531
3532         Needs review!
3533         
3534         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3535         without using the atomic operations. Only one thread can possibly
3536         be accessing the data at this point. Changed so as to avoid
3537         gst_atomic operations.
3538
3539 2005-05-06  Wim Taymans  <wim@fluendo.com>
3540
3541         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3542         Also set caps if we use the fallback buffer alloc.
3543
3544 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3545
3546         * docs/gst/Makefile.am:
3547         * docs/gst/gstreamer-docs.sgml:
3548         * docs/gst/gstreamer-sections.txt:
3549         * docs/gst/tmpl/gstatomic.sgml:
3550         * docs/gst/tmpl/gstmemchunk.sgml:
3551         * testsuite/elements/struct_i386.h:
3552         * win32/GStreamer.vcproj:
3553         * win32/Makefile:
3554           Purge GstAtomic stuff from docs and win32 makefiles as well
3555
3556 2005-05-06  Wim Taymans  <wim@fluendo.com>
3557
3558         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3559         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3560         * gst/gstpad.c: (gst_pad_peer_get_caps):
3561         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3562         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3563         (gst_queue_src_activate), (gst_queue_change_state):
3564         * gst/gstqueue.h:
3565         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3566         (intersect_caps_func):
3567         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3568         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3569         Some fixes for the peer_get_caps() change.
3570
3571 2005-05-06  Wim Taymans  <wim@fluendo.com>
3572
3573         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3574         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3575         (gst_basesink_activate):
3576         Actually do something with error codes returned from the push
3577         functions.
3578
3579 2005-05-06  Wim Taymans  <wim@fluendo.com>
3580
3581         * docs/design/part-element-sink.txt:
3582         * docs/design/part-element-source.txt:
3583         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3584         (gst_basesink_event), (gst_basesink_activate):
3585         * gst/base/gstbasesink.h:
3586         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3587         (gst_basesrc_activate):
3588         * gst/base/gstbasesrc.h:
3589         * gst/gstelement.c: (gst_element_pads_activate):
3590         Some more documentation.
3591         Fixed scheduling decision in _pads_activate().
3592
3593 2005-05-05  Andy Wingo  <wingo@pobox.com>
3594
3595         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3596         the test suite.
3597
3598 2005-05-05  Wim Taymans  <wim@fluendo.com>
3599
3600         * gst/base/Makefile.am:
3601         * gst/base/gstbasesink.h:
3602         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3603         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3604         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3605         (gst_collectpads_class_init), (gst_collectpads_init),
3606         (gst_collectpads_finalize), (gst_collectpads_new),
3607         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3608         (find_pad), (gst_collectpads_remove_pad),
3609         (gst_collectpads_is_active), (gst_collectpads_collect),
3610         (gst_collectpads_collect_range), (gst_collectpads_start),
3611         (gst_collectpads_stop), (gst_collectpads_peek),
3612         (gst_collectpads_pop), (gst_collectpads_available),
3613         (gst_collectpads_read), (gst_collectpads_flush),
3614         (gst_collectpads_chain):
3615         * gst/base/gstcollectpads.h:
3616         * gst/elements/Makefile.am:
3617         * gst/elements/gstelements.c:
3618         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3619         (gst_fakesink_get_times), (gst_fakesink_event),
3620         (gst_fakesink_preroll), (gst_fakesink_render):
3621         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3622         (gst_filesink_init), (gst_filesink_set_location),
3623         (gst_filesink_open_file), (gst_filesink_close_file),
3624         (gst_filesink_pad_query), (gst_filesink_event),
3625         (gst_filesink_render), (gst_filesink_change_state):
3626         * gst/elements/gstfilesink.h:
3627         Added object to help in making collect pad based elements.
3628         Ported filesink.
3629         Make event function in sink baseclass return gboolean.
3630
3631 2005-05-05  Wim Taymans  <wim@fluendo.com>
3632
3633         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3634         (gst_bin_get_by_name):
3635         * gst/gstbuffer.h:
3636         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3637         (gst_clock_finalize):
3638         * gst/gstdata.c: (gst_data_replace):
3639         * gst/gstdata.h:
3640         * gst/gstelement.c: (gst_element_request_pad),
3641         (gst_element_pads_activate):
3642         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3643         (gst_object_unref):
3644         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3645         (gst_pad_set_checkgetrange_function),
3646         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3647         (gst_pad_check_pull_range), (gst_pad_pull_range),
3648         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3649         (gst_pad_pause_task), (gst_pad_stop_task):
3650         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3651         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3652         Fix name lookup in GstBin.
3653         Added _data_replace() function and _buffer_replace()
3654         Use finalize method to clean up clock.
3655         Fix refcounting on request pads.
3656         Fix pad schedule mode error.
3657         Some more object refcounting debug info,
3658
3659
3660 2005-05-04  Andy Wingo <wingo@pobox.com>
3661
3662         * check/Makefile.am:
3663         * docs/gst/tmpl/gstatomic.sgml:
3664         * docs/gst/tmpl/gstplugin.sgml:
3665         * gst/base/gstbasesink.c: (gst_basesink_activate):
3666         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3667         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3668         (gst_basesrc_query), (gst_basesrc_set_property),
3669         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3670         (gst_basesrc_activate):
3671         * gst/base/gstbasesrc.h:
3672         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3673         (gst_base_transform_src_activate):
3674         * gst/elements/gstelements.c:
3675         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3676         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3677         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3678         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3679         (gst_type_find_element_checkgetrange),
3680         (gst_type_find_element_activate):
3681         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3682         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3683         (gst_caps_load_thyself):
3684         * gst/gstelement.c: (gst_element_pads_activate),
3685         (gst_element_save_thyself), (gst_element_restore_thyself):
3686         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3687         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3688         * gst/gstpad.h:
3689         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3690         (gst_xml_parse_file), (gst_xml_parse_memory),
3691         (gst_xml_get_element), (gst_xml_make_element):
3692         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3693         (_file_index_id_save_xml), (gst_file_index_commit):
3694         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3695         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3696         (load_paths):
3697         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3698         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3699         * tools/gst-complete.c: (main):
3700         * tools/gst-compprep.c: (main):
3701         * tools/gst-inspect.c: (print_element_properties_info):
3702         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3703         * tools/gst-xmlinspect.c: (print_element_properties):
3704         GCC 4 fixen.
3705         
3706 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3707
3708         * gst/gstplugin.c: (gst_plugin_check_module),
3709         (gst_plugin_check_file), (gst_plugin_load_file):
3710             apply patch from #172526 to make register work on MacOSX
3711
3712 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3713
3714         * docs/gst/tmpl/gstconfig.sgml:
3715         * gst/gstconfig.h.in:
3716           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3717         * testsuite/debug/printf_extension.c: (main):
3718           Do not use GST_PTR_FORMAT on pointers to types with
3719           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3720         * testsuite/elements/property.h:
3721           use correct printf format
3722
3723 2005-05-02  Wim Taymans  <wim@fluendo.com>
3724
3725         * docs/design/draft-push-pull.txt:
3726         * docs/design/draft-query.txt:
3727         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3728         (gst_basesrc_start):
3729         Added draft for new query API.
3730         Added draft for better selecting scheduling methods.
3731         Make basesrc ignore length if the subclass does not support
3732         it.
3733
3734 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3735
3736         * gst/Makefile.am:
3737           possible fixes for automake-1.5 - _LIBADD is reserved
3738
3739 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3740
3741         * docs/faq/Makefile.am:
3742         * docs/manual/Makefile.am:
3743         * docs/manuals.mak:
3744         * docs/pwg/Makefile.am:
3745         * gst/Makefile.am:
3746           possible fixes for automake-1.5
3747
3748 2005-04-28  Wim Taymans  <wim@fluendo.com>
3749
3750         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3751         (gst_basesink_pad_getcaps), (gst_basesink_init),
3752         (gst_basesink_do_sync):
3753         * gst/gstclock.c: (gst_clock_entry_new):
3754         * gst/gstevent.c: (gst_event_discont_get_value):
3755         * gst/gstpipeline.c: (pipeline_bus_handler),
3756         (gst_pipeline_change_state):
3757         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3758         Better debugging of clocking info.
3759         Allow NULL values when getting discont values.
3760
3761 2005-04-27  Wim Taymans  <wim@fluendo.com>
3762
3763         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3764         * check/gst/gstpad.c: (gst_pad_suite):
3765         Increase timeout for checks.
3766
3767 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3768
3769         * check/Makefile.am:
3770           fix the broken rule for cleanup.  Apparently this rule is
3771           only needed on FC2, so maybe this warrants further autotool
3772           inspection.
3773
3774 2005-04-26  Wim Taymans  <wim@fluendo.com>
3775
3776         * gst/gsttrashstack.h:
3777         Ooohh. a nasty one! After having a failed pop() from the stack,
3778         it's possible that the stack is empty. In that case, don't
3779         follow the NULL pointer.
3780
3781 2005-04-25  Wim Taymans  <wim@fluendo.com>
3782
3783         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3784         (gst_pad_set_checkgetrange_function),
3785         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3786         (gst_pad_check_pull_range), (gst_pad_pull_range),
3787         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3788         (gst_pad_pause_task), (gst_pad_stop_task):
3789         * gst/gstplugin.c: (gst_plugin_load):
3790         * gst/gstplugin.h:
3791         Remove gst_library_load as it does more harm than good with
3792         the new g_module flags.
3793         Revert bogus caps template check in pad linking, pad caps
3794         are important when linking not the template, which is more
3795         general than the current caps.
3796
3797 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3798
3799         * gst/autoplug/.cvsignore:
3800         * gst/autoplug/Makefile.am:
3801         * gst/autoplug/gstsearchfuncs.c:
3802         * gst/autoplug/gstsearchfuncs.h:
3803         * gst/autoplug/gstspider.c:
3804         * gst/autoplug/gstspider.h:
3805         * gst/autoplug/gstspideridentity.c:
3806         * gst/autoplug/gstspideridentity.h:
3807         * gst/autoplug/spidertest.c:
3808           Die, spider, die.
3809
3810 2005-04-25  Wim Taymans  <wim@fluendo.com>
3811
3812         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3813         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3814         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3815         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3816         * gst/gstpad.h:
3817         Added stubs for unimplemented functions. 
3818
3819 2005-04-24  David Schleef  <ds@schleef.org>
3820
3821         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3822         please fix.
3823
3824 2005-04-24  David Schleef  <ds@schleef.org>
3825
3826         Convert everything from GstAtomicInt to g_atomic_int_*, and
3827         remove gstatomic.
3828         * gst/Makefile.am:
3829         * gst/gstatomic.c:
3830         * gst/gstatomic.h:
3831         * gst/gstatomic_impl.h:
3832         * gst/gstbuffer.c:
3833         * gst/gstcaps.c:
3834         * gst/gstcaps.h:
3835         * gst/gstclock.c:
3836         * gst/gstclock.h:
3837         * gst/gstdata.c:
3838         * gst/gstdata.h:
3839         * gst/gstdata_private.h:
3840         * gst/gstevent.c:
3841         * gst/gstinfo.c:
3842         * gst/gstinfo.h:
3843         * gst/gstmessage.c:
3844         * gst/gstobject.c:
3845         * gst/gstobject.h:
3846         * gst/gststructure.c:
3847         * gst/gststructure.h:
3848         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3849         * gst/gstutils.h:
3850
3851 2005-04-24  David Schleef  <ds@schleef.org>
3852
3853         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3854         make the regressions tests work.  Remove some code that is no
3855         longer true.
3856         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3857         Disable warning for pads without templates.
3858
3859 2005-04-24  David Schleef  <ds@schleef.org>
3860
3861         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3862         functions that handle filtered links.
3863         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3864         removed functions.
3865         * gst/gstutils.c: Fix/remove utility functions that handle
3866         filtered caps.
3867         * gst/gstutils.h:
3868         * gst/gstvalue.c: Add serialization/deserialization of caps
3869         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3870         requires fixing so that the filter caps notation creates
3871         a capsfilter element and sets the filter_caps property.  I
3872         think everyone probably wants to keep the shorthand notation.
3873         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3874         * docs/gst/tmpl/gstpad.sgml:
3875
3876         * gst/elements/gstelements.c: Register capsfilter element.
3877         * gst/Makefile.am: fix spacing
3878         * docs/random/ds/0.9-suggested-changes: random
3879
3880 2005-04-23  David Schleef  <ds@schleef.org>
3881
3882         * gst/elements/Makefile.am:
3883         * gst/elements/gstcapsfilter.c: New element that acts like an
3884         identity, but filters caps.  Will eventually replace filtered
3885         caps in pad linking.
3886         * gst/gstutils.c: (gst_element_create_all_pads): New function
3887         to create all the ALWAYS pads that are registered with an
3888         element class.  This functionality should eventually be
3889         merged in with GstElement initialization.
3890         * gst/gstutils.h:
3891         * testsuite/trigger/README: part of trigger test code that should
3892         have been checked in a long time ago.
3893
3894 2005-04-23  David Schleef  <ds@schleef.org>
3895
3896         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3897         needed with new versions of libtool (nobody will confirm this),
3898         and hard to carry around.
3899         * gst/autoplug/Makefile.am:
3900         * gst/base/Makefile.am:
3901         * gst/elements/Makefile.am:
3902         * gst/indexers/Makefile.am:
3903         * gst/schedulers/Makefile.am:
3904         * libs/gst/bytestream/Makefile.am:
3905         * libs/gst/control/Makefile.am:
3906         * libs/gst/dataprotocol/Makefile.am:
3907         * libs/gst/getbits/Makefile.am:
3908
3909 2005-04-21  Wim Taymans  <wim@fluendo.com>
3910
3911         * docs/design/draft-push-pull.txt:
3912         * docs/design/part-MT-refcounting.txt:
3913         * docs/design/part-TODO.txt:
3914         * docs/design/part-caps.txt:
3915         * docs/design/part-events.txt:
3916         * docs/design/part-gstbus.txt:
3917         * docs/design/part-gstpipeline.txt:
3918         * docs/design/part-messages.txt:
3919         * docs/design/part-push-pull.txt:
3920         * docs/design/part-query.txt:
3921         Some more docs.
3922
3923 2005-04-21  Wim Taymans  <wim@fluendo.com>
3924
3925         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3926         (gst_message_new), (gst_message_new_error),
3927         (gst_message_new_warning), (gst_message_new_tag),
3928         (gst_message_new_state_changed), (gst_message_new_application),
3929         (gst_message_get_structure):
3930         * gst/gstmessage.h:
3931         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3932         (gst_structure_copy_conditional):
3933         Use parent refcount in GstMessage to ensure GstStructure
3934         consistency.
3935         Cleaned up headers a bit.
3936         
3937
3938 2005-04-20  Wim Taymans  <wim@fluendo.com>
3939
3940         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3941         (gst_basesink_pad_getcaps), (gst_basesink_init),
3942         (gst_basesink_chain_unlocked):
3943         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3944         (gst_type_find_helper):
3945         * gst/elements/gsttypefindelement.c:
3946         (gst_type_find_element_have_type), (gst_type_find_element_init),
3947         (stop_typefinding), (gst_type_find_element_handle_event),
3948         (find_suggest), (gst_type_find_element_chain),
3949         (gst_type_find_element_checkgetrange),
3950         (gst_type_find_element_getrange), (do_typefind),
3951         (gst_type_find_element_activate):
3952         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3953         (gst_buffer_default_free), (gst_buffer_default_copy),
3954         (gst_buffer_set_caps):
3955         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3956         (gst_caps_replace):
3957         * gst/gstmessage.c: (gst_message_new),
3958         (gst_message_new_state_changed):
3959         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3960         (gst_pad_set_checkgetrange_function),
3961         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3962         (gst_pad_set_caps), (gst_pad_check_pull_range),
3963         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3964         * gst/gstpad.h:
3965         * gst/gsttypefind.c: (gst_type_find_register):
3966         Make gst_caps_replace() work like other _replace() functions.
3967         Use _caps_replace() where possible.
3968         Make sure _message_new() initialises its field.
3969         Add gst_static_pad_template_get_caps()
3970
3971
3972 2005-04-18  Andy Wingo  <wingo@pobox.com>
3973
3974         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3975         on the peer, not the pad. I think that was a typo. Pass an extra
3976         arg to see if random access is possible. Activate the pads as
3977         PULL_RANGE if possible.
3978
3979         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3980
3981         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3982         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3983         to PROP_....
3984
3985 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3986
3987         * docs/faq/using.xml:
3988           Add note on gstreamer-properties (#154996).
3989
3990 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3991
3992         * docs/random/bbb/optional-properties:
3993           Some analysis on optional properties.
3994
3995 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3996
3997         * docs/gst/tmpl/gstelementfactory.sgml:
3998         * gst/gstelement.h:
3999         * gst/gstelementfactory.c: (gst_element_factory_init),
4000         (gst_element_factory_cleanup), (gst_element_register),
4001         (__gst_element_factory_add_static_pad_template),
4002         (gst_element_factory_get_static_pad_templates),
4003         (gst_element_factory_can_src_caps),
4004         (gst_element_factory_can_sink_caps):
4005         * gst/registries/Makefile.am:
4006         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4007         (gst_xml_registry_class_init), (gst_xml_registry_init),
4008         (gst_xml_registry_new), (gst_xml_registry_set_property),
4009         (gst_xml_registry_get_property), (get_time), (make_dir),
4010         (gst_xml_registry_get_perms_func),
4011         (plugin_times_older_than_recurse), (plugin_times_older_than),
4012         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4013         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4014         (add_to_char_array), (read_string), (read_uint), (read_enum),
4015         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4016         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4017         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4018         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4019         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4020         (gst_xml_registry_rebuild):
4021         * gst/registries/gstlibxmlregistry.h:
4022         * tools/gst-compprep.c: (main):
4023         * tools/gst-inspect.c: (print_pad_templates_info):
4024         * tools/gst-xmlinspect.c: (print_element_info):
4025           Use libxml2 for registry parsing, use staticpadtemplates in
4026           elementfactories. Makes gst_init() +/- 10x faster.
4027
4028 2005-04-12  Wim Taymans  <wim@fluendo.com>
4029
4030         * gst/base/Makefile.am:
4031         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4032         (gst_basesink_pad_getcaps), (gst_basesink_init),
4033         (gst_basesink_event), (gst_basesink_change_state):
4034         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4035         (gst_basesrc_init), (gst_basesrc_query),
4036         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4037         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4038         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4039         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4040         (gst_basesrc_stop), (gst_basesrc_activate),
4041         (gst_basesrc_change_state):
4042         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4043         (helper_find_suggest), (gst_type_find_helper):
4044         * gst/base/gsttypefindhelper.h:
4045         * gst/elements/Makefile.am:
4046         * gst/elements/gstelements.c:
4047         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4048         (gst_fakesink_get_times), (gst_fakesink_event),
4049         (gst_fakesink_preroll), (gst_fakesink_render):
4050         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4051         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4052         (gst_fakesrc_get_property), (gst_fakesrc_create),
4053         (gst_fakesrc_start), (gst_fakesrc_stop):
4054         * gst/elements/gstfakesrc.h:
4055         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4056         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4057         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4058         (gst_filesrc_create_read), (gst_filesrc_create),
4059         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4060         (gst_filesrc_start):
4061         * gst/elements/gsttypefindelement.c:
4062         (gst_type_find_element_have_type), (gst_type_find_element_init),
4063         (start_typefinding), (stop_typefinding), (push_buffer_store),
4064         (gst_type_find_element_handle_event),
4065         (gst_type_find_element_chain),
4066         (gst_type_find_element_checkgetrange),
4067         (gst_type_find_element_getrange), (do_typefind),
4068         (gst_type_find_element_activate),
4069         (gst_type_find_element_change_state):
4070         * gst/elements/gsttypefindelement.h:
4071         * gst/gstpipeline.c: (pipeline_bus_handler):
4072         Added typefind helper.
4073         Small preroll fix in the base sink.
4074         Disable typefind code in basesrc.
4075         Crude port of typefindelement.
4076         Fakesrc cleanups.
4077
4078
4079 2005-04-11  Wim Taymans  <wim@fluendo.com>
4080
4081         * check/gst/gstbus.c: (gstbus_suite):
4082         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4083         * check/gstcheck.h:
4084           Fix up the timeout so that the test does not fail.
4085
4086 2005-04-06  Wim Taymans  <wim@fluendo.com>
4087
4088         * gst/base/README:
4089         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4090         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4091         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4092         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4093         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4094         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4095         (gst_basesrc_stop), (gst_basesrc_activate),
4096         (gst_basesrc_change_state), (basesrc_find_peek),
4097         (basesrc_find_suggest), (gst_basesrc_type_find):
4098         * gst/base/gstbasesrc.h:
4099         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4100         (gst_filesrc_class_init), (gst_filesrc_init),
4101         (gst_filesrc_finalize), (gst_filesrc_set_location),
4102         (gst_filesrc_set_property), (gst_filesrc_get_property),
4103         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4104         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4105         (gst_filesrc_create_read), (gst_filesrc_create),
4106         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4107         * gst/elements/gstfilesrc.h:
4108         * gst/gstelement.c: (gst_element_get_state_func),
4109         (gst_element_lost_state), (gst_element_pads_activate):
4110         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4111         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4112         (gst_pad_pull_range):
4113         * gst/gstpad.h:
4114         More work on the generic source base class, implement seeking,
4115         query.
4116         Make filesrc extend the base source class.
4117         Added gst_pad_set_checkgetrange_function to GstPad.
4118
4119 2005-04-06  Andy Wingo  <wingo@pobox.com>
4120
4121         * pkgconfig/gstreamer-base.pc.in:
4122         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4123
4124         * pkgconfig/Makefile.am:
4125         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4126
4127 2005-04-04  Wim Taymans  <wim@fluendo.com>
4128
4129         * gst/base/Makefile.am:
4130         * gst/base/README:
4131         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4132         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4133         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4134         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4135         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4136         (gst_basesrc_base_init), (gst_basesrc_class_init),
4137         (gst_basesrc_init), (gst_basesrc_get_formats),
4138         (gst_basesrc_get_query_types), (gst_basesrc_query),
4139         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4140         (gst_basesrc_set_property), (gst_basesrc_get_property),
4141         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4142         (gst_basesrc_loop), (gst_basesrc_activate),
4143         (gst_basesrc_change_state):
4144         * gst/base/gstbasesrc.h:
4145         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4146         (gst_fakesrc_class_init), (gst_fakesrc_init),
4147         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4148         (gst_fakesrc_get_property), (gst_fakesrc_create):
4149         * gst/elements/gstfakesrc.h:
4150         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4151         (gst_filesrc_open_file), (gst_filesrc_loop),
4152         (gst_filesrc_activate), (filesrc_find_peek),
4153         (gst_filesrc_type_find):
4154         Made base source class, make fakesrc extend it.
4155         Add comments to basesink class.
4156         Some filesrc cleanup.
4157
4158 2005-03-31  David Schleef  <ds@schleef.org>
4159
4160         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4161         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4162         expected to link against libgstreamer.
4163         * gst/base/Makefile.am: link against libgstreamer
4164         * gst/elements/Makefile.am: same
4165
4166 2005-03-31  Andy Wingo  <wingo@pobox.com>
4167
4168         * tests/instantiate/Makefile.am:
4169         * tests/instantiate/caps.c: Add test to test speed of caps copy
4170         and free.
4171
4172         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4173         GMemChunk to be fair.
4174
4175         * gst/gsttrashstack.h: Remove warning about using the fallback
4176         trash stack implementation, it's still faster than malloc.
4177
4178 2005-03-30  Andy Wingo  <wingo@pobox.com>
4179
4180         * tests/complexity.c: Add a copyright.
4181
4182 2005-03-31  Wim Taymans  <wim@fluendo.com>
4183
4184         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4185         (gst_base_transform_class_init), (gst_base_transform_init),
4186         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4187         (gst_base_transform_get_property),
4188         (gst_base_transform_sink_activate),
4189         (gst_base_transform_src_activate),
4190         (gst_base_transform_change_state):
4191         * gst/base/gstbasetransform.h:
4192         * gst/elements/gstidentity.c: (gst_identity_class_init),
4193         (gst_identity_event), (gst_identity_check_perfect),
4194         (gst_identity_transform), (gst_identity_start),
4195         (gst_identity_stop):
4196         Added start/stop methods to transform base class so subclasses 
4197         don't need to deal with state changes even.
4198
4199 2005-03-31  Wim Taymans  <wim@fluendo.com>
4200
4201         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4202         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4203         * gst/gstevent.h:
4204         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4205         (gst_pad_pull_range):
4206         Added rate to the discont event to prepare for variable speed
4207         and reverse playback.
4208
4209 2005-03-29  David Schleef  <ds@schleef.org>
4210
4211         * configure.ac:
4212         * testsuite/trigger/Makefile.am:
4213         * testsuite/trigger/trigger.c: A little example program to show
4214         how trigger-based elements can work.
4215
4216 2005-03-29  Wim Taymans  <wim@fluendo.com>
4217
4218         * gst/base/Makefile.am:
4219         * gst/base/README:
4220         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4221         (gst_basesink_base_init), (gst_basesink_class_init),
4222         (gst_basesink_pad_getcaps), (gst_basesink_init),
4223         (gst_basesink_activate), (gst_basesink_change_state):
4224         * gst/base/gstbasesink.h:
4225         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4226         (gst_base_transform_base_init), (gst_base_transform_finalize),
4227         (gst_base_transform_class_init), (gst_base_transform_init),
4228         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4229         (gst_base_transform_event), (gst_base_transform_getrange),
4230         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4231         (gst_base_transform_set_property),
4232         (gst_base_transform_get_property),
4233         (gst_base_transform_sink_activate),
4234         (gst_base_transform_src_activate),
4235         (gst_base_transform_change_state):
4236         * gst/base/gstbasetransform.h:
4237         * gst/elements/gstidentity.c: (gst_identity_finalize),
4238         (gst_identity_class_init), (gst_identity_init),
4239         (gst_identity_event), (gst_identity_check_perfect),
4240         (gst_identity_transform), (gst_identity_set_property),
4241         (gst_identity_get_property), (gst_identity_change_state):
4242         * gst/elements/gstidentity.h:
4243         * gst/gstelement.c: (gst_element_get_state_func),
4244         (gst_element_lost_state), (gst_element_pads_activate):
4245         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4246         (gst_pad_check_pull_range), (gst_pad_pull_range):
4247         * gst/gstpad.h:
4248         Simplify pad activation.
4249         Added function to check if pull_range can be performed.
4250         Error out when pulling inactive or flushing pads.
4251         Removed const from refcounted types as it does not make sense.
4252         Simplify pad templates in basesink
4253         Added base class for simple 1-to-1 transforms.
4254         Make identity subclass the base transform.
4255
4256 2005-03-29  Andy Wingo  <wingo@pobox.com>
4257
4258         * docs/libs/gstreamer-libs-overrides.txt: 
4259         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4260         really don't understand what's going on, but like whatever. I want
4261         green buildbot!
4262
4263         * docs/gst/Makefile.am:
4264         * docs/libs/Makefile.am: Dist the overrides files.
4265
4266         * check/Makefile.am (clean-local): Remove .libs directories.
4267
4268         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4269         elements to EXTRA_DIST, so po/ files are happy.
4270
4271         * po/POTFILES.in: Er, remove it here.
4272
4273         * po/POTFILES: Remove gstspider.c.
4274
4275         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4276
4277         * docs/libs/gstreamer-libs-docs.sgml: 
4278         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4279         bytestream.
4280
4281         * tests/complexity.c (main): Set the length of the preroll queue
4282         on the sinks to prevent a lockup.
4283
4284         * libs/gst/dataprotocol/Makefile.am: 
4285         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4286         the same as the one in check/gst-libs/gdp.c.
4287
4288         * po/, docs/gst/: Commit automatic changes to docs and po files.
4289
4290         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4291         the versioned libgstbase.
4292
4293         * check/Makefile.am: Depend on an unversioned gst-register, seems
4294         to make autoconf happier.
4295
4296         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4297
4298 2005-03-28  Wim Taymans  <wim@fluendo.com>
4299
4300         * configure.ac:
4301         * docs/design/part-gstelement.txt:
4302         * docs/design/part-negotiation.txt:
4303         * docs/design/part-preroll.txt:
4304         * docs/design/part-scheduling.txt:
4305         * docs/design/part-states.txt:
4306         * gst/Makefile.am:
4307         * gst/base/Makefile.am:
4308         * gst/base/README:
4309         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4310         (gst_basesink_base_init), (gst_basesink_class_init),
4311         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4312         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4313         (gst_basesink_set_pad_functions),
4314         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4315         (gst_basesink_set_property), (gst_basesink_get_property),
4316         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4317         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4318         (gst_basesink_preroll_queue_push),
4319         (gst_basesink_preroll_queue_empty),
4320         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4321         (gst_basesink_event), (gst_basesink_get_times),
4322         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4323         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4324         (gst_basesink_loop), (gst_basesink_activate),
4325         (gst_basesink_change_state):
4326         * gst/base/gstbasesink.h:
4327         * gst/elements/Makefile.am:
4328         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4329         (gst_fakesink_class_init), (gst_fakesink_init),
4330         (gst_fakesink_set_property), (gst_fakesink_get_property),
4331         (gst_fakesink_get_times), (gst_fakesink_event),
4332         (gst_fakesink_preroll), (gst_fakesink_render),
4333         (gst_fakesink_change_state):
4334         * gst/elements/gstfakesink.h:
4335         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4336         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4337         * gst/gstelement.c: (gst_element_add_pad),
4338         (gst_element_get_state_func), (gst_element_abort_state),
4339         (gst_element_commit_state), (gst_element_lost_state),
4340         (gst_element_set_state), (gst_element_pads_activate):
4341         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4342         * gst/gstpipeline.c: (gst_pipeline_send_event),
4343         (gst_pipeline_change_state):
4344         Added state change code.
4345         Added/updated docs.
4346         Added sink base class, make fakesink extend the base class.
4347         Small cleanups in GstPipeline.
4348
4349 2005-03-26  David Schleef  <ds@schleef.org>
4350
4351         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4352         is broken and should be implemented in a different library.
4353         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4354         * gst/gst.h: remove gstcpu.h
4355         * gst/gstcpu.c: remove
4356         * gst/gstcpu.h: remove
4357         * gst/Makefile.am.future: Remove this file.  It's ancient.
4358
4359 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4360
4361         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4362         (gst_bin_send_event):
4363           Add default event/set_manager handlers. The set_manager handler
4364           takes care that the manager is distributed over kids that were
4365           already in the bin before the manager was set. The event handler
4366           is a utility virtual function that sends the event over all sinks,
4367           so that gst_element_send_event (bin, event); has the expected
4368           behaviour.
4369         * gst/gstpad.c: (gst_pad_event_default):
4370           Re-install default event handling for discontinuities, so that
4371           seeking works without requiring hacks in applications or extra
4372           code in sinks.
4373         * gst/gstpipeline.c: (gst_pipeline_class_init),
4374         (gst_pipeline_send_event):
4375           Half hack, half utility: set a pipeline to PAUSED for seek events,
4376           since that is the only way we can guarantee a/v sync. Means that
4377           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4378           and it "just works".
4379
4380 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4381
4382         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4383           Lock/unlock mismatch.
4384
4385 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4386
4387         * docs/faq/gst-uninstalled:
4388           add gst-plugins-base
4389         * docs/gst/Makefile.am:
4390           don't error out until docs are fixed
4391         * docs/gst/gstreamer.types:
4392           remove thread
4393
4394 2005-03-22  Wim Taymans  <wim@fluendo.com>
4395
4396         * check/Makefile.am:
4397         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4398         * gst/gststructure.c: (gst_structure_set_valist),
4399         (gst_structure_copy_conditional):
4400         Activated more tests.
4401         Added message test.
4402         Added G_TYPE_POINTER to GstStructure.
4403         
4404
4405 2005-03-22  Wim Taymans  <wim@fluendo.com>
4406
4407         * docs/design/part-TODO.txt:
4408         * docs/design/part-events.txt:
4409         * docs/design/part-gstbin.txt:
4410         * docs/design/part-gstbus.txt:
4411         * docs/design/part-gstpipeline.txt:
4412         * docs/design/part-messages.txt:
4413         * gst/gstbus.c:
4414         * gst/gstmessage.c:
4415         Docs updates
4416
4417 2005-03-21  Wim Taymans  <wim@fluendo.com>
4418
4419         * gst/gstbus.c: (gst_bus_post):
4420         Fix copy-and-paste error.
4421
4422 2005-03-21  Wim Taymans  <wim@fluendo.com>
4423
4424         * check/Makefile.am:
4425         * gst/Makefile.am:
4426         * gst/elements/Makefile.am:
4427         * gst/elements/gstelements.c:
4428         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4429         (gst_fakesink_event), (gst_fakesink_chain):
4430         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4431         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4432         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4433         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4434         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4435         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4436         (gst_fakesrc_loop), (gst_fakesrc_activate),
4437         (gst_fakesrc_change_state):
4438         * gst/elements/gstfakesrc.h:
4439         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4440         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4441         (gst_filesrc_open_file), (gst_filesrc_loop),
4442         (gst_filesrc_activate), (gst_filesrc_change_state),
4443         (filesrc_find_peek), (filesrc_find_suggest),
4444         (gst_filesrc_type_find):
4445         * gst/elements/gstidentity.c: (gst_identity_finalize),
4446         (gst_identity_class_init), (gst_identity_init),
4447         (gst_identity_proxy_getcaps), (identity_queue_push),
4448         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4449         (gst_identity_getrange), (gst_identity_chain),
4450         (gst_identity_sink_loop), (gst_identity_src_loop),
4451         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4452         (gst_identity_set_property), (gst_identity_get_property),
4453         (gst_identity_change_state):
4454         * gst/elements/gstidentity.h:
4455         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4456         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4457         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4458         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4459         (gst_tee_sink_activate):
4460         * gst/elements/gsttee.h:
4461         * gst/gst.c: (gst_register_core_elements), (init_post):
4462         * gst/gst.h:
4463         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4464         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4465         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4466         (gst_bin_change_state):
4467         * gst/gstbin.h:
4468         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4469         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4470         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4471         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4472         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4473         (bus_watch_callback), (bus_watch_destroy),
4474         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4475         (poll_timeout), (gst_bus_poll):
4476         * gst/gstbus.h:
4477         * gst/gstcaps.h:
4478         * gst/gstdata.h:
4479         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4480         (gst_element_post_message), (gst_element_message_full),
4481         (gst_element_get_state_func), (gst_element_get_state),
4482         (gst_element_abort_state), (gst_element_commit_state),
4483         (gst_element_lost_state), (gst_element_set_state),
4484         (gst_element_pads_activate), (gst_element_change_state),
4485         (gst_element_dispose), (gst_element_set_manager_func),
4486         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4487         (gst_element_set_manager), (gst_element_get_manager),
4488         (gst_element_set_bus), (gst_element_get_bus),
4489         (gst_element_set_scheduler), (gst_element_get_scheduler):
4490         * gst/gstelement.h:
4491         * gst/gstevent.c: (gst_event_new_segment_seek),
4492         (gst_event_new_flush):
4493         * gst/gstevent.h:
4494         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4495         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4496         (gst_message_new_eos), (gst_message_new_error),
4497         (gst_message_new_warning), (gst_message_new_tag),
4498         (gst_message_new_state_changed), (gst_message_new_application),
4499         (gst_message_get_structure), (gst_message_parse_tag),
4500         (gst_message_parse_state_changed), (gst_message_parse_error),
4501         (gst_message_parse_warning):
4502         * gst/gstmessage.h:
4503         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4504         (gst_real_pad_set_property), (gst_pad_set_active),
4505         (gst_pad_is_active), (gst_pad_set_blocked_async),
4506         (gst_pad_set_blocked), (gst_pad_is_blocked),
4507         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4508         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4509         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4510         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4511         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4512         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4513         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4514         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4515         (gst_pad_set_caps), (gst_pad_configure_sink),
4516         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4517         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4518         (gst_real_pad_dispose), (gst_real_pad_finalize),
4519         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4520         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4521         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4522         * gst/gstpad.h:
4523         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4524         (pipeline_bus_handler), (gst_pipeline_change_state),
4525         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4526         * gst/gstpipeline.h:
4527         * gst/gstprobe.h:
4528         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4529         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4530         (gst_queue_link_src), (gst_queue_bufferalloc),
4531         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4532         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4533         (gst_queue_loop), (gst_queue_handle_src_event),
4534         (gst_queue_handle_src_query), (gst_queue_src_activate),
4535         (gst_queue_change_state):
4536         * gst/gstqueue.h:
4537         * gst/gstscheduler.c: (gst_scheduler_init),
4538         (gst_scheduler_dispose), (gst_scheduler_create_task),
4539         (gst_scheduler_factory_create):
4540         * gst/gstscheduler.h:
4541         * gst/gststructure.c: (gst_structure_get_type),
4542         (gst_structure_copy_conditional):
4543         * gst/gststructure.h:
4544         * gst/gsttaginterface.h:
4545         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4546         (gst_task_init), (gst_task_dispose), (gst_task_create),
4547         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4548         (gst_task_pause):
4549         * gst/gsttask.h:
4550         * gst/gstthread.c:
4551         * gst/gstthread.h:
4552         * gst/gsttypes.h:
4553         * gst/schedulers/Makefile.am:
4554         * gst/schedulers/cothreads_compat.h:
4555         * gst/schedulers/entryscheduler.c:
4556         * gst/schedulers/faircothreads.c:
4557         * gst/schedulers/faircothreads.h:
4558         * gst/schedulers/fairscheduler.c:
4559         * gst/schedulers/gstbasicscheduler.c:
4560         * gst/schedulers/gstoptimalscheduler.c:
4561         * gst/schedulers/gthread-cothreads.h:
4562         * gst/schedulers/threadscheduler.c:
4563         (gst_thread_scheduler_task_get_type),
4564         (gst_thread_scheduler_task_class_init),
4565         (gst_thread_scheduler_task_init),
4566         (gst_thread_scheduler_task_start),
4567         (gst_thread_scheduler_task_stop),
4568         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4569         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4570         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4571         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4572         (plugin_init):
4573         * libs/gst/Makefile.am:
4574         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4575         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4576         (gst_file_pad_parent_set):
4577         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4578         (gst_dp_event_from_packet):
4579         * tests/complexity.c: (main):
4580         * tests/mass_elements.c: (main):
4581         * testsuite/states/locked.c: (message_received), (main):
4582         * testsuite/states/parent.c: (main):
4583         * tools/gst-inspect.c: (print_element_flag_info),
4584         (print_implementation_info), (print_pad_info):
4585         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4586         (main):
4587         * tools/gst-md5sum.c: (event_loop), (main):
4588         * tools/gst-typefind.c: (main):
4589         * tools/gst-xmlinspect.c: (print_element_info):
4590         Next big merge.
4591         Added GstBus for mainloop integration.
4592         Added GstMessage for sending notifications on the bus.
4593         Added GstTask as an abstraction for pipeline entry points.
4594         Removed GstThread.
4595         Removed Schedulers.
4596         Simplified GstQueue for multithreaded core.
4597         Made _link threadsafe, removed old capsnego.
4598         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4599         Added pad blocking functions.
4600         Reworked scheduling functions in GstPad to prepare for
4601         scheduling updates soon.
4602         Moved events out of data stream.
4603         Simplified GstEvent types.
4604         Added return values to push/pull.
4605         Removed clocking from GstElement.
4606         Added prototypes for state change function for next merge.
4607         Removed iterate from bins and state change management.
4608         Fixed some elements, disabled others for now.
4609         Fixed -inspect and -launch.
4610         Added check for GstBus.
4611
4612 2005-03-10  Wim Taymans  <wim@fluendo.com>
4613
4614         * docs/design/part-MT-refcounting.txt:
4615         * docs/design/part-clocks.txt:
4616         * docs/design/part-gstelement.txt:
4617         * docs/design/part-gstobject.txt:
4618         * docs/design/part-standards.txt:
4619         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4620         (gst_bin_remove_func), (gst_bin_remove):
4621         * gst/gstbin.h:
4622         * gst/gstbuffer.c:
4623         * gst/gstcaps.h:
4624         * testsuite/clock/clock1.c: (main):
4625         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4626         (main):
4627         * testsuite/dlopen/loadgst.c: (do_test):
4628         * testsuite/refcounting/bin.c: (add_remove_test1),
4629         (add_remove_test2), (main):
4630         * testsuite/refcounting/element.c: (main):
4631         * testsuite/refcounting/element_pad.c: (main):
4632         * testsuite/refcounting/pad.c: (main):
4633         * tools/gst-launch.c: (sigint_handler_sighandler):
4634         * tools/gst-typefind.c: (main):
4635         Doc updates.
4636         Added doc about clock.
4637         removed gst_bin_iterate_recurse_up(), marked methods
4638         for removal.
4639         Fix more testsuites.
4640
4641 2005-03-09  Wim Taymans  <wim@fluendo.com>
4642
4643         * gst/gstpad.c: (gst_pad_get_direction),
4644         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4645         (gst_pad_collect_valist):
4646         * testsuite/bins/interface.c: (main):
4647         * testsuite/caps/audioscale.c: (test_caps):
4648         * testsuite/caps/caps.c: (test1), (test2), (test3):
4649         * testsuite/caps/deserialize.c: (main):
4650         * testsuite/caps/enumcaps.c: (main):
4651         * testsuite/caps/filtercaps.c: (main):
4652         * testsuite/caps/intersect2.c: (main):
4653         * testsuite/caps/random.c: (main):
4654         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4655         * testsuite/caps/sets.c: (check_caps):
4656         * testsuite/caps/simplify.c: (check_caps), (main):
4657         * testsuite/caps/subtract.c: (check_caps):
4658         Fix _pad_get_direction wrt ghostpads.
4659         Fix caps testsuite.
4660
4661 2005-03-09  Wim Taymans  <wim@fluendo.com>
4662
4663         * check/Makefile.am:
4664         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4665         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4666         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4667         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4668         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4669         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4670         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4671         (bin_element_is_sink), (gst_bin_iterate_sinks),
4672         (gst_bin_iterate_all_by_interface):
4673         * gst/gstbin.h:
4674         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4675         (gst_element_change_state), (gst_element_dispose),
4676         (gst_element_finalize), (gst_element_set_loop_function):
4677         * gst/gstelement.h:
4678         * gst/gstiterator.c: (find_custom_fold_func):
4679         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4680         (gst_pad_collectv), (gst_pad_collect_valist),
4681         (gst_pad_template_new):
4682         * gst/gstpipeline.c: (gst_pipeline_class_init),
4683         (gst_pipeline_dispose), (gst_pipeline_set_property),
4684         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4685         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4686         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4687         * gst/gstutils.h:
4688         * gst/schedulers/entryscheduler.c:
4689         * gst/schedulers/gstbasicscheduler.c:
4690         (gst_basic_scheduler_cothreaded_chain),
4691         (gst_basic_scheduler_chain_add_element):
4692         * testsuite/bins/interface.c: (main):
4693         Added GstBin test.
4694         Added GstSystemClock test.
4695         Implemented clock distribution code in GstBin.
4696         Implemented iterate sinks method for future use.
4697         Rearranged gstelement.h
4698         Fix GstIterator comparison bug.
4699         Moved some code to GstPipeline, mostly clocking related.
4700
4701 2005-03-09  Wim Taymans  <wim@fluendo.com>
4702
4703         * configure.ac:
4704         * gst/gst_private.h:
4705         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4706         (gst_bin_remove_func), (gst_bin_remove),
4707         (gst_bin_get_by_name_recurse_up):
4708         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4709         (gst_clock_id_compare_func), (gst_clock_id_wait),
4710         (gst_clock_id_wait_async), (gst_clock_init),
4711         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4712         * gst/gstelement.h:
4713         * gst/gstinfo.c: (_gst_debug_init):
4714         * gst/gstobject.h:
4715         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4716         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4717         * gst/gstpad.h:
4718         Bump version number, we're now 0.9.0
4719         Add future debugging category.
4720         Fix NULL _unref() in _get_by_name_recurse_up
4721         Rearrange gstpad.h.
4722         Update some docs.
4723
4724 2005-03-08  Wim Taymans  <wim@fluendo.com>
4725
4726         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4727         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4728         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4729         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4730         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4731         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4732         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4733         * gst/elements/gstidentity.c: (gst_identity_class_init):
4734         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4735         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4736         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4737         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4738         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4739         (gst_tee_link):
4740         * gst/gstelement.c: (gst_element_class_init),
4741         (gst_element_base_class_init), (gst_element_init),
4742         (gst_element_get_random_pad), (gst_element_wait_state_change),
4743         (gst_element_change_state), (gst_element_dispose),
4744         (gst_element_finalize), (gst_element_set_loop_function):
4745         * gst/gstelement.h:
4746         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4747         * gst/gstthread.c: (gst_thread_class_init),
4748         (gst_thread_release_children_locks), (gst_thread_change_state):
4749         * gst/schedulers/gstbasicscheduler.c:
4750         (gst_basic_scheduler_loopfunc_wrapper),
4751         (gst_basic_scheduler_chain_wrapper),
4752         (gst_basic_scheduler_src_wrapper),
4753         (gst_basic_scheduler_remove_element):
4754         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4755         Remove threadsafe properties. Fix elements because GObject
4756         complains when installing a property before declaring a
4757         set/get_property handler.
4758         Rearrange gstelement.h file, use STATE macros for state locks.
4759         Free mutexes in the finalize method instead of dispose.
4760
4761 2005-03-08  Wim Taymans  <wim@fluendo.com>
4762
4763         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4764         * gst/gstthread.c: (gst_thread_release_children_locks):
4765         Added parentage check.
4766         Fix build og GstThread again.
4767
4768 2005-03-08  Wim Taymans  <wim@fluendo.com>
4769
4770         * docs/design/part-MT-refcounting.txt:
4771         * docs/design/part-conventions.txt:
4772         * docs/design/part-gstobject.txt:
4773         * docs/design/part-relations.txt:
4774         * docs/design/part-standards.txt:
4775         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4776         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4777         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4778         (gst_bin_iterate_all_by_interface):
4779         * gst/gstbuffer.h:
4780         * gst/gstclock.h:
4781         * gst/gstelement.c: (gst_element_class_init),
4782         (gst_element_change_state), (gst_element_set_loop_function):
4783         * gst/gstelement.h:
4784         * gst/gstiterator.c:
4785         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4786         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4787         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4788         (gst_object_set_parent), (gst_object_unparent),
4789         (gst_object_check_uniqueness):
4790         * gst/gstobject.h:
4791         Docs updates, clean up some headers.
4792
4793 2005-03-07  Wim Taymans  <wim@fluendo.com>
4794
4795         * check/.cvsignore:
4796         * check/Makefile.am:
4797         * check/gst-libs/.cvsignore:
4798         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4799         * check/gst/.cvsignore:
4800         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4801         (START_TEST), (gstbus_suite), (main):
4802         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4803         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4804         (gst_data_suite), (main):
4805         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4806         (add_fold_func), (gstiterator_suite), (main):
4807         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4808         (thread_name_object), (thread_name_object_default),
4809         (gst_object_name_compare), (gst_object_suite), (main):
4810         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4811         (gst_pad_suite), (main):
4812         * check/gstcheck.c: (gst_check_log_message_func),
4813         (gst_check_log_critical_func), (gst_check_init):
4814         * check/gstcheck.h:
4815         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4816         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4817         Added checks.
4818
4819 2005-03-07  Wim Taymans  <wim@fluendo.com>
4820
4821         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4822         (gst_list_iterator_next), (gst_list_iterator_resync),
4823         (gst_list_iterator_free), (gst_iterator_new_list),
4824         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4825         (gst_iterator_free), (gst_iterator_push), (filter_next),
4826         (filter_resync), (filter_uninit), (filter_free),
4827         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4828         (gst_iterator_foreach), (find_custom_fold_func),
4829         (gst_iterator_find_custom):
4830         * gst/gstiterator.h:
4831         Added missing files.
4832
4833 2005-03-07  Wim Taymans  <wim@fluendo.com>
4834
4835         * Makefile.am:
4836         * configure.ac:
4837         * docs/design/part-MT-refcounting.txt:
4838         * docs/design/part-conventions.txt:
4839         * docs/design/part-gstobject.txt:
4840         * docs/design/part-relations.txt:
4841         * examples/mixer/mixer.c: (main):
4842         * examples/thread/thread.c: (eos), (main):
4843         * gst/Makefile.am:
4844         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4845         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4846         (gst_spider_plug_from_srcpad):
4847         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4848         (gst_spider_identity_change_state),
4849         (gst_spider_identity_sink_loop_type_finding):
4850         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4851         * gst/elements/gstidentity.c: (gst_identity_init):
4852         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4853         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4854         * gst/elements/gsttypefindelement.c: (free_entry):
4855         * gst/gst.c:
4856         * gst/gst.h:
4857         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4858         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4859         (gst_bin_set_index), (gst_bin_set_element_sched),
4860         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4861         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4862         (gst_bin_iterate_elements), (iterate_child_recurse),
4863         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4864         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4865         (compare_interface), (gst_bin_get_by_interface),
4866         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4867         * gst/gstbin.h:
4868         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4869         (gst_buffer_default_free), (gst_buffer_default_copy),
4870         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4871         (gst_buffer_create_sub):
4872         * gst/gstbuffer.h:
4873         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4874         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4875         (gst_caps_unref), (gst_static_caps_get),
4876         (gst_caps_remove_and_get_structure), (gst_caps_append),
4877         (gst_caps_append_structure), (gst_caps_remove_structure),
4878         (gst_caps_copy_nth), (gst_caps_set_simple),
4879         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4880         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4881         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4882         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4883         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4884         (gst_caps_structure_figure_out_union),
4885         (gst_caps_switch_structures), (gst_caps_do_simplify),
4886         (gst_caps_replace), (gst_caps_from_string),
4887         (gst_caps_copy_conditional):
4888         * gst/gstcaps.h:
4889         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4890         (_gst_clock_id_free), (gst_clock_id_unref),
4891         (gst_clock_id_compare_func), (gst_clock_id_wait),
4892         (gst_clock_id_wait_async), (gst_clock_class_init),
4893         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4894         (gst_clock_get_time), (gst_clock_set_time_adjust),
4895         (gst_clock_set_property), (gst_clock_get_property):
4896         * gst/gstclock.h:
4897         * gst/gstcompat.h:
4898         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4899         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4900         * gst/gstdata.h:
4901         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4902         (gst_element_requires_clock), (gst_element_provides_clock),
4903         (gst_element_set_clock), (gst_element_clock_wait),
4904         (gst_element_wait), (gst_element_set_time_delay),
4905         (gst_element_is_indexable), (gst_element_add_pad),
4906         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4907         (pad_compare_name), (gst_element_get_static_pad),
4908         (gst_element_request_pad), (gst_element_get_request_pad),
4909         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4910         (gst_element_class_get_pad_template_list),
4911         (gst_element_class_get_pad_template), (gst_element_error_func),
4912         (gst_element_get_random_pad), (gst_element_get_event_masks),
4913         (gst_element_send_event), (gst_element_seek),
4914         (gst_element_get_query_types), (gst_element_query),
4915         (gst_element_get_formats), (gst_element_convert),
4916         (gst_element_is_locked_state), (gst_element_set_locked_state),
4917         (gst_element_sync_state_with_parent), (gst_element_change_state),
4918         (gst_element_finalize), (gst_element_yield),
4919         (gst_element_interrupt), (gst_element_set_scheduler),
4920         (gst_element_get_scheduler), (gst_element_set_loop_function):
4921         * gst/gstelement.h:
4922         * gst/gstevent.h:
4923         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4924         (gst_format_get_by_nick), (gst_format_get_details),
4925         (gst_format_iterate_definitions):
4926         * gst/gstformat.h:
4927         * gst/gstindex.c: (gst_index_gtype_resolver):
4928         * gst/gstinfo.c:
4929         * gst/gstinfo.h:
4930         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4931         (gst_mem_chunk_free):
4932         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4933         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4934         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4935         (gst_object_dispatch_properties_changed),
4936         (gst_object_set_name_default), (gst_object_set_name),
4937         (gst_object_get_name), (gst_object_set_name_prefix),
4938         (gst_object_get_name_prefix), (gst_object_set_parent),
4939         (gst_object_get_parent), (gst_object_unparent),
4940         (gst_object_check_uniqueness), (gst_object_save_thyself),
4941         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4942         (gst_object_set_property), (gst_object_get_property),
4943         (gst_object_get_path_string):
4944         * gst/gstobject.h:
4945         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4946         (gst_real_pad_init), (gst_real_pad_get_property),
4947         (gst_pad_custom_new), (gst_pad_get_direction),
4948         (gst_pad_set_active), (gst_pad_is_active),
4949         (gst_pad_set_event_function), (gst_pad_is_linked),
4950         (gst_pad_link_free), (gst_pad_link_intersect),
4951         (gst_pad_link_fixate), (gst_pad_set_caps),
4952         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4953         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4954         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4955         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4956         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4957         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4958         (gst_pad_realize), (gst_pad_get_allowed_caps),
4959         (gst_real_pad_dispose), (gst_real_pad_finalize),
4960         (gst_pad_collectv), (gst_pad_collect_valist),
4961         (gst_pad_template_dispose), (gst_pad_template_new),
4962         (gst_pad_get_internal_links):
4963         * gst/gstpad.h:
4964         * gst/gstpipeline.c: (gst_pipeline_dispose),
4965         (gst_pipeline_change_state):
4966         * gst/gstpipeline.h:
4967         * gst/gstplugin.c:
4968         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4969         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4970         * gst/gstpluginfeature.h:
4971         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4972         * gst/gstquery.c: (_gst_query_type_initialize),
4973         (gst_query_type_register), (gst_query_type_get_by_nick),
4974         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4975         * gst/gstquery.h:
4976         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4977         * gst/gstscheduler.c: (gst_scheduler_add_element),
4978         (gst_scheduler_factory_create):
4979         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4980         (gst_structure_free), (gst_structure_set_name),
4981         (gst_structure_id_set_value), (gst_structure_set_value),
4982         (gst_structure_set_valist), (gst_structure_remove_field),
4983         (gst_structure_remove_fields),
4984         (gst_structure_remove_fields_valist),
4985         (gst_structure_remove_all_fields), (gst_structure_foreach),
4986         (gst_structure_map_in_place),
4987         (gst_caps_structure_fixate_field_nearest_int),
4988         (gst_caps_structure_fixate_field_nearest_double):
4989         * gst/gststructure.h:
4990         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4991         (gst_system_clock_init), (gst_system_clock_dispose),
4992         (gst_system_clock_async_thread),
4993         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4994         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4995         * gst/gstsystemclock.h:
4996         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4997         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4998         * gst/gsttaginterface.c:
4999         * gst/gstthread.c: (gst_thread_dispose),
5000         (gst_thread_release_children_locks), (gst_thread_change_state),
5001         (gst_thread_main_loop):
5002         * gst/gsttrashstack.h:
5003         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5004         * gst/gsttypes.h:
5005         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5006         (gst_element_request_pad), (gst_element_get_pad_from_template),
5007         (gst_element_request_compatible_pad),
5008         (gst_element_get_compatible_pad_filtered),
5009         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5010         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5011         (gst_element_link_many), (gst_element_link),
5012         (gst_element_link_pads), (gst_element_unlink_pads),
5013         (gst_element_unlink_many), (gst_element_unlink),
5014         (gst_pad_can_link_filtered), (gst_pad_can_link),
5015         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5016         (gst_object_default_error), (gst_bin_add_many),
5017         (gst_bin_remove_many), (gst_element_populate_std_props),
5018         (gst_element_class_install_std_props), (gst_buffer_merge),
5019         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5020         (link_fold_func), (gst_pad_proxy_setcaps):
5021         * gst/gstutils.h:
5022         * gst/gstvalue.c: (gst_value_deserialize_string):
5023         * gst/parse/grammar.y:
5024         * gst/schedulers/gstbasicscheduler.c:
5025         (gst_basic_scheduler_cothreaded_chain),
5026         (gst_basic_scheduler_chain_recursive_add),
5027         (gst_basic_scheduler_pad_link):
5028         * gst/schedulers/gstoptimalscheduler.c:
5029         (get_group_schedule_function),
5030         (gst_opt_scheduler_state_transition),
5031         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5032         * libs/gst/bytestream/bytestream.c:
5033         * libs/gst/dataprotocol/dataprotocol.c:
5034         (gst_dp_header_from_buffer):
5035         * po/nb.po:
5036         * po/ru.po:
5037         * tests/threadstate/threadstate2.c: (eos):
5038         * tools/gst-compprep.c: (main):
5039         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5040         (print_pad_info), (print_children_info):
5041         * tools/gst-launch.c: (idle_func), (main):
5042         * tools/gst-md5sum.c: (idle_func), (main):
5043         * tools/gst-xmlinspect.c: (print_element_info):
5044         First THREADED backport attempt, focusing on adding locks and
5045         making sure the API is threadsafe. Needs more work. More docs
5046         follow this week.
5047
5048 2005-02-24  Andy Wingo  <wingo@pobox.com>
5049
5050         * tests/bench-complexity.scm:
5051         * tests/complexity.gnuplot: New files, good for running complexity
5052         benchmarks.
5053
5054         * tests/Makefile.am:
5055         * tests/complexity.c: New test, sets up N elements, at each level
5056         teeing into M streams per element. Eeeenteresting.
5057
5058         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5059         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5060         running bench-mass_elements.scm.
5061
5062         * tests/bench-mass_elements.scm: New script, runs mass_elements
5063         for various numbers of identities, outputting the results to a
5064         file. Requires guile 1.6. Just for testing.
5065
5066 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5067
5068         * gst/schedulers/fairscheduler.c:
5069           compile with debug disabled
5070
5071 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5072
5073         * configure.ac:
5074           hunting season on 0.9 is now OPEN
5075
5076 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5077
5078         * docs/libs/tmpl/gstcontrol.sgml:
5079         * docs/libs/tmpl/gstdparam.sgml:
5080         * docs/libs/tmpl/gstdplinint.sgml:
5081         * docs/libs/tmpl/gstdpman.sgml:
5082         * docs/libs/tmpl/gstdpsmooth.sgml:
5083         * docs/libs/tmpl/gstunitconvert.sgml:
5084           more docs for the state of dparams
5085
5086 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5087
5088         * gst/gstelementfactory.c: (gst_element_factory_create):
5089         * gst/gstobject.c: (gst_object_init),
5090         (gst_object_set_name_default), (gst_object_set_name):
5091           name objects by default, not in gst_element_factory_create. Allows
5092           using elements created with g_object_new. (fixes #167283)
5093
5094 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5095
5096         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5097           make the time that debugging functions print relative to when
5098           gst_init was called
5099
5100 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5101
5102         * gst/gsttaginterface.c:
5103           Fix inline docs: tag setter vararg functions are NULL-terminated,
5104           GST_TAG_INVALID doesn't exist any more.
5105
5106 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5107
5108         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5109         Allocate the 1 byte more memory that was forgotten!!!!!
5110         fixes memory corruption on 64bit platforms
5111
5112 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5113
5114         * docs/pwg/building-pads.xml:
5115         * docs/pwg/intro-basics.xml:
5116           fixed a few typos, relabeled introductionary list of types
5117         * docs/random/ensonic/dparams.txt:
5118           more notes abut dparam changes
5119         * libs/gst/control/dparam.c: (gst_dparam_attach):
5120         * libs/gst/control/dparammanager.c:
5121         * libs/gst/control/dparammanager.h:
5122           - many comments and notes on dparam implementation
5123           - new dparams are were not initialized to the default value
5124             from param spec
5125
5126 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5127
5128         submitted by: Peter Astakhov
5129
5130         * po/LINGUAS:
5131         * po/ru.po:
5132           adding Russian translation
5133
5134 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5135
5136         * configure.ac:
5137         * docs/gst/Makefile.am:
5138         * docs/libs/Makefile.am:
5139           make sure popt is added to gtk-doc flags.  Fixes #147782.
5140
5141 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5142
5143         * docs/faq/using.xml:
5144           Fix typo in FAQ (artssink => artsdsink)
5145
5146 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5147
5148         * tools/gst-launch.1.in:
5149           Fix typo (#166699).
5150
5151 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5152
5153         * docs/faq/using.xml:
5154           Add -v argument to fakesrc/fakesink gst-launch line,
5155           so that the promised output will actually show up.
5156
5157 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5158
5159         * gst/gstthread.c: (gst_thread_change_state):
5160           Implement state-change error handling (#166073).
5161
5162 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5163
5164         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5165           Release interrupt after handling (#166250).
5166
5167 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5168
5169         * configure.ac:
5170           back to HEAD
5171
5172 === release 0.8.9 ===
5173
5174 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5175
5176         * NEWS:
5177         * RELEASE:
5178         * configure.ac:
5179           releasing 0.8.9, "Like Eating Glass"
5180
5181 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5182
5183         submitted by: Clytie Siddall
5184
5185         * po/vi.po: Added Vietnamese translation
5186
5187 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5188
5189         patch by: Tim Philipp-Müller
5190
5191         * configure.ac:
5192         * gst/gstpad.c:
5193           unref data when probe function returns FALSE.  Fixes #166362
5194
5195 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5196
5197         * gst/gst.c: (gst_init_get_popt_table):
5198           Fix typo (#166269).
5199
5200 2005-02-04  Andy Wingo  <wingo@pobox.com>
5201
5202         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5203         the debugging on whether the caps are compatible.
5204
5205 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5206
5207         * docs/manual/basics-elements.xml:
5208           Fix two typos.
5209
5210 2005-02-02  Wim Taymans  <wim@fluendo.com>
5211
5212         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5213         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5214         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5215         Remove some FIXMEs after analysing and commenting why they
5216         are not issues.
5217
5218 2005-02-02  Wim Taymans  <wim@fluendo.com>
5219
5220         * gst/schedulers/gstoptimalscheduler.c:
5221         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5222         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5223         (get_invalid_call), (chain_invalid_call),
5224         (get_group_schedule_function), (loop_group_schedule_function),
5225         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5226         (gst_opt_scheduler_state_transition),
5227         (gst_opt_scheduler_add_element),
5228         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5229         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5230         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5231         (gst_opt_scheduler_show):
5232         Added lock to protect scheduler data structures.
5233
5234 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5235
5236         * testsuite/threads/threadi.c: (cb_data):
5237           Fix buglet in test.
5238
5239 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5240
5241         * testsuite/threads/Makefile.am:
5242         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5243           On Wim's request, split the test in three separately-compiled
5244           tests that each test a very specific bug. Two of them still fail,
5245           will create bugs for those. threadi.c indicates why they fail.
5246
5247 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5248
5249         * gst/schedulers/gstoptimalscheduler.c:
5250         (get_group_schedule_function):
5251           Try to work with the threading mess that queue_link is.
5252
5253 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5254
5255         * gst/gstbin.c: (gst_bin_remove_func):
5256           Explicitely make an element release locks in a group when being
5257           remove from a bin.
5258         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5259           If there's no scheduler, always return immediately (similar to
5260           gst_element_interrupt).
5261
5262 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5263
5264         * gst/gstbin.c: (gst_bin_child_state_change_func):
5265           Remove a piece of code that could never be reached.
5266         * docs/gst/gstreamer-sections.txt:
5267         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5268         (gst_pad_call_get_function):
5269         * gst/gstpad.h:
5270         * testsuite/pad/Makefile.am:
5271           Fix #150546, enable tests.
5272
5273 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5274
5275         * docs/pwg/advanced-types.xml:
5276           Fix description for buffer-frames=0.
5277         * docs/gst/tmpl/gstbin.sgml:
5278         * gst/gstbin.c: (gst_bin_child_state_change_func),
5279         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5280         * gst/gstbin.h:
5281         * testsuite/threads/Makefile.am:
5282         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5283         (cb_state), (cb_play), (main):
5284           Fix non-recursive state changes to *really* change the state
5285           of the object, and not just call parent_class->state_change.
5286           Fix a lot of lockups caused by this. Fixes #132775. Add test
5287           for the problem. Also enable test to show #142588 (fixed).
5288         * gst/gstthread.c: (gst_thread_change_state),
5289         (gst_thread_child_state_change):
5290           Don't exit the thread if we go to NULL and are inside thread
5291           context. Instead, return control to the main thread context
5292           and exit from there.
5293         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5294           Don't unset virtual functions, since those may still be used.
5295           That's not necessarily correct, but suffices for now.
5296         * configure.ac:
5297         * testsuite/Makefile.am:
5298         * testsuite/pad/Makefile.am:
5299         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5300         (gst_test_sink_base_init), (gst_test_sink_chain),
5301         (gst_test_sink_init), (main):
5302         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5303         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5304         (main):
5305         * testsuite/pad/link.c: (gst_test_element_class_init),
5306         (gst_test_element_base_init), (gst_test_src_get),
5307         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5308         (gst_test_filter_loop), (gst_test_filter_init),
5309         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5310         (cb_error), (main):
5311           Add tests to show #150546. Pass, but should fail (currently
5312           disabled from the testsuite).
5313         * gst/gstscheduler.c: (gst_scheduler_dispose):
5314           Dereference child schedulers on dispose (#94464).
5315         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5316           Fix typo.
5317         * testsuite/threads/thread.c: (main):
5318           Add more debug.
5319
5320 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5321
5322         * gst/gstpad.c: (gst_pad_push):
5323           Oops, revert previous commit, broke testsuite...
5324
5325 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5326
5327         * gst/gstpad.c: (gst_pad_push):
5328           Add check that the pad on which the push is performed is not a
5329           get-based pad (#150546).
5330
5331 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5332
5333         * gst/elements/gsttypefindelement.c:
5334         (gst_type_find_element_handle_event):
5335           Fix buffer pushing if stream EOSes during typefinding.
5336
5337 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5338
5339         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5340
5341         * gst/gstvalue.c: (gst_string_wrap):
5342           Allow NULL-strings as argument (#165365).
5343
5344 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5345
5346         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5347
5348         * gst/schedulers/faircothreads.c:
5349         (gst_fair_scheduler_cothread_queue_show):
5350           Fix build without debug enabled.
5351
5352 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5353
5354         * docs/gst/gstreamer-sections.txt:
5355         * docs/libs/gstreamer-libs-docs.sgml:
5356         * docs/libs/gstreamer-libs-sections.txt:
5357         * docs/libs/tmpl/gstcontrol.sgml:
5358         * docs/libs/tmpl/gstdparam.sgml:
5359         * docs/libs/tmpl/gstdplinint.sgml:
5360         * docs/libs/tmpl/gstdpman.sgml:
5361         * docs/libs/tmpl/gstdpsmooth.sgml:
5362         * docs/libs/tmpl/gstputbits.sgml:
5363         * docs/libs/tmpl/gstunitconvert.sgml:
5364         * libs/gst/control/dparam.c:
5365         * libs/gst/control/dparam.h:
5366         * libs/gst/control/dparammanager.c:
5367         (gst_dpman_add_required_dparam_callback),
5368         (gst_dpman_add_required_dparam_direct),
5369         (gst_dpman_add_required_dparam_array),
5370         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5371         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5372         (gst_dpman_get_manager)
5373           restructured DParam docs
5374
5375 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5376
5377         * gst-element-check.m4:
5378           Only check for gst-inspect if we haven't already
5379           found it in previous element check runs
5380
5381 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5382
5383         * docs/gst/Makefile.am:
5384         * docs/libs/Makefile.am:
5385           fixed install rules to treat style.css as optional
5386
5387 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5388
5389         * docs/gst/Makefile.am:
5390         * docs/libs/Makefile.am:
5391           install style.css along with docs
5392         * docs/gst/tmpl/gstbin.sgml:
5393         * docs/gst/tmpl/gstclock.sgml:
5394         * docs/gst/tmpl/gstdata.sgml:
5395         * docs/gst/tmpl/gstelement.sgml:
5396         * gst/gstbin.h:
5397         * gst/gstelement.c: (gst_element_class_init):
5398         * gst/gstelement.h:
5399           fixing incomplete docs
5400
5401 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5402
5403         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5404           Don't unref seek event twice when fflush() fails
5405           
5406 2005-01-22  David Schleef  <ds@schleef.org>
5407
5408         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5409
5410 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5411
5412         * docs/gst/Makefile.am:
5413         * docs/libs/Makefile.am:
5414           added params for deprecation guards
5415         * gst/gst.c:
5416         * gst/gst.h:
5417         * gst/gsterror.c: (_gst_resource_errors_init),
5418         (_gst_stream_errors_init):
5419         * gst/gsterror.h:
5420           documented some more enums
5421
5422 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5423         * gst/autoplug/gstspideridentity.c:
5424         Cosmetic fix - spider_find_peek should be static
5425         * gst/parse/parse.l:
5426         Applying fix for #164261
5427
5428 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5429
5430         * docs/gst/gstreamer-sections.txt:
5431         * docs/gst/tmpl/gstplugin.sgml:
5432         * docs/libs/gstreamer-libs-sections.txt:
5433         * docs/libs/tmpl/gstcontrol.sgml:
5434         * gst/gstbuffer.h:
5435         * gst/gsttag.h:
5436         * gst/gstvalue.c:
5437           added docs for the TAG defines
5438
5439 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5440
5441         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5442           Only unref entry if there is an entry.
5443
5444 2005-01-17  Wim Taymans  <wim@fluendo.com>
5445
5446         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5447         (remove_from_group), (schedule_group), (normalize_group),
5448         (gst_opt_scheduler_iterate):
5449         Also ref/unref decoupled elements before iterating the
5450         group since they are not added to the list of elements.
5451
5452 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5453
5454         * docs/manual/highlevel-components.xml:
5455           Add subtitle/streamselection as new features to playbin.
5456
5457 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5458
5459         * docs/manual/manual.xml:
5460           Re-enable dataaccess docs (oops).
5461
5462 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5463
5464         * docs/pwg/advanced-types.xml:
5465         * docs/random/mimetypes:
5466           Add documentation on libsndfile types (#163309), by Steve Baker
5467           <steve@stevebaker.org>.
5468         * gst/gstelement.c: (gst_element_release_request_pad):
5469           If an element has no explicit function, just remove the pad.
5470
5471 2005-01-17  Luca Ognibene  <luogni@tin.it>
5472
5473         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5474
5475         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5476           Fix memleak (#163801).
5477
5478 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5479
5480         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5481           I think this is actually more correct...
5482
5483 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5484
5485         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5486           Another workaround for memory access while destroyed in callback.
5487           Please, someone with refcount knowledge, have a look at this.
5488
5489 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5490
5491         * docs/faq/faq.xml:
5492         * docs/faq/legal.xml:
5493           move the legal Q&A here
5494
5495 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5496
5497         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5498         (gst_tee_request_new_pad):
5499           Fix negotiation.
5500
5501 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5502
5503         * docs/random/omega/caps2:
5504         * testsuite/caps/caps_strings:
5505           replace framerate aproximations by their real value
5506           (24000/1001, 30000/1001, 60000/1001)
5507           Partially fixes bug #164049
5508
5509 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5510
5511         * docs/gst/Makefile.am:
5512           don't fail on the stupid GstPoptOption
5513
5514 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5515
5516         * gst/gstpad.h:
5517         * gst/gstprobe.c:
5518           allow probes to work on ghost pads by realizing the pad
5519           probe debugging
5520
5521 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5522
5523         * docs/gst/gstreamer-sections.txt:
5524         * docs/gst/tmpl/gstpad.sgml:
5525         * gst/gstpad.c: (gst_pad_set_active_recursive):
5526         * gst/gstpad.h:
5527           Add gst_pad_set_active_recursive().
5528
5529 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5530
5531         * docs/random/release:
5532           updates
5533         * gst/gst_private.h:
5534         * gst/gstinfo.c:
5535         * gst/gstobject.c:
5536           move deep_notify logging to a new category
5537         * gst/gstprobe.c:
5538         * gst/gstprobe.h:
5539           add stuff so bindings can wrap probes
5540
5541 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5542
5543         * gst/gstplugin.c: (gst_plugin_load):
5544           Fix plugin loading if plugin/lib was already loaded. Fixes
5545           #163383
5546
5547 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5548
5549         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5550
5551         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5552           Protect plugin loading by a mutex so it's threadsafe. Fixes
5553           #163234.
5554
5555 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5556
5557         * gst/gstevent.c: (_gst_event_copy):
5558           Reference source object when copying events, since it'll be
5559           dereferenced on event dereferencing as well.
5560
5561 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5562
5563         * docs/gst/gstreamer-sections.txt:
5564         * docs/gst/tmpl/gstevent.sgml:
5565         * gst/gstevent.c: (gst_event_new_filler_stamped),
5566         (gst_event_filler_get_duration):
5567         * gst/gstevent.h:
5568           Add two new functions for filler events (which are used to
5569           synchronize streams if one of them is not having any data
5570           for a while) without interrupting the actual data-stream.
5571           Basically a no-op.
5572         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5573         (gst_queue_link_sink), (gst_queue_link_src),
5574         (gst_queue_change_state):
5575           Allow for renegotiation while filled. Required for stream
5576           switching while playing.
5577
5578 2005-01-08  Benjamin Otte  <otte@gnome.org>
5579
5580         * gst/gstelement.c: (gst_element_link_many):
5581           fix up g_return_if_fail's
5582         * po/LINGUAS:
5583         * po/de.po:
5584           add German translation, that was somehow not included
5585
5586 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5587
5588         * docs/random/mimetypes:
5589           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5590           do not add them to riff-lib as they are not common
5591
5592 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5593
5594         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5595           Check for existence of probe after performing the probe before
5596           re-accessing it to prevent segfaults caused by removal of the
5597           probe in the callback.
5598
5599 2005-01-05  David Schleef  <ds@schleef.org>
5600
5601         * testsuite/registry/Makefile.am:
5602         * testsuite/registry/gst-print-formats.c:
5603         (print_pad_templates_info), (print_element_list),
5604         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5605         (g_list_uniqify), (get_pad_templates_info),
5606         (get_element_mime_list), (print_mime_list), (main): A little
5607         program that looks through the registry to find elements of
5608         a given type.  Not particularly interesting as a test, except
5609         that there's no other test covering the same area.
5610
5611 2005-01-05  David Schleef  <ds@schleef.org>
5612
5613         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5614         (fault_handler_sigaction), (fault_spin),
5615         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5616         in signal.h-type signal handlers by not calling forbidden functions,
5617         including gst_element_set_state().
5618
5619 2005-01-05  David Schleef  <ds@schleef.org>
5620
5621         * gst/gstvalue.h: Mark _gst_reserved[] as private
5622
5623 2005-01-05  David Schleef  <ds@schleef.org>
5624
5625         * gst/gstvalue.c: Fix doc build problem.
5626
5627 2005-01-05  David Schleef  <ds@schleef.org>
5628
5629         * gst/gstvalue.c: Add some documentation
5630
5631 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5632
5633         * docs/README:
5634           another shell oneliner for empty return value docs
5635         * gst/gstcaps.c:
5636         * gst/gstvalue.c:
5637         * libs/gst/control/dparam.c:
5638           more doc fixes (parameters and return values)
5639
5640 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5641
5642         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5643
5644         * gst/gstregistry.h:
5645         * gst/registries/gstxmlregistry.c:
5646           Fix macro's for Mingw (fixes #162276).
5647
5648 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5649
5650         * docs/README:
5651           quick shell oneliner to find undocumented members
5652         * docs/gst/tmpl/gstplugin.sgml:
5653         * docs/gst/tmpl/gstscheduler.sgml:
5654         * docs/gst/tmpl/gstthread.sgml:
5655           more enumtypes cleanup
5656         * gst/gsterror.h:
5657           activated documentation comments, now someone needs to document
5658           the enums :(
5659
5660 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5661
5662         * docs/manual/manual.xml:
5663           Add dataaccess part (doh!).
5664
5665 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5666
5667         * docs/manual/advanced-autoplugging.xml:
5668           Fix typo (intiate -> initiate).
5669
5670 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5671
5672         * docs/random/bbb/streamselection:
5673           Add some notes on how to handle multi-subtitle/-audio streams.
5674
5675 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5676
5677         * docs/gst/gstreamer-docs.sgml:
5678         * docs/gst/gstreamer-sections.txt:
5679         * docs/gst/tmpl/gstenumtypes.sgml:
5680         * docs/gst/tmpl/gsterror.sgml:
5681         * docs/gst/tmpl/gstevent.sgml:
5682         * docs/gst/tmpl/gstpad.sgml:
5683         * docs/gst/tmpl/gstpadtemplate.sgml:
5684         * docs/gst/tmpl/gstthread.sgml:
5685           removed gstenumtypes section from docs and put all the enums into
5686           their sections
5687
5688 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5689
5690         * gst/gstplugin.c:
5691           document gst_library_load a bit more (riff special case + return
5692           value if already loaded)
5693         * testsuite/bytestream/filepadsink.c:
5694           plugin name is 'gstbytestream', not 'bytestream'
5695
5696 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5697
5698         * docs/random/bbb/subtitles:
5699           Add some first mind rumblings on proper subtitle support.
5700
5701 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5702
5703         * po/ca.po:
5704         * po/sv.po:
5705           updated translations
5706
5707 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5708
5709         * docs/manual/advanced-dataaccess.xml:
5710           Add section on how to use fakesrc/fakesink/identity in your
5711           application, plus section on how to embed plugins. Also mention
5712           probes.
5713         * docs/manual/appendix-checklist.xml:
5714         * docs/manual/appendix-debugging.xml:
5715         * docs/manual/appendix-gnome.xml:
5716         * docs/manual/appendix-integration.xml:
5717           Debug -> checklist, GNOME -> integration, add sections on Linux,
5718           KDE integration and add other things useful for application
5719           development.
5720         * docs/manual/manual.xml:
5721           Remove some fixmes, update some file pointers.
5722         * docs/pwg/appendix-checklist.xml:
5723           Fix typo.
5724         * docs/pwg/building-boiler.xml:
5725           Remove ugly header and add commented fixme.
5726         * docs/pwg/pwg.xml:
5727           Add fixme.
5728         * examples/manual/Makefile.am:
5729           Add example for added docs.
5730
5731 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5732
5733         * configure.ac:
5734           back to HEAD
5735
5736 === release 0.8.8 ===
5737
5738 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5739
5740         * NEWS:
5741         * RELEASE:
5742         * configure.ac:
5743           Releasing 0.8.8, "I'll Take Care Of You"
5744
5745 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5746
5747         * configure.ac:
5748           second prerelease
5749
5750 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5751
5752         patch by: Wim Taymans
5753
5754         * gst/gstbin.c:
5755           Fix for #159852 - make iterate emission threadsafe
5756
5757 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5758
5759         * docs/faq/cvs.xml:
5760           notes about new fdo account request
5761
5762 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5763
5764         * docs/gst/gstreamer-docs.sgml:
5765         * docs/gst/tmpl/gstenumtypes.sgml:
5766         * docs/gst/tmpl/gstplugin.sgml:
5767         * docs/libs/gstreamer-libs-docs.sgml:
5768           Added missing short docs. Added ids for navigation.
5769
5770 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5771
5772         * docs/manual/advanced-autoplugging.xml:
5773         * docs/manual/advanced-schedulers.xml:
5774         * docs/manual/advanced-threads.xml:
5775           Rewrites. Remove cothreads, go a bit into opt specifically,
5776           document threads and their gotchas, and do some technical stuff
5777           on autoplugging plus add some working examples. Fixes #157395.
5778         * examples/manual/Makefile.am:
5779           Add typefind/autoplugger example (one that actually works).
5780           Remove queue example since it's a duplicate of the thread one.
5781
5782 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5783
5784         * gst/gstvalue.c: (gst_value_deserialize_string):
5785           use deprecated g_value_set_string_take_ownership to keep compatible
5786           with glib 2.2
5787
5788 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5789
5790         * gst/gstvalue.c: (gst_value_deserialize_string):
5791           revert last patch, only dom a g_utf8_validate now before accepting
5792           the string - caps parsing strips " from strings so we can't rely on
5793           them
5794         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5795           disable a test that tested the above and comment it
5796
5797 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5798
5799         Patch reviewed by David Schleef  <ds@schleef.org>
5800
5801         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5802         bug #153882)
5803         * win32/gstenumtypes.h: same
5804
5805 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5806
5807         * gst/gstpad.c: (gst_pad_query):
5808           Do query on realized pad, similar to how convert/send_event handle
5809           this. Also makes sense, since this pad belongs to the function to
5810           which this query will be sent. Fixes #158163.
5811
5812 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5813
5814         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5815
5816 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5817
5818         * docs/faq/general.xml: fix pipeline to actually work
5819
5820 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5821
5822         * gst/gstvalue.c: (gst_value_deserialize_string):
5823           check that a simple string that gets deserialized does not contain
5824           invalid characters
5825         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5826           remove a test that tested a wring behaviour
5827
5828 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5829
5830         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5831
5832         * docs/manual/intro-motivation.xml:
5833           Fix typos.
5834
5835 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5836
5837         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5838
5839         * docs/gst/tmpl/gstprobe.sgml:
5840           Fix documentation of probe callback - it is supposed to return
5841           FALSE, not TRUE, to remove data from the stream (#159087).
5842
5843 2004-12-16  Daniel Gazard  <dany42@free.fr>
5844
5845         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5846
5847         * gst/gstelementfactory.c: (gst_element_factory_create):
5848           Fix compile failure if compiling without libxml2 support (#149936).
5849
5850 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5851
5852         * docs/manual/advanced-autoplugging.xml:
5853         * docs/manual/highlevel-components.xml:
5854           Move spider from autoplugging to components. Autoplugging is for
5855           internals, not for solutions. ;-).
5856
5857 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5858
5859         * docs/random/ds/0.9-suggested-changes:
5860           Make note on device/location/uri property names.
5861
5862 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5863
5864         * docs/manual/advanced-autoplugging.xml:
5865         * docs/manual/advanced-clocks.xml:
5866         * docs/manual/advanced-interfaces.xml:
5867         * docs/manual/advanced-metadata.xml:
5868         * docs/manual/advanced-position.xml:
5869         * docs/manual/advanced-schedulers.xml:
5870         * docs/manual/advanced-threads.xml:
5871         * docs/manual/appendix-gnome.xml:
5872         * docs/manual/appendix-programs.xml:
5873         * docs/manual/appendix-quotes.xml:
5874         * docs/manual/autoplugging.xml:
5875         * docs/manual/basics-bins.xml:
5876         * docs/manual/basics-data.xml:
5877         * docs/manual/basics-elements.xml:
5878         * docs/manual/basics-helloworld.xml:
5879         * docs/manual/basics-init.xml:
5880         * docs/manual/basics-pads.xml:
5881         * docs/manual/basics-plugins.xml:
5882         * docs/manual/bins-api.xml:
5883         * docs/manual/bins.xml:
5884         * docs/manual/buffers-api.xml:
5885         * docs/manual/buffers.xml:
5886         * docs/manual/clocks.xml:
5887         * docs/manual/components.xml:
5888         * docs/manual/cothreads.xml:
5889         * docs/manual/debugging.xml:
5890         * docs/manual/dparams-app.xml:
5891         * docs/manual/dynamic.xml:
5892         * docs/manual/elements-api.xml:
5893         * docs/manual/elements.xml:
5894         * docs/manual/factories.xml:
5895         * docs/manual/gnome.xml:
5896         * docs/manual/goals.xml:
5897         * docs/manual/helloworld.xml:
5898         * docs/manual/helloworld2.xml:
5899         * docs/manual/highlevel-components.xml:
5900         * docs/manual/highlevel-xml.xml:
5901         * docs/manual/init-api.xml:
5902         * docs/manual/intro-basics.xml:
5903         * docs/manual/intro-motivation.xml:
5904         * docs/manual/intro-preface.xml:
5905         * docs/manual/intro.xml:
5906         * docs/manual/links-api.xml:
5907         * docs/manual/links.xml:
5908         * docs/manual/manual.xml:
5909         * docs/manual/motivation.xml:
5910         * docs/manual/pads-api.xml:
5911         * docs/manual/pads.xml:
5912         * docs/manual/plugins-api.xml:
5913         * docs/manual/plugins.xml:
5914         * docs/manual/programs.xml:
5915         * docs/manual/queues.xml:
5916         * docs/manual/quotes.xml:
5917         * docs/manual/schedulers.xml:
5918         * docs/manual/states-api.xml:
5919         * docs/manual/states.xml:
5920         * docs/manual/threads.xml:
5921         * docs/manual/typedetection.xml:
5922         * docs/manual/win32.xml:
5923         * docs/manual/xml.xml:
5924           Try 2. This time, include a short preface as a "general
5925           introduction", also add code blocks around all code samples
5926           so they get compiled. We still need a way to tell readers
5927           the filename of the code sample. In some cases, don't show
5928           all code in the documentation, but do include it in the generated
5929           code. This allows for focussing on specific bits in the docs,
5930           while still having a full test application available.
5931         * examples/manual/Makefile.am:
5932           Fix up examples for new ADM. Add several of the new examples that
5933           were either added or were missing from the build system.
5934         * examples/manual/extract.pl:
5935           Allow nameless blocks.
5936
5937 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5938
5939         * docs/manual/elements-api.xml:
5940         * docs/manual/helloworld.xml:
5941         * examples/manual/extract.pl:
5942           fix last example.  Add example of adding code blocks that are not
5943           shown in docbook output.
5944
5945 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5946
5947         * docs/manual/dynamic.xml:
5948         * docs/manual/elements-api.xml:
5949         * docs/manual/gnome.xml:
5950         * docs/manual/helloworld2.xml:
5951         * docs/manual/init-api.xml:
5952         * docs/manual/queues.xml:
5953         * docs/manual/threads.xml:
5954         * docs/manual/xml.xml:
5955         * examples/manual/extract.pl:
5956           Make it possible to extract example code from separate blocks.
5957           Should make Ronald happy.
5958
5959 2004-12-15  Wim Taymans  <wim@fluendo.com>
5960
5961         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5962         (remove_from_group), (group_elements_set_visited),
5963         (normalize_group), (gst_opt_scheduler_iterate):
5964         Fix bug where a flag was not updated on a decoupled entry point 
5965         because we were just checking the group element list and decoupled
5966         elements are not in that list..
5967
5968 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5969
5970         * docs/manual/advanced-autoplugging.xml:
5971         * docs/manual/advanced-clocks.xml:
5972         * docs/manual/advanced-dparams.xml:
5973         * docs/manual/advanced-interfaces.xml:
5974         * docs/manual/advanced-metadata.xml:
5975         * docs/manual/advanced-position.xml:
5976         * docs/manual/advanced-schedulers.xml:
5977         * docs/manual/advanced-threads.xml:
5978         * docs/manual/appendix-debugging.xml:
5979         * docs/manual/appendix-gnome.xml:
5980         * docs/manual/appendix-programs.xml:
5981         * docs/manual/appendix-quotes.xml:
5982         * docs/manual/appendix-win32.xml:
5983         * docs/manual/autoplugging.xml:
5984         * docs/manual/basics-bins.xml:
5985         * docs/manual/basics-data.xml:
5986         * docs/manual/basics-elements.xml:
5987         * docs/manual/basics-helloworld.xml:
5988         * docs/manual/basics-init.xml:
5989         * docs/manual/basics-pads.xml:
5990         * docs/manual/basics-plugins.xml:
5991         * docs/manual/bins-api.xml:
5992         * docs/manual/bins.xml:
5993         * docs/manual/buffers-api.xml:
5994         * docs/manual/buffers.xml:
5995         * docs/manual/clocks.xml:
5996         * docs/manual/components.xml:
5997         * docs/manual/cothreads.xml:
5998         * docs/manual/debugging.xml:
5999         * docs/manual/dparams-app.xml:
6000         * docs/manual/dynamic.xml:
6001         * docs/manual/elements-api.xml:
6002         * docs/manual/elements.xml:
6003         * docs/manual/factories.xml:
6004         * docs/manual/gnome.xml:
6005         * docs/manual/goals.xml:
6006         * docs/manual/helloworld.xml:
6007         * docs/manual/helloworld2.xml:
6008         * docs/manual/highlevel-components.xml:
6009         * docs/manual/highlevel-xml.xml:
6010         * docs/manual/init-api.xml:
6011         * docs/manual/intro-motivation.xml:
6012         * docs/manual/intro-preface.xml:
6013         * docs/manual/intro.xml:
6014         * docs/manual/links-api.xml:
6015         * docs/manual/links.xml:
6016         * docs/manual/manual.xml:
6017         * docs/manual/motivation.xml:
6018         * docs/manual/pads-api.xml:
6019         * docs/manual/pads.xml:
6020         * docs/manual/plugins-api.xml:
6021         * docs/manual/plugins.xml:
6022         * docs/manual/programs.xml:
6023         * docs/manual/queues.xml:
6024         * docs/manual/quotes.xml:
6025         * docs/manual/schedulers.xml:
6026         * docs/manual/states-api.xml:
6027         * docs/manual/states.xml:
6028         * docs/manual/threads.xml:
6029         * docs/manual/typedetection.xml:
6030         * docs/manual/win32.xml:
6031         * docs/manual/xml.xml:
6032           First try at rewriting the ADM. Needs lotsamore work, but some
6033           parts might already be somewhat useful.
6034         * docs/pwg/advanced-interfaces.xml:
6035           Remove properties interface, it never actually existed (except for
6036           on my HD...).
6037
6038 2004-12-13  David Schleef  <ds@schleef.org>
6039
6040         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6041         be NULL (bug #160220).
6042
6043 2004-12-13  David Schleef  <ds@schleef.org>
6044
6045         * configure.ac: remove all mmx stuff, because it's not used.
6046         * docs/random/ds/0.9-suggested-changes: additional notes
6047         * include/Makefile.am: we don't use these anymore
6048         * include/mmx.h: remove
6049         * include/sse.h: remove
6050
6051 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6052
6053         * docs/random/mimetypes:
6054           Add FOURCC code for h264 codec (VSSH)
6055           Add alternate FOURCC codes for h263 related codecs
6056
6057 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6058
6059         * docs/manual/programs.xml:
6060           Added more gst-launch examples.
6061
6062 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6063
6064         * gst/gstqueue.c: (gst_queue_handle_src_query):
6065           Check for availability again.
6066
6067 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6068
6069         * gst/gstcaps.c: (gst_caps_compare_structures):
6070           Simple caps go first. This has the nice side-effect of fixing an
6071           obscure warning.
6072
6073 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6074
6075         * gst/gstversion.h.in:
6076           Protect header.
6077
6078 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6079
6080         * gst/schedulers/gstoptimalscheduler.c:
6081         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6082         (gst_opt_scheduler_get_wrapper):
6083           When we're recursing into a chain run, only run the directly
6084           related group, not all queued ones. This will fix a possible
6085           deadlock in chains with more than two groups.
6086
6087 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6088
6089         * autogen.sh:
6090           remove patch if autopoint fails
6091
6092 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6093
6094         * docs/gst/gstreamer-sections.txt:
6095           Document Thomas' addition, fix build, make Luis the sheriff happy.
6096
6097 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6098
6099         * gst/gstplugin.c:
6100         * gst/gstplugin.h:
6101           add accessor for version field
6102
6103 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6104
6105         submitted by: Luca Ferretti <elle.uca@infinito.it>
6106
6107         * po/LINGUAS:
6108         * po/it.po:
6109           New tranlation added: Italian
6110
6111 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6112
6113         * gst/gstpad.c: (gst_pad_is_negotiated),
6114         (gst_pad_get_negotiated_caps):
6115           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6116           it doesn't actually check the contents), so be sure to hand it
6117           a RealPad else we'll crash.
6118
6119 2004-12-03  Wim Taymans  <wim@fluendo.com>
6120
6121         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6122         (gst_queue_link), (gst_queue_handle_src_query):
6123         Reverted to 1.110 until this makes the testsuite and various
6124         apps work.
6125
6126 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6127
6128         * docs/upload.mak: fix included CVS conflict strings
6129
6130 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6131
6132         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6133
6134         * gst/gstelement.c: (gst_element_error_full):
6135           Use g_error_new_literal because error text may have
6136           percentage signs in it. Fixes #160019.
6137
6138 2004-12-01  Benjamin Otte  <otte@gnome.org>
6139
6140         * gst/elements/gstbufferstore.c:
6141         (gst_buffer_store_add_buffer_func):
6142           don't try to make subbuffers bigger than they can be. (fixes
6143           #159970)
6144
6145 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6146
6147         * docs/gst/gstreamer-sections.txt:
6148         * docs/gst/tmpl/gstvalue.sgml:
6149           Add new function to docs to fix build.
6150
6151 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6152
6153         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6154         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6155         (_gst_pad_default_fixate_foreach):
6156         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6157         * gst/gstvalue.h:
6158           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6159           in some cases (arrays), the fixedness depends on the content.
6160         * gst/gstqueue.c: (gst_queue_handle_src_query):
6161           Check for availability before doing something.
6162
6163 2004-11-29  Wim Taymans  <wim@fluendo.com>
6164
6165         * testsuite/threads/Makefile.am:
6166         * testsuite/threads/signals.c: (gst_test_get_type),
6167         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6168         (gst_test_set_property), (gst_test_get_property),
6169         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6170         (gst_test_do_prop), (run_thread), (main):
6171         Added a bunch of testcases that show threadsafety bugs in glib.
6172
6173 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6174
6175         * docs/manual/programs.xml:
6176           Added a first batch of gst-launch examples, as provided by Ronald
6177           and others from the devel-mlist
6178
6179 2004-11-28  Benjamin Otte  <otte@gnome.org>
6180
6181         * gst/gstelement.c: (gst_element_negotiate_pads):
6182           simplify
6183         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6184         (gst_value_serialize_string), (gst_value_deserialize_string):
6185           add unwrapping of previously wrapped strings. Fix bug in wrapping
6186           while at it.
6187         * testsuite/caps/value_serialize.c: (test1),
6188         (test_string_serialization), (test_string_deserialization), (main):
6189           add tests for string (de)serialization
6190
6191 2004-11-26  Wim Taymans  <wim@fluendo.com>
6192
6193         * testsuite/threads/159566.c: (object_deep_notify), (main):
6194         * testsuite/threads/Makefile.am:
6195         Added testsuite to show bug #159566
6196
6197 2004-11-25  Wim Taymans  <wim@fluendo.com>
6198
6199         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6200         (gst_thread_child_state_change), (gst_thread_main_loop):
6201         Ref the thread object in the GThread mainloop. Break out of the
6202         thread mainloop if it holds the last ref. This properly exits
6203         the threads when disposing the thread from its own context. It
6204         also avoids possible deadlocks in the dispose function.
6205
6206 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6207
6208         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6209         it is necessary to wait.
6210
6211 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6212
6213         * docs/pwg/building-boiler.xml:
6214           Make description somewhat clearer.
6215
6216 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6217
6218         * docs/upload.mak:
6219           Apparently docs changed location on FDO's server.
6220
6221 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6222
6223         * docs/pwg/appendix-checklist.xml:
6224           Add some random notes on things to check when writing an element.
6225           This list can be extended as people see fit.
6226
6227 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6228
6229         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6230         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6231         pad. The queue will now wait until it is empty and forward the new
6232         caps to the source.
6233         * gst/gstbin.c (gst_bin_set_element_sched)
6234         (gst_bin_unset_element_sched): Make sure that all elements and
6235         links are registered and unregistered with the scheduler exactly
6236         once. This elaborates on a fix by Benjamin Otte, but
6237         guarantees that decoupled elements are also registered.
6238
6239 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6240
6241         * docs/manual/quotes.xml:
6242           add a quote
6243         * configure.ac:
6244         * gst/gst.c:
6245         * gst/gstinfo.c:
6246           add LIBDIR and move init message higher up so it's at the start
6247
6248 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6249
6250         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6251         * gstreamer.spec.in: add fair
6252
6253 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6254
6255         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6256         * gst/elements/gstidentity.c: (gst_identity_class_init):
6257           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6258           <teuf@gnome.org> (#157263).
6259         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6260         (gst_type_find_handle_src_query):
6261           Subtract size of internally stored data from position queries.
6262
6263 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6264
6265         * gst/schedulers/fairscheduler.c:
6266         * gst/schedulers/faircothreads.c:
6267         * gst/schedulers/faircothreads.h:
6268         New cothread based scheduler: Fair scheduler.
6269         * gst/schedulers/gthread-cothreads.h: 
6270         Add the standard #if around the whole file.
6271         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6272         compilation of the functions defined in this file. This is
6273         necessary to be able to use this file as a normal header.
6274         * gst/schedulers/Makefile.am: Add compiling support for fair
6275         scheduler.
6276         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6277         scheduler cothreads layer from documentation generation.
6278
6279 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6280
6281         * gst/autoplug/gstspideridentity.c:
6282         (gst_spider_identity_sink_loop_type_finding):
6283           Don't crash if that function is not implemented.
6284
6285 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6286
6287         * docs/pwg/advanced-types.xml:
6288           Another typo.
6289
6290 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6291
6292         * docs/pwg/intro-preface.xml:
6293           Hm, ok, so the brackets weren't really useful...
6294         * docs/pwg/other-ntoone.xml:
6295           Fix embarassing typo.
6296
6297 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6298
6299         * docs/pwg/intro-preface.xml:
6300           Rewrite preface.
6301
6302 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6303
6304         * docs/pwg/advanced-scheduling.xml:
6305         * docs/pwg/advanced-tagging.xml:
6306         * docs/pwg/advanced-types.xml:
6307         * docs/pwg/building-boiler.xml:
6308         * docs/pwg/building-chainfn.xml:
6309         * docs/pwg/building-signals.xml:
6310         * docs/pwg/building-state.xml:
6311         * docs/pwg/building-testapp.xml:
6312         * docs/pwg/intro-basics.xml:
6313         * docs/pwg/other-manager.xml:
6314         * docs/pwg/other-source.xml:
6315           Typo fixes.
6316         * docs/pwg/other-manager.xml:
6317           Add some first content. No example code yet.
6318         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6319           Remove double newlines.
6320
6321 2004-11-04  Wim Taymans  <wim@fluendo.com>
6322
6323         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6324         (remove_from_group), (normalize_group), (group_migrate_connected),
6325         (gst_opt_scheduler_iterate):
6326         * testsuite/schedulers/.cvsignore:
6327         * testsuite/schedulers/Makefile.am:
6328         * testsuite/schedulers/queue_link.c: (main):
6329         Added testcase for scheduler segfault.
6330         Fix scheduler segfault when removing a decoupled
6331         entry point as the last element from a group.
6332
6333 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6334
6335         * gst/gstmarshal.list: add missing marshaller, fixes build
6336
6337 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6338
6339         * docs/random/signal: added notes about using BOXED for GstBuffer
6340         signal marshallers, not POINTER
6341
6342 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6343
6344         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6345         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6346         POINTER=>BOXED changes to marshal GstBuffers
6347
6348 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6349
6350         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6351         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6352
6353 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6354
6355         * docs/gst/gstreamer-sections.txt:
6356         * docs/gst/tmpl/gstcaps.sgml:
6357         * docs/gst/tmpl/gsterror.sgml:
6358         * docs/gst/tmpl/gstinfo.sgml:
6359         * docs/gst/tmpl/gstmacros.sgml:
6360         * docs/gst/tmpl/gstutils.sgml:
6361         * docs/random/ensonic/interfaces.txt:
6362         * gst/gstinfo.h:
6363           added some more docs, removed two obsolete defines
6364
6365 2004-11-02  Kjartan Maraas <as at gnome.org>
6366
6367         reviewed by: Wim Taymans, Ronald Bultje.
6368
6369         * gst/cothreads.c: (cothread_create):
6370         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6371         (gst_bin_child_state_change_func):
6372         * gst/gstbuffer.c: (gst_buffer_span):
6373         * gst/gstelement.c: (gst_element_get_index),
6374         (gst_element_get_event_masks), (gst_element_get_query_types),
6375         (gst_element_get_formats):
6376         * gst/gsterror.c: (_gst_core_errors_init),
6377         (_gst_library_errors_init), (_gst_resource_errors_init),
6378         (_gst_stream_errors_init):
6379         * gst/gstobject.c: (gst_object_default_deep_notify):
6380         * gst/gstpad.c: (gst_pad_get_event_masks),
6381         (gst_pad_get_internal_links_default):
6382         * gst/gstplugin.c: (gst_plugin_register_func),
6383         (gst_plugin_get_module):
6384         * gst/gststructure.c: (gst_structure_get_string),
6385         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6386         (gst_structure_to_abbr):
6387         * gst/gstutils.c: (gst_print_element_args):
6388         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6389         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6390         Aplied part of patch #157127: Cleanup of issues reported by 
6391         sparse.
6392         Also do not try to use cothreads when there is no cothread
6393         context yet.
6394
6395 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6396
6397         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6398         (gst_opt_scheduler_iterate):
6399         Applied patch #154061. Running a pipeline in which an element 
6400         calls GST_ELEMENT_ERROR in the chain function, the opt 
6401         scheduler doesn't unref the chain so it never gets freed.
6402
6403 2004-11-02  Wim Taymans  <wim@fluendo.com>
6404
6405         * gst/gststructure.c: (gst_structure_get_abbrs),
6406         (gst_structure_from_abbr), (gst_structure_to_abbr):
6407         Remove that ugly if-then thing in the code that converts
6408         between strings and types.
6409
6410 2004-11-02  Wim Taymans  <wim@fluendo.com>
6411
6412         * gst/gstscheduler.c: (gst_scheduler_add_element),
6413         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6414         Aplied clock distribution patch, this should fix bug
6415         #148787.
6416
6417 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6418
6419         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6420
6421         * po/LINGUAS:
6422         * po/nb.po:
6423           Added Norwegian Bokmaal translation
6424
6425 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6426
6427         * tools/gst-inspect.c: (print_signal_info):
6428           print signal arguments as pointers if they are
6429
6430 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6431
6432         * docs/pwg/building-boiler.xml:
6433           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6434
6435 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6436
6437         * gst/parse/parse.l:
6438         * testsuite/parse/parse1.c: (main):
6439         Since parse can do 'element name=a:b' make 'a:b.' work as
6440         well. 
6441         Added testcase to verify fix.
6442
6443 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6444
6445         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6446         Use the realpad when printing the direction.
6447         Add extra \n when printing extensions of typefind factories.
6448
6449 2004-10-13  David Schleef  <ds@schleef.org>
6450
6451         * examples/manual/Makefile.am: $< isn't portable in Makefile
6452         rules.
6453
6454 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6455
6456         * docs/gst/tmpl/gstobject.sgml:
6457         * docs/gst/tmpl/gstplugin.sgml:
6458         * docs/gst/tmpl/gstpluginfeature.sgml:
6459         * docs/gst/tmpl/gstregistry.sgml:
6460         * docs/gst/tmpl/gstversion.sgml:
6461         * gst/gstbin.c:
6462           more api documentation
6463         * gst/gstplugin.c: (gst_plugin_register_func),
6464         (gst_plugin_check_file), (gst_plugin_load_file):
6465           better error signaling and logging
6466
6467 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6468
6469         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6470           Subtract current queue contents from position queries.
6471
6472 2004-10-11  Johan Dahlin  <johan@gnome.org>
6473
6474         * gst/gsturi.c (gst_uri_get_location): unescape string
6475         (gst_uri_construct): escape string.
6476
6477 2004-10-11  Benjamin Otte  <otte@gnome.org>
6478
6479         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6480         (gst_pad_try_set_caps_nonfixed):
6481           allow renegotiation of unconnected pads (as inside spider). Simply
6482           return OK if unconnected - mimic try_set_caps there.
6483
6484 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6485
6486         * gst/gstbin.c: (gst_bin_sync_children_state):
6487           Add missing break.
6488
6489 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6490
6491         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6492         Set element to EOS before sending EOS event
6493
6494 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6495
6496         * gst/elements/gsttypefindelement.c:
6497         (gst_type_find_element_handle_event):
6498         Handle EOS events when doing the transition from
6499         typefind to data passing. This should fix the
6500         infinite loops in short files.
6501
6502 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6503
6504         * gst/gstthread.c: (gst_thread_change_state),
6505         (gst_thread_child_state_change):
6506         Make sure no iteration happens while performing
6507         the state change as it could mess up the internal
6508         consistency of the thread state.
6509
6510 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6511
6512         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6513         (gst_thread_change_state), (gst_thread_child_state_change):
6514         Do not try to grab the iterate lock in the state change method
6515         when we are in the same thread as the iterate or else we
6516         could deadlock. Some other cleanups.
6517
6518 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6519
6520         * configure.ac:
6521           bump nano to cvs
6522
6523 === release 0.8.7 ===
6524
6525 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6526
6527         * configure.ac:
6528         * NEWS:
6529         * RELEASE:
6530         * configure.ac:
6531           releasing 0.8.7, "A Cruise"
6532
6533 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6534
6535         * docs/random/mimetypes:
6536         Add an entry for Sony ATRAC3 audio format with mime-type
6537         used by rmdemux et riff-read
6538
6539 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6540
6541         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6542         Push the buffer store instead of clearing it in case that
6543         the stream is not seekable.
6544
6545 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6546
6547         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6548         (gst_thread_main_loop):
6549         Lock the iteration and the state change so that automatic
6550         negotiation and fixation does not happen at the same time
6551         as the in stream negotiation.
6552
6553 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6554
6555         * configure.ac:
6556           bump nano to cvs
6557
6558 === release 0.8.6 ===
6559
6560 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6561
6562         * configure.ac:
6563         * NEWS:
6564         * RELEASE:
6565         * configure.ac:
6566           releasing 0.8.6, "Narc"
6567
6568 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6569
6570         * configure.ac:
6571           prerel bump
6572
6573 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6574
6575         patch by: Steve Lhomme
6576
6577         * gst/elements/gstfakesrc.c:
6578         * gst/elements/gstidentity.c:
6579         * gst/gstthread.c:
6580           Fix for #153881
6581
6582 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6583
6584         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6585         Fix threadsafety of the crc checking function.
6586
6587 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6588
6589         patch by: Ronald Bultje
6590
6591         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6592         (gst_type_find_element_handle_event),
6593         (gst_type_find_element_chain):
6594         * gst/elements/gsttypefindelement.h:
6595          #153657.
6596          Filter out discont event from seekable sources when typefind
6597          asks them to seek.  Fixes typefind with demuxers for
6598          avi, asf and matroska.
6599
6600 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6601
6602         * docs/gst/gstreamer-sections.txt:
6603         * gst/gstcaps.c:
6604         * gst/gstcaps.h:
6605         * gst/gstpad.c:
6606           Revert preferred caps: (#147789)
6607
6608 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6609
6610         * win32/dirent.c:
6611           fix a memory leak
6612
6613 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6614
6615         * configure.ac:
6616           bump for prerelease
6617
6618 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6619
6620         * docs/Makefile.am:
6621         * docs/manual/elements-api.xml:
6622           restructure so that common stuff is shown first
6623         * docs/manual/init-api.xml:
6624           convert to examples
6625         * docs/manual/manual.xml:
6626         * docs/manuals.mak:
6627         * docs/url.entities:
6628           link to API on the website, possibly override later in build
6629         * examples/manual/.cvsignore:
6630           ignore more
6631         * examples/manual/Makefile.am:
6632           add more examples
6633         * examples/manual/extract.pl:
6634           error out on failure
6635
6636 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6637
6638         * docs/gst/tmpl/gstthread.sgml:
6639         * docs/manual/init-api.xml:
6640         * examples/manual/Makefile.am:
6641           convert two code bits to examples
6642
6643 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6644
6645         * gst/gstelement.c: (gst_element_change_state):
6646           Well, actually, I was about to remove this insane assert when
6647           I noticed Wim already did that. A warning is nice so we can
6648           fix actual ugs (using --g-fatal-warnings and backtraces), so
6649           I added that instead.
6650
6651 2004-09-06  Wim Taymans  <wim@fluendo.com>
6652
6653         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6654         (gst_element_threadsafe_properties_post_run),
6655         (gst_element_set_state), (gst_element_change_state):
6656         Added extra refcounting around various places. 
6657
6658 2004-09-06  Wim Taymans  <wim@fluendo.com>
6659
6660         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6661         Fix debug info.
6662
6663 2004-09-06  Wim Taymans  <wim@fluendo.com>
6664
6665         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6666         (remove_from_group):
6667         Some more debug info.
6668
6669 2004-09-03  Wim Taymans  <wim@fluendo.com>
6670
6671         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6672         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6673         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6674         (gst_fakesrc_get), (gst_fakesrc_change_state):
6675         * gst/elements/gstfakesrc.h:
6676         * gst/elements/gstidentity.c: (gst_identity_class_init),
6677         (gst_identity_init), (gst_identity_chain),
6678         (gst_identity_set_property), (gst_identity_get_property),
6679         (gst_identity_change_state):
6680         * gst/elements/gstidentity.h:
6681         Added datarate properties to limit the datarate.
6682
6683 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6684
6685         * gst/autoplug/gstspider.c: (plugin_init):
6686           don't set a rank. We don't want to autoplug by inserting spiders.
6687
6688 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6689
6690         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6691         (gst_spider_identity_plug):
6692           add a template for spider's sink
6693         * gst/gst.c: (gst_register_core_elements):
6694           queue's rank should be NULL, we don't want spider to add it.
6695
6696 2004-08-18  David Schleef  <ds@schleef.org>
6697
6698         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6699         * docs/libs/Makefile.am: same
6700         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6701         * docs/random/ds/0.9-planning: random additions
6702         * docs/random/ds/0.9-suggested-changes: same
6703         * gst/gstxml.h: remove vestigal GstXMLNs definition
6704
6705         Preferred caps: (#147789)
6706         * docs/gst/gstreamer-sections.txt: Add symbols
6707         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6708         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6709         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6710         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6711         (gst_caps_get_preferred), (gst_caps_set_preferred),
6712         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6713         (gst_caps_use_preferred): Handle caps preferences
6714         * gst/gstcaps.h: Add caps preferences
6715         * gst/gstpad.c: (gst_pad_link_get_preferred),
6716         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6717         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6718         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6719         negotiation.
6720
6721 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6722
6723         * gst/autoplug/gstspideridentity.c:
6724         (gst_spider_identity_request_new_pad):
6725         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6726         (gst_aggregator_init):
6727         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6728         (gst_fakesink_init):
6729         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6730         (gst_fakesrc_init):
6731         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6732         (gst_fdsink_init):
6733         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6734         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6735         (gst_filesink_init):
6736         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6737         (gst_filesrc_init):
6738         * gst/elements/gstidentity.c: (gst_identity_base_init),
6739         (gst_identity_init):
6740         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6741         (gst_multifilesrc_init):
6742         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6743         (gst_pipefilter_init):
6744         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6745         (gst_statistics_init):
6746         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6747         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6748           s/gst_pad_new/&_from_template/
6749           register pad templates in the base_init function
6750           add static pad template definitions
6751
6752 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6753
6754         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6755         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6756         * testsuite/refcounting/pad.c: (main):
6757         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6758           s/gst_pad_new/&_from_template/
6759           prepare deprecation of gst_pad_new
6760
6761 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6762
6763         patch by: Luca Ognibene <skaboy81@virgilio.it>
6764
6765         * gst/gstcaps.c:
6766         * gst/gstelement.c:
6767         * gst/gstpad.c:
6768         * gst/gstxml.c:
6769           fix memleaks.  Fixes #150001
6770
6771 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6772
6773         * docs/random/ds/0.9-suggested-changes:
6774           add notes - mostly about pad templates
6775
6776 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6777
6778         * win32/GStreamer.vcproj:
6779           temporary locale files are .gmo not .mo
6780
6781 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6782
6783         * configure.ac: bump nano to cvs
6784
6785 === release 0.8.5 ===
6786
6787 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6788
6789         * configure.ac:
6790           releasing 0.8.5, "Stuttgart"
6791         * NEWS:
6792         * RELEASE:
6793         * configure.ac:
6794         * docs/random/release:
6795           updates for release
6796
6797 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6798
6799         patch by: Wim Taymans (wim@fluendo.com)
6800
6801         * gst/gstbuffer.c:
6802         * gst/gstindex.h:
6803         * libs/gst/dataprotocol/dataprotocol.c:
6804           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6805
6806 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6807
6808         * Makefile.am:
6809         * win32/MANIFEST:
6810           add win32 dir to the build.  Fixes #149981.
6811
6812 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6813
6814         * configure.ac:
6815           bump libtool versioning
6816         * gst/gststructure.c:
6817           mark function as static
6818         * po/af.po:
6819         * po/az.po:
6820         * po/ca.po:
6821         * po/cs.po:
6822         * po/en_GB.po:
6823         * po/fr.po:
6824         * po/nl.po:
6825         * po/sq.po:
6826         * po/sr.po:
6827         * po/sv.po:
6828         * po/tr.po:
6829         * po/uk.po:
6830           translations update
6831         * win32/README.txt:
6832           trademark protection
6833
6834 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6835
6836         * configure.ac:
6837           fix GST_ORIGIN
6838           set GST_PACKAGE to source, and distinguish between release and other
6839         * tools/gst-inspect.c:
6840           print out plugin an element factory is part of so we see this info
6841
6842 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6843
6844         * docs/gst/gstreamer-sections.txt:
6845         * docs/gst/tmpl/gstbuffer.sgml:
6846         * docs/gst/tmpl/gstschedulerfactory.sgml:
6847           reorder docs a little, make GstBuffer's more sensible.
6848         * gst/gstbuffer.h:
6849           API: added GST_BUFFER_FLAG_DELTA_UNIT
6850         * gst/gstscheduler.c:
6851           comment API addition
6852
6853 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6854
6855         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6856           work with non-regular files that can be mmapped (like /dev/zero)
6857         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6858           get rid of typefinds that require a seek when we can't seek instead
6859           of trying them over and over again
6860         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6861           return non-zero failure value when the pipeline was interrupted or
6862           an error occurred
6863
6864 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6865
6866         * win32/config.h:
6867         * win32/GStreamer.vcproj:
6868           compile and install the locales
6869
6870 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6871
6872         * gst/gstvalue.c:
6873           fix a possible memory leak under Windows
6874
6875 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6876
6877         * win32/GStreamer.vcproj:
6878           fix a memory leak that occured under Windows
6879         * win32/gstreamer.def:
6880           add gst_scheduler_register
6881
6882 2004-08-11  Benjamin Otte  <otte@gnome.org>
6883
6884         * docs/gst/gstreamer-sections.txt:
6885         * gst/gstscheduler.c: (gst_scheduler_register):
6886         * gst/gstscheduler.h:
6887           API:
6888           add gst_scheduler_register shortcut similar to gst_element_register
6889         * gst/schedulers/entryscheduler.c: (plugin_init):
6890         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6891         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6892           use it
6893
6894 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6895
6896         * gst/gstvalue.h:
6897           fix a memory leak that occured under Windows
6898
6899 2004-08-10  Colin Walters  <walters@redhat.com>
6900
6901         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6902         Don't use O_EXCL to open temporary registry.  It will prevent
6903         registry creation if a temporary one already exists, which
6904         is unnecessary.
6905
6906 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6907
6908         * docs/gst/gstreamer-sections.txt:
6909         * docs/gst/tmpl/gstvalue.sgml:
6910           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6911
6912 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6913
6914         * win32/gstbytestream.vcproj:
6915         * win32/gstelements.vcproj:
6916         * win32/gstgetbits.vcproj:
6917         * win32/gst-inspect.vcproj:
6918         * win32/gst-launch.vcproj:
6919         * win32/gstoptimalscheduler.vcproj:
6920         * win32/GStreamer.vcproj:
6921         * win32/gst-register.vcproj:
6922         * win32/gstspider.vcproj:
6923           update the include and lib dirs to fit standard libraries as
6924           described in the Win32 manual
6925
6926 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6927
6928         * win32/config.h:
6929         * win32/gstversion.h:
6930           enable NLS again, push the version number for the coming 0.8.5 release
6931
6932 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6933
6934         * gst/gstvalue.h:
6935           export gst_type_XXX for windows DLLs
6936
6937 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6938
6939         * docs/faq/gst-uninstalled:
6940           fix PKG_CONFIG_PATH and PYTHONPATH
6941         * gst/schedulers/Makefile.am:
6942           cleanup
6943         * libs/gst/bytestream/bytestream.c:
6944           remove newline
6945         * po/LINGUAS:
6946         * po/sq.po:
6947           adding Albanian translation (Laurent Dhima)
6948         * po/cs.po:
6949           updated
6950
6951 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6952
6953         * po/ca.po:
6954         * po/sv.po:
6955           updated translations
6956
6957 2004-08-04  Benjamin Otte  <otte@gnome.org>
6958
6959         * tests/mass_elements.c: (main):
6960           allow specifying src and sink element explicitly, so I can test
6961           videotestsrc instead of fakesrc
6962
6963 2004-08-04  Benjamin Otte  <otte@gnome.org>
6964
6965         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6966         (gst_structure_id_empty_new), (gst_structure_empty_new),
6967         (gst_structure_copy):
6968           add gst_structure_id_empty_new_with_size to allow preallocating
6969           value array sizes. Use this in gst_structure_copy to get rid of
6970           reallocs.
6971           don't do quark=>string=>quark when copying structures
6972
6973 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6974
6975         * docs/manual/win32.xml:
6976         * win32/README.txt:
6977           update documentation with the clean version of dependencies
6978
6979 2004-08-03  Benjamin Otte  <otte@gnome.org>
6980
6981         * gst/schedulers/entryscheduler.c:
6982         (gst_entry_scheduler_remove_element):
6983           fix for GST_DISABLE_DEBUG
6984         * tools/gst-launch.c: (print_tag):
6985           fixes for G_DISABLE_ASSERT
6986
6987 2004-08-03  Benjamin Otte  <otte@gnome.org>
6988
6989         * gst/gst.c: (gst_register_core_elements):
6990           fix for G_DISABLE_ASSERT
6991         * gst/gstinfo.c: (__gst_in_valgrind):
6992           add for GST_DISABLE_DEBUG
6993
6994 2004-08-03  Benjamin Otte  <otte@gnome.org>
6995
6996         * gst/parse/parse.l:
6997           fix for G_DISABLE_ASSERT
6998
6999 2004-08-03  Wim Taymans  <wim@fluendo.com>
7000
7001         * gst/gstbin.c: (gst_bin_get_type),
7002         (gst_bin_child_state_change_func):
7003         * gst/gstthread.c: (gst_thread_change_state):
7004         Backported some debug logging from a reverted patch
7005         Don't try to destroy the thread twice. Added some more
7006         debugging in GstThread. Unlock and signal even if we
7007         are in the thread context.
7008
7009 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7010
7011         * po/uk.po:
7012           updated translation
7013
7014 2004-07-30  David Schleef  <ds@schleef.org>
7015
7016         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7017
7018 2004-07-29  David Schleef  <ds@schleef.org>
7019
7020         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7021         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7022
7023 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7024
7025         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7026         (gst_bin_add_func), (gst_bin_remove_func),
7027         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7028         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7029         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7030         (gst_bin_sync_children_state):
7031         * gst/gstbin.h:
7032         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7033         (gst_thread_change_state):
7034         * testsuite/states/Makefile.am:
7035           revert state change patches as agreed so we can rework them
7036           gradually
7037
7038 2004-07-29  Benjamin Otte  <otte@gnome.org>
7039
7040         * libs/gst/control/Makefile.am:
7041           link to libgstreamer (fixes Debian bug 262019, see
7042           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7043
7044 2004-07-29  Wim Taymans  <wim@fluendo.com>
7045
7046         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7047         (check_from_fraction_convert), (transform_test), (main):
7048         Make the test less pedantic about float roundoff errors.
7049
7050 2004-07-29  Benjamin Otte  <otte@gnome.org>
7051
7052         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7053         (gst_filesrc_srcpad_event):
7054           make seek events to before start/after end of file not fail, but
7055           seek to start/end instead
7056         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7057           add more output
7058
7059 2004-07-29  Benjamin Otte  <otte@gnome.org>
7060
7061         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7062           check that caps are fixed
7063         * gst/gstpad.c: (gst_pad_template_new):
7064           don't try to simplify caps, costs too much time on gst_init
7065         * gst/gstplugin.c: (gst_plugin_add_feature):
7066           G_ERROR if features are added twice
7067         * gst/gsttypefind.c: (gst_type_find_register):
7068         * gst/gstelementfactory.c: (gst_element_register):
7069           don't add features twice
7070         * docs/random/ds/0.9-suggested-changes:
7071           add note about possible gst_init optimization
7072
7073 2004-07-28  David Schleef  <ds@schleef.org>
7074
7075         * testsuite/elements/Makefile.am:
7076         * testsuite/elements/struct_i386.h:
7077         * testsuite/elements/struct_size.c: (main):  A little test
7078         to keep distcheck from working if someone changes a structure
7079         size accidentally.
7080
7081 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7082
7083         * docs/libs/Makefile.am:
7084         * docs/libs/gstreamer-libs-docs.sgml:
7085         * docs/libs/gstreamer-libs-sections.txt:
7086         * docs/libs/tmpl/gstbytestream.sgml:
7087         * docs/libs/tmpl/gstcontrol.sgml:
7088         * docs/libs/tmpl/gstdataprotocol.sgml:
7089         * docs/libs/tmpl/gstgetbits.sgml:
7090         * libs/gst/bytestream/Makefile.am:
7091         * libs/gst/bytestream/bytestream.c:
7092         * libs/gst/bytestream/bytestream.h:
7093         * libs/gst/control/Makefile.am:
7094         * libs/gst/dataprotocol/Makefile.am:
7095         * libs/gst/getbits/Makefile.am:
7096         * libs/gst/getbits/getbits.h:
7097           various doc and style fixes, adding bytestream to libs docs.
7098
7099 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7100
7101         * docs/gst/gstreamer-docs.sgml:
7102         * docs/libs/Makefile.am:
7103         * docs/libs/gstreamer-libs-docs.sgml:
7104         * docs/libs/gstreamer-libs-sections.txt:
7105         * libs/gst/control/dparam.c:
7106           more doc fixes.  gst-libs docs now build the same way as gst.
7107
7108 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7109
7110         * configure.ac:
7111         * testsuite/Makefile.am:
7112         * testsuite/bins/Makefile.am:
7113         * testsuite/caps/Makefile.am:
7114         * testsuite/cleanup/Makefile.am:
7115         * testsuite/clock/Makefile.am:
7116         * testsuite/debug/Makefile.am:
7117         * testsuite/dlopen/Makefile.am:
7118         * testsuite/dynparams/Makefile.am:
7119         * testsuite/elements/.cvsignore:
7120         * testsuite/elements/Makefile.am:
7121         * testsuite/enumcaps/Makefile.am:
7122         * testsuite/enumcaps/enumcaps.c:
7123         * testsuite/ghostpads/Makefile.am:
7124         * testsuite/indexers/Makefile.am:
7125         * testsuite/negotiation/Makefile.am:
7126         * testsuite/parse/Makefile.am:
7127         * testsuite/plugin/Makefile.am:
7128         * testsuite/refcounting/Makefile.am:
7129         * testsuite/schedulers/.cvsignore:
7130         * testsuite/states/Makefile.am:
7131         * testsuite/tags/Makefile.am:
7132         * testsuite/threads/Makefile.am:
7133           fold enumcaps into caps dir
7134           clean up Makefile.am's for testsuite
7135
7136 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7137
7138         * docs/gst/Makefile.am:
7139         * docs/libs/Makefile.am:
7140           clean up docs build.  Fixes needless rebuilding of template files.
7141
7142 2004-07-28  Wim Taymans  <wim@fluendo.com>
7143
7144         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7145         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7146         Make sure that a bin state change tries to keep the children
7147         in sync. 
7148         Added debug logging to the thread.
7149
7150 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7151
7152         * win32/GStreamer.vcproj:
7153         * win32/gstreamer.def:
7154           more exports for the plugins
7155
7156 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7157
7158         * win32/gstgetbits.vcproj:
7159         * win32/gstgetbits.def:
7160         * win32/msvc71.sln:
7161           add support for the getbits plugin
7162
7163 2004-07-27  Wim Taymans  <wim@fluendo.com>
7164
7165         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7166         (gst_value_transform_fraction_double), (_gst_value_initialize):
7167         * testsuite/caps/Makefile.am:
7168         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7169         (check_from_fraction_convert), (transform_test), (main):
7170         Added transform functions between double and fraction.
7171         Added testcase to verify transforms
7172
7173 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7174
7175         * win32/GStreamer.vcproj:
7176           rename GStreamer-0.8.lib to libgstreamer.lib
7177
7178 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7179
7180         * win32/gstelements.vcproj:
7181         * win32/gstoptimalscheduler.vcproj:
7182           fixes for the Release build
7183
7184 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7185
7186         * win32/config.h:
7187           update the version number
7188
7189 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7190
7191         * win32/GStreamer.vcproj:
7192           add gstinterface to the build
7193
7194 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7195
7196         * win32/gstreamer.def:
7197           add many definitions needed by plugins,
7198           GST_CAT_DEFAULT only available in the Debug build ?
7199
7200 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7201
7202         * gst/gstelement.c: (gst_element_set_eos_recursive):
7203           various whitespace fixes.
7204           doc fix, fixes #148497
7205
7206 2004-07-25  Benjamin Otte  <otte@gnome.org>
7207
7208         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7209           don't delay links on the sink elements, it causes unnegotiated
7210           links.
7211         * gst/elements/gsttypefindelement.c:
7212         (gst_type_find_element_base_init):
7213           add our padtemplates, we indeed do have some.
7214         * gst/elements/gsttypefindelement.c:
7215         (gst_type_find_element_handle_event),
7216         (gst_type_find_element_chain):
7217           don't push data when typefinding failed.
7218         * gst/gstpad.c: (gst_pad_link_fixate):
7219           check that no fixate function returns empty caps.
7220         * gst/gstpad.c: (gst_pad_push):
7221           check that the link is negotiated before data gets pushed.
7222         * tools/gst-register.c: (main):
7223           don't assert (fixes #148283)
7224
7225 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7226
7227         * docs/gst/gstreamer-sections.txt:
7228         * docs/gst/tmpl/gstconfig.sgml:
7229           add GST_PLUGIN_EXPORT definition
7230
7231 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7232
7233         * gst/gstplugin.h:
7234         * gst/gstconfig.h.in:
7235         * win32/gstconfig.h:
7236         * win32/gstelements.def:
7237         * win32/gstelements.vcproj:
7238         * win32/gstoptimalscheduler.def:
7239         * win32/gstoptimalscheduler.vcproj:
7240         * win32/gstspider.def:
7241         * win32/gstspider.vcproj:
7242           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7243
7244 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7245
7246         * docs/gst/gstreamer-sections.txt:
7247           remove GST_CAT_DEFAULT because the type has changed
7248
7249 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7250
7251         * win32/gstbytestream.vcproj:
7252         * win32/gstelements.vcproj:
7253         * win32/gst-inspect.vcproj:
7254         * win32/gst-launch.vcproj:
7255         * win32/gstoptimalscheduler.vcproj:
7256         * win32/GStreamer.vcproj:
7257         * win32/gst-register.vcproj:
7258         * win32/gstspider.vcproj:
7259         * win32/msvc71.sln:
7260           Copy the files where needed after building, The testsuite will be
7261           built separately
7262
7263 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7264
7265         * win32/config.h:
7266         * win32/README.txt:
7267         * docs/manual/win32.xml:
7268         Fixed the plugin and GStreamer location
7269
7270 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7271
7272         * win32/gstreamer.def:
7273         More exports for the plugins
7274
7275 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7276
7277         * gst/gstinfo.h:
7278         Marc was right, we need to export literally GST_CAT_DEFAULT
7279
7280 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7281
7282         * win32/config.h:
7283         NLS crashes in gettext, disabled until this is solved
7284
7285 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7286
7287         * win32/gst-inspect.vcproj:
7288         * win32/gst-launch.vcproj:
7289         Should use NLS when available
7290
7291 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7292
7293         * gst/registries/gstxmlregistry.c:
7294         removing the file doesn't seem to be a good idea on Linux
7295
7296 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7297
7298         * gst/registries/gstxmlregistry.c:
7299         Remove the registry before renaming the tempfile (needed for Windows)
7300
7301 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7302
7303         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7304         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7305         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7306         * gst/elements/gstmultifilesrc.h:
7307         Added newmedia property so it generates newmedia events between each
7308         file when property is set, as well as fixed eos handling
7309
7310 2004-07-22  David Schleef  <ds@schleef.org>
7311
7312         * gst/gststructure.c: (gst_structure_id_empty_new),
7313         (gst_structure_empty_new):  Set type field correctly.
7314         * gst/gststructure.h: Check type field correctly.
7315         * testsuite/caps/Makefile.am:
7316         * testsuite/caps/structure.c: (test1), (main): Add a very small
7317         test for structures.
7318
7319 2004-07-22  David Schleef  <ds@schleef.org>
7320
7321         * docs/random/ds/0.9-suggested-changes: more comments
7322         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7323
7324 2004-07-22  Benjamin Otte  <otte@gnome.org>
7325
7326         * gst/gstelementfactory.c: (gst_element_register):
7327           set the factory in the class struct, so gst_element_get_factory
7328           actually works
7329         * gst/parse/grammar.y:
7330           set element to playing when it gets unlocked as we can't rely on the
7331           bin state - all elements in the bin state might still be locked in
7332           NULL)
7333
7334 2004-07-22  Benjamin Otte  <otte@gnome.org>
7335
7336         * gst/gstelement.c: (gst_element_set_state_func):
7337           make this a static function
7338
7339 2004-07-22  Wim Taymans  <wim@fluendo.com>
7340
7341         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7342         (gst_opt_scheduler_pad_link):
7343         fix 147894-2 and the group_link problem.
7344
7345 2004-07-22  Wim Taymans  <wim@fluendo.com>
7346
7347         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7348         (handoff_identity), (main):
7349         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7350         (handoff_identity), (main):
7351         * testsuite/schedulers/Makefile.am:
7352         * testsuite/schedulers/group_link.c: (main):
7353         Show bug in scheduler when linking chain and loop based element 
7354         where the chain based element was not yet in a group.
7355
7356 2004-07-21  Benjamin Otte  <otte@gnome.org>
7357
7358         * gst/.cvsignore:
7359         * gst/autoplug/.cvsignore:
7360         * gst/elements/.cvsignore:
7361         * gst/indexers/.cvsignore:
7362         * libs/gst/bytestream/.cvsignore:
7363         * libs/gst/control/.cvsignore:
7364         * libs/gst/getbits/.cvsignore:
7365         * testsuite/states/.cvsignore:
7366         * testsuite/threads/.cvsignore:
7367           keep this up to date, since I seem to be the only one who cares
7368           about not missing files on commits (editor's note: no you don't,
7369           but feel free to change them at the time you add stuff instead
7370           of later on)
7371
7372 2004-07-21  Benjamin Otte  <otte@gnome.org>
7373
7374         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7375         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7376         (gst_bin_child_state_change_func), (set_kid_state_func),
7377         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7378           make state changes work correctly and reentrant (so removing
7379           elements from bins during state changes of bins doesn't cause
7380           segfaults or even wrong states)
7381           add debugging category and debugging output to print children states
7382         * gst/gstbin.c: (gst_bin_dispose): 
7383           add some assertion checks
7384         * gst/gstbin.h:
7385         * gst/gstbin.c: (gst_bin_sync_children_state):
7386           deprecate this function - it just does gst_bin_set_state (bin,
7387           GST_STATE (bin)) 
7388         * testsuite/threads/queue.c: (main):
7389           don't use gst_bin_sync_children_state anymore
7390         * testsuite/states/Makefile.am:
7391         * testsuite/states/bin.c:
7392           test that the state changes of bins work as expected
7393         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7394           some adjustments to change states correctly, too
7395         * gst/gstthread.c: (gst_thread_change_state):
7396           don't enable/disable "threadsafe" properties, they're unused and
7397           cause random segfaults
7398         * testsuite/threads/Makefile.am:
7399           the queue check randomly passes now, ignore it
7400
7401 2004-07-21  Benjamin Otte  <otte@gnome.org>
7402
7403         * gst/gstpad.c:
7404           check if data is NULL before outputting debug info. (fixes #145100)
7405
7406 2004-07-21  Benjamin Otte  <otte@gnome.org>
7407
7408         * gst/schedulers/entryscheduler.c:
7409         (gst_entry_scheduler_loop_wrapper),
7410         (gst_entry_scheduler_chain_wrapper),
7411         (gst_entry_scheduler_get_wrapper):
7412           reset the state when the cothread starts, so we don't get assertion
7413           failures on restarting of cothreads
7414
7415 2004-07-20  Benjamin Otte  <otte@gnome.org>
7416
7417         * gst/gstelement.c: (gst_element_link_pads_filtered):
7418           use correct sinkpad, if only sinkpad is specified, but not srcpad
7419           (fixes #147889)
7420         * gst/gstelement.c: (gst_element_set_state_func),
7421         (gst_element_change_state): ref/unref the element, signal handlers
7422         could get rid of the element otherwise
7423
7424 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7425
7426         * docs/random/ds/0.9-suggested-changes:
7427           Make note about renaming fixed-list to array.
7428         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7429         (_gst_value_initialize):
7430           Add array intersections.
7431         * testsuite/caps/intersect2.c: (main):
7432           Add test for array intersections.
7433
7434 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7435
7436         * configure.ac: back to cvs
7437
7438 === release 0.8.4 ===
7439
7440 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7441
7442         * configure.ac:
7443           releasing 0.8.4, "Paella"
7444           bump libtool versioning
7445
7446 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7447
7448         * po/LINGUAS:
7449         * po/ca.po:
7450           adding Catalan translation (Jordi Mallach)
7451
7452 2004-07-20  Wim Taymans  <wim@fluendo.com>
7453
7454         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7455         (handoff_identity), (main):
7456         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7457         (handoff_identity), (main):
7458         * testsuite/schedulers/Makefile.am:
7459         Added failing testcase for variant of #147894
7460
7461 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7462
7463         patch by: David Moore
7464
7465         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7466         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7467         (group_migrate_connected):
7468         * testsuite/schedulers/Makefile.am:
7469           fix for #142813 (Deadlock in optimal scheduler)
7470
7471 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7472
7473         patch by: Wim Taymans
7474
7475         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7476         (gst_opt_scheduler_schedule_run_queue),
7477         (gst_opt_scheduler_get_wrapper), (get_group),
7478         (group_migrate_connected):
7479         * testsuite/schedulers/Makefile.am:
7480           fix for #147819 (Add some checks in the opt scheduler)
7481
7482 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7483
7484         patch by: Benjamin Otte
7485
7486         * gst/gstelementfactory.c: (__gst_element_details_set):
7487           fix for #147929: running gst-register in non-utf8 locale can cause
7488           invalid registry
7489
7490 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7491
7492         patch by: Wim Taymans
7493
7494         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7495         (group_has_element), (element_get_reachables_func),
7496         (group_migrate_connected):
7497           fix for #147894 (opt scheduler decoupled elements mismanagement)
7498         * testsuite/schedulers/Makefile.am:
7499           testsuite app now passes
7500
7501 2004-07-19  Wim Taymans  <wim@fluendo.com>
7502
7503         * testsuite/schedulers/147819.c: (handoff_identity1),
7504         (handoff_identity2), (main):
7505         * testsuite/schedulers/Makefile.am:
7506         Added testcase for bug 147819
7507
7508 2004-07-19  Wim Taymans  <wim@fluendo.com>
7509
7510         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7511         (handoff_identity), (main):
7512         * testsuite/schedulers/Makefile.am:
7513         Added testcase for bug 147894
7514
7515 2004-07-16  Wim Taymans  <wim@fluendo.com>
7516
7517         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7518         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7519         * testsuite/schedulers/Makefile.am:
7520         Added testsuite for bug 142183 in its two incarnations. Refcount
7521         is not increased for scheduled elements and threadsafe properties
7522         mutexes are not properly unlocked.
7523
7524 2004-07-16  Wim Taymans  <wim@fluendo.com>
7525
7526         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7527         (create_chain), (destroy_chain), (create_group), (destroy_group),
7528         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7529         (group_dec_link), (gst_opt_scheduler_pad_link),
7530         (group_inc_links_for_element), (group_migrate_connected):
7531         Call group_inc_link with the proper src->sink ordering -- 
7532         break this, and we break sort_chain. patch from wingo for bug
7533         147713.
7534         Partially revert patch 1.89. When adding a loop based element to 
7535         the scheduler, the links to other groups are automatically followed
7536         and incremented. This should not happen because the bin will call
7537         pad_link explicitly for those connection, resulting in them counted 
7538         twice. Results in assertion failure on pipeline cleanup.
7539
7540 2004-07-16  Wim Taymans  <wim@fluendo.com>
7541
7542         * testsuite/schedulers/143777-2.c: (main):
7543         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7544         (main):
7545         * testsuite/schedulers/Makefile.am:
7546         Added cleanup code to testcase 143777-2.
7547         Added testcase to show bug 147713, does not really show the
7548         deadlock as I can't figure out how to trigger it, but it does
7549         demonstrate bad ordering in the scheduler.
7550
7551 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7552
7553         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7554           change strndup to g_strndup.  Fixes #147707
7555
7556 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7557
7558         * po/af.po:
7559         * po/az.po:
7560         * po/cs.po:
7561         * po/en_GB.po:
7562         * po/fr.po:
7563         * po/nl.po:
7564         * po/sr.po:
7565         * po/sv.po:
7566         * po/tr.po:
7567         * po/uk.po:
7568           updated translations
7569
7570 2004-07-16  Benjamin Otte  <otte@gnome.org>
7571
7572         * gst/gstvalue.c: (gst_greatest_common_divisor):
7573           use ints and return ints, fractions only use ints, too, so this
7574           avoids accidently casting multiplications to unsigned
7575         (gst_value_lcopy_fraction): it's ints, not uint32
7576         (gst_value_set_fraction): disallow minint, multiplying and negation
7577           are broken with it
7578         (gst_value_fraction_multiply): fix to make large numbers work and get
7579         rid of the assumption that the multiplication of two ints fits an
7580         int64 - dunno if that's true for all systems
7581         * testsuite/caps/Makefile.am:
7582         * testsuite/caps/fraction-multiply-and-zero.c:
7583         (check_multiplication), (check_equal), (zero_test), (main):
7584           add tests for all the stuff above
7585         * testsuite/caps/value_compare.c: (test1):
7586           fix comment
7587         * tests/.cvsignore:
7588         * testsuite/caps/.cvsignore:
7589         * testsuite/debug/.cvsignore:
7590         * testsuite/dlopen/.cvsignore:
7591         * testsuite/states/.cvsignore:
7592           get up to date
7593
7594 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7595
7596         * docs/manual/bins-api.xml:
7597         * docs/manual/factories.xml:
7598         * docs/manual/helloworld.xml:
7599         * docs/manual/links-api.xml: 
7600           fixes for out of date info, incorrect info and grammar
7601
7602 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7603
7604         * docs/manual/pads.xml:
7605         * docs/manual/pads-api.xml: grammar fix
7606
7607 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7608
7609         * docs/manual/pads-api.xml: typo + grammar fix
7610
7611 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7612
7613         * docs/gst/gstreamer-sections.txt:
7614           add new symbols
7615         * docs/gst/tmpl/gstelement.sgml:
7616         * docs/gst/tmpl/gstpad.sgml:
7617         * docs/gst/tmpl/gsttypes.sgml:
7618         * docs/gst/tmpl/gstvalue.sgml:
7619           update docs
7620         * gst/gststructure.c: (gst_structure_set_valist),
7621         (gst_structure_from_abbr), (gst_structure_to_abbr):
7622         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7623         (gst_greatest_common_divisor), (gst_value_init_fraction),
7624         (gst_value_copy_fraction), (gst_value_collect_fraction),
7625         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7626         (gst_value_get_fraction_numerator),
7627         (gst_value_get_fraction_denominator),
7628         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7629         (gst_value_deserialize_fraction),
7630         (gst_value_transform_fraction_string),
7631         (gst_value_transform_string_fraction),
7632         (gst_value_compare_fraction), (_gst_value_initialize):
7633         * gst/gstvalue.h:
7634           adding GstFraction GValue type, get/set, and multiply
7635         * testsuite/caps/Makefile.am:
7636         * testsuite/caps/fraction.c: (test), (main):
7637         * testsuite/caps/string-conversions.c: (main):
7638         * testsuite/caps/value_compare.c: (test1), (main):
7639           add regression tests for GstFraction
7640
7641 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7642         
7643         * docs/manual/init-api.xml: Grammar fix
7644
7645 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7646
7647         * docs/manual/states.xml: Fix inconsistent information
7648
7649 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7650
7651         * gst/gstelement.c: (gst_element_set_state):
7652         * gst/gstpad.c: (gst_pad_try_set_caps):
7653         * gst/gststructure.c:
7654         * gst/gstthread.c: (gst_thread_child_state_change):
7655         * gst/gstvalue.c: (gst_value_compare_double):
7656         * gst/gstvalue.h:
7657         * testsuite/parse/parse1.c: (main):
7658           debugging additions and style cleanups
7659
7660 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7661
7662         * docs/manual/states.xml: Grammar fix
7663
7664 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7665
7666         * docs/manual/pads.xml: Grammar fix
7667
7668 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7669
7670         * docs/manual/elements.xml: Fixed image reference
7671
7672 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7673
7674         * docs/manual/goals.xml: Grammar fix
7675
7676 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7677
7678         * docs/manual/motivation.xml:
7679         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7680
7681 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7682
7683         * docs/manual/motivation.xml: Fix spelling
7684
7685 2004-07-15  Benjamin Otte  <otte@gnome.org>
7686
7687         * gst/gstelement.h: 
7688           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7689           strings.
7690         * gst/gstelement.c (gst_element_class_init):
7691           GError's are boxed, not objects
7692         * gst/gstmarshal.list:
7693           update list for the fixed error signal
7694
7695 2004-07-14  Andy Wingo  <wingo@pobox.com>
7696
7697         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7698         there all along, but the function wasn't. (guile-gstreamer's build
7699         system uses the address of the function -- I wasn't actually
7700         trying to use this.)
7701
7702 2004-07-14  Andy Wingo  <wingo@pobox.com>
7703
7704         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7705         as gst_pad_proxy_pad_link) just link to every other pad when they
7706         are called. In the case where the graph has cycles, this will mean
7707         that a call to try_set_caps will recurse. Allow this recursion
7708         and return OK, while we wait for the first try_set_caps to give a
7709         proper return value.
7710         (gst_pad_link_call_link_functions): Since this function is the
7711         only one to set the NEGOTIATING flag on a pad, if the flag is set
7712         it means that the link functions have indirectly recursed. If this
7713         happens, error out to avoid infinite recursion and an eventual
7714         SEGV.
7715         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7716         (gst_pad_proxy_getcaps): Intersect the result with the template
7717         caps to ensure that the return value is valid.
7718
7719 2004-07-14  Andy Wingo  <wingo@pobox.com>
7720
7721         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7722         one refcount, the calling function is the owner of the buffer.
7723
7724 2004-07-14  Wim Taymans  <wim@fluendo.com>
7725
7726         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7727         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7728         Fix stupid warning when an element is to be migrated but
7729         is already migrated.
7730
7731 2004-07-14  Wim Taymans  <wim@fluendo.com>
7732
7733         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7734         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7735         Make sure that a single non-loop-based element does not 
7736         end up in a group. This fixes the testsuite again.
7737
7738 2004-07-14  Wim Taymans  <wim@fluendo.com>
7739
7740         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7741         (add_to_group), (merge_groups), (schedule_group),
7742         (gst_opt_scheduler_get_wrapper), (group_elements),
7743         (group_dec_link), (gst_opt_scheduler_pad_link),
7744         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7745         (gst_opt_scheduler_iterate):
7746         move isolated groups to a new chain.
7747         Emit a warning instead of segfaulting in some error cases.
7748         Fix a bug where the link count between groups was not calculated 
7749         correctly. Fixes #144510.
7750
7751 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7752         * gst/elements/gstfilesrc.c:
7753           Binary files support under Windows now OK
7754       
7755 2004-07-13  Benjamin Otte  <otte@gnome.org>
7756
7757           compatibility fixes for Solaris 8/gcc 2.95
7758         * configure.ac:
7759           include libintl libs in LDFLAGS
7760         * gstvalue.c (gst_value_deserialize_buffer):
7761           cast isxdigit stuff to int to silence compiler warning
7762
7763 2004-07-12  Benjamin Otte  <otte@gnome.org>
7764
7765         * gst/gsttypes.h:
7766           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7767           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7768           just causes support madness
7769         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7770           make it work without this
7771         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7772         (gst_file_index_commit):
7773           glib IO channels don't want binary mode
7774         * testsuite/bytestream/filepadsink.c: (main):
7775         * testsuite/bytestream/test1.c: (read_param_file):
7776           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7777
7778 2004-07-12  Benjamin Otte  <otte@gnome.org>
7779
7780         * gst/gstelement.c: (gst_element_class_init),
7781         (gst_element_set_state), (gst_element_set_state_func):
7782           virutalize gst_element_set_state, use set_state member in class
7783           struct that was already added in 0.7 for this.
7784         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7785         (gst_bin_change_state):
7786           make gst_bin_foreach works similar to other foreach functions, plug
7787           memleaks in it. Make functions using it work with the new approach.
7788           Document gst_bin_foreach, so it can be exported if we want to
7789         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7790           use virtualized set_state to make set_state on bins set the state of
7791           all its children.
7792
7793 2004-07-12  Benjamin Otte  <otte@gnome.org>
7794
7795         * configure.ac:
7796           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7797           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7798         * gst/gstpad.c: (gst_pad_alloc_buffer):
7799           allow buffer_alloc functions to return NULL and allocate a normal
7800           buffer in that case
7801
7802 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7803         * gst/elements/gstfilesink.c:
7804         * gst/elements/gstfilesrc.c:
7805         * gst/indexers/gstfileindex.c:
7806         * gst/gsttypes.h:
7807         * testsuite/bytestream/filepadsink.c:
7808         * testsuite/bytestream/test1.c:
7809           Handle binary files under Windows
7810
7811 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7812         * docs/manual/win32.xml:
7813         * win32/config.h:
7814         * win32/gst-register.vcproj:
7815         * win32/gstreamer.def:
7816           Update to another gettext public build
7817
7818 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7819         * gst/gstplugin.c:
7820           Fix an impossible C syntax
7821         * win32/config.h:
7822           Disable i18n under Windows for the moment
7823         * win32/gst-register.vcproj:
7824           Use this configuration
7825
7826 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7827         * docs/manual/quotes.xml:
7828           Keep the quotes file alive
7829         * docs/random/ds/0.9-suggested-changes:
7830           Add the suggestion of including a 'rowstride' as part of video
7831           format caps
7832
7833 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7834
7835         * gst/gstelement.c: (gst_element_set_state),
7836         (gst_element_change_state):
7837           d'oh.  Set PENDING state correctly before forcing bin to change.
7838         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7839         (gst_structure_parse_fixed_list):
7840         * gst/schedulers/gstoptimalscheduler.c:
7841         (gst_opt_scheduler_state_transition):
7842         * testsuite/states/parent.c: (main):
7843           remove comment now that it's fixed.
7844
7845 2004-07-11  Benjamin Otte  <otte@gnome.org>
7846
7847         * gst/gstclock.h:
7848           GST_SECOND shouldn't cause a conversion to unsigned.
7849         * testsuite/clock/.cvsignore:
7850         * testsuite/clock/Makefile.am:
7851         * testsuite/clock/signedness.c: (main):
7852           make sure it never will again
7853
7854 2004-07-11  Andy Wingo  <wingo@pobox.com>
7855
7856         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7857         whose state is higher than the bin state, raise the bin state to
7858         ensure that bin state := highest child state.
7859         
7860 2004-07-11  Andy Wingo  <wingo@pobox.com>
7861
7862         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7863         procedure on the children of a bin. Assumes that the procedure can
7864         change the set of children.
7865         (set_kid_state_func): New static function.
7866         (gst_bin_change_state): Use gst_bin_foreach to call
7867         set_kid_state_func. Fixes a bug: if a child had a state-change
7868         handler that removes it from the bin, there would be a segfault.
7869         Hopefully it should also work in the case where the state-change
7870         handler on one child adds or removes other children. In any case,
7871         fixes should go to gst_bin_foreach.
7872
7873 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7874
7875         * gst/gstelement.c: (gst_element_set_state):
7876           compatibility fix for latest plugins release.  Change loop back
7877           to while {}
7878
7879 2004-07-09  Wim Taymans  <wim@fluendo.com>
7880
7881         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7882         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7883         (gst_thread_main_loop):
7884         Since remove is virtual in GstBin we must not assume the 
7885         elements GList to have anothing useful.
7886         Add some more logging to GstThread and be a bit more paranoid
7887         when resetting the scheduler.
7888         Set the state of the bin to NULL before removing the children.
7889
7890 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7891
7892         * testsuite/threads/Makefile.am:
7893         * testsuite/threads/threadg.c:
7894           added test to check if problem when removing all elements from a
7895           GstThread before setting GstThread state to NULL
7896
7897 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7898
7899         * docs/gst/tmpl/gstelement.sgml:
7900         * docs/gst/tmpl/gsttypes.sgml:
7901         * gst/gstbin.c: (gst_bin_change_state):
7902         * gst/gstelement.c: (gst_element_set_state),
7903         (gst_element_change_state):
7904           rework so that for bins we try to set the state on all children
7905           as well even if the bin is in the correct state already.
7906           change while to do so at least one iteration is done.
7907           For regular elements, we fall back to the previous behaviour for
7908           now since we first need a new plugins release.
7909         * testsuite/states/parent.c: (main):
7910           test for this case
7911           Fixes #123774
7912
7913 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7914
7915         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7916         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7917         (gst_queue_release_locks), (gst_queue_change_state),
7918         (gst_queue_set_property):
7919           add proper lock debugging.  Change dispose to finalize, since
7920           we're freeing mutexes and other stuff which should happen only once.
7921
7922 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7923
7924         * docs/gst/tmpl/gstelement.sgml:
7925         * docs/gst/tmpl/gstplugin.sgml:
7926         * docs/gst/tmpl/gsttypes.sgml:
7927         * docs/pwg/building-state.xml:
7928         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7929         * gst/gstelement.c: (gst_element_change_state):
7930         * gst/gstthread.c: (gst_thread_change_state):
7931           catch wrong state changes in element base class.
7932
7933 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7934
7935         * gst/gstinfo.h:
7936           clean up layout a little.
7937
7938 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7939
7940         * configure.ac:
7941         * testsuite/Makefile.am:
7942         * testsuite/states/Makefile.am:
7943         * testsuite/states/parent.c: (main):
7944           re-enable states testsuite dir.  Add test for state changes and
7945           parent behaviour
7946
7947 2004-07-09  Wim Taymans  <wim@fluendo.com>
7948
7949         * gst/schedulers/gstoptimalscheduler.c:
7950         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7951         (element_get_reachables_func), (element_get_reachables),
7952         (debug_element), (rechain_group), (group_migrate_connected),
7953         (gst_opt_scheduler_pad_unlink):
7954         Do not try to migrate decoupled elements to a new group since
7955         they are not added to groups.
7956
7957 2004-07-08  Benjamin Otte  <otte@gnome.org>
7958
7959         * gst/gstelement.c: (gst_element_error_func):
7960           make reentrant (= allow removing elements in error handler)
7961
7962 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7963
7964         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7965         (gst_pad_send_event), (gst_pad_call_chain_function):
7966           events sent to elements below PAUSED cannot be handled, so
7967           don't try to
7968
7969 2004-07-08  Wim Taymans  <wim@fluendo.com>
7970
7971         * gst/schedulers/gstoptimalscheduler.c:
7972         (chain_recursively_migrate_group), (create_group),
7973         (schedule_group), (gst_opt_scheduler_pad_link),
7974         (group_elements_set_visited), (element_get_reachables_func),
7975         (element_get_reachables), (group_can_reach_group), (debug_element),
7976         (rechain_group), (group_migrate_connected),
7977         (gst_opt_scheduler_pad_unlink):
7978         * testsuite/schedulers/Makefile.am:
7979         Implemented group splitting and rechaining.
7980         Fixes 143777 and 143777-2 in the testsuite.
7981
7982 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7983
7984         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7985           extra debugging
7986         * gst/gstevent.h:
7987         * gst/gstinfo.c: (gst_debug_log_default):
7988           print time nicely.  add thread pointer until someone figures out
7989           a completely portable way of getting at thread id's.
7990         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7991         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7992         (gst_pad_call_chain_function):
7993           extra debugging
7994         * gst/schedulers/gstoptimalscheduler.c:
7995         (get_group_schedule_function), (loop_group_schedule_function),
7996         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7997         (pad_clear_queued), (gst_opt_scheduler_iterate):
7998           rename BUFPEN and friends to DATAPEN since that's what they are.
7999
8000 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8001
8002         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8003         * gst/gstbuffer.h:
8004         * gst/gstpad.c:
8005           cleanups and debugging
8006
8007 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8008
8009         * configure.ac:
8010         * gst/gstvalue.c: (gst_value_compare_enum),
8011         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8012         (gst_value_can_compare), (gst_value_compare):
8013         * testsuite/Makefile.am:
8014         * testsuite/enumcaps/Makefile.am:
8015         * testsuite/enumcaps/enumcaps.c:
8016           Fix enum serialization, deserialization, comparison in caps, add
8017           a test to ensure that this continues working in the future.
8018
8019 2004-07-06  David Schleef  <ds@schleef.org>
8020
8021         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8022         Fix memleak.
8023
8024 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8025
8026         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8027         * gst/gstplugin.h:
8028         * gst/registries/gstxmlregistry.c:
8029         (plugin_times_older_than_recurse), (plugin_times_older_than),
8030         (gst_xml_registry_parse_padtemplate):
8031           only rebuild registry when actual plugins have a newer time than
8032           the registry.  Fixes #145520
8033
8034 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8035
8036         * docs/manual/manual.xml:
8037         * docs/manual/win32.xml:
8038           add chapter on win32 building.  fixes #142422
8039
8040 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8041
8042         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8043
8044         * gst/autoplug/gstspider.c: (gst_spider_init),
8045         (gst_spider_dispose):
8046           fix spider memleaks.  fixes #137863
8047
8048 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8049
8050         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8051
8052         * gst/schedulers/gstoptimalscheduler.c:
8053         (gst_opt_scheduler_pad_unlink):
8054           fix SIGBUS error, fixes #145338
8055
8056 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8057
8058         * gst/gstobject.c: (gst_object_replace):
8059         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8060         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8061           clean up clock lifecycle.  Fixes #109831
8062
8063 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8064
8065         * po/LINGUAS:
8066         * po/cs.po:
8067           added Czech translation (Miloslav Trmac)
8068
8069 2004-07-04  David Schleef  <ds@schleef.org>
8070
8071         * tools/Makefile.am:
8072         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8073
8074 2004-07-04  David Schleef  <ds@schleef.org>
8075
8076         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8077
8078 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8079
8080         * gst/gstbin.c: (gst_bin_restore_thyself):
8081           chain to parent restore so the bins get restored correctly
8082           in the editor
8083
8084 2004-07-03  David Schleef  <ds@schleef.org>
8085
8086         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8087         Actually do something in these functions, like before the big
8088         caps change.  (bug #145137)
8089
8090 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8091
8092         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8093         (gst_element_get_compatible_pad_filtered):
8094         * gst/gstthread.c: (gst_thread_main_loop):
8095           more debugging
8096
8097 2004-07-02  David Schleef  <ds@schleef.org>
8098
8099         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8100         * gst/gstobject.h:
8101         * gst/gstparse.h:
8102         * gst/gsttrace.h:
8103         * gst/gstxml.h:
8104
8105 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8106
8107         * gst/gstpad.c: (gst_pad_check_schedulers),
8108         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8109         (gst_pad_link_prepare):
8110           revert until testsuite is fixed
8111
8112 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8113
8114         * testsuite/Makefile.am:
8115         * testsuite/caps/filtercaps.c: (main):
8116         * testsuite/clock/clock1.c: (main):
8117         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8118           fix some more tests
8119
8120 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8121
8122         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8123         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8124         * testsuite/cleanup/cleanup4.c: (main):
8125           fix testsuite
8126
8127 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8128
8129         * libs/gst/control/control.c:
8130         * libs/gst/control/dparam.c:
8131         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8132         * libs/gst/control/dparammanager.c:
8133         * libs/gst/control/dparammanager.h:
8134         * testsuite/dynparams/Makefile.am:
8135         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8136         (gst_dptest_change_state), (gst_dptest_chain), (main):
8137           fix testcase for dparams
8138           add debugging category
8139
8140 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8141
8142         * testsuite/Rules:
8143           change path
8144
8145 2004-07-02  Benjamin Otte  <otte@gnome.org>
8146
8147         * tests/.cvsignore:
8148         * tests/Makefile.am:
8149         * tests/mass_elements.c: (gst_get_current_time), (main):
8150           add simple benchmark to test various speeds of fakesrc ! identity !
8151           identity ! ... ! fakesink.
8152           Usage: mass_elements [num_identities] [num_buffers]
8153           If not specified they default to 1000.
8154
8155 2004-07-02  Benjamin Otte  <otte@gnome.org>
8156
8157         * gst/gstpad.c: (gst_pad_check_schedulers),
8158         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8159         (gst_pad_link_prepare):
8160           check that pads that get linked belong to the same manager. The old
8161           code allowed linking elements before putting them into bins, so it
8162           worked to link them and then put them in different threads, which
8163           lead to weird behaviour.
8164           Since this effectively disallows linking elements before putting
8165           them in a bin, some applications might not work after this and error
8166           out. If these applications are too critical, we might need to revert
8167           that patch. Please test this before the next release...
8168
8169 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8170
8171         * gst/gstpad.c: (gst_pad_get_caps):
8172           throw an error if the getcaps function does not return a subset of
8173           the template caps.
8174         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8175           make disconts without position info an error in debugging
8176         * tests/spidey_bench.c: (handoff), (main):
8177           don't count first try when averaging
8178
8179 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8180
8181         * gst/gstplugin.c: (gst_plugin_load_file):
8182           figure out problem with dynamic test
8183
8184 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8185
8186         * docs/gst/Makefile.am:
8187           fix docs build
8188
8189 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8190
8191         * po/POTFILES.in:
8192         * po/af.po:
8193         * po/az.po:
8194         * po/en_GB.po:
8195         * po/fr.po:
8196         * po/nl.po:
8197         * po/sr.po:
8198         * po/sv.po:
8199         * po/tr.po:
8200         * po/uk.po:
8201         * tools/gst-register.c: (plugin_added_func), (main):
8202           i18n-ize -register, fix plural
8203
8204 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8205
8206         * gst/elements/gstidentity.c: (gst_identity_class_init),
8207         (gst_identity_init), (gst_identity_chain),
8208         (gst_identity_set_property), (gst_identity_get_property):
8209         * gst/elements/gstidentity.h:
8210           check for perfect stream
8211
8212 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8213
8214         * gst/elements/gstidentity.c: (gst_identity_chain):
8215           print offset_end
8216
8217 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8218
8219         * docs/gst/Makefile.am:
8220         * docs/gst/gstreamer-docs.sgml:
8221           doc fixes
8222
8223 2004-06-24  David Schleef  <ds@schleef.org>
8224
8225         * autogen.sh:  Remove call to env, since the buildbot isn't
8226         broken anymore.
8227
8228 2004-06-24  Wim Taymans  <wim@fluendo.com>
8229
8230         * gst/elements/Makefile.am:
8231         * gst/elements/gstelements.c:
8232         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8233         (gst_multifdsink_class_init), (gst_multifdsink_init),
8234         (gst_multifdsink_add), (gst_multifdsink_remove),
8235         (gst_multifdsink_clear), (gst_multifdsink_chain),
8236         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8237         * gst/elements/gstmultifdsink.h:
8238         Added an element that writes to multiple filedescriptors at once.
8239
8240 2004-06-24  Benjamin Otte  <otte@gnome.org>
8241
8242         * gst/parse/grammar.y:
8243           don't try to link elements before they have been added to bins
8244
8245 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8246
8247         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8248         (gst_file_pad_get_length):
8249         * libs/gst/bytestream/filepad.h:
8250           add 2 new functions
8251
8252 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8253
8254         * docs/gst/gstreamer-sections.txt:
8255         remove from docs, the define that Benjamin removed from gstelement.h
8256
8257 2004-06-22  Benjamin Otte  <otte@gnome.org>
8258
8259         * gst/gstelement.h:
8260           remove define that referenced a nonexisting GstElement struct member
8261
8262 2004-06-20  Benjamin Otte  <otte@gnome.org>
8263
8264         * gst/gstdata.c: (gst_data_is_writable):
8265           whoops, return values were wrong, so writable data was marked as
8266           non-writable and vice versa. (fixes #143953, spotted by Francis
8267           Labonte)
8268           Shows how rarely we need to copy data ;)
8269
8270 2004-06-20  Benjamin Otte  <otte@gnome.org>
8271
8272         * testsuite/schedulers/.cvsignore:
8273         * testsuite/schedulers/Makefile.am:
8274         * testsuite/schedulers/143777-2.c: (main):
8275           add test for opt breakage in bug #143777
8276
8277 2004-06-20  Benjamin Otte  <otte@gnome.org>
8278
8279         * gst/gstpad.c: (gst_pad_call_chain_function):
8280           check for if we were unlinked while inside the chainfunction (fixes
8281           entrygthread having issues with #143777)
8282         * testsuite/schedulers/143777.c: (main):
8283         * testsuite/schedulers/Makefile.am:
8284           add a test for that fix
8285
8286 2004-06-20  Benjamin Otte  <otte@gnome.org>
8287
8288         * gst/gstvalue.c: (gst_value_set_int_range):
8289           test that start is smaller then end
8290         * libs/gst/bytestream/Makefile.am:
8291         * libs/gst/bytestream/filepad.c: 
8292         * libs/gst/bytestream/filepad.h:
8293           add GstFilePad - a pad that behaves like a FILE*
8294         * testsuite/bytestream/.cvsignore:
8295         * testsuite/bytestream/Makefile.am:
8296         * testsuite/bytestream/filepadsink.c: 
8297           test for the GstFilePad
8298
8299 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8300
8301         * gst/elements/gstidentity.c: (gst_identity_class_init),
8302         (gst_identity_init), (gst_identity_set_clock),
8303         (gst_identity_chain), (gst_identity_set_property),
8304         (gst_identity_get_property):
8305         * gst/elements/gstidentity.h:
8306         * gst/gstclock.c: (gst_clock_id_wait):
8307           add a "sync" property to sync to the clock
8308
8309 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8310
8311         * gst/gstelementfactory.c: (gst_element_factory_create):
8312           make the freakin "elementfactory bla has no type" message more
8313           useful. So we actually can do something when someone shows up
8314           complaining about it.
8315
8316 2004-06-15  Johan Dahlin  <johan@gnome.org>
8317
8318         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8319         found. This matches the old behavior better. Thanks to Thomas for
8320         pointing out.
8321
8322 2004-06-14  David Schleef  <ds@schleef.org>
8323
8324         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8325         -fomit-frame-pointer.  Appears to generate correct code in
8326         other cases as well.
8327
8328 2004-06-14  Johan Dahlin  <johan@gnome.org>
8329
8330         * tools/gst-inspect.c (main): Add two new command line options: -a
8331         to print all elements and -n to print the name on each line. Also
8332         fix some error reporting.
8333         (main): Simplify, remove -n and always print names if -a is specified
8334
8335 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8336
8337         * win32/gstconfig.h:
8338         * win32/GSTreamer.vcproj:
8339         * win32/Makefile:
8340         * gst/gstconfig.h.in:
8341         * gst/gst.h:
8342         * gst/gstbin.h:
8343         * gst/gstelement.h:
8344         * gst/gstevent.h:
8345         * gst/gstobject.h:
8346         * gst/gstpad.h:
8347         * docs/gst/gstreamer-sections.txt:
8348         * docs/gst/tmpl/gstconfig.sgml:
8349           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8350
8351 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8352         * docs/gst/gstreamer-sections.txt:
8353         * docs/gst/tmpl/gstconfig.sgml:
8354         Add the GSTREAMER_EXPORT macro to the docs
8355
8356 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8357
8358         * tools/gst-compprep.c: (handle_xmlerror), (main):
8359         Add a check for the version that introduced SetStructuredError to fix
8360         the build on FC1
8361
8362 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8363
8364         * win32/msvc71.sln:
8365         * win32/testsuite/:
8366           prepare to compile the testsuite with MSVC
8367
8368 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8369
8370         * docs/manual/win32.xml:
8371           attempt to transform the Win32 README into an XML doc
8372
8373 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8374
8375         * gst/gst.c:
8376         * gst/gstbin.*:
8377         * gst/config.h.in:
8378         * gst/gstelement.*:
8379         * gst/gstevent.h:
8380         * gst/gstobject.*:
8381         * gst/gstpad.h:
8382         * tools/gst-register.c:
8383         * win32/gstreamer.def:
8384           extern symbols are now exported for the Windows DLL
8385
8386 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8387
8388         * gst/gstinfo.h:
8389           fix a problem to enable/disable DEBUG under MSVC
8390
8391 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8392
8393         * win32/:
8394           enable more debug code in DEBUG build
8395
8396 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8397
8398         * win32/config.h:
8399         * gst/gst-i18n-app.h:
8400           enable NLS under Windows
8401
8402 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8403         * tools/gst-compprep.c: (handle_xmlerror), (main):
8404           Make an error that baffled me a bit clearer
8405
8406 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8407
8408         * gst/gstqueue.c:
8409           don't use g_queue_get_length () because it's 2.4, use ->length
8410
8411 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8412
8413         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8414
8415         * tools/gst-inspect.c: (print_signal_info):
8416           don't free random data twice. (fixes #144185)
8417
8418 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8419
8420         * gst/gstqueue.c:
8421         * gst/gstqueue.h:
8422           fix removing from the wrong queue on event timeout
8423           fix disposing of the event queue by casting correctly
8424           add mutexes for handling the event queue
8425           someone was sleeping when fixing queue last time around :)
8426
8427 2004-06-10  Johan Dahlin  <johan@gnome.org>
8428
8429         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8430         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8431
8432 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8433
8434         * docs/random/gdp:
8435         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8436         * libs/gst/dataprotocol/dataprotocol.c:
8437         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8438         (gst_dp_buffer_from_header):
8439         * libs/gst/dataprotocol/dataprotocol.h:
8440         * libs/gst/dataprotocol/dp-private.h:
8441           rev version to 0.1, add buffer flags and copy them
8442
8443 2004-06-09  Johan Dahlin  <johan@gnome.org>
8444
8445         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8446         the flags from the buffer we're copying.
8447
8448 2004-06-09  Wim Taymans  <wim@fluendo.com>
8449
8450         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8451         * gst/elements/gstidentity.c: (gst_identity_init),
8452         (gst_identity_chain):
8453         Print more buffer info in fakesink.
8454         Make identity output similar to fakesink.
8455
8456 2004-06-07  Daniel Gazard  <dany42@free.fr>
8457
8458         reviewed by Benjamin Otte  <otte@gnome.org>
8459
8460         * configure.ac:
8461           fix cross compiling not working. (fixes #143741)
8462
8463 2004-06-07  Benjamin Otte  <otte@gnome.org>
8464
8465         * gst/gstelement.c: (gst_element_set_time_delay):
8466           add failure check
8467         * gst/gstinfo.h:
8468           put brackets around macro arguments of GST_TIME_ARGS, add note to
8469           move it to correct header in 0.9
8470
8471 2004-06-07  Benjamin Otte  <otte@gnome.org>
8472
8473         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8474         (gst_file_index_load), (_file_index_id_save_entries),
8475         (gst_file_index_commit), (gst_file_index_add_association),
8476         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8477         (gst_file_index_plugin_init):
8478           make debugging use a default category
8479
8480 2004-06-06  David Moore  <dcm@acm.org>
8481
8482         reviewed by Benjamin Otte  <otte@gnome.org>
8483
8484         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8485         (gst_fdsrc_change_state):
8486           reset offset counter when going READY => PAUSED. (fixes #142903)
8487
8488 2004-06-06  ed@catmur.co.uk
8489
8490         reviewed by Benjamin Otte  <otte@gnome.org>
8491
8492         * gst/registries/gstxmlregistry.c:
8493         (gst_xml_registry_rebuild_recurse):
8494           don't rely on g_dir_open to figure out if a file is a directory, use
8495           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8496           directories. (fixes #142850)
8497
8498 2004-06-06  Benjamin Otte  <otte@gnome.org>
8499
8500         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8501           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8502         * libs/gst/bytestream/adapter.c:
8503         * libs/gst/bytestream/adapter.h:
8504           fix copyright in header and typo in debugging category name
8505
8506 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8507
8508         * configure.ac:
8509           bump nano to cvs
8510
8511 === release 0.8.3 ===
8512
8513 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8514
8515         * configure.ac:
8516           update libtool versioning
8517           do a new release
8518         * docs/gst/tmpl/gstelement.sgml:
8519         * docs/gst/tmpl/gsttypes.sgml:
8520         * gst/gstinfo.c: (_gst_debug_init):
8521           put back GST_CAT_DATAFLOW to fix API breakage
8522
8523 2004-06-04  David Schleef  <ds@schleef.org>
8524
8525         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8526
8527 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8528
8529         * configure.ac:
8530           bump nano to cvs
8531
8532 === release 0.8.2 ===
8533
8534 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8535
8536         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8537           check GST_DEBUG environment variable which is parsed the same way
8538           as --gst-debug=
8539
8540 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8541
8542         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8543                             gstmd5sink.c gstshaper.c gsttee.c
8544                             gsttypefindelement.c
8545         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8546
8547           - removing trailing commas at end of enums
8548             it is correct C99 code but C90 compilers would complain
8549             (AIX, Forte, ...)
8550             ('should' fix #143290, at least partially)
8551
8552 2004-05-27  Wim Taymans  <wim@fluendo.com>
8553
8554         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8555         (chain_group_set_enabled), (create_group), (add_to_group),
8556         (merge_groups), (setup_group_scheduler), (group_elements),
8557         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8558         Don't try to follow the pad connections with other groups
8559         when a loop based element is added to the scheduler because
8560         the bin will inform the scheduler about the pad links a little
8561         later.
8562
8563 2004-05-27  Wim Taymans  <wim@fluendo.com>
8564
8565         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8566         (remove_from_chain), (chain_group_set_enabled),
8567         (setup_group_scheduler), (group_element_set_enabled),
8568         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8569         (gst_opt_scheduler_show):
8570         Elements without a group can do a state change as well, just wait
8571         with the setup of the scheduling function when it is added to a
8572         chain.
8573
8574 2004-05-27  Wim Taymans  <wim@fluendo.com>
8575
8576         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8577         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8578         (merge_groups), (setup_group_scheduler),
8579         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8580         (gst_opt_scheduler_show):
8581         Fixes to maintain internal consistency of the scheduler data
8582         structures. 
8583          - adding an enabled group to a chain should increment the
8584            number of enabled elements in that chain.
8585          - removing an enabled group from a chain could disable the
8586            chain.
8587          - removing a disabled group from a chain could enable the
8588            chain.
8589          - add g_assert when internal inconsistency is detected.
8590          - adding an element to a group could increase the number of
8591            links this group has with other groups.
8592          - merging two groups also merges the chains.
8593          - also show group links in the _show method.
8594            
8595
8596 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8597
8598         * gst/gstcaps.c: (gst_caps_structure_simplify):
8599           don't print error messages when there is no error
8600         * gst/gstvalue.c: (gst_value_compare_int_range):
8601           compare the second value, too
8602         * testsuite/caps/Makefile.am:
8603         * testsuite/caps/random.c: (assert_on_error), (main):
8604           add tests to make sure the two things above are checked for
8605
8606 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8607
8608         * configure.ac:
8609         * libs/gst/dataprotocol/Makefile.am:
8610         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8611         * libs/gst/dataprotocol/dataprotocol.h:
8612           wrap header in GST_ENABLE_NEW.  make code use it
8613
8614 2004-05-23  Johan Dahlin  <johan@gnome.org>
8615
8616         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8617         so verbose and print GstElement signal names all the time.
8618
8619 2004-05-22  David Schleef  <ds@schleef.org>
8620
8621         * gst/registries/gstxmlregistry.c:
8622         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8623         (bug #142957)
8624
8625 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8626
8627         * configure.ac:
8628           scrub cflags for glib2 so gcc doesn't complain when glib is in
8629           /usr/local
8630
8631 2004-05-21  Johan Dahlin  <johan@gnome.org>
8632
8633         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8634         __GNUC__, patch from Brian Cameron, fixes bug #142804
8635
8636 2004-05-20  David Schleef  <ds@schleef.org>
8637
8638         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8639         comparison code.  (bug #142819)
8640
8641 2004-05-20  Wim Taymans  <wim@fluendo.com>
8642
8643         * gst/gstbuffer.c: (gst_buffer_default_copy):
8644         * gst/gstbuffer.h:
8645         Added Comment to a flag.
8646         copy relevant flags in _buffer_copy.
8647
8648 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8649
8650         reviewed by: Wim Taymans <wim at fluendo dot com>
8651
8652         * gst/gstbuffer.h:
8653           add GST_BUFFER_IN_CAPS buffer flag
8654         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8655         (gst_structure_parse_any_list), (gst_structure_parse_list),
8656         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8657         * gst/gstvalue.c: (gst_value_serialize_any_list),
8658         (gst_value_transform_any_list_string),
8659         (gst_value_list_prepend_value), (gst_value_list_append_value),
8660         (gst_value_list_get_size), (gst_value_list_get_value),
8661         (gst_value_transform_list_string),
8662         (gst_value_transform_fixed_list_string),
8663         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8664         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8665         (_gst_value_initialize):
8666         * gst/gstvalue.h:
8667           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8668           < , > as a format.
8669         * testsuite/caps/string-conversions.c: (main):
8670           add regression tests for < >
8671
8672 2004-05-20  Johan Dahlin  <johan@gnome.org>
8673
8674         * docs/gst/Makefile.am (all-local): Re-add
8675
8676 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8677
8678         * docs/gst/Makefile.am:
8679         * docs/gst/gstreamer-docs.sgml:
8680         * docs/libs/Makefile.am:
8681         * docs/libs/gstreamer-libs-docs.sgml:
8682           fix distcheck issues
8683
8684 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8685
8686         * libs/gst/dataprotocol/Makefile.am:
8687           add to autotest
8688
8689 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8690
8691         * libs/gst/dataprotocol/Makefile.am:
8692         * libs/gst/dataprotocol/dataprotocol.c:
8693         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8694         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8695         * libs/gst/dataprotocol/dp-private.h:
8696           use GST macros to read/write fixed length ints
8697           add some more asserts
8698
8699 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8700
8701         * docs/libs/gstreamer-libs-docs.sgml:
8702         * docs/libs/gstreamer-libs-sections.txt:
8703           remove idct and putbits
8704         * configure.ac:
8705         * docs/libs/tmpl/gstdataprotocol.sgml:
8706         * libs/gst/Makefile.am:
8707         * libs/gst/dataprotocol/Makefile.am:
8708         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8709         (buffer_test), (caps_test), (event_test), (main):
8710         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8711         (gst_dp_dump_byte_array), (gst_dp_init),
8712         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8713         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8714         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8715         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8716         (gst_dp_validate_header), (gst_dp_validate_payload),
8717         (gst_dp_validate_packet), (plugin_init):
8718         * libs/gst/dataprotocol/dataprotocol.h:
8719         * libs/gst/dataprotocol/dp-private.h:
8720           add dataprotocol
8721
8722 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8723
8724         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8725           fix int variable deserialization and add a helper so we can actually
8726           debug this.
8727
8728 2004-05-18  David Schleef  <ds@schleef.org>
8729
8730         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8731           argv[0].  Calling yourself is probably not the best way to
8732           construct a test like this, btw.
8733
8734 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8735
8736         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8737           don't claim to be more intelligent than a scheduler when the
8738           scheduler claims the pipeline is stopped
8739         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8740         (safe_cothread_destroy),
8741         (gst_entry_scheduler_remove_all_cothreads),
8742         (gst_entry_scheduler_reset), (_remove_cothread),
8743         (gst_entry_scheduler_state_transition):
8744           hold off cothread destruction if we're not in main cothread
8745         * configure.ac:
8746         * testsuite/Makefile.am:
8747           add new test dir
8748         * testsuite/schedulers/.cvsignore:
8749         * testsuite/schedulers/Makefile.am:
8750           add tests
8751         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8752           check relinking and adding/removing elements from a running pipeline
8753         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8754           check unlinking in a running pipeline
8755         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8756           check unreffing a running pipeline
8757         * testsuite/schedulers/useless_iteration.c: (main):
8758           check iterating a pipeline that contains running threads works
8759
8760 2004-05-18  David Schleef  <ds@schleef.org>
8761
8762         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8763           is false.
8764
8765 2004-05-18  Wim Taymans  <wim@fluendo.com>
8766
8767         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8768         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8769         Fixed an error introduced with patch for 1.63. When setting
8770         a get based element as the entry point in a group, make sure
8771         to mark the group as GET based.
8772
8773 2004-05-18  Wim Taymans  <wim@fluendo.com>
8774
8775         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8776         (setup_group_scheduler), (loop_group_schedule_function),
8777         (gst_opt_scheduler_pad_link):
8778         Added some more debug info and fixed a bug where the group
8779         type was set to LOOP but it was in fact unknown.
8780
8781 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8782
8783         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8784           make resetting scheduler work twice in a row
8785
8786 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8787
8788         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8789         (CREATE_USERIALIZATION), (_gst_value_initialize),
8790         (gst_value_compare_float), (gst_value_serialize_float),
8791         (gst_value_deserialize_float), (gst_value_compare_enum),
8792         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8793           add serialization and comparison functions for long, int64, enum and
8794           float values
8795         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8796           use best serialization function in type hierarchy instead of only a
8797           matching one. This is required for enums to work.
8798         * gst/parse/grammar.y:
8799           use gst_caps_deserialize
8800         * testsuite/parse/Makefile.am:
8801           parse1 now works
8802         * testsuite/parse/parse1.c: (main):
8803           remove aggregator check, aggregator is broken, this test works now
8804           but fails because of bug #138012
8805         * testsuite/parse/parse2.c: (main):
8806           s/xvideosink/xvimagesink - this test looks a lot like we should
8807           disable it
8808
8809 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8810
8811         * gst/gstelement.c: (gst_element_class_init):
8812           whoops, store the signal id correctly
8813         * gst/schedulers/gstbasicscheduler.c:
8814         (gst_basic_scheduler_chain_wrapper):
8815           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8816           chain function isn't linked
8817
8818 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8819         * configure.ac:
8820         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8821         support until we decide where the flags should be used
8822         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8823         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8824         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8825         Output refused caps in the debug info
8826
8827 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8828
8829         * gst/elements/gstidentity.c: (gst_identity_chain):
8830           add duration debug
8831         * gst/gstinfo.c: (gst_debug_log_default):
8832           add timestamp
8833
8834 2004-05-13  Benjamin Otte  <otte@gnome.org>
8835
8836         * gst/gstpipeline.c: (gst_pipeline_dispose),
8837         (gst_pipeline_change_state):
8838           call gst_scheduler_reset on dispose (fixes #141416)
8839
8840 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8841
8842         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8843           compute mapsize correctly
8844         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8845           use correct datatypes when calling a varargs function
8846         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8847           push a DISCONT event as first thing
8848         * gst/gst_private.h:
8849         * gst/gstinfo.c: (_gst_debug_init):
8850           remove GST_DATAFLOW debugging category
8851         * gst/gstbin.c: (gst_bin_iterate):
8852           use GST_SCHEDULING category
8853         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8854         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8855         (gst_pad_call_get_function):
8856           add GST_DATAFLOW to easily track flow of buffers or events.
8857         * gst/gstqueue.c: (gst_queue_get_type),
8858         (gst_queue_handle_pending_events), (gst_queue_chain),
8859         (gst_queue_get), (gst_queue_handle_src_event):
8860           use own static debugging category GST_DATAFLOW for dataflow,
8861           use DEBUG category for showing which path events go, use LOG
8862           category for buffers.
8863
8864 2004-05-10  David Schleef  <ds@schleef.org>
8865
8866         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8867
8868 2004-05-10  David Schleef  <ds@schleef.org>
8869
8870         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8871         symbols, because otherwise we don't know what they are.  Thanks,
8872         the GStreamer team.
8873         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8874
8875 2004-05-10  David Schleef  <ds@schleef.org>
8876
8877         (from Steve Lhomme)
8878         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8879         are deleted.  Fix.
8880         * win32/Makefile.inspect:
8881         * win32/Makefile.launch:
8882         * win32/Makefile.register:
8883
8884 2004-05-10  David Schleef  <ds@schleef.org>
8885
8886         * gst/gstinfo.h: Add missing inline function.
8887         * gst/gsttrace.c: add include
8888         * gst/parse/grammar.y: remove unused code
8889         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8890         more portable.
8891         * tools/gst-register.c: wrap unistd.h
8892         
8893         More additions/fixes from Steve for the MSVC build.
8894         * win32/GStreamer.vcproj:
8895         * win32/Makefile:
8896         * win32/Makefile.inspect:
8897         * win32/Makefile.launch:
8898         * win32/Makefile.register:
8899         * win32/README.txt:
8900         * win32/gst-inspect.vcproj:
8901         * win32/gst-launch.vcproj:
8902         * win32/gst-register.vcproj:
8903         * win32/gstbytestream.def:
8904         * win32/gstbytestream.vcproj:
8905         * win32/gstconfig.h:
8906         * win32/gstelements.def:
8907         * win32/gstelements.vcproj:
8908         * win32/gstenumtypes.c:
8909         * win32/gstenumtypes.h:
8910         * win32/gstoptimalscheduler.def:
8911         * win32/gstoptimalscheduler.vcproj:
8912         * win32/gstreamer.def:
8913         * win32/gstspider.def:
8914         * win32/gstspider.vcproj:
8915         * win32/gstversion.h:
8916         * win32/msvc71.sln:
8917
8918 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8919
8920         * gst/gstelement.c: (gst_element_class_init),
8921         (gst_element_no_more_pads):
8922         * gst/gstelement.h:
8923           add gst_element_no_more_pads and the "no-more-pads" signal
8924
8925 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8926
8927         * gst/gstregistry.c: (gst_registry_add_plugin):
8928           refuse to add plugins when a plugin with same name is already
8929           registered. Fixes a bunch of "How to remove plugins?" issues.
8930           May lead to other problems though, let's test
8931
8932 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8933
8934         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8935         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8936         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8937
8938 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8939
8940         * tests/Makefile.am: fix am16 issue
8941
8942 2004-05-09  Benjamin Otte  <otte@gnome.org>
8943
8944         * libs/gst/bytestream/Makefile.am:
8945           we should indeed add .c files to makefiles or they won't be built
8946           (d'oh)
8947
8948 2004-05-08  Benjamin Otte  <otte@gnome.org>
8949
8950         * gst/gstpad.c: (gst_pad_proxy_fixate):
8951           really reduce the set of caps
8952
8953 2004-05-08  Benjamin Otte  <otte@gnome.org>
8954
8955         * tests/Makefile.am:
8956         * tests/spidey_bench.c: (handoff), (main):
8957           add benchmark to test how long spider needs to create a pipeline
8958
8959 2004-05-08  Benjamin Otte  <otte@gnome.org>
8960
8961         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8962           mark links as unengaged when unnegotiating instead of deactivating.
8963           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8964
8965 2004-05-08  Benjamin Otte  <otte@gnome.org>
8966
8967         * docs/manual/helloworld.xml:
8968           s/audiosink/osssink (patch by Patrick Guimond)
8969
8970 2004-05-07  David Schleef  <ds@schleef.org>
8971
8972         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8973         since it contains important stuff.
8974
8975 2004-05-07  David Schleef  <ds@schleef.org>
8976
8977         * testsuite/caps/caps.c: (test3), (main): A check for appending
8978         ANY caps.
8979
8980 2004-05-07  David Schleef  <ds@schleef.org>
8981
8982         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8983         which may contain commas.  Fixes detection of -Wa,-mregnames
8984
8985 2004-05-06  David Schleef  <ds@schleef.org>
8986
8987         Changes to handle compilers that don't have variadic macro
8988         support.  In particular, glib headers define some inlines
8989         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8990         builds.
8991         * gst/Makefile.am:
8992         * gst/cothreads.c:
8993         * gst/elements/gstfdsink.c:
8994         * gst/elements/gstfdsrc.c:
8995         * gst/elements/gstfilesink.c:
8996         * gst/elements/gstfilesrc.c:
8997         * gst/gst_private.h:
8998         * gst/gstatomic.c:
8999         * gst/gstcaps.c: (gst_caps_append):
9000         * gst/gstcpu.c: (gst_cpuid_i386):
9001         * gst/gstelement.c:
9002         * gst/gsterror.c:
9003         * gst/gstfilter.c:
9004         * gst/gstinfo.h:
9005         * gst/gstprobe.c:
9006         * gst/gstquery.c:
9007         * gst/gstregistry.c:
9008         * gst/gststructure.c:
9009         * gst/gsttaginterface.c:
9010         * gst/gsttrace.c: (gst_trace_new):
9011         * gst/gsttrashstack.c:
9012         * gst/gsturi.c:
9013         * gst/gstvalue.c:
9014         * gst/parse/grammar.y:
9015         * gst/parse/parse.l:
9016         * tools/gst-inspect.c: (main):
9017         * tools/gst-launch.c: (main):
9018         * tools/gst-xmlinspect.c: (PUT_STRING):
9019
9020 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9021
9022         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9023         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9024         * gst/elements/gstfilesrc.h:
9025           send NEW_MEDIA events correctly
9026         * gst/elements/gsttypefindelement.c: (start_typefinding),
9027         (gst_type_find_element_handle_event):
9028           restart typefinding when we get a NEW_MEDIA event
9029         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9030         (gst_bin_dispose):
9031           don't die when someone removes elements in callbacks
9032         * gst/gstelement.c: (gst_element_change_state):
9033           improve debugging
9034         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9035           we need a NEW_MEDIA event to engage a link
9036         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9037           don't g_print debugging stuff
9038         * testsuite/caps/simplify.c: (check_caps):
9039
9040 2004-05-04  Benjamin Otte  <otte@gnome.org>
9041
9042         * gst/parse/grammar.y:
9043           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9044
9045 2004-05-04  Benjamin Otte  <otte@gnome.org>
9046
9047         * testsuite/caps/renegotiate.c: (main):
9048           improve output in error case
9049
9050 2004-05-04  Benjamin Otte  <otte@gnome.org>
9051
9052         * gst/parse/grammar.y:
9053           fix assert to not trigger when there's no error argument
9054         * gst/parse/parse.l:
9055           fix definition of caps to allow more than two structures
9056         * testsuite/caps/Makefile.am:
9057         * testsuite/caps/renegotiate.c: (main):
9058           it's sinesrc and works in that case
9059
9060 2004-05-04  Wim Taymans  <wim@fluendo.com>
9061
9062         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9063         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9064         when removing an element from a group, we always need to
9065         decrement the link count that this group had with other 
9066         groups through the element.
9067         added an extra assert to catch inconsistencies when decrementing
9068         the link count.
9069
9070 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9071
9072         * configure.ac:
9073         * docs/gst/Makefile.am:
9074         * docs/gst/gstreamer-sections.txt:
9075         * docs/gst/tmpl/gstcompat.sgml:
9076         * examples/appreader/Makefile.am:
9077         * examples/cutter/Makefile.am:
9078         * examples/events/Makefile.am:
9079         * examples/helloworld/Makefile.am:
9080         * examples/helloworld2/Makefile.am:
9081         * examples/launch/Makefile.am:
9082         * examples/manual/Makefile.am:
9083         * examples/mixer/Makefile.am:
9084         * examples/pingpong/Makefile.am:
9085         * examples/plugins/Makefile.am:
9086         * examples/queue/Makefile.am:
9087         * examples/queue2/Makefile.am:
9088         * examples/queue3/Makefile.am:
9089         * examples/queue4/Makefile.am:
9090         * examples/retag/Makefile.am:
9091         * examples/thread/Makefile.am:
9092         * examples/typefind/Makefile.am:
9093         * examples/xml/Makefile.am:
9094         * gst/Makefile.am:
9095         * gst/autoplug/Makefile.am:
9096         * gst/elements/Makefile.am:
9097         * gst/gstcompat.h:
9098         * gst/indexers/Makefile.am:
9099         * gst/parse/Makefile.am:
9100         * gst/registries/Makefile.am:
9101         * gst/schedulers/Makefile.am:
9102         * libs/gst/bytestream/Makefile.am:
9103         * libs/gst/control/Makefile.am:
9104         * libs/gst/getbits/Makefile.am:
9105         * po/af.po:
9106         * po/az.po:
9107         * po/en_GB.po:
9108         * po/fr.po:
9109         * po/nl.po:
9110         * po/sr.po:
9111         * po/sv.po:
9112         * po/tr.po:
9113         * po/uk.po:
9114         * tests/Makefile.am:
9115         * tests/bufspeed/Makefile.am:
9116         * tests/instantiate/Makefile.am:
9117         * tests/memchunk/Makefile.am:
9118         * tests/muxing/Makefile.am:
9119         * tests/negotiation/Makefile.am:
9120         * tests/probes/Makefile.am:
9121         * tests/sched/Makefile.am:
9122         * tests/seeking/Makefile.am:
9123         * tests/threadstate/Makefile.am:
9124         * testsuite/caps/Makefile.am:
9125         * testsuite/cleanup/Makefile.am:
9126         * testsuite/dlopen/Makefile.am:
9127         * testsuite/dynparams/Makefile.am:
9128         * testsuite/plugin/Makefile.am:
9129         * testsuite/states/Makefile.am:
9130         * tools/Makefile.am:
9131           reorganize compile/link flags to be consistent
9132           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9133
9134 2004-05-04  David Schleef  <ds@schleef.org>
9135
9136         The "once more, with feeling" check-in.
9137         * testsuite/caps/Makefile.am: dist caps_strings
9138         * testsuite/caps/renegotiate.c: (main): This test triggers a
9139           segfault in the core.  Marking as failing.
9140
9141 2004-05-03  David Schleef  <ds@schleef.org>
9142
9143         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9144           by the build bots.
9145         * testsuite/caps/renegotiate.c: (main): Same.
9146
9147 2004-05-03  David Schleef  <ds@schleef.org>
9148
9149         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9150
9151 2004-05-03  David Schleef  <ds@schleef.org>
9152
9153         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9154           variable to find our source file.
9155
9156 2004-05-03  David Schleef  <ds@schleef.org>
9157
9158         * configure.ac:  Link plugins with libgstreamer and dependent
9159           libraries
9160         * testsuite/caps/Makefile.am:
9161         * testsuite/caps/caps_strings:
9162         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9163           through a file of caps strings and test each one
9164
9165 2004-05-04  Benjamin Otte  <otte@gnome.org>
9166
9167         * libs/gst/bytestream/Makefile.am:
9168         * libs/gst/bytestream/adapter.c: 
9169         * libs/gst/bytestream/adapter.h:
9170           add GstAdapter, similar to bytestream, but doesn't require ugly event
9171           handling or uglier loopbased elements
9172
9173 2004-05-03  David Schleef  <ds@schleef.org>
9174
9175         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9176         * testsuite/caps/erathostenes.c:
9177         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9178
9179 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9180
9181         * docs/pwg/pwg.xml:
9182           remove hardcoded stylesheet path (duh)
9183         * docs/random/release:
9184         * docs/gst/gstreamer-sections.txt:
9185         * gst/Makefile.am:
9186         * gst/gst.h:
9187         * gst/gst_private.h:
9188         * gst/gstcaps.c:
9189         * gst/gstevent.c:
9190         * gst/gstformat.c:
9191         * gst/gstinfo.c:
9192         * gst/gstinfo.h:
9193         * gst/gstinterface.c:
9194         * gst/gstmemchunk.c:
9195         * gst/gstprobe.c:
9196         * gst/gstquery.c:
9197         * gst/gstregistry.c:
9198         * gst/gstregistrypool.c:
9199         * gst/gststructure.c:
9200         * gst/gsttaginterface.c:
9201         * gst/gstthread.c:
9202         * gst/gsttrace.c:
9203         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9204         * gst/gsturi.c:
9205         * gst/gstvalue.c:
9206           deprecate gst_info; remove gstlog.h
9207    
9208
9209 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9210
9211         * Makefile.am:
9212         * po/en_GB.po:
9213         * po/sv.po:
9214         * po/uk.po:
9215           updated translations
9216
9217 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9218
9219         * gst/gstbin.c: (gst_bin_dispose):
9220           better debugging
9221
9222 2004-05-03  Johan Dahlin  <johan@gnome.org>
9223
9224         * gst/schedulers/gstoptimalscheduler.c
9225         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9226         really is a GstElement. Avoids critical when running gst-launch -v
9227         and a oggdemux/decoding pipeline.
9228
9229 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9230
9231         * docs/gst/tmpl/gstpipeline.sgml :
9232         * docs/manual/elements-api.xml :
9233                 doc fix by Patrick Guimond (Protector) from devel ML
9234                 reviewed by ronald
9235
9236 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9237
9238         * docs/gst/Makefile.am :
9239         * docs/libs/Makefile.am :
9240                 apply a patch from Arwed v. Merkatz so that gtk-doc
9241                 generated docs install (same for .devhelp file)
9242                 (fixes part 1 of #138836)
9243
9244 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9245
9246         * docs/faq/dependencies.xml: typo
9247         * docs/faq/getting.xml :
9248             - fix download URL for new gstreamer site
9249             - hide sf.net download page as latest version aren't there
9250             - fix apt URLs
9251             - fill "get via CVS" paragraph (link to dev page on the site)
9252         * docs/faq/general.xml:
9253             hide status tables as they no more exists
9254             change case on plugins license file to reflect reality
9255         * docs/faq/troubleshooting.xml:
9256             remove the wiki question/answer as there is no more wiki
9257
9258 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9259
9260         * gst/gsterror.h:
9261           include the headers needed for declarations used in this header
9262
9263 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9264
9265         * docs/random/uraeus/gstreamer_and_midi.txt :
9266           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9267           (fixes #132288)
9268
9269 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9270
9271         reviewed by Benjamin Otte  <otte@gnome.org>
9272
9273         * gst/schedulers/gthread-cothreads.h:
9274           free allocated data for main cothread, too when destroying context
9275           (fixes #141417)
9276
9277 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9278
9279         * docs/manual/goals.xml : remove duplicated paragraph at end 
9280         of doc page (fixes #141448)
9281
9282 2004-04-29  David Schleef  <ds@schleef.org>
9283
9284         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9285         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9286
9287 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9288
9289         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9290           fix property
9291         * gst/gstcaps.c:
9292           fix doc string
9293         * po/POTFILES.in:
9294           rename typefind source file
9295
9296 2004-04-28  David Schleef  <ds@schleef.org>
9297
9298         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9299         * win32/GStreamer.vcproj:
9300         * win32/Makefile:
9301         * win32/config.h:
9302         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9303         (_trewinddir), (_ttelldir), (_tseekdir):
9304         * win32/dirent.h:
9305         * win32/gst-inspect.vcproj:
9306         * win32/gst-launch.vcproj:
9307         * win32/gst-register.vcproj:
9308         * win32/gstbytestream.vcproj:
9309         * win32/gstelements.vcproj:
9310         * win32/gstoptimalscheduler.vcproj:
9311         * win32/gstspider.vcproj:
9312         * win32/gtchar.h:
9313         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9314         * win32/mman.h:
9315         * win32/mman.inl:
9316         * win32/msvc71.sln:
9317
9318 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9319
9320         * gst/gst.c: (init_post):
9321         * gst/gstinfo.c:
9322           remove useless _gst_progname stuff
9323         * tools/gst-inspect.c: (print_field), (print_caps):
9324           improve caps output
9325
9326 2004-04-28  David Schleef  <ds@schleef.org>
9327
9328         Disable parsing of a lot of files that aren't part of the
9329         exported API.  Move corresponding template files to old/,
9330         waiting for removal when they don't contain anything
9331         interesting.
9332         * docs/gst/Makefile.am:
9333         * docs/gst/gstreamer-sections.txt:
9334         * docs/gst/tmpl/cothreads.sgml:
9335         * docs/gst/tmpl/cothreads_compat.sgml:
9336         * docs/gst/tmpl/gettext.sgml:
9337         * docs/gst/tmpl/gobject2gtk.sgml:
9338         * docs/gst/tmpl/grammar.tab.sgml:
9339         * docs/gst/tmpl/gst-i18n-app.sgml:
9340         * docs/gst/tmpl/gst-i18n-lib.sgml:
9341         * docs/gst/tmpl/gst_private.sgml:
9342         * docs/gst/tmpl/gstaggregator.sgml:
9343         * docs/gst/tmpl/gstarch.sgml:
9344         * docs/gst/tmpl/gstatomic_impl.sgml:
9345         * docs/gst/tmpl/gstbufferstore.sgml:
9346         * docs/gst/tmpl/gstdata_private.sgml:
9347         * docs/gst/tmpl/gstdisksink.sgml:
9348         * docs/gst/tmpl/gstdisksrc.sgml:
9349         * docs/gst/tmpl/gstelementfactory.sgml:
9350         * docs/gst/tmpl/gstextratypes.sgml:
9351         * docs/gst/tmpl/gstfakesink.sgml:
9352         * docs/gst/tmpl/gstfakesrc.sgml:
9353         * docs/gst/tmpl/gstfdsink.sgml:
9354         * docs/gst/tmpl/gstfdsrc.sgml:
9355         * docs/gst/tmpl/gstfilesink.sgml:
9356         * docs/gst/tmpl/gstfilesrc.sgml:
9357         * docs/gst/tmpl/gsthttpsrc.sgml:
9358         * docs/gst/tmpl/gstidentity.sgml:
9359         * docs/gst/tmpl/gstindexfactory.sgml:
9360         * docs/gst/tmpl/gstmarshal.sgml:
9361         * docs/gst/tmpl/gstmd5sink.sgml:
9362         * docs/gst/tmpl/gstmultidisksrc.sgml:
9363         * docs/gst/tmpl/gstmultifilesrc.sgml:
9364         * docs/gst/tmpl/gstpadtemplate.sgml:
9365         * docs/gst/tmpl/gstpipefilter.sgml:
9366         * docs/gst/tmpl/gstschedulerfactory.sgml:
9367         * docs/gst/tmpl/gstsearchfuncs.sgml:
9368         * docs/gst/tmpl/gstshaper.sgml:
9369         * docs/gst/tmpl/gstspider.sgml:
9370         * docs/gst/tmpl/gstspideridentity.sgml:
9371         * docs/gst/tmpl/gststatistics.sgml:
9372         * docs/gst/tmpl/gsttee.sgml:
9373         * docs/gst/tmpl/gsttimecache.sgml:
9374         * docs/gst/tmpl/gsttypefind.sgml:
9375         * docs/gst/tmpl/gsttypefindfactory.sgml:
9376         * docs/gst/tmpl/gstxmlregistry.sgml:
9377         * docs/gst/tmpl/gthread-cothreads.sgml:
9378         * docs/gst/tmpl/old/cothreads.sgml:
9379         * docs/gst/tmpl/old/cothreads_compat.sgml:
9380         * docs/gst/tmpl/old/gettext.sgml:
9381         * docs/gst/tmpl/old/gobject2gtk.sgml:
9382         * docs/gst/tmpl/old/grammar.tab.sgml:
9383         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9384         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9385         * docs/gst/tmpl/old/gst_private.sgml:
9386         * docs/gst/tmpl/old/gstaggregator.sgml:
9387         * docs/gst/tmpl/old/gstarch.sgml:
9388         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9389         * docs/gst/tmpl/old/gstbufferstore.sgml:
9390         * docs/gst/tmpl/old/gstdata_private.sgml:
9391         * docs/gst/tmpl/old/gstdisksink.sgml:
9392         * docs/gst/tmpl/old/gstdisksrc.sgml:
9393         * docs/gst/tmpl/old/gstelementfactory.sgml:
9394         * docs/gst/tmpl/old/gstextratypes.sgml:
9395         * docs/gst/tmpl/old/gstfakesink.sgml:
9396         * docs/gst/tmpl/old/gstfakesrc.sgml:
9397         * docs/gst/tmpl/old/gstfdsink.sgml:
9398         * docs/gst/tmpl/old/gstfdsrc.sgml:
9399         * docs/gst/tmpl/old/gstfilesink.sgml:
9400         * docs/gst/tmpl/old/gstfilesrc.sgml:
9401         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9402         * docs/gst/tmpl/old/gstidentity.sgml:
9403         * docs/gst/tmpl/old/gstindexfactory.sgml:
9404         * docs/gst/tmpl/old/gstmarshal.sgml:
9405         * docs/gst/tmpl/old/gstmd5sink.sgml:
9406         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9407         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9408         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9409         * docs/gst/tmpl/old/gstpipefilter.sgml:
9410         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9411         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9412         * docs/gst/tmpl/old/gstshaper.sgml:
9413         * docs/gst/tmpl/old/gstspider.sgml:
9414         * docs/gst/tmpl/old/gstspideridentity.sgml:
9415         * docs/gst/tmpl/old/gststatistics.sgml:
9416         * docs/gst/tmpl/old/gsttee.sgml:
9417         * docs/gst/tmpl/old/gsttimecache.sgml:
9418         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9419         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9420         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9421         * docs/gst/tmpl/old/types.sgml:
9422         * docs/gst/tmpl/types.sgml:
9423
9424         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9425         gtkdoc-scan doesn't like files with the same name in different
9426         directories.
9427         * gst/elements/Makefile.am:
9428         * gst/elements/gstelements.c:
9429         * gst/elements/gsttypefind.c: 
9430         * gst/elements/gsttypefind.h:
9431         * gst/elements/gsttypefindelement.c:
9432         * gst/elements/gsttypefindelement.h:
9433
9434 2004-04-28  David Schleef  <ds@schleef.org>
9435
9436         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9437         patch (bug #141317):
9438         * gst/gst-i18n-lib.h: Allow disabling gettext.
9439         * gst/gstatomic_impl.h: disable warning when it's dumb.
9440         * gst/gstclock.c: fix include
9441         * gst/gstcompat.h: fix variadic macro
9442         * gst/gstinfo.c: fix include
9443         * gst/gstmacros.h: add defines for inlines on MSVC
9444         * gst/gstplugin.c: fix includes
9445         * gst/gstregistry.c: fix includes
9446         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9447         * gst/gstsystemclock.c: fix include
9448         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9449         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9450         * gst/registries/gstxmlregistry.c:
9451         (gst_xml_registry_parse_element_factory): fix use of non-portable
9452         functions
9453         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9454         * libs/gst/control/dparammanager.h: same
9455
9456 2004-04-28  David Schleef  <ds@schleef.org>
9457
9458         Move a bunch of unused files to old/ with names that are
9459         not case-insensitive-unique.  These files still contain some
9460         useful information that needs to be merged into gstbin.sgml,
9461         etc., so they shouldn't be deleted yet.
9462         * docs/gst/tmpl/GstBin.sgml:
9463         * docs/gst/tmpl/GstBuffer.sgml:
9464         * docs/gst/tmpl/GstCaps.sgml:
9465         * docs/gst/tmpl/GstClock.sgml:
9466         * docs/gst/tmpl/GstCompat.sgml:
9467         * docs/gst/tmpl/GstData.sgml:
9468         * docs/gst/tmpl/GstElement.sgml:
9469         * docs/gst/tmpl/GstEvent.sgml:
9470         * docs/gst/tmpl/GstIndex.sgml:
9471         * docs/gst/tmpl/GstStructure.sgml:
9472         * docs/gst/tmpl/GstTag.sgml:
9473         * docs/gst/tmpl/old/GstBin.sgml:
9474         * docs/gst/tmpl/old/GstBuffer.sgml:
9475         * docs/gst/tmpl/old/GstCaps.sgml:
9476         * docs/gst/tmpl/old/GstClock.sgml:
9477         * docs/gst/tmpl/old/GstCompat.sgml:
9478         * docs/gst/tmpl/old/GstData.sgml:
9479         * docs/gst/tmpl/old/GstElement.sgml:
9480         * docs/gst/tmpl/old/GstEvent.sgml:
9481         * docs/gst/tmpl/old/GstIndex.sgml:
9482         * docs/gst/tmpl/old/GstStructure.sgml:
9483         * docs/gst/tmpl/old/GstTag.sgml:
9484
9485 2004-04-28  David Schleef  <ds@schleef.org>
9486
9487         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9488         (gst_caps_append), (gst_caps_append_structure),
9489         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9490         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9491         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9492         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9493         (gst_caps_intersect), (gst_caps_normalize),
9494         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9495         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9496         * gst/gstcaps.h: use GST_IS_CAPS().
9497
9498 2004-04-26  David Schleef  <ds@schleef.org>
9499
9500         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9501         assembly.  gcc doesn't handle it correctly. (bug #141083)
9502         * gst/gsttrashstack.h: same
9503
9504 2004-04-25  Benjamin Otte  <otte@gnome.org>
9505
9506         * gst/gstelement.c: (gst_element_change_state):
9507           fix assertion to do an int comparison
9508
9509 2004-04-25  Benjamin Otte  <otte@gnome.org>
9510
9511         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9512           better debugging output on error
9513
9514 2004-04-25  Benjamin Otte  <otte@gnome.org>
9515
9516         * gst/gstcaps.c: (gst_caps_subtract):
9517           fix memleak
9518
9519 2004-04-23  Benjamin Otte  <otte@gnome.org>
9520
9521         * gst/gstvalue.c: (gst_value_compare_buffer),
9522         (_gst_value_initialize):
9523           add comparison function for buffers
9524
9525 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9526
9527         * docs/pwg/pwg.xml:
9528           Just found out that this so-called "ima-wav" format is really
9529           just "dvi adpcm" (according to the MS WAV documentation). So
9530           renaming it. We didn't use it yet anyway.
9531
9532 2004-04-23  Benjamin Otte  <otte@gnome.org>
9533
9534         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9535           call gst_caps_is_subset
9536
9537 2004-04-23  Benjamin Otte  <otte@gnome.org>
9538
9539         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9540         (gst_caps_is_subset):
9541           add documentation
9542
9543 2004-04-23  Benjamin Otte  <otte@gnome.org>
9544           
9545         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9546         (gst_caps_structure_subtract), (gst_caps_subtract),
9547         (gst_caps_structure_figure_out_union),
9548         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9549           fix simplifying and subtracting not working correctly with optional
9550           properties
9551           solve assorted problems that make it now simplify ebven more
9552         * docs/gst/tmpl/gstcaps.sgml:
9553         * gst/gstcaps.h:
9554           make gst_caps_do_simplify return a bool to indicate if it simplified
9555         * testsuite/caps/simplify.c: (main):
9556           add more checks. The tests is quite a bit useless right now because
9557           the core is heavily simplifying itself.
9558         * testsuite/caps/caps.h:
9559           fix caps to contain all optional properties
9560
9561 2004-04-22  Benjamin Otte  <otte@gnome.org>
9562
9563         * docs/gst/tmpl/gstcaps.sgml:
9564         * docs/gst/tmpl/gstfilesrc.sgml:
9565         * docs/gst/tmpl/gststructure.sgml:
9566         * docs/gst/tmpl/gstvalue.sgml:
9567           update for recent API changes
9568         * gst/gstcaps.c: (gst_caps_do_simplify):
9569           fix to stop trying with a freed structure
9570         * gst/gstpad.c: (gst_pad_link_fixate):
9571           simplify caps
9572         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9573           remove C++ comment
9574         * gst/gstpad.h:
9575           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9576         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9577         (gst_structure_to_string):
9578           keep the correct type when using lists of ranges
9579         * gst/gstvalue.c: (gst_value_list_prepend_value),
9580         (gst_value_list_append_value):
9581           copy the value before adding to the list (d'oh)
9582         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9583         (gst_value_subtract_int_range_int_range):
9584           handle overflows correctly
9585         * gst/gstvalue.c: (gst_value_subtract_from_list):
9586           fix memleak
9587         * testsuite/caps/caps.h:
9588           add a caps that caused segfaults
9589
9590 2004-04-22  Benjamin Otte  <otte@gnome.org>
9591
9592         * testsuite/refcounting/pad.c: (main):
9593           fix test
9594
9595 2004-04-22  Benjamin Otte  <otte@gnome.org>
9596
9597         * gst/gstcaps.c: (gst_caps_subtract):
9598           allow subtracting ANY and EMPTY from ANY caps
9599
9600 2004-04-22  Benjamin Otte  <otte@gnome.org>
9601
9602         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9603         (gst_caps_union):
9604           only simplify in functions that create new caps. Simplifying in
9605           gst_caps_append breaks tests.
9606
9607 2004-04-22  Benjamin Otte  <otte@gnome.org>
9608
9609         * gst/gstcaps.c: (gst_caps_structure_simplify):
9610           unset GValue after use
9611         * gst/gstcaps.c: (gst_caps_append), 
9612         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9613           use gst_caps_simplify (reduces registry size by 30%)
9614         * gst/gstpad.c: (gst_pad_template_new):
9615           don't allow NULL caps
9616
9617 2004-04-22  Benjamin Otte  <otte@gnome.org>
9618
9619         * docs/gst/gstreamer-sections.txt:
9620           add gst_caps_do_simplify
9621         * gst/gstcaps.c:
9622           add documentation for gst_caps_do_simplify
9623         * gst/gstvalue.h:
9624           fix typo in gst_value_register_subtract_func declaration for gst-doc
9625
9626 2004-04-22  Benjamin Otte  <otte@gnome.org>
9627
9628         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9629           fix bug when converting from empty string.
9630         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9631         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9632           use gst_caps_new_empty to allocate a new caps. Only that function
9633           allocates memory for caps now.
9634         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9635         (gst_caps_remove_structure):
9636           add ability to remove one structure (but not to header yet)
9637         * gst/gstcaps.c: (gst_caps_compare_structures),
9638         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9639         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9640         * gst/gstcaps.h:
9641           add gst_caps_do_simplify that tries to simplify a caps in place.
9642           Deprecate old gst_caps_simplify function.
9643         * testsuite/caps/caps.h:
9644           add caps.h containing a common set of caps to test against.
9645         * testsuite/caps/sets.c: (check_caps), (main):
9646           use it.
9647         * testsuite/caps/.cvsignore:
9648         * testsuite/caps/Makefile.am:
9649         * testsuite/caps/simplify.c: (check_caps), (main):
9650           add test to check correctness and efficency of caps simplification.
9651
9652 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9653
9654         reviewed by Benjamin Otte  <otte@gnome.org>
9655
9656         * gst/gstparse.c: (_gst_parse_escape):
9657           Free the GString used in _gst_parse_escape()
9658
9659 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9660
9661         * gst/gstpad.c: (gst_pad_link_negotiate):
9662           refuse to link if the link is not possible
9663         * configure.ac:
9664         * testsuite/Makefile.am:
9665         * testsuite/negotiation/.cvsignore:
9666         * testsuite/negotiation/Makefile.am:
9667         * testsuite/negotiation/pad_link.c: (main):
9668           add test that checks the above behaviour
9669
9670 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9671
9672         * docs/gst/gstreamer-sections.txt:
9673           add newly added API
9674
9675 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9676
9677         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9678         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9679         (gst_filesrc_open_file), (gst_filesrc_close_file),
9680         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9681         * gst/elements/gstfilesrc.h:
9682           add support for non-regular files (#140734)
9683
9684 2004-04-21  Benjamin Otte  <otte@gnome.org>
9685
9686         * gst/gstpad.c: (gst_pad_link_fixate):
9687           add sophisticated error checking code to see if fixation functions
9688           did their fixation right
9689
9690 2004-04-21  Benjamin Otte  <otte@gnome.org>
9691
9692         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9693           check for ANY caps before appending/unioning
9694         * gst/gstcaps.c: (gst_caps_is_subset),
9695         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9696         (gst_caps_structure_subtract), (gst_caps_subtract):
9697         * gst/gstcaps.h:
9698           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9699           the API. deprecate gst_caps_is_equal_fixed
9700         * gst/gstpad.c: (gst_pad_try_set_caps):
9701         * gst/gstqueue.c: (gst_queue_link):
9702           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9703         * gst/gststructure.c: (gst_structure_get_name_id):
9704         * gst/gststructure.h:
9705           add function gst_structure_get_name_id
9706         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9707         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9708         (gst_value_subtract_int_range_int_range),
9709         (gst_value_subtract_double_double_range),
9710         (gst_value_subtract_double_range_double),
9711         (gst_value_subtract_double_range_double_range),
9712         (gst_value_subtract_from_list), (gst_value_subtract_list),
9713         (gst_value_can_intersect), (gst_value_subtract),
9714         (gst_value_can_subtract), (gst_value_register_subtract_func),
9715         (_gst_value_initialize):
9716         * gst/gstvalue.h:
9717           add support for subtracting values from each other. Note that
9718           subtracting means subtracting as in set theory. Required for caps
9719           stuff above.
9720         * testsuite/caps/.cvsignore:
9721         * testsuite/caps/Makefile.am:
9722         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9723         * testsuite/caps/sets.c: (check_caps), (main):
9724         * testsuite/caps/subtract.c: (check_caps), (main):
9725           add tests for subtraction and equality code.
9726
9727 2004-04-20  David Schleef  <ds@schleef.org>
9728
9729         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9730         * gst/indexers/Makefile.am:
9731         * gst/schedulers/Makefile.am:
9732         * libs/gst/bytestream/Makefile.am:
9733         * libs/gst/control/Makefile.am:
9734         * libs/gst/getbits/Makefile.am:
9735
9736 2004-04-20  David Schleef  <ds@schleef.org>
9737
9738         * common/as-libtool.mak: Fine-tune DLL building.
9739         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9740         (like gst-plugins)
9741         * examples/plugins/Makefile.am: remove plugindir
9742         * gst/autoplug/Makefile.am: DLL building fixes
9743         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9744         Windows.
9745         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9746         * gst/indexers/Makefile.am: DLL building fixes
9747         * gst/schedulers/Makefile.am: DLL building fixes.
9748         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9749         * libs/gst/control/Makefile.am: same
9750         * libs/gst/getbits/Makefile.am: same
9751         * testsuite/Makefile.am: New dlopen directory
9752         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9753         when dlopened.
9754         * testsuite/dlopen/dlopen_gst.c: (main): same
9755         * testsuite/dlopen/loadgst.c: (do_test): same
9756
9757 2004-04-20  David Schleef  <ds@schleef.org>
9758
9759         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9760         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9761
9762 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9763
9764         * gst/gstelement.c: (gst_element_wait),
9765         (gst_element_set_time_delay), (gst_element_change_state):
9766           Use GST_TIME_*
9767
9768 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9769
9770         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9771         (gst_spider_identity_plug):
9772           improve debugging messages
9773         * gst/gstbin.c: (gst_bin_remove_func):
9774           make sure the state_change function is only called with simple state
9775           transitions
9776
9777 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9778
9779         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9780         (gst_fakesink_set_property), (gst_fakesink_chain):
9781         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9782         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9783         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9784         * gst/elements/gstidentity.c: (gst_identity_chain),
9785         (gst_identity_set_property):
9786         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9787         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9788           add warnings to _set_property for unknown arguments
9789           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9790
9791 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9792
9793         * Makefile.am:
9794         * docs/manuals.mak:
9795           add .po file download snippet
9796           fix a bug in the doc makefile
9797
9798 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9799
9800         * Makefile.am:
9801         * po/LINGUAS:
9802         * po/en_GB.po:
9803           Added en_GB translation (Gareth Owen)
9804
9805 2004-04-20  Johan Dahlin  <johan@gnome.org>
9806
9807         * gst/gstpad.c (_invent_event): Clean up
9808
9809 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9810
9811         * testsuite/caps/filtercaps.c: (main):
9812           fix test to test things correctly (caps are complicated)
9813
9814 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9815
9816         * testsuite/caps/Makefile.am:
9817         * testsuite/caps/filtercaps.c: (main):
9818           add test (that doesn't work right now, but should)
9819
9820 2004-04-19  David Schleef  <ds@schleef.org>
9821
9822         * configure.ac: Add test for allowing unaligned access.  Add define
9823         to put in gstconfig.h.
9824         * docs/gst/gstreamer-sections.txt: New symbols
9825         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9826         * docs/gst/tmpl/gstfilesrc.sgml:
9827         * docs/gst/tmpl/gstparse.sgml:
9828         * docs/gst/tmpl/gsttypes.sgml:
9829         * docs/gst/tmpl/gstutils.sgml:
9830         * docs/gst/tmpl/gstvalue.sgml:
9831         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9832         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9833         on most !i386/!powerpc architectures.  From Daniel Gazard
9834         <daniel.gazard@free.fr>.  (bug #140156)
9835         * po/af.po: Check in changes made by gettext.
9836         * po/az.po:
9837         * po/fr.po:
9838         * po/nl.po:
9839         * po/sr.po:
9840         * po/sv.po:
9841
9842 2004-04-20  Benjamin Otte  <otte@gnome.org>
9843
9844         * gst/schedulers/entryscheduler.c: 
9845         (gst_entry_scheduler_yield):
9846           refuse to yield when decoupled elements insist on doing that.
9847           At least it's better than crashing
9848
9849 2004-04-19  David Schleef  <ds@schleef.org>
9850
9851         * docs/libs/Makefile.am: Change sinclude to include
9852         * docs/gst/Makefile.am: same
9853         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9854
9855 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9856
9857         * po/LINGUAS:
9858         * po/uk.po:
9859           Added Ukrainian translation (Maxim V. Dziumanenko)
9860
9861 2004-04-19  Johan Dahlin  <johan@gnome.org>
9862
9863         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9864         checking here, do it before calling the function.
9865         Clean up, use for loops instead of while loops while iterating
9866         over lists.
9867
9868         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9869         in debug message.
9870         (gst_spider_create_and_plug): Improve debug message.
9871         General: Replace while loops which iterates over GLists with for
9872         loops. Which are much cleaner, improves readability, especially
9873         for gst_spider_identity_plug
9874
9875         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9876         fixes bug 140477
9877
9878 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9879
9880         * po/LINGUAS:
9881         * po/tr.po:
9882           Added Turkish translation (Baris Cicek)
9883
9884 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9885
9886         * docs/faq/troubleshooting.xml:
9887           Mention gst-register in the FAQ (fixes 139045).
9888
9889 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9890
9891         * docs/gst/gstreamer-sections.txt:
9892
9893 2004-04-17  Benjamin Otte  <otte@gnome.org>
9894
9895         * gst/gstelement.c: (gst_element_dispose):
9896           simplify
9897         * gst/gstpad.c: (gst_pad_call_chain_function):
9898           don't create loads of events due to bad macro usage
9899
9900 2004-04-16  David Schleef  <ds@schleef.org>
9901
9902         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9903         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9904         * gst/gstvalue.c: (gst_value_serialize_buffer),
9905         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9906         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9907         to indicate types that are fixed wrt caps or not.  Switching to
9908         this function fixes (bug #140298).
9909         * gst/gstvalue.h:
9910
9911 2004-04-16  David Schleef  <ds@schleef.org>
9912
9913         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9914         for GST_UNALIGNED_ACESS, since we essentially know which archs
9915         are ok.
9916
9917 2004-04-17  Benjamin Otte  <otte@gnome.org>
9918
9919         * docs/gst/Makefile.am:
9920           ignore gst/parse directory when building docs (fixes #140205)
9921
9922 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9923
9924         * testsuite/refcounting/mem.c: (vmsize):
9925           do error checking
9926
9927 2004-04-16  Johan Dahlin  <johan@gnome.org>
9928
9929         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9930         and gst_pad_call_get_function.
9931
9932 2004-04-15  David Schleef  <ds@schleef.org>
9933
9934         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9935         checks if we can access unaligned memory.
9936         * configure.ac: Use it.
9937
9938 2004-04-16  Benjamin Otte  <otte@gnome.org>
9939
9940         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9941         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9942         * gst/elements/gstfilesrc.h:
9943           s/seek_happened/need_discont/ and require discont before sending any
9944           data
9945
9946 2004-04-15  David Schleef  <ds@schleef.org>
9947
9948         * gst/gstvalue.c: (gst_value_serialize_buffer),
9949         (gst_value_deserialize_buffer), (_gst_value_initialize):
9950         Register these types as fundamental types. (bug #140015)
9951
9952 2004-04-16  Benjamin Otte  <otte@gnome.org>
9953
9954         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9955         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9956         (gst_pad_pull):
9957           implement enforcing discont events before buffers are passed. This
9958           allows state changes of only some elements and later correctly going
9959           on where they left off (or in short: you can now set audio sinks to
9960           NULL to release the device when the pipeline is paused)
9961         * gst/gstpad.c: (gst_pad_call_chain_function),
9962         (gst_pad_call_get_function):
9963         * gst/gstpad.h:
9964           add gst_pad_call_chain_function and gst_pad_call_get_function for
9965           scheduler interaction. They are required because of the changes
9966           above.
9967         * gst/schedulers/entryscheduler.c: (get_buffer),
9968         (gst_entry_scheduler_chain_wrapper),
9969         (gst_entry_scheduler_get_wrapper),
9970         (gst_entry_scheduler_state_transition),
9971         (gst_entry_scheduler_pad_link):
9972         * gst/schedulers/gstbasicscheduler.c:
9973         (gst_basic_scheduler_chain_wrapper),
9974         (gst_basic_scheduler_src_wrapper),
9975         (gst_basic_scheduler_chainhandler_proxy),
9976         (gst_basic_scheduler_gethandler_proxy),
9977         (gst_basic_scheduler_cothreaded_chain),
9978         (gst_basic_scheduler_chain_elements):
9979         * gst/schedulers/gstoptimalscheduler.c:
9980         (get_group_schedule_function), (pad_clear_queued),
9981         (gst_opt_scheduler_pad_link):
9982           use the new functions instead of calling get/chain-functions
9983           directly.
9984
9985 2004-04-15  David Schleef  <ds@schleef.org>
9986
9987         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9988         * docs/gst/tmpl/gstinfo.sgml: same
9989         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9990         gtk-doc put here.
9991         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9992         * examples/queue/queue.c: (main):  We iterate pipelines, not
9993         bins.  (bug #139996)
9994
9995 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9996
9997         * docs/pwg/advanced-types.xml:
9998           Add MS RLE support. Also document Qt RLE although I have no sample
9999           files for that yet. And document an extra property for ADPCM.
10000
10001 2004-04-15  David Schleef  <ds@schleef.org>
10002
10003         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10004         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10005         Windows.
10006
10007 2004-04-15  David Schleef  <ds@schleef.org>
10008
10009         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10010         symbol names to not conflict with new gstinfo.h symbols.
10011         * gst/gstinfo.h: Add inline functions for all those crazy
10012         compilers that don't know how to handle variadic macros (MSVC).
10013
10014 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10015
10016         * configure.ac: bump nano to 1
10017
10018 === release 0.8.1 ===
10019
10020 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10021
10022         * NEWS:
10023         * RELEASE:
10024         * configure.ac:
10025           releasing 0.8.1, "Snow Brigade"
10026
10027 2004-04-14  David Schleef  <ds@schleef.org>
10028
10029         * testsuite/Makefile.am: define tests_ignore
10030         * testsuite/Rules: Added new tests_ignore, which get compiled,
10031         but not run (generally because they're inconsistent or have
10032         heisenbugs).  Now we can ensure all the .c files compile in
10033         testsuite/.
10034         * testsuite/bins/Makefile.am: define tests_ignore
10035         * testsuite/bytestream/Makefile.am:
10036         * testsuite/caps/Makefile.am:
10037         * testsuite/clock/Makefile.am:
10038         * testsuite/debug/Makefile.am:
10039         * testsuite/debug/global.c: (gst_debug_log_one),
10040         (gst_debug_log_two): Fix compilation problem.
10041         * testsuite/dynparams/Makefile.am:
10042         * testsuite/elements/Makefile.am:
10043         * testsuite/ghostpads/Makefile.am:
10044         * testsuite/indexers/Makefile.am:
10045         * testsuite/parse/Makefile.am:
10046         * testsuite/plugin/Makefile.am:
10047         * testsuite/refcounting/Makefile.am:
10048         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10049         results, because it's not calculated correctly.
10050         * testsuite/refcounting/pad.c: (main): same
10051         * testsuite/states/Makefile.am:
10052         * testsuite/tags/Makefile.am:
10053         * testsuite/threads/Makefile.am:
10054
10055 2004-04-14  David Schleef  <ds@schleef.org>
10056
10057         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10058         generating bad code around the cpu detection asm code.
10059
10060 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10061
10062         * tools/gst-inspect.c: (print_element_info):
10063           print numeric version of rank as well, since we added some - 1
10064           rank values to elements
10065
10066 2004-04-13  David Schleef  <ds@schleef.org>
10067
10068         * configure.ac:  Disable various code when compiling for MinGW.
10069         * gst/elements/Makefile.am:
10070         * gst/elements/gstelements.c:
10071         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10072         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10073         * gst/registries/gstxmlregistry.c: (make_dir):
10074
10075 2004-04-13  David Schleef  <ds@schleef.org>
10076
10077         * gst/Makefile.am:
10078         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10079         assembly.
10080         * gst/gstcpuid_i386.s: remove
10081
10082 2004-04-13  David Schleef  <ds@schleef.org>
10083
10084         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10085         seems to think it needs to be done.
10086         * docs/gst/tmpl/gstfakesink.sgml:
10087         * docs/gst/tmpl/gstfakesrc.sgml:
10088         * docs/gst/tmpl/gstfdsink.sgml:
10089         * docs/gst/tmpl/gstfdsrc.sgml:
10090         * docs/gst/tmpl/gstfilesink.sgml:
10091         * docs/gst/tmpl/gstfilesrc.sgml:
10092         * docs/gst/tmpl/gstidentity.sgml:
10093         * docs/gst/tmpl/gstmd5sink.sgml:
10094         * docs/gst/tmpl/gstmultifilesrc.sgml:
10095         * docs/gst/tmpl/gstpipefilter.sgml:
10096         * docs/gst/tmpl/gstshaper.sgml:
10097         * docs/gst/tmpl/gstspider.sgml:
10098         * docs/gst/tmpl/gstspideridentity.sgml:
10099         * docs/gst/tmpl/gststatistics.sgml:
10100         * docs/gst/tmpl/gsttee.sgml:
10101         * docs/gst/tmpl/gsttypefind.sgml:
10102         * docs/gst/tmpl/gstutils.sgml:
10103
10104 2004-04-13  David Schleef  <ds@schleef.org>
10105
10106         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10107         and to build DLLs on Windows.
10108         * gst/Makefile.am:
10109         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10110         (gst_filesrc_open_file):
10111         * gst/schedulers/Makefile.am:
10112
10113 2004-04-13  David Schleef  <ds@schleef.org>
10114
10115         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10116         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10117         fixating lists.
10118
10119 2004-04-12  David Schleef  <ds@schleef.org>
10120
10121         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10122         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10123         to using it.
10124         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10125         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10126         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10127         * gst/gststructure.c: (gst_structure_set_valist),
10128         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10129         support for buffers.
10130         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10131         intended to be const.
10132         * gst/gsttag.h: same
10133         * gst/gstvalue.c: (gst_value_serialize_buffer),
10134         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10135         to (de)serialize buffers.
10136         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10137         * testsuite/caps/string-conversions.c: (main):
10138         * testsuite/caps/value_serialize.c: add new test
10139
10140 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10141
10142         * docs/pwg/advanced-types.xml:
10143           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10144
10145 2004-04-11  Benjamin Otte  <otte@gnome.org>
10146
10147         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10148           rename categories to basic_*
10149         * gst/schedulers/gstbasicscheduler.c: 
10150         (gst_basic_scheduler_chain_wrapper),
10151         (gst_basic_scheduler_chainhandler_proxy),
10152         (gst_basic_scheduler_gethandler_proxy),
10153         (gst_basic_scheduler_eventhandler_proxy):
10154           debugging category fixes - put common stuff in log category
10155         * gst/schedulers/gstbasicscheduler.c: 
10156         (gst_basic_scheduler_chain_elements):
10157           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10158           active and linking two active chains
10159
10160 2004-04-10  Benjamin Otte  <otte@gnome.org>
10161
10162         * docs/pwg/intro-preface.xml:
10163           fix dead links and remove reference to Wiki
10164
10165 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10166
10167         * gst/schedulers/gstbasicscheduler.c:
10168           make sure we can switch back to the main function if we're still in
10169           the main function (supposed to fix #139617)
10170         * gst/schedulers/gthread-cothreads.h:
10171           don't throw an error when switching to the same cothread
10172
10173 2004-04-09  Benjamin Otte  <otte@gnome.org>
10174
10175         * gst/gstbin.c: (gst_bin_get_type):
10176         * gst/gstclock.c: (gst_clock_get_type):
10177         * gst/gstindex.c: (gst_index_get_type):
10178         * gst/gstobject.c: (gst_object_get_type),
10179         (gst_signal_object_get_type):
10180         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10181         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10182         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10183         * gst/gstqueue.c: (gst_queue_get_type):
10184         * gst/gstregistry.c: (gst_registry_get_type):
10185         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10186         * gst/gstthread.c: (gst_thread_get_type):
10187           don't use memchunks for these objects, use malloc instead
10188
10189 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10190
10191         * docs/gst/.cvsignore:
10192         * docs/gst/Makefile.am:
10193         * docs/gst/gstreamer-sections.txt:
10194         * docs/gst/tmpl/gstaggregator.sgml:
10195         * docs/gst/tmpl/gstbuffer.sgml:
10196         * docs/gst/tmpl/gstclock.sgml:
10197         * docs/gst/tmpl/gstelement.sgml:
10198         * docs/gst/tmpl/gstfakesink.sgml:
10199         * docs/gst/tmpl/gstfakesrc.sgml:
10200         * docs/gst/tmpl/gstfdsink.sgml:
10201         * docs/gst/tmpl/gstfdsrc.sgml:
10202         * docs/gst/tmpl/gstfilesink.sgml:
10203         * docs/gst/tmpl/gstfilesrc.sgml:
10204         * docs/gst/tmpl/gstidentity.sgml:
10205         * docs/gst/tmpl/gstindex.sgml:
10206         * docs/gst/tmpl/gstinfo.sgml:
10207         * docs/gst/tmpl/gstmd5sink.sgml:
10208         * docs/gst/tmpl/gstmultifilesrc.sgml:
10209         * docs/gst/tmpl/gstpad.sgml:
10210         * docs/gst/tmpl/gstpipefilter.sgml:
10211         * docs/gst/tmpl/gstpipeline.sgml:
10212         * docs/gst/tmpl/gstpluginfeature.sgml:
10213         * docs/gst/tmpl/gstqueue.sgml:
10214         * docs/gst/tmpl/gstregistry.sgml:
10215         * docs/gst/tmpl/gstscheduler.sgml:
10216         * docs/gst/tmpl/gstshaper.sgml:
10217         * docs/gst/tmpl/gstspider.sgml:
10218         * docs/gst/tmpl/gstspideridentity.sgml:
10219         * docs/gst/tmpl/gststatistics.sgml:
10220         * docs/gst/tmpl/gstsystemclock.sgml:
10221         * docs/gst/tmpl/gsttee.sgml:
10222         * docs/gst/tmpl/gstthread.sgml:
10223         * docs/gst/tmpl/gsttypefind.sgml:
10224         * docs/gst/tmpl/gstutils.sgml:
10225           further doc build fixes
10226
10227 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10228
10229         * docs/gst/Makefile.am:
10230           make docs exit on scanning problems
10231           fix nonsrcdir build issues
10232         * docs/gst/gstreamer-sections.txt:
10233           adding stuff from -unused
10234         * gst/gstqueue.h:
10235           create GstQueueSize
10236         * gst/schedulers/cothreads_compat.h:
10237           fix cothread warnings
10238
10239 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10240
10241         * docs/gst/gstreamer-sections.txt:
10242           remove defines deprecated by Benjamin
10243
10244 2004-04-07  Benjamin Otte  <otte@gnome.org>
10245
10246         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10247           when the buffer is complete, don't check if other buffers are needed
10248         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10249           check that the offset is >0 so we don't try to read before the
10250           beginning of the file
10251         * gst/gstpad.c: (gst_pad_set_pad_template):
10252           sink the template, so we don't end up with 130k pad templates
10253
10254 2004-04-06  Benjamin Otte  <otte@gnome.org>
10255
10256         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10257           don't ref the element, adding already reffed it. And we didn't unref
10258           it later anyway... (huge memleak when you used many spider elements)
10259         * gst/gstelement.c: (gst_element_base_class_finalize):
10260         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10261         (gst_element_register):
10262         * gst/gsturi.c: (gst_element_make_from_uri):
10263           use gst_object_(un)ref instead of g_object(un)ref
10264
10265 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10266
10267         * gst/gstbuffer.h:
10268           remove macro that wouldn't work anymore because struct member has
10269           been removed.
10270         * gst/schedulers/entryscheduler.c: (schedule_forward):
10271           fix segfault for unconnected pads
10272         
10273 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10274
10275         reviewed by David Schleef <ds@schleef.org>
10276
10277         * gst/gstinfo.h:
10278           *_FORMAT modifiers should require putting a % in front of them for
10279           consistency reasons.
10280
10281 2004-04-05  Colin Walters  <walters@redhat.com>
10282
10283         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10284         space.
10285
10286 2004-04-05  Benjamin Otte  <otte@gnome.org>
10287
10288         * configure.ac:
10289         * gst/Makefile.am:
10290         * gst/gst_private.h:
10291         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10292           add support for detecting if GStreamer runs inside valgrind.
10293           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10294           print a big message in valgrind that GStreamer has detected it's
10295           running inside and might now use different code.
10296         * gst/gstmemchunk.c: (populate), (free_area),
10297         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10298         (gst_mem_chunk_free):
10299           flag memchunks for valgrind, so it can detect leaking of chunks.
10300           This allows detecting leaks of GstBuffer and GstEvent correctly
10301           inside valgrind.
10302
10303 2004-04-05  David Schleef  <ds@schleef.org>
10304
10305         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10306           jensgr@gmx.net (Jens Granseuer)
10307
10308 2004-04-05  David Schleef  <ds@schleef.org>
10309
10310         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10311         (gst_buffer_default_free), (gst_buffer_default_copy),
10312         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10313         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10314         structures in one place.
10315
10316 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10317
10318         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10319           (GST_TIME_FORMAT, GST_TIME_ARGS)
10320
10321 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10322
10323         * testsuite/elements/Makefile.am:
10324           disable test until it stops breaking make distcheck
10325
10326 2004-04-05  Johan Dahlin  <johan@gnome.org>
10327
10328         * po/sv.po: Updated translation
10329
10330 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10331
10332         * gst/gstplugin.c: (gst_plugin_load_file):
10333           fix segfault for when original plugin was loaded statically
10334
10335 2004-04-05  Benjamin Otte  <otte@gnome.org>
10336
10337         * testsuite/debug/category.c: (main):
10338         * testsuite/debug/commandline.c: (main):
10339         * testsuite/debug/output.c: (main):
10340           fix tests to work again with debugging enabled
10341
10342 2004-04-05  Benjamin Otte  <otte@gnome.org>
10343
10344         * gst/schedulers/gstbasicscheduler.c:
10345         (gst_basic_scheduler_pad_link):
10346           fix to work with recent scheduling changes
10347
10348 2004-04-05  Benjamin Otte  <otte@gnome.org>
10349
10350         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10351         prepareChangeLog doesn't work when cvs indents):
10352           don't throw an error when no element can be scheduled, there's too
10353           many weird reasons why it doesn't work. Return STOPPED instead.
10354           decoupled elemts' schedulability doesn't depend on bufpens.
10355
10356 2004-04-04  Benjamin Otte  <otte@gnome.org>
10357
10358         * gst/schedulers/gstbasicscheduler.c:
10359         (gst_basic_scheduler_pad_select):
10360           fix uninitialized variable warnings
10361
10362 2004-04-04  Benjamin Otte  <otte@gnome.org>
10363
10364         * gst/gstpad.c: (gst_pad_collect_valist):
10365           fix uninitialized variable warning
10366         * gst/schedulers/entryscheduler.c: (schedule_forward):
10367           fix shadowed variable
10368
10369 2004-04-04  Benjamin Otte  <otte@gnome.org>
10370
10371         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10372         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10373         (gst_pad_select):
10374         * gst/gstpad.h:
10375         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10376         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10377         * gst/gstscheduler.h:
10378           implement gst_pad_collect as replacement for gst_pad_select.
10379           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10380           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10381           new pad_select, lock and unlock calls.
10382         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10383         * gst/cothreads.h:
10384         * gst/schedulers/cothreads_compat.h:
10385         * gst/schedulers/gthread-cothreads.h:
10386           remove unused cothread_lock and cothread_unlock calls
10387         * gst/schedulers/entryscheduler.c:
10388         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10389         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10390         (gst_entry_scheduler_pad_select):
10391           update to new API
10392         * gst/schedulers/gstbasicscheduler.c:
10393         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10394         (gst_basic_scheduler_pad_select):
10395           remove useless lock and unlock calls, update pad_select to new API
10396           (untested)
10397         * gst/schedulers/gstoptimalscheduler.c:
10398         (gst_opt_scheduler_class_init):
10399           remove useless select, lock and unlock function calls
10400         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10401           use gst_pad_collect instead of gst_pad_select
10402
10403 2004-04-04  Benjamin Otte  <otte@gnome.org>
10404
10405         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10406         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10407         (schedule_next_element), (print_entry):
10408           add can_schedule_pad to handle element states.
10409           add schedule_forward to select the correct entry to schedule next
10410
10411 2004-04-03  Benjamin Otte  <otte@gnome.org>
10412
10413         * gst/schedulers/entryscheduler.c: 
10414           remove unused variable, fix error inside Rb, fix compile warning in
10415           unreachable code
10416
10417 2004-04-03  Benjamin Otte  <otte@gnome.org>
10418
10419         * gst/schedulers/entryscheduler.c:
10420           completely revamp the inner workings, so it's a lot easier to
10421           understand and extend
10422
10423 2004-04-03  Andy Wingo  <wingo@pobox.com>
10424
10425         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10426         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10427         This allows better introspection of pipeline topology.
10428         (add_to_chain): Don't do trickery to put loop elements first;
10429         rather, queue a chain sort by marking the chain as dirty.
10430         (remove_from_chain): Mark the chain dirty.
10431         (sort_chain): New function. Sorts the group list so that terminal
10432         sinks are first. This means elements on the sink side will be
10433         preferentially sscheduled before elements on the src side of the
10434         pipeline.
10435         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10436         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10437         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10438         (group_inc_link): Change argument and variable names to match the
10439         new link structure member names (src and sink).
10440         (group_dec_link): Add some description
10441
10442 2004-04-03  Benjamin Otte  <otte@gnome.org>
10443
10444         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10445         * gst/gstinfo.h:
10446         * testsuite/debug/category.c: (main):
10447         * testsuite/debug/commandline.c: (main):
10448         * testsuite/debug/output.c: (main):
10449         * testsuite/debug/printf_extension.c: (main):
10450           fix to successfully build and test with --disable-gst-debug
10451           configure switch (fixes #138705)
10452
10453 2004-04-03  Benjamin Otte  <otte@gnome.org>
10454
10455         * docs/pwg/building-boiler.xml:
10456           add cvs login line and s/anonymous/anoncvs/
10457
10458 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10459
10460         reviewed by Benjamin Otte  <otte@gnome.org>
10461
10462         * gst/gststructure.c: (gst_structure_free):
10463           memleak fix: free fields array (partial fix for #134839)
10464
10465 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10466
10467         * docs/random/ds/0.9-suggested-changes:
10468           Add a note to change handoff use in fakesrc to be usable in
10469           a more generic way (fakesrc should be renamed to appsrc or so).
10470         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10471           Change signal type to scope, so we can fill the buffer in the
10472           handoff handler (that's the whole use of this signal...).
10473
10474 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10475
10476         * docs/pwg/other-ntoone.xml:
10477           Document muxers and n-to-1 elements.
10478
10479 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10480
10481         * gst/registries/gstxmlregistry.c
10482         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10483         determine if a file is a G_MODULE. The old one discards paths
10484         containing "so" somewhere in the middle. My home directory is
10485         called "soto". Go figure...
10486
10487 2004-03-31  David Schleef  <ds@schleef.org>
10488
10489         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10490         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10491         * gst/gstbuffer.h:
10492
10493 2004-03-31  David Schleef  <ds@schleef.org>
10494
10495         * gst/gstvalue.c: (gst_value_union_int_int_range),
10496         (gst_value_union_int_range_int_range), (gst_value_can_union),
10497         (gst_value_union), (_gst_value_initialize):  Add some union
10498         implementations.  We didn't have any previously.
10499         * testsuite/caps/Makefile.am:
10500         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10501         (gst_audioscale_getcaps), (test_caps), (main): A little test
10502         that is the same as the caps manipulation in audioscale.
10503
10504 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10505
10506         * docs/faq/general.xml:
10507           add entry about "does gst support format X?"
10508
10509 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10510
10511         * gst/gstthread.c:
10512           fix docs
10513         * gst/gstutils.h:
10514           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10515
10516 2004-03-30  Benjamin Otte  <otte@gnome.org>
10517
10518         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10519           set the offset of the buffer to the requested offset
10520         * gst/elements/gsttypefind.c: (stop_typefinding):
10521           revert patch 1.18 (which I unfortunately don't know the reason for).
10522           This is needed to allow downstream elements to seek. Otherwise
10523           typefind might overwrite a previous seek by downstream elements.
10524           This lead to errors with id3tag and typefind on some mp3s.
10525         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10526         (gst_entry_scheduler_iterate):
10527           be more verbose when debugging
10528
10529 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10530
10531         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10532           make sure we don't get NULL strings
10533
10534 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10535
10536         * gst/gstcaps.c:
10537         * gst/gstelement.c:
10538         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10539         * gst/gstindex.c: (gst_index_resolver_get_type),
10540         (gst_index_get_type), (gst_index_factory_get_type):
10541         * gst/gstinfo.c:
10542         * gst/gstpad.c:
10543         * gst/gstplugin.c:
10544         * gst/gsturi.c: (gst_uri_handler_get_type):
10545         * gst/gstvalue.c:
10546           first batch of documentation fixes
10547
10548 2004-03-29  David Schleef  <ds@schleef.org>
10549
10550         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10551         * docs/gst/gstreamer-docs.sgml:  More hacking
10552         * docs/gst/gstreamer-sections.txt:
10553         * docs/gst/tmpl/cothreads_compat.sgml:
10554         * docs/gst/tmpl/gstcaps.sgml:
10555         * docs/gst/tmpl/gstclock.sgml:
10556         * docs/gst/tmpl/gstelement.sgml:
10557         * docs/gst/tmpl/gstevent.sgml:
10558         * docs/gst/tmpl/gstpad.sgml:
10559         * docs/gst/tmpl/gstutils.sgml:
10560         * docs/gst/tmpl/gstxml.sgml:
10561         * docs/gst/tmpl/gthread-cothreads.sgml:
10562         * docs/random/ds/0.9-suggested-changes:
10563         * gst/elements/gstfakesink.h: doc fixes
10564         * gst/elements/gstfakesrc.h: doc fixes
10565         * gst/gstcaps.c: doc fixes
10566         * gst/gstcaps.h: doc fixes
10567         * gst/gstelement.c: doc fixes
10568         * gst/gstelement.h: doc fixes
10569         * gst/gstindex.c: doc fixes
10570         * gst/gstinfo.c: doc fixes
10571         * gst/gstpad.c: doc fixes
10572         * gst/gstpad.h: doc fixes
10573         * gst/gstplugin.c: doc fixes
10574         * gst/gsttypefind.h: doc fixes
10575         * gst/gsturi.c: doc fixes
10576         * gst/gstvalue.c: doc fixes
10577
10578 2004-03-29  Colin Walters  <walters@redhat.com>
10579
10580         * gst/registries/gstxmlregistry.c (get_time)
10581         (plugin_times_older_than_recurse):
10582         Use the result of stat to determine whether a path is a file,
10583         so we don't attempt to opendir() files.
10584
10585 2004-03-29  Benjamin Otte  <otte@gnome.org>
10586
10587         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10588           print caps in debugging output when setting caps failed
10589         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10590         (schedule_next_element), (get_buffer), (run_chainhandler),
10591         (element_may_start), (gst_entry_scheduler_chain_handler),
10592         (gst_entry_scheduler_get_handler),
10593         (gst_entry_scheduler_state_transition),
10594         (gst_entry_scheduler_pad_link):
10595           make this scheduler a testcase for mandatory
10596           discont-before-first-buffer which is needed if we want to allow apps
10597           to release the sound device.
10598           add SCHED_ASSERT macro to print scheduler state before an assertion
10599           triggers.
10600
10601 2004-03-29  Benjamin Otte  <otte@gnome.org>
10602
10603         * COPYING:
10604           replace by LGPL (former COPYING.LIB). The core is completely
10605           licensed LGPL.
10606         * COPYING.LIB:
10607           remove
10608
10609 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10610
10611         * po/af.po:
10612         * po/sv.po:
10613           updated Afrikaans and Swedish
10614
10615 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10616
10617         * po/LINGUAS:
10618         * po/az.po:
10619           adding Azerbaijani (Mətin Əmirov)
10620
10621 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10622
10623         * gst/gstelement.h: 
10624         * gst/gstelement.c (gst_element_set_time_delay): New function for
10625         setting element time taking into account a hardware buffering
10626         delay.
10627         (gst_element_set_time): Now just an invocation of
10628         gst_element_set_time_delay.
10629         * gst/gstclock.h: 
10630         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10631         allowing to set event times in the future.
10632         (gst_clock_get_event_time): Now just an invocation of
10633         gst_clock_get_event_time_delay.
10634
10635 2004-03-28  Benjamin Otte  <otte@gnome.org>
10636
10637         * gst/gstbin.c: (gst_bin_set_element_sched),
10638         (gst_bin_unset_element_sched):
10639           don't add decoupled elements to schedulers - otherwise it's
10640           impossible to control if a link to a decoupled element was already
10641           removed from a scheduler or not.
10642         * gst/schedulers/cothreads_compat.h:
10643         * gst/schedulers/gthread-cothreads.h:
10644           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10645           is no "unused" warning.
10646         * gst/schedulers/Makefile.am:
10647         * gst/schedulers/entryscheduler.c:
10648           add new scheduler, based on ideas from talking to David and Martin.
10649           It's supposed to be small and correct. Currently it's also slow (but
10650           it's not noticable)
10651         * examples/retag/retag.c: (main):
10652         * testsuite/bytestream/test1.c: (main):
10653           fix missing NULLs at end of variadic functions
10654         * testsuite/elements/.cvsignore:
10655           update
10656
10657 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10658
10659         * gst/gstevent.h:
10660         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10661
10662 2004-03-25  David Schleef  <ds@schleef.org>
10663
10664         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10665         * docs/gst/tmpl/gstaggregator.sgml:
10666         * docs/gst/tmpl/gstautoplugfactory.sgml:
10667         * docs/gst/tmpl/gstbin.sgml:
10668         * docs/gst/tmpl/gstbuffer.sgml:
10669         * docs/gst/tmpl/gstbufferstore.sgml:
10670         * docs/gst/tmpl/gstfakesink.sgml:
10671         * docs/gst/tmpl/gstfakesrc.sgml:
10672         * docs/gst/tmpl/gstmd5sink.sgml:
10673         * docs/gst/tmpl/gstreamer-unused.sgml:
10674         * docs/gst/tmpl/gstsearchfuncs.sgml:
10675         * docs/gst/tmpl/gstshaper.sgml:
10676         * docs/gst/tmpl/gstspider.sgml:
10677         * docs/gst/tmpl/gsttee.sgml:
10678         * docs/gst/tmpl/gstutils.sgml:
10679         * docs/gst/tmpl/gstvalue.sgml:
10680         * docs/gst/tmpl/gstxml.sgml:
10681         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10682         and we don't support it.
10683         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10684         (gst_use_threads), (gst_has_threads): same
10685         * gst/gstthreaddummy.c: same
10686         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10687         * gst/autoplug/gstspider.h: same
10688         * gst/elements/gstaggregator.h: Remove bogus function from header
10689         * gst/elements/gstfakesink.h: same
10690         * gst/elements/gstfakesrc.h: same
10691         * gst/elements/gstmd5sink.h: same
10692         * gst/elements/gstshaper.h: same
10693         * gst/elements/gsttee.h: same
10694         * gst/gstbin.c: doc fixes
10695         * gst/gstbin.h: Remove unused definition.
10696         * gst/gstbuffer.c: doc fixes
10697         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10698         * gst/gstfilter.c: doc fixes
10699         * gst/gsttag.c: doc fixes
10700         * gst/gstvalue.c: doc fixes
10701
10702 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10703
10704         * docs/pwg/advanced-types.xml:
10705           Document typefinding.
10706         * docs/pwg/other-oneton.xml:
10707           Document one-to-n elements, demuxers and parsers.
10708
10709 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10710
10711         reviewed by: David Schleef  <ds@schleef.org>
10712
10713         * configure.ac: Check bison version (bug #127838)
10714
10715 2004-03-25  David Schleef  <ds@schleef.org>
10716
10717         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10718         * docs/gst/gstreamer-sections.txt:
10719         * docs/gst/tmpl/gstautoplug.sgml:
10720         * docs/gst/tmpl/gststaticautoplug.sgml:
10721         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10722         * docs/gst/tmpl/gstutils.sgml:
10723         * docs/gst/tmpl/gstxml.sgml:
10724
10725 2004-03-24  David Schleef  <ds@schleef.org>
10726
10727         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10728         manual being such complete crap, that I decided to do major
10729         hacking of it.  This checkin replaces any fine tuning that
10730         may have been done previously, with the benefit of actually
10731         being complete for much of the API that was changed since
10732         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10733         * docs/gst/gstreamer-sections.txt:
10734         * docs/gst/tmpl/GstBin.sgml:
10735         * docs/gst/tmpl/GstBuffer.sgml:
10736         * docs/gst/tmpl/GstCaps.sgml:
10737         * docs/gst/tmpl/GstClock.sgml:
10738         * docs/gst/tmpl/GstCompat.sgml:
10739         * docs/gst/tmpl/GstData.sgml:
10740         * docs/gst/tmpl/GstElement.sgml:
10741         * docs/gst/tmpl/GstEvent.sgml:
10742         * docs/gst/tmpl/GstIndex.sgml:
10743         * docs/gst/tmpl/GstStructure.sgml:
10744         * docs/gst/tmpl/GstTag.sgml:
10745         * docs/gst/tmpl/cothreads.sgml:
10746         * docs/gst/tmpl/cothreads_compat.sgml:
10747         * docs/gst/tmpl/gettext.sgml:
10748         * docs/gst/tmpl/grammar.tab.sgml:
10749         * docs/gst/tmpl/gst-i18n-app.sgml:
10750         * docs/gst/tmpl/gst-i18n-lib.sgml:
10751         * docs/gst/tmpl/gst.sgml:
10752         * docs/gst/tmpl/gst_private.sgml:
10753         * docs/gst/tmpl/gstaggregator.sgml:
10754         * docs/gst/tmpl/gstarch.sgml:
10755         * docs/gst/tmpl/gstatomic.sgml:
10756         * docs/gst/tmpl/gstatomic_impl.sgml:
10757         * docs/gst/tmpl/gstbin.sgml:
10758         * docs/gst/tmpl/gstbuffer.sgml:
10759         * docs/gst/tmpl/gstbufferstore.sgml:
10760         * docs/gst/tmpl/gstcaps.sgml:
10761         * docs/gst/tmpl/gstclock.sgml:
10762         * docs/gst/tmpl/gstcompat.sgml:
10763         * docs/gst/tmpl/gstconfig.sgml:
10764         * docs/gst/tmpl/gstcpu.sgml:
10765         * docs/gst/tmpl/gstdata.sgml:
10766         * docs/gst/tmpl/gstdata_private.sgml:
10767         * docs/gst/tmpl/gstelement.sgml:
10768         * docs/gst/tmpl/gstenumtypes.sgml:
10769         * docs/gst/tmpl/gsterror.sgml:
10770         * docs/gst/tmpl/gstevent.sgml:
10771         * docs/gst/tmpl/gstfakesink.sgml:
10772         * docs/gst/tmpl/gstfakesrc.sgml:
10773         * docs/gst/tmpl/gstfilesink.sgml:
10774         * docs/gst/tmpl/gstfilter.sgml:
10775         * docs/gst/tmpl/gstindex.sgml:
10776         * docs/gst/tmpl/gstinfo.sgml:
10777         * docs/gst/tmpl/gstinterface.sgml:
10778         * docs/gst/tmpl/gstlog.sgml:
10779         * docs/gst/tmpl/gstmacros.sgml:
10780         * docs/gst/tmpl/gstmarshal.sgml:
10781         * docs/gst/tmpl/gstmd5sink.sgml:
10782         * docs/gst/tmpl/gstmultifilesrc.sgml:
10783         * docs/gst/tmpl/gstobject.sgml:
10784         * docs/gst/tmpl/gstpad.sgml:
10785         * docs/gst/tmpl/gstparse.sgml:
10786         * docs/gst/tmpl/gstpipeline.sgml:
10787         * docs/gst/tmpl/gstplugin.sgml:
10788         * docs/gst/tmpl/gstpluginfeature.sgml:
10789         * docs/gst/tmpl/gstqueue.sgml:
10790         * docs/gst/tmpl/gstreamer-unused.sgml:
10791         * docs/gst/tmpl/gstregistry.sgml:
10792         * docs/gst/tmpl/gstregistrypool.sgml:
10793         * docs/gst/tmpl/gstscheduler.sgml:
10794         * docs/gst/tmpl/gstsearchfuncs.sgml:
10795         * docs/gst/tmpl/gstshaper.sgml:
10796         * docs/gst/tmpl/gstspider.sgml:
10797         * docs/gst/tmpl/gstspideridentity.sgml:
10798         * docs/gst/tmpl/gststructure.sgml:
10799         * docs/gst/tmpl/gstsystemclock.sgml:
10800         * docs/gst/tmpl/gsttag.sgml:
10801         * docs/gst/tmpl/gsttaginterface.sgml:
10802         * docs/gst/tmpl/gsttee.sgml:
10803         * docs/gst/tmpl/gstthread.sgml:
10804         * docs/gst/tmpl/gsttrace.sgml:
10805         * docs/gst/tmpl/gsttrashstack.sgml:
10806         * docs/gst/tmpl/gsttypefind.sgml:
10807         * docs/gst/tmpl/gsttypes.sgml:
10808         * docs/gst/tmpl/gsturi.sgml:
10809         * docs/gst/tmpl/gsturitype.sgml:
10810         * docs/gst/tmpl/gstutils.sgml:
10811         * docs/gst/tmpl/gstvalue.sgml:
10812         * docs/gst/tmpl/gstversion.sgml:
10813         * docs/gst/tmpl/gstxml.sgml:
10814         * docs/gst/tmpl/gstxmlregistry.sgml:
10815         * docs/gst/tmpl/gthread-cothreads.sgml:
10816         * docs/gst/tmpl/types.sgml:
10817
10818 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10819
10820         * docs/pwg/other-sink.xml:
10821         * docs/pwg/other-source.xml:
10822           Documentation on how to write source and sink elements. Other
10823           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10824           manager, autoplugger) are all still pending.
10825
10826 2004-03-25  Benjamin Otte  <otte@gnome.org>
10827
10828         * testsuite/elements/Makefile.am:
10829         * testsuite/elements/gst-compprep-check:
10830           add check to make sure gst-compprep works
10831         * testsuite/elements/gst-inspect-check.in:
10832           improve initialization output
10833         * testsuite/Makefile.am:
10834         * testsuite/gst-inspect-check:
10835           remove old file
10836
10837 2004-03-24  David Schleef  <ds@schleef.org>
10838
10839         * testsuite/elements/Makefile.am:
10840         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10841         to the testsuite.
10842
10843 2004-03-24  Benjamin Otte  <otte@gnome.org>
10844
10845         * libs/gst/control/dparam.c: (gst_dparam_attach),
10846         (gst_dparam_detach):
10847         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10848           fix lvalue casts for real
10849
10850 2004-03-24  Benjamin Otte  <otte@gnome.org>
10851
10852         * gst/schedulers/gstbasicscheduler.c:
10853         (gst_basic_scheduler_src_wrapper):
10854         * gst/schedulers/gstoptimalscheduler.c:
10855         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10856         (pad_clear_queued), (gst_opt_scheduler_add_element),
10857         (gst_opt_scheduler_remove_element):
10858           fix GStreamer to not have issues with lvalue casts anymore (fixes
10859           #136841)
10860
10861 2004-03-24  Benjamin Otte  <otte@gnome.org>
10862
10863         * gst/gstelement.c:
10864           add documentation about a gobject quirk where the object hasn't the
10865           correct class pointer set on initialization
10866         * gst/schedulers/gstbasicscheduler.c:
10867         (gst_basic_scheduler_src_wrapper):
10868           make sure to not run into an infinite loop
10869
10870 2004-03-22  Benjamin Otte  <otte@gnome.org>
10871
10872         * gst/gstutils.c: (gst_util_dump_mem):
10873         * gst/gstutils.h:
10874           first argument of gst_util_dump_mem should be const
10875
10876 2004-03-22  Johan Dahlin  <johan@gnome.org>
10877
10878         * gst/gstvalue.h: Clean up a little bit.
10879
10880 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10881
10882         reviewed by Benjamin Otte  <otte@gnome.org>
10883
10884         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10885         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10886         (gst_aggregator_class_init), (gst_aggregator_init):
10887         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10888         (gst_filesrc_dispose), (gst_filesrc_set_location):
10889         * gst/elements/gstidentity.c: (gst_identity_finalize),
10890         (gst_identity_class_init), (gst_identity_chain):
10891         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10892         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10893         (gst_statistics_class_init):
10894         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10895         (gst_tee_get_property):
10896           clean up used memory in this elements correctly on teardown (closes
10897           #137279)
10898
10899 2004-03-20  Colin Walters  <walters@redhat.com>
10900
10901         * gst/registries/gstxmlregistry.c:
10902         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10903         registry saving atomic.
10904
10905 2004-03-20  Colin Walters  <walters@redhat.com>
10906
10907         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10908         Just use
10909         access() instead of actually creating and deleting files.
10910
10911 2004-03-18  David Schleef  <ds@schleef.org>
10912
10913         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10914         (bug #137625)
10915
10916 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10917
10918         * po/sv.po: updated translation (Christian Rose)
10919
10920 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10921
10922         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10923         (gst_filesink_get_query_types), (_do_init),
10924         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10925           return FALSE silently
10926         * po/af.po: updated translation (Petri Jooste)
10927
10928 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10929
10930         * Makefile.am:
10931         * configure.ac:
10932           dist common properly
10933         * po/af.po:
10934         * po/fr.po:
10935         * po/nl.po:
10936         * po/sr.po:
10937         * po/sv.po:
10938           refreshing translations
10939
10940 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10941
10942         * po/LINGUAS:
10943         * po/sv.po:
10944         * po/af.po:
10945           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10946
10947 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10948
10949         * Makefile.am: use common/release.mak
10950
10951 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10952
10953         * docs/faq/gst-uninstalled:
10954           adding gst-monkeysaudio to the list of possible plugin dirs
10955
10956 2004-03-16  David Schleef  <ds@schleef.org>
10957
10958         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10959         (gst_init_check_with_popt_table):  Fix some gettext strings to
10960         make them easier to translate.  Required making the strings
10961         non-const.
10962
10963 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10964
10965         * configure.ac: bump nano to 1
10966
10967 === release 0.8.0 ===
10968
10969 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10970
10971         * configure.ac: release 0.8.0, "Executive Slacks"
10972
10973 2004-03-16  Johan Dahlin  <johan@gnome.org>
10974
10975         * gst/schedulers/gstoptimalscheduler.c
10976         (gst_opt_scheduler_pad_unlink): Remove double ;,
10977         spotted by Scott Wheeler
10978
10979 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10980
10981         * configure.ac: bump libtool version
10982
10983 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10984
10985         * gst/gstcaps.h:
10986         * gst/gststructure.h:
10987           add reserved padding
10988
10989 2004-03-15  Benjamin Otte  <otte@gnome.org>
10990
10991         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10992           set the first parameter for select call correctly.
10993           (fixes #137230)
10994
10995 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10996
10997         * *.c,*.h: don't mix tabs and spaces
10998
10999 2004-03-15  Johan Dahlin  <johan@gnome.org>
11000
11001         * gst/schedulers/gstoptimalscheduler.c
11002         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11003         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11004
11005         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11006         
11007 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11008
11009         * testsuite/Rules:
11010           fix gst-register rules
11011
11012 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11013
11014         * testsuite/Rules:
11015           use versioned gst-register
11016
11017 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11018
11019         * docs/libs/gstreamer-libs-sections.txt:
11020           remove </SUBSECTION>
11021         * gst/gstplugin.c:
11022         * gst/gstregistry.c: (gst_registry_add_plugin):
11023         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11024         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11025           add debugging and fix some comment blocks
11026
11027 2004-03-15  Johan Dahlin  <johan@gnome.org>
11028
11029         * *.h: Revert indent changes.
11030         
11031 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11032
11033         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11034           g_error_free the g_error
11035         * tools/gst-feedback-m.m:
11036           check for other versions of gstreamer
11037         * tools/gst-indent:
11038           use sh, not bash
11039
11040 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11041
11042         * tools/gst-register.c: do not spill paths when registries are not
11043           writable, until we fix the "user running gst-register" case.
11044
11045 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11046
11047         * *.c, *.h: commit of gst-indent run on core
11048
11049 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11050
11051         * tools/gst-indent:
11052         * tools/Makefile.am:
11053           add our indentation style as a script
11054
11055 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11056
11057         * po/sr.po:
11058         * po/LINGUAS:
11059           added Serbian translation
11060
11061 2004-03-13  Benjamin Otte  <otte@gnome.org>
11062
11063         * gst/gstelement.c:
11064           add documentation note about gst_element_found_tags_for_pad not
11065           being usable in getfunctions. (see #137042)
11066
11067 2004-03-12  David Schleef  <ds@schleef.org>
11068
11069         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11070         change API right now!  Readd gst_caps_is_simple() macro.
11071         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11072         uninitialized variable.  I'd bet this caused crashes.
11073         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11074
11075 2004-03-12  Johan Dahlin  <johan@gnome.org>
11076
11077         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11078         * gst/gstcaps.h: Clean up
11079
11080         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11081         _gst_caps_initalize()
11082
11083         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11084         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11085
11086         * gst/gststructure.c (gst_structure_get_type): Ditto
11087
11088         * gst/gststructure.h: Ditto
11089         
11090 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11091
11092         * gst/gstqueue.c: (gst_queue_init):
11093           Reset default max. values in queues. Reason is simply to avoid
11094           braindead use. If you want wider values, use the properties. The
11095           default is supposed to always work. Wider values would make this
11096           beast a memory hog by default (250 full-PAL RGB32 video frames?
11097           That's 440 MB! No thank you).
11098
11099 2004-03-10  David Schleef  <ds@schleef.org>
11100
11101         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11102         were found.  (bug #136793)
11103
11104 2004-03-10  Johan Dahlin  <johan@gnome.org>
11105
11106         * gst/schedulers/gstoptimalscheduler.c
11107         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11108         links to elements within the same group, so we can finally remove
11109         that annoying warning. Refactor the code a little bit
11110         (group_dec_links_for_element): Split out
11111
11112 2004-03-09  David Schleef  <ds@schleef.org>
11113
11114         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11115         (bug #134863)
11116
11117 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11118
11119         * configure.ac: first bug fix due to major/minor bump
11120
11121 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11122
11123         * configure.ac: bump nano to 1
11124
11125 === release 0.7.6 ===
11126
11127 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11128
11129         * NEWS:
11130         * RELEASE:
11131         * configure.ac:
11132           releasing 0.7.6, "Almost"
11133         * po/fr.po:
11134         * po/nl.po:
11135         * tools/Makefile.am:
11136         * tools/gst-feedback-m.m:
11137           unversioned source
11138
11139 2004-03-09  Johan Dahlin  <johan@gnome.org>
11140
11141         Reviewed by: Thomas Vander Stichele
11142
11143         * gst/gstelement.c (gst_element_class_init): register second
11144         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11145         language bindings can (de)marshall correctly.
11146
11147         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11148
11149         * gst/gsterror.c (gst_g_error_get_type): New function
11150
11151         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11152         with VOID:OBJECT,OBJECT,STRING 
11153
11154 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11155
11156         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11157         Free a leaked g_timer on early returns.
11158
11159 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11160
11161         * docs/pwg/advanced-types.xml:
11162           Add cinepak description.
11163
11164 2004-03-07  David Schleef  <ds@schleef.org>
11165
11166         * docs/random/mimetypes:  Added cinepak description
11167
11168 2004-03-07  Andy Wingo  <wingo@pobox.com>
11169
11170         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11171
11172         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11173         there are no links to other groups when a group is destroyed.
11174         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11175         removed from a group, make sure the link count to elements linked
11176         to other pads is appropriately decremented. This really fixes
11177         #135672.
11178
11179         The 1.60->1.61 patch has been reapplied in light of this fix.
11180
11181         * gst/gstelement.c (gst_element_dispose): Really protect against
11182         multiple invocations this time.
11183
11184 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11185
11186         * docs/gst/gstreamer-sections.txt:
11187         * docs/gst/tmpl/gsttag.sgml:
11188           remove some deprecated functions, document some existing ones
11189         * gst/gsttag.c: (gst_tag_get_flag):
11190         * gst/gsttag.h:
11191           add accessor function
11192
11193 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11194
11195         * docs/gst/gstreamer-sections.txt:
11196         * docs/gst/tmpl/gsttag.sgml:
11197         * docs/gst/tmpl/gstxml.sgml:
11198         * gst/gsttag.c: (gst_tag_get_flag):
11199         * gst/gsttag.h:
11200
11201 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11202
11203         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11204         leak
11205
11206 2004-03-05  David Schleef  <ds@schleef.org>
11207
11208         * REQUIREMENTS: Add bison and flex.
11209         * configure.ac: Fix comment about bison.
11210         * docs/random/ds/0.9-suggested-changes: yer ma
11211         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11212
11213 2004-03-05  Benjamin Otte  <otte@gnome.org>
11214
11215         * gst/gstelement.c: (gst_element_error_full):
11216           revert recent recursive state changing commit - messing with other
11217           elements' states is evil and should be done by apps only.
11218
11219 2004-03-05  Benjamin Otte  <otte@gnome.org>
11220
11221         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11222           check for empty intersection instead of NULL caps
11223         (gst_element_get_compatible_pad_filtered):
11224           remove old workaround that is only a bug nowadays
11225
11226 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11227
11228         * gst/gstelement.c: (gst_element_error_full):
11229           make elements try to recursively change state to PAUSED on all
11230           parents after an error to suppress ensuing warnings
11231         * gst/parse/grammar.y:
11232           make it check if it was able to sync the state, and throw an error
11233           if not, so stuff like
11234           oggdemux ! vorbisdec ! osssink gets caught
11235
11236 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11237
11238         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11239           it contains lib64; use AS_AC_EXPAND to handle it properly
11240
11241 2004-03-05  David Schleef  <ds@schleef.org>
11242
11243         * gst/gstcpuid_i386.s:  Remove unused code
11244         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11245         (gst_getbits_newbuf): Remove MMX code
11246         * libs/gst/getbits/getbits.h: Remove MMX code
11247
11248 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11249
11250         * debian/.cvsignore:
11251         * debian/README.Debian:
11252         * debian/changelog:
11253         * debian/control:
11254         * debian/control.in:
11255         * debian/copyright:
11256         * debian/gstreamer-core-libs-dev.files:
11257         * debian/gstreamer-core-libs.files:
11258         * debian/gstreamer-core.files:
11259         * debian/gstreamer-core.postinst:
11260         * debian/gstreamer-core.postrm:
11261         * debian/gstreamer-doc.files:
11262         * debian/gstreamer-doc.links:
11263         * debian/gstreamer-doc.lintian:
11264         * debian/gstreamer-runtime.files:
11265         * debian/gstreamer-runtime.manpages:
11266         * debian/gstreamer-runtime.postinst:
11267         * debian/gstreamer-runtime.postrm:
11268         * debian/gstreamer-tools.files:
11269         * debian/gstreamer-tools.manpages:
11270         * debian/libgstreamer-dev.files:
11271         * debian/libgstreamer0.4.1.files:
11272         * debian/libgstreamerVERSION.files:
11273         * debian/rules:
11274         Debian package info not maintained here.
11275
11276 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11277
11278         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11279         * gst/gstbin.c: (gst_bin_class_init):
11280         * gst/gstelement.c: (gst_element_class_init):
11281         * gst/gstindex.c: (gst_index_class_init):
11282         * gst/gstobject.c: (gst_object_class_init),
11283         (gst_signal_object_class_init):
11284         * gst/gstpad.c: (gst_pad_template_class_init):
11285         * gst/gstregistry.c: (gst_registry_class_init):
11286         * gst/gsturi.c: (gst_uri_handler_base_init):
11287         * gst/gstxml.c: (gst_xml_class_init):
11288         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11289         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11290           make all signal names use dashes instead of underscore
11291
11292 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11293
11294         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11295
11296 2004-03-03  Benjamin Otte  <otte@gnome.org>
11297
11298         * gst/schedulers/gstoptimalscheduler.c:
11299           revert last commit by Andy Wingo. It causes segfaults on unreffing
11300           in Rhythmbox. (see bug #135672)
11301
11302 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11303
11304         * po/fr.po: fix typo
11305
11306 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11307
11308         * tools/gst-inspect.c: (main): 
11309         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11310
11311 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11312
11313         * configure.ac:
11314           get GLIB_ONLY and POPT flags for the nonversioned binaries
11315         * tools/Makefile.am:
11316           use them
11317
11318 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11319
11320         * gst/gst.c: (init_post):
11321           change so that GST_REGISTRY now is where the global registry gets
11322           saved, since that is where plugins now get attached to first, and
11323           spilled over to the user registry.  Note that in the case of using
11324           GST_REGISTRY env var, we don't want to affect any real registries
11325           beyond the one given by this var, and thus we don't set a user
11326           registry to spill to.  So make sure GST_REGISTRY is writable.
11327
11328 2004-03-01  David Schleef  <ds@schleef.org>
11329
11330         * AUTHORS:  Added some names.  Add yourself if you're missing.
11331
11332 2004-03-01  David Schleef  <ds@schleef.org>
11333
11334         * MAINTAINERS: Add
11335
11336 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11337
11338         * configure.ac:
11339           remove whitespace
11340         * docs/gst/tmpl/gstbuffer.sgml:
11341         * docs/gst/tmpl/gstdata.sgml:
11342         * docs/gst/tmpl/gstreamer-unused.sgml:
11343         * docs/gst/tmpl/gstxml.sgml:
11344           doc update
11345         * docs/manuals.mak:
11346           add a FIXME
11347         * docs/pwg/intro-preface.xml:
11348         * docs/pwg/pwg.xml:
11349           remove GNOME
11350         * gst/gst.c: (init_post):
11351           try GST_PLUGIN_PATH paths for the _global_registry first
11352         * gst/gstelement.h:
11353           add the error message as well, otherwise (null) debug info doesn't
11354           make much sense
11355         * tools/gst-register.c: (main):
11356           spill paths to next registry if this registry is not writable
11357         * po/fr.po:
11358         * po/nl.po:
11359           translation updates
11360
11361 2004-03-01  Johan Dahlin  <johan@gnome.org>
11362
11363         * gst/gstbuffer.c (_gst_buffer_initialize): 
11364         * gst/gstdata.c (gst_data_get_type): 
11365         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11366         instead of ref, since some applications that uses GBoxed
11367         routines depends on a function that actually returns a copy.
11368
11369 2004-02-27  Benjamin Otte  <otte@gnome.org>
11370
11371         * gst/gstbuffer.h:
11372           remove gst_buffer_free, use gst_data_unref
11373         * gst/gstdata.c: (gst_data_get_type):
11374           use refcounting in GstData GBoxed registration
11375         * gst/gstdata.h:
11376           remove gst_data_free, use gst_data_unref
11377
11378 2004-02-27  Johan Dahlin  <johan@gnome.org>
11379
11380         * gst/gstdata.c (gst_data_get_type): New function, register
11381         GstData as a GBoxed type.
11382
11383         * gst/gstdata.h (GST_TYPE_DATA): New macro
11384
11385 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11386
11387         * Makefile.am:
11388         * gstreamer.spec.in:
11389           put back RELEASE
11390         * gst/Makefile.am:
11391           clean up non-disting of built files
11392         * testsuite/debug/commandline.c:
11393           test fix for option rename
11394
11395 2004-02-26  David Schleef  <ds@schleef.org>
11396
11397         * configure.ac:  We don't really need glib-2.3.  Also remove
11398         some unneeded checks for library functions.
11399         * gst/Makefile.am:  Instead, we need to not dist files created
11400         by glib-genmarshal.
11401
11402 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11403
11404         * configure.ac:
11405           bump glib required version to 2.3.0 for g_value_takes_boxed
11406
11407  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11408
11409         * common/m4/gst-docs.m4
11410         change flavour text from enable to disable as enable is our default
11411         closes bug Bug 135304
11412
11413 === release 0.7.5 ===
11414  
11415  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11416  
11417         * NEWS:
11418           instate NEWS file
11419         * Makefile.am:
11420         * gstreamer.spec.in:
11421         * RELEASE:
11422           put back release
11423         * configure.ac:
11424         * docs/random/release:
11425           more updates
11426
11427 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11428
11429         * gst/gsttag.c: (_gst_tag_initialize):
11430         * po/fr.po:
11431         * po/nl.po:
11432           remove hyphen from codec tags
11433
11434 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11435
11436         * gst/parse/Makefile.am:
11437           fix dependency so that a make from a clean build works the first
11438           time
11439
11440 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11441
11442         * docs/random/release:
11443           update release strategy
11444         * po/fr.po:
11445           auto-update po file
11446         * po/nl.po:
11447           update dutch translation
11448
11449 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11450
11451         * docs/manual/debugging.xml:
11452         fix manual for new debugging system
11453
11454 2004-02-25  Andy Wingo  <wingo@pobox.com>
11455
11456         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11457         gst_pad_link_prepare. Please email the list with specific reasons
11458         for reverting.
11459
11460 2004-02-24  Andy Wingo  <wingo@pobox.com>
11461
11462         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11463         invocations.
11464
11465         * gst/schedulers/gstoptimalscheduler.c:
11466         I added a mess of prototypes at the top of the file by way of
11467         documentation. Some of the operations on chains and groups were
11468         re-organized.
11469
11470         (create_group): Added a type argument so if the group is enabled,
11471         the setup_group_scheduler knows what to do.
11472         (group_elements): Added a type argument here, too, to be passed on
11473         to create_group.
11474         (group_element_set_enabled): If an unlinked PLAYING element is
11475         added to a bin, we have to create a new group to hold the element,
11476         and this function will be called before the group is added to the
11477         chain. Thus we have a valid case for group->chain==NULL. Instead
11478         of calling chain_group_set_enabled, just set the flag on the group
11479         (the chain's status will be set when the group is added to it).
11480         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11481         Setup the group scheduler when the group is enabled, not
11482         specifically when an element goes PAUSED->PLAYING. This means
11483         PLAYING elements can be added, linked, and scheduled into a
11484         PLAYING pipeline, as was intended.
11485         (add_to_group): Don't ref the group twice. I don't know when this
11486         double-ref got in here. Removing it has the potential to cause
11487         segfaults if other parts of the scheduler are buggy. If you find
11488         that the scheduler is segfaulting for you, put in an extra ref
11489         here and see if that hacks over the underlying issue. Of course,
11490         then find out what code is unreffing a group it doesn't own...
11491         (create_group): Make the extra refcount floating, and remove it
11492         after adding the element. This means that...
11493         (unref_group): Destroy when the refcount reaches 0, not 1, like
11494         every other refcounted object in the known universe.
11495         (remove_from_group): When a group becomes empty, set it to be not
11496         active, and remove it from its chain. Don't unref it again,
11497         there's no floating reference any more.
11498         (destroy_group): We have to remove the group from the chain in
11499         remove_from_group (rather than here) to break refcounting cycles
11500         (the chain always has a ref on the group). So assert that
11501         group->chain==NULL.
11502         (ref_group_by_count): Removed, it was commented out anyway.
11503         (merge_chains): Use the remove_from_chain and add_to_chain
11504         primitives to do the reparenting, instead of rolling our own
11505         implementation.
11506         (add_to_chain): The first non-disabled group in the chain's group
11507         list will be the entry point for the chain. Because buffers can
11508         accumulate in loop elements' peer bufpens, we preferentially
11509         schedule loop groups before get groups to avoid unnecessary
11510         execution of get-based groups when the bufpens are already full.
11511         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11512         (get_group_schedule_function): Ditto.
11513         (loop_group_schedule_function): Ditto.
11514         (gst_opt_scheduler_loop_wrapper): Ditto.
11515         (gst_opt_scheduler_iterate): Ditto.
11516
11517         I understand the opt scheduler now, yippee!
11518
11519         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11520         (gst_pad_get_name, gst_pad_set_chain_function) 
11521         (gst_pad_set_get_function, gst_pad_set_event_function) 
11522         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11523         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11524         (gst_pad_set_query_function, gst_pad_get_query_types) 
11525         (gst_pad_get_query_types_default) 
11526         (gst_pad_set_internal_link_function) 
11527         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11528         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11529         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11530         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11531         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11532         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11533         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11534         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11535         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11536         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11537         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11538         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11539         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11540         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11541         argument checks, and some doc fixes.
11542
11543         (gst_pad_custom_new_from_template): Um, does anyone
11544         use these functions? Actually make a custom pad instead of a
11545         normal one.
11546         (gst_pad_try_set_caps): Transpose some checks.
11547         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11548         the pad is in negotiation.
11549         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11550         
11551         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11552
11553         * gst/gstelement.h: 
11554         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11555         on the list.
11556
11557 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11558
11559         * gst/gstbin.c: (gst_bin_add):
11560           add error for not being able to add elements
11561
11562 2004-02-22  Julien MOUTTE <julien@moutte.net>
11563
11564         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11565         audio-codec and video-codec.
11566
11567 2004-02-22  Benjamin Otte  <otte@gnome.org>
11568
11569         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11570
11571         * autogen.sh:
11572           replace test -e with test -x for mkinstalldirs to be more portable.
11573           (fixes #134816)
11574
11575 2004-02-22  Benjamin Otte  <otte@gnome.org>
11576
11577         * gst/gstpad.c:
11578           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11579           too noisy
11580         * gst/gsttag.c: (_gst_tag_initialize):
11581         * gst/gsttag.h:
11582           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11583         * libs/gst/control/dparam.c: (gst_dparam_attach):
11584         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11585           check that types for attached dparams match
11586
11587 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11588
11589         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11590         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11591         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11592           fix errors
11593
11594 2004-02-20  Andy Wingo  <wingo@pobox.com>
11595
11596         * gst/gstbin.c:
11597         * gst/gstbuffer.c:
11598         * gst/gstplugin.c:
11599         * gst/registries/gstxmlregistry.c: 
11600         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11601
11602         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11603         (gst_element_add_pad): DEBUG->INFO, some fixes.
11604         (gst_element_get_compatible_pad_template): Just see if the
11605         templates' caps intersect, not if one is a strict subset of the
11606         other. This conforms more to what gst_pad_link_intersect() does.
11607         (gst_element_class_add_pad_template): Don't memcpy the pad
11608         template, just ref it.
11609         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11610
11611         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11612         (gst_pad_link_filtered): Debug changes.
11613         (gst_pad_link_prepare): New function, consolidated from
11614         can_link_filtered and link_filtered.
11615
11616         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11617         look more like that of the functions in gstelement.c
11618
11619         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11620         object, and return the empty string if object is NULL.
11621
11622         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11623         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11624         LOG, not DEBUG. We still get flex info on debug.
11625
11626         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11627         debug string more verbose.
11628         (plugin_times_older_than): DEBUG->LOG.
11629
11630 2004-02-20  Julien MOUTTE <julien@moutte.net>
11631
11632         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11633         will emit found_tag for each stream they demux with the codec.
11634
11635 2004-02-20  Benjamin Otte  <otte@gnome.org>
11636
11637         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11638           copy navigation event correctly. Check freeing tag lists. 
11639         * gst/gstthread.c: (gst_thread_change_state):
11640           don't abort() on state changing mess - it might happen because of
11641           bugs.
11642         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11643           use boxed functions
11644         * gst/gstvalue.h:
11645           fix GST_VALUE_HOLDS_CAPS
11646
11647 2004-02-19  David Schleef  <ds@schleef.org>
11648
11649         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11650         and use it for GST_FUNCTION.  (bug #134750)
11651
11652 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11653
11654         * po/fr.po:
11655         * po/nl.po:
11656           updating translations
11657
11658 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11659
11660         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11661
11662 2004-02-18  kost@imn.htwk-leipzig.de
11663
11664         reviewed by: David Schleef  <ds@schleef.org>
11665
11666         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11667         for libgstcontrol.
11668
11669 2004-02-18  David Schleef  <ds@schleef.org>
11670
11671         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11672         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11673         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11674         * tools/gst-inspect.c: (print_element_info): Support dumping of
11675         double dparam information.
11676
11677 2004-02-17  David Schleef  <ds@schleef.org>
11678
11679         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11680         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11681         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11682         Use GST_TYPE_CAPS in signal prototype.
11683         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11684         Convert GST_TYPE_CAPS to boxed.
11685         * gst/gstelement.c: (gst_element_class_init):
11686         Use GST_TYPE_TAG_LIST in signal prototype.
11687         * gst/gstindex.c: (gst_index_class_init):
11688         * gst/gstindex.h:
11689         Add GST_TYPE_INDEX_ENTRY type.
11690         * gst/gstmarshal.list:
11691         Add necessary marshal types.
11692         * gst/gstpad.c: (gst_real_pad_class_init),
11693         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11694         (gst_pad_recover_caps_error):
11695         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11696         * gst/gststructure.c: (_gst_structure_initialize),
11697         (gst_structure_copy), (_gst_structure_copy_conditional):
11698         * gst/gststructure.h:
11699         Convert GST_TYPE_STRUCTURE to boxed.
11700         * gst/gsttag.c: (gst_tag_list_get_type):
11701         * gst/gsttag.h:
11702         Add GST_TYPE_TAG_LIST type.
11703
11704 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11705
11706         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11707         to what we agreed with david.
11708         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11709
11710 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11711
11712         * po/nl.po: update translation
11713
11714 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11715
11716         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11717           throw an error if spider is trying to play a mime type there is
11718           no decoder for
11719         * po/POTFILES.in:
11720           add gst/autoplug/gstspider.c for translation
11721
11722 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11723
11724         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11725         silently when the pad is negotiating.
11726
11727 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11728
11729         * docs/faq/Makefile.am:
11730           add script to run gstreamer uninstalled 
11731         * docs/faq/faq.xml:
11732         * docs/faq/developing.xml:
11733         * docs/faq/gst-uninstalled:
11734           extract script to run gstreamer uninstalled
11735         * docs/manuals.mak:
11736           add EXTRA_SOURCES variable for Makefile.am's to set to
11737           use additional SOURCE files for the doc build
11738
11739 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11740
11741         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11742
11743 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11744
11745         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11746         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11747         an error was thrown by osssink. Basically a state change failure for
11748         an element in a different scheduling group was considered as
11749         successful, which means that caps nego was going on and weird stuff
11750         happened. Like I wrote in the comment there, if someone wants to
11751         revert that please drop me a mail explaining why because I really see
11752         no point in keeping that broken behaviour there.
11753         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11754         be empty, we then return NULL which will trigger a nice error when 
11755         pulling from the pad.
11756
11757 2004-02-13  David Schleef  <ds@schleef.org>
11758
11759         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11760         (gst_dparam_get_property), (gst_dparam_set_property),
11761         (gst_dparam_do_update_default):
11762         * libs/gst/control/dparam.h:
11763         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11764         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11765         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11766         (gst_dpsmooth_do_update_double):
11767         * libs/gst/control/dparam_smooth.h:
11768         * libs/gst/control/dparammanager.c:
11769         (gst_dpman_inline_direct_update):
11770         Add support for double dparams.
11771
11772 2004-02-13  David Schleef  <ds@schleef.org>
11773
11774         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11775         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11776
11777 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11778
11779         reviewed by: David Schleef  <ds@schleef.org>
11780
11781         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11782         (gst_fdsrc_init), (gst_fdsrc_set_property),
11783         (gst_fdsrc_get_property), (gst_fdsrc_get):
11784         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11785         and sends an EOS event if file descriptor reading times out.
11786
11787 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11788
11789         * configure.ac:
11790           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11791
11792 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11793
11794         * configure.ac: pass required libxml version as argument
11795         (bug reported by Christophe Fergeau)
11796
11797 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11798   
11799         * docs/gst/gstreamer-docs.sgml:
11800         * docs/gst/tmpl/gstxml.sgml:
11801         * docs/libs/gstreamer-libs-docs.sgml:
11802           version API docs
11803
11804 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11805
11806         * gst/gstinfo.c:
11807         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11808         (gst_registry_pool_feature_filter):
11809         * gst/gstthread.c: (gst_thread_class_init):
11810         * gst/gstvalue.c:
11811           add includes exposed by building without libxml
11812         * gst/indexers/Makefile.am:
11813           do not build fileindex when LOADSAVE disabled; we should have
11814           a better libxml check later since fileindex depends on xml, not
11815           LOADSAVE or REGISTRY
11816         * libs/gst/control/Makefile.am:
11817           link with m
11818         * tools/Makefile.am:
11819           fix wrong source code for gst-xmlinspect
11820
11821 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11822
11823         * configure.ac:
11824           fix gcov help output
11825           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11826         * docs/random/release:
11827           some updated releasing notes
11828         * gstreamer.spec.in:
11829           more updates
11830
11831 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11832
11833         * docs/faq/faq.xml:
11834         * docs/manual/manual.xml:
11835         * docs/pwg/pwg.xml:
11836         * docs/pwg/titlepage.xml:
11837           put version in documentation
11838
11839 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11840
11841         * tools/Makefile.am: fix man page installation
11842
11843 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11844
11845         * configure.ac:
11846           don't check for libxml when load/save and registry disabled (#105844)
11847         * gstreamer.spec.in:
11848           sync with fedora candidate spec
11849
11850 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11851
11852         * po/fr.po:
11853         * po/nl.po:
11854           replace multidisksrc with multifilesrc
11855
11856 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11857
11858         * po/POTFILES.in:
11859           update to multidisksrc => multifilesrc file renaming (#134145)
11860
11861 2004-02-11  David Schleef  <ds@schleef.org>
11862
11863         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11864         * docs/gst/tmpl/gstpadtemplate.sgml: same
11865         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11866         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11867         fixing dance.
11868         * gst/gstutils.c: Remove disabled code that uses GstProps.
11869         * gst/registries/gstxmlregistry.h: same
11870         * docs/random/ds/0.9-suggested-changes: random notes
11871
11872 2004-02-11  kost@imn.htwk-leipzig.de
11873
11874         reviewed by: David Schleef  <ds@schleef.org>
11875
11876         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11877         initialisation of clock (bug #134128)
11878
11879 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11880
11881         * configure.ac:
11882         * gst/elements/Makefile.am:
11883         * gst/elements/gstelements.c:
11884         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11885         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11886         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11887         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11888         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11889         * gst/elements/gstmultifilesrc.h:
11890           rename multidisksrc to multifilesrc (part of #122200)
11891
11892 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11893
11894         * docs/manuals.mak:
11895           fix automake complaints
11896         * gst-element-check.m4:
11897           fix unquotedness
11898
11899 2004-02-11  David Schleef  <ds@schleef.org>
11900
11901         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11902         * gst/gstatomic_impl.h: Disable sparc implementation.
11903
11904 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11905
11906         * gst-element-check.m4:
11907           fix underquoted macros as reported by automake 1.8.x (#133800)
11908         * configure.ac:
11909           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11910           by autopoint (fixes #132996)
11911
11912 2004-02-10  Andy Wingo  <wingo@pobox.com>
11913
11914         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11915         way to do inheritance.
11916         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11917         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11918         Routine docs.
11919         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11920         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11921         doc.
11922         (gst_pad_unlink, gst_pad_is_linked): Docs.
11923         (gst_pad_renegotiate): A brief description of capsnego.
11924         (gst_pad_try_set_caps): Document.
11925         (gst_pad_try_set_caps_nonfixed): Document.
11926         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11927         (gst_pad_set_parent): Deprecated (although not out of the API).
11928         (gst_pad_get_parent): Deprecated, although many plugins use this.
11929         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11930         are private and will go away in 0.9.
11931         (gst_pad_perform_negotiate): Doc.
11932         (gst_pad_link_unnegotiate): I think this is meant to be static.
11933         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11934         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11935         (gst_pad_get_peer): Doc updates.
11936         (gst_pad_caps_change_notify): Doc.
11937         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11938         (gst_ghost_pad_new): Doc fixes.
11939
11940         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11941         (gst_object_check_uniqueness): 
11942
11943         * gst/gstelement.c (gst_element_add_pad) 
11944         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11945         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11946         (gst_element_get_static_pad, gst_element_get_pad_list) 
11947         (gst_element_class_get_pad_template_list) 
11948         (gst_element_class_get_pad_template): Work on the docs.
11949         (gst_element_get_pad_template_list): Uses the class method.
11950         (gst_element_get_compatible_pad_template): Docs, and consolidate
11951         some test conditions. 
11952         (gst_element_get_pad_from_template): New static function.
11953         (gst_element_request_compatible_pad): Docs, and work with
11954         non-request compatible templates. 
11955         (gst_element_get_compatible_pad_filtered): Docs and remove
11956         redundant checks.
11957         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11958         (gst_element_link_filtered, gst_element_link_many) 
11959         (gst_element_link, gst_element_link_pads) 
11960         (gst_element_unlink_many): Docs.
11961
11962 2004-02-05  Andy Wingo  <wingo@pobox.com>
11963
11964         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11965         s/pointer/boxed/.
11966
11967         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11968
11969         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11970         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11971         with the type=GST_TYPE_CAPS. This allows language bindings to know
11972         what kind of data they're dealing with.
11973
11974         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11975         to NULL when g_value_init is called. GstCaps, which rolls its own
11976         type implementation, now does the same instead of allocating empty
11977         caps.
11978         (_gst_caps_initialize, _gst_caps_collect_value,
11979         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11980         table methods. This allows G_VALUE_COLLECT to work.
11981
11982 2004-02-05  Andy Wingo  <wingo@pobox.com>
11983
11984         * configure.ac:
11985         * testsuite/Makefile.am (SUBDIRS): 
11986         * testsuite/ghostpads/Makefile.am: 
11987         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11988
11989         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11990         These two routines are the only ones that set
11991         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11992         pad template. They should be made static, depending on ABI needs.
11993         (gst_real_pad_dispose): Handle the case of ghost pads without a
11994         parent. Assert after dealing with ghost pads that the ghost pad
11995         list is empty.
11996         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11997         set after creation.
11998         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11999         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12000         functions. set_property will call add_ghost_pad/remove_ghost_pad
12001         as appropriate.
12002         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12003
12004         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12005         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12006         (gst_element_remove_pad): Handle ghost pads as well.
12007         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12008         depending on API-stability needs).
12009
12010 2004-02-05  Andy Wingo  <wingo@pobox.com>
12011
12012         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12013         of course they're const
12014
12015 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12016
12017         * tools/Makefile.am:
12018         * tools/gst-feedback:
12019         * tools/gst-feedback-0.7:
12020           make gst-feedback versioned too for consistency
12021
12022 2004-02-11  David Schleef  <ds@schleef.org>
12023
12024         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12025         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12026
12027 2004-02-10  Julien MOUTTE <julien@moutte.net>
12028
12029         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12030         the structure does not contain a valid tag list. Adding a safety check
12031         to remove a noisy warning in that case.
12032
12033 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12034
12035         * gst/gst.c: fix name to be in line with others
12036
12037 2004-02-09  Julien MOUTTE <julien@moutte.net>
12038
12039         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12040         not shout that loud when len is 0. Just return 0 silently.
12041
12042 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12043
12044         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12045         because data_unref has one and I prefer the debug to be symetric.
12046         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12047         were refed when added to the queue and unrefed only once when the queue
12048         was flushed. Now the flush handler unref the buffers two times : first
12049         unref for the ref added when pushing in the queue's tail and second
12050         unref to destroy the flushed buffer.
12051
12052 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12053
12054         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12055
12056 2004-02-06  David Schleef  <ds@schleef.org>
12057
12058         * docs/random/ds/0.9-suggested-changes: Random ramblings
12059         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12060         to int before printing.
12061         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12062         * gst/parse/parse.l: same.  See bug #129600
12063
12064 2004-02-06  David Schleef  <ds@schleef.org>
12065
12066         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12067         (gst_index_add_entry), (gst_index_add_associationv),
12068         (gst_index_add_association): Add gst_index_add_associationv()
12069         and clean up gst_index_add_association(). #127133
12070
12071 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12072
12073         * autogen.sh: check out common with right tag if CVS/Tag exists
12074
12075 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12076
12077         * testsuite/ghostpads/ghostpads.c: (main):
12078           fix testsuite from segfaulting
12079
12080 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12081
12082         * Makefile.am: add release target
12083         * configure.ac: bump nano to 1
12084         * docs/random/release:
12085
12086 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12087
12088         * gst/gstcaps.h:
12089         * gst/gstelement.c: (gst_element_base_class_init),
12090         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12091         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12092         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12093         (gst_real_pad_dispose):
12094         * gst/gststructure.c: (gst_structure_free),
12095         (gst_structure_from_string):
12096           put reverted patch back in
12097         * gst/gstelement.c: (gst_element_remove_pad):
12098           free explicit caps if they're set
12099         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12100           copy the structure when fixating
12101
12102 2004-02-05  David Schleef  <ds@schleef.org>
12103
12104         * gst/gstmarshal.list:
12105         * gst/gstpad.c: (gst_real_pad_class_init),
12106         (_gst_real_pad_fixate_accumulator):
12107         Revert POINTER->BOXED change in signal marshaller.
12108
12109 === release 0.7.4 ===
12110                                                                                 
12111 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12112                                                                                 
12113         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12114         * configure.ac: changed for release
12115
12116 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12117
12118         * gstreamer.spec.in:
12119           bump required version of gtk-doc
12120
12121 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12122
12123         * gst/gstcaps.h:
12124         * gst/gstelement.c: (gst_element_base_class_init),
12125         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12126         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12127         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12128         (gst_real_pad_dispose):
12129         * gst/gststructure.c: (gst_structure_free),
12130         (gst_structure_from_string):
12131           revert patch that breaks applications, reapply after release
12132           to get this fixed properly
12133
12134 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12135
12136         * gst/gsttag.c: (_gst_tag_initialize):
12137         * gst/gsttag.h:
12138           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12139
12140 2004-02-04  David Schleef  <ds@schleef.org>
12141
12142         Fix some memleaks:
12143         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12144         (gst_spider_plug_from_srcpad):
12145         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12146
12147 2004-02-04  David Schleef  <ds@schleef.org>
12148
12149         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12150         a GstRealPad before accessing its structure members.
12151
12152 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12153
12154         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12155         (gst_clock_get_speed):
12156         * gst/gstclock.h:
12157           reset padding, remove unused fields
12158
12159 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12160
12161         * gst/autoplug/gstspideridentity.c:
12162         (gst_spider_identity_sink_loop_type_finding):
12163           use get_allowed_caps, not get_caps (fixes #132519)
12164         * gst/elements/gsttypefind.c: (stop_typefinding):
12165           use correct order when sending buffers and seeking
12166
12167 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12168
12169         * configure.ac:
12170         * gst/gstelement.h:
12171         * gst/gstpad.h:
12172         * gst/gstqueue.h:
12173           upgrade libtool CURRENT, reset padding
12174
12175 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12176
12177         * configure.ac:
12178           bump to prerelease
12179           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12180
12181 2004-02-04  David Schleef  <ds@schleef.org>
12182
12183         * docs/random/ds/0.9-suggested-changes: random notes
12184         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12185         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12186         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12187         expansion.
12188         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12189         (gst_filesink_get_query_types): same
12190         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12191         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12192         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12193         to use new GST_PTR_FORMAT.
12194         * gst/gstelement.h: deprecate function factory macros
12195         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12196         These are our last variadic macros that can't be replaced with
12197         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12198         attempting to deprecate gst_element_clock_wait().
12199         * gst/gstevent.h: same
12200         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12201         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12202         * gst/gstpad.h: deprecate function factory macros similar to above.
12203
12204 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12205
12206         * configure.ac:
12207         * tools/Makefile.am:
12208         * tools/gst-run.c: (popt_callback), (hash_print_key),
12209         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12210         (get_candidates), (main):
12211           add new source file to generate non-versioned wrapper binaries
12212           for our tools.
12213
12214 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12215
12216         * gst/gstevent.c: (_gst_event_free):
12217           actually break; inside the switch statement
12218         * gst/parse/grammar.y:
12219           fix memleak where GValues weren't unset
12220
12221 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12222
12223         * gst/gststructure.c: (gst_structure_from_string):
12224           fix huge memleak
12225         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12226         (new_entry), (gst_type_find_element_chain):
12227         * gst/gstelement.c: (gst_element_base_class_init),
12228         (gst_element_class_set_details):
12229         * gst/gstpad.c: (gst_pad_can_link_filtered):
12230           fix smaller memleaks
12231         * gst/gstpad.c: (gst_real_pad_dispose):
12232           check that explicit caps are gone
12233         * gst/gststructure.c: (gst_structure_free):
12234           actually free the structure
12235         * gst/gstelement.c: (gst_element_clear_pad_caps):
12236           unset explicit caps
12237
12238 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12239
12240         * tools/Makefile.am:
12241           use AM_CFLAGS since all the CFLAGS are the same
12242           use AM_LDFAGS
12243
12244 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12245
12246         * docs/manual/gnome.xml:
12247           expand example a little
12248         * gst/gst.c: (gst_init_with_popt_table),
12249         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12250           make sure popt option displays are done with right textdomain
12251           use GstPoptOption type
12252         * gst/gst.h:
12253           create GstPoptOption type
12254
12255 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12256
12257         * gst/gsterror.c: (_gst_stream_errors_init):
12258         * gst/gsterror.h:
12259           adding error type for no codec
12260         * po/POTFILES.in:
12261           add gst-inspect
12262         * po/nl.po:
12263           update dutch translation
12264         * tools/gst-inspect.c: (print_element_list), (main):
12265           do proper internationalization
12266         * tools/gst-launch.c: (idle_func):
12267           remove commented out function call
12268
12269 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12270
12271         * docs/README:
12272           add some error fixing notes
12273         * docs/gst/gstreamer-sections.txt:
12274           remove double entries
12275         * docs/gst/tmpl/gstbin.sgml:
12276         * docs/gst/tmpl/gstclock.sgml:
12277           remove override
12278         * docs/gst/tmpl/gstelement.sgml:
12279         * docs/gst/tmpl/gstindex.sgml:
12280         * docs/gst/tmpl/gstobject.sgml:
12281         * docs/gst/tmpl/gstpadtemplate.sgml:
12282         * docs/gst/tmpl/gstreamer-unused.sgml:
12283         * docs/gst/tmpl/gsttag.sgml:
12284         * docs/gst/tmpl/gstthread.sgml:
12285         * docs/gst/tmpl/gstxml.sgml:
12286         * gst/gsttag.h:
12287           sync header prototypes with c decls
12288         * gst/gsttaginterface.c:
12289           fix doc headers
12290
12291 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12292
12293         * gst/parse/Makefile.am:
12294         * gst/gstobject.h:
12295           get rid of gstmarshal.h dependency. It's not needed.
12296         * gst/gst.h:
12297         * gst/elements/gstfakesink.c:
12298         * gst/elements/gstfakesrc.c:
12299         * gst/elements/gstidentity.c:
12300         * gst/gstbin.c:
12301         * gst/gstelement.c:
12302         * gst/gstindex.c:
12303         * gst/gstobject.c:
12304         * gst/gstpad.c:
12305         * gst/gstthread.c:
12306         * gst/gstxml.c:
12307         * libs/gst/control/dparam.c:
12308         * libs/gst/control/dparammanager.c:
12309           include gstmarshal.h.
12310         Fixes #132045
12311
12312 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12313
12314         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12315         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12316         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12317         * gst/elements/gstfilesrc.h:
12318           don't ref the filesrc when creating mmaped buffers. Don't keep a
12319           list of not-yet-destroyed buffers.
12320         * gst/gstbuffer.h:
12321           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12322
12323 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12324
12325         * gst/gst.c: (init_pre):
12326           remove textdomain
12327
12328 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12329
12330         * docs/pwg/advanced-events.xml:
12331         * docs/pwg/advanced-scheduling.xml:
12332         * docs/pwg/intro-basics.xml:
12333         * docs/pwg/other-manager.xml:
12334         * docs/pwg/other-nton.xml:
12335         * docs/pwg/other-ntoone.xml:
12336         * docs/pwg/other-oneton.xml:
12337         * docs/pwg/pwg.xml:
12338           All sort of documentation... Forgot what. Point is that I want this
12339           in before I leave. The 'other-*' will be the last section and will
12340           explain issues specific to these type of elements.
12341
12342 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12343
12344         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12345         (gst_filesrc_get_read):
12346           set all the values on buffers that we can
12347
12348 2004-02-02  David Schleef  <ds@schleef.org>
12349
12350         Change usage of isblah() to g_ascii_isblah() to be more locale
12351         independent.  (#133076)
12352         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12353         * gst/gstutils.c:
12354         * gst/parse/parse.l:
12355
12356 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12357
12358         reviewed by: David Schleef  <ds@schleef.org>
12359
12360         Fix memory leaks:
12361         * gst/gstcaps.c: (gst_caps_to_string):
12362         * gst/registries/gstxmlregistry.c:
12363         (gst_xml_registry_add_path_list_func),
12364         (gst_xml_registry_parse_padtemplate):
12365
12366 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12367
12368         * gst/gstelement.c: (gst_element_default_error):
12369           suffix error messages with period
12370
12371 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12372
12373         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12374         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12375         * gst/gsterror.c: (gst_error_get_message):
12376           Suffix with dots
12377         * po/fr.po:
12378         * po/nl.po:
12379           Update translation files
12380
12381 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12382
12383         * gst/autoplug/gstspideridentity.c:
12384         (gst_spider_identity_sink_loop_type_finding):
12385         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12386         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12387         (gst_filesink_close_file), (gst_filesink_handle_event),
12388         (gst_filesink_chain):
12389         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12390         (gst_filesrc_get_read), (gst_filesrc_open_file):
12391         * gst/elements/gstidentity.c: (gst_identity_chain):
12392         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12393         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12394         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12395         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12396         * gst/gsterror.c: (_gst_core_errors_init),
12397         (_gst_library_errors_init), (_gst_resource_errors_init),
12398         (_gst_stream_errors_init), (gst_error_get_message):
12399         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12400         (gst_pad_recover_caps_error), (gst_pad_pull):
12401         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12402         * gst/schedulers/gstbasicscheduler.c:
12403         (gst_basic_scheduler_chainhandler_proxy),
12404         (gst_basic_scheduler_gethandler_proxy),
12405         (gst_basic_scheduler_cothreaded_chain):
12406           Suffix error messages with period.
12407           Use (NULL) instead of NULL
12408
12409 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12410
12411         * docs/gst/tmpl/gstelement.sgml:
12412         * docs/gst/tmpl/gstxml.sgml:
12413         * gst/gstelement.c: (gst_element_error_full):
12414           add element path to error
12415
12416 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12417
12418         * docs/random/mimetypes:
12419           update raw int/float info
12420         * gst/gsttag.c: (_gst_tag_initialize):
12421         * gst/gsttag.h:
12422           add GST_TAG_ENCODER
12423
12424 2004-01-30  David Schleef  <ds@schleef.org>
12425
12426         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12427           missing (#132991)
12428
12429 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12430
12431         reviewed by Benjamin Otte 
12432           parts of the patch submitted in bug #113913
12433
12434         * configure.ac:
12435           use AC_C_INLINE. Use = instead of == with test
12436         * examples/plugins/example.c:
12437         * gst/autoplug/gstspideridentity.c:
12438         * gst/elements/gstfdsrc.c:
12439         * gst/elements/gstfilesrc.c:
12440         * gst/elements/gstidentity.c:
12441         * gst/elements/gstmultidisksrc.c:
12442         * gst/elements/gststatistics.c:
12443         * gst/gstelement.c:
12444         * gst/gstobject.c:
12445         * gst/gstpad.c:
12446         * gst/gstpipeline.c:
12447         * gst/gstthread.c:
12448           don't end enums with a comma
12449         * gst/gstindex.c: (gst_index_compare_func):
12450           do explicit casting to gint
12451         * gst/gsttrace.c: (gst_trace_text_flush):
12452           #define strsize as a macro
12453
12454 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12455
12456         * docs/README:
12457         * docs/gst/gstreamer-docs.sgml:
12458         * docs/gst/gstreamer-sections.txt:
12459         * docs/gst/tmpl/gstelement.sgml:
12460         * docs/gst/tmpl/gsterror.sgml:
12461         * docs/gst/tmpl/gstinterface.sgml:
12462         * docs/gst/tmpl/gstreamer-unused.sgml:
12463         * docs/gst/tmpl/gststructure.sgml:
12464         * docs/gst/tmpl/gsttag.sgml:
12465         * docs/gst/tmpl/gsttaginterface.sgml:
12466         * docs/gst/tmpl/gstvalue.sgml:
12467         make sure all API ends up in the built docs
12468         * gst/gstinterface.c:
12469         * gst/gststructure.c: (gst_structure_id_set_value),
12470         (gst_structure_set_value), (gst_structure_id_get_value):
12471         * gst/gststructure.h:
12472         * gst/gstvalue.h:
12473         sync .h with .c declarations
12474
12475 2004-01-30  Julien Moutte  <julien@moutte.net>
12476
12477         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12478         Ronald will fix riffread.
12479
12480 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12481
12482         * docs/pwg/advanced-interfaces.xml:
12483           Added tuner interface docs.
12484
12485 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12486
12487         * docs/random/mimetypes:
12488           correct Theora information
12489         * gst/gstelement.h:
12490           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12491
12492 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12493
12494         * gst/gstelement.c: (gst_element_error_full):
12495         * gst/gstelement.h:
12496           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12497
12498 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12499
12500         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12501         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12502         again and even before DISCONT.
12503         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12504         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12505         bytestream so that it's not stopping to fill the bytestream if events
12506         different than EOS or DISCONT are received. Instead it process them so
12507         that they go downstream.
12508
12509 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12510
12511         * docs/gst/tmpl/gstelement.sgml:
12512         * docs/gst/tmpl/gstreamer-unused.sgml:
12513         * docs/gst/tmpl/gstxml.sgml:
12514         * gst/autoplug/gstspideridentity.c:
12515         (gst_spider_identity_sink_loop_type_finding):
12516         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12517         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12518         (gst_filesink_close_file), (gst_filesink_handle_event),
12519         (gst_filesink_chain):
12520         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12521         (gst_filesrc_get_read), (gst_filesrc_open_file):
12522         * gst/elements/gstidentity.c: (gst_identity_chain):
12523         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12524         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12525         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12526         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12527         * gst/gstelement.h:
12528         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12529         (gst_pad_recover_caps_error), (gst_pad_pull):
12530         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12531         * gst/schedulers/gstbasicscheduler.c:
12532         (gst_basic_scheduler_chainhandler_proxy),
12533         (gst_basic_scheduler_gethandler_proxy),
12534         (gst_basic_scheduler_cothreaded_chain):
12535           gst_element_error -> GST_ELEMENT_ERROR
12536
12537 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12538
12539         * docs/Makefile.am:
12540         * docs/gst/tmpl/gstelement.sgml:
12541         * docs/gst/tmpl/gstxml.sgml:
12542         * docs/manuals.mak:
12543         * docs/pwg/advanced-request.xml:
12544         * docs/pwg/advanced-scheduling.xml:
12545         * docs/pwg/advanced-tagging.xml:
12546           fix non-validating docbook using CDATA
12547           make sure make check-local gets run first to check if it validates
12548
12549 2004-01-29  Julien MOUTTE <julien@moutte.net>
12550
12551         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12552         handling (up and downstream).
12553         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12554         my_filter thing.
12555
12556 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12557
12558         * docs/pwg/advanced-tagging.xml:
12559           Add docs about tag writing.
12560
12561 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12562
12563         * docs/pwg/advanced-tagging.xml:
12564           Add a part about tag reading and application signalling... Tag
12565           writing still needs to be documented.
12566         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12567           We can set file locations in READY, too.
12568
12569 2004-01-29  Julien MOUTTE <julien@moutte.net>
12570
12571         * docs/random/ds/element-checklist: Adding some notes about src
12572         events.
12573
12574 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12575
12576         * docs/random/mimetypes:
12577           Update docs to point to correct elements for various mimetypes, and
12578           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12579           <stephane.loeuillet@tiscali.fr>.
12580
12581 2004-01-28  David Schleef  <ds@schleef.org>
12582
12583         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12584
12585 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12586
12587         * docs/random/mimetypes:
12588           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12589           undefined"
12590         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12591           make it only work in NULL.
12592         * gst/gstcaps.c:
12593           don't posion NULL caps
12594         * gst/gstelement.c: (gst_element_set_time):
12595           add debugging statement
12596         * gst/gstelement.c: (gst_element_emit_found_tag),
12597         (gst_element_found_tag_func), (gst_element_found_tags):
12598         * gst/gstelement.h:
12599           These functions take const taglists
12600         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12601           fix memleak
12602         * gst/gstpad.c: (gst_pad_event_default):
12603           make more effort on handling discont and clocks, g_warn if everything
12604           fails
12605         * gst/gststructure.c: (gst_structure_remove_fields),
12606         (gst_structure_remove_fields_valist):
12607         * gst/gststructure.h:
12608           add gst_structure_remove_fields(_valist)
12609         * gst/gsttag.c:
12610           fix doc glitch
12611
12612 2004-01-28  David Schleef  <ds@schleef.org>
12613
12614         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12615         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12616         Fix memory leakage of gst_caps_to_string().
12617
12618         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12619         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12620         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12621         (gst_spider_identity_sink_loop_type_finding):
12622         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12623         (find_suggest):
12624         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12625         (gst_pad_set_explicit_caps):
12626         * gst/parse/grammar.y:
12627
12628 2004-01-28  David Schleef  <ds@schleef.org>
12629
12630         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12631         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12632         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12633         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12634         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12635         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12636         (gst_debug_log_default), (_gst_info_printf_extension),
12637         (_gst_info_printf_extension_arginfo):  Add printf extension.
12638         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12639         * gst/gststructure.c: (gst_structure_to_string),
12640         (_gst_structure_parse_value): Use gst_value_deserialize() and
12641         remove old code.
12642         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12643         (gst_value_deserialize_boolean), (gst_strtoi),
12644         (gst_value_deserialize_int), (gst_value_deserialize_double),
12645         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12646         a bunch of deserialize functions and gst_value_deserialize.
12647         * gst/gstvalue.h: er, _de_serialize, not unserialize
12648         * testsuite/caps/string-conversions.c: (main): We don't currently
12649         handle (float) in caps, so convert these to (double).
12650         * testsuite/debug/Makefile.am: Add new test for the printf extension
12651         * testsuite/debug/printf_extension.c: (main): same
12652
12653 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12654
12655         * docs/random/company/time:
12656           Add some docs about clocking and time
12657
12658 2004-01-28  Julien MOUTTE <julien@moutte.net>
12659
12660         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12661
12662 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12663
12664         * docs/pwg/advanced-clock.xml:
12665         * docs/pwg/advanced-dparams.xml:
12666         * docs/pwg/advanced-events.xml:
12667         * docs/pwg/advanced-interfaces.xml:
12668         * docs/pwg/advanced-midi.xml:
12669         * docs/pwg/advanced-request.xml:
12670         * docs/pwg/advanced-scheduling.xml:
12671         * docs/pwg/advanced-tagging.xml:
12672         * docs/pwg/advanced-types.xml:
12673         * docs/pwg/appendix-checklist.xml:
12674         * docs/pwg/building-boiler.xml:
12675         * docs/pwg/building-chainfn.xml:
12676         * docs/pwg/building-filterfactory.xml:
12677         * docs/pwg/building-pads.xml:
12678         * docs/pwg/building-props.xml:
12679         * docs/pwg/building-signals.xml:
12680         * docs/pwg/building-state.xml:
12681         * docs/pwg/building-testapp.xml:
12682         * docs/pwg/intro-basics.xml:
12683         * docs/pwg/intro-preface.xml:
12684         * docs/pwg/other-autoplugger.xml:
12685         * docs/pwg/other-sink.xml:
12686         * docs/pwg/other-source.xml:
12687         * docs/pwg/titlepage.xml:
12688           fix up id's
12689
12690 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12691
12692         * docs/95NonPath:
12693         * docs/HACKING:
12694         * docs/README:
12695         * docs/building-the-docs-on-debian:
12696           collect relevant bits of doc info
12697
12698 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12699
12700         * docs/pwg/advanced_tagging.xml:
12701           Half-assed commit so Thomas can re-arrange document IDs here to be
12702           consistent, too.
12703
12704 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12705
12706         * docs/manual/autoplugging.xml:
12707         * docs/manual/bins-api.xml:
12708         * docs/manual/bins.xml:
12709         * docs/manual/buffers-api.xml:
12710         * docs/manual/buffers.xml:
12711         * docs/manual/clocks.xml:
12712         * docs/manual/components.xml:
12713         * docs/manual/cothreads.xml:
12714         * docs/manual/debugging.xml:
12715         * docs/manual/dparams-app.xml:
12716         * docs/manual/dynamic.xml:
12717         * docs/manual/elements-api.xml:
12718         * docs/manual/elements.xml:
12719         * docs/manual/factories.xml:
12720         * docs/manual/gnome.xml:
12721         * docs/manual/goals.xml:
12722         * docs/manual/helloworld.xml:
12723         * docs/manual/helloworld2.xml:
12724         * docs/manual/init-api.xml:
12725         * docs/manual/intro.xml:
12726         * docs/manual/links-api.xml:
12727         * docs/manual/links.xml:
12728         * docs/manual/manual.xml:
12729         * docs/manual/motivation.xml:
12730         * docs/manual/pads-api.xml:
12731         * docs/manual/pads.xml:
12732         * docs/manual/plugins-api.xml:
12733         * docs/manual/plugins.xml:
12734         * docs/manual/programs.xml:
12735         * docs/manual/queues.xml:
12736         * docs/manual/quotes.xml:
12737         * docs/manual/schedulers.xml:
12738         * docs/manual/states-api.xml:
12739         * docs/manual/states.xml:
12740         * docs/manual/threads.xml:
12741         * docs/manual/typedetection.xml:
12742         * docs/manual/xml.xml:
12743           use chapter, part, section or misc as id starts for all bits
12744
12745 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12746
12747         * docs/gst/gstreamer-sections.txt:
12748           Fix up TITLE of the sections
12749
12750 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12751
12752         * docs/pwg/advanced_interfaces.xml:
12753           Add documentation on propertyprobing.
12754         * docs/pwg/advanced_events.xml:
12755         * docs/pwg/advanced_tagging.xml:
12756         * docs/pwg/building_boiler.xml:
12757         * docs/pwg/building_filterfactory.xml:
12758         * docs/pwg/pwg.xml:
12759           Move filterfactory and tagging into their own chapter, add a chapter
12760           on events. all these are empty placeholders that will be filled in
12761           some day.
12762
12763 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12764
12765         * docs/pwg/advanced_interfaces.xml:
12766           Docs for mixer interface. Also a check for website uploading.
12767
12768 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12769
12770         * docs/HACKING:
12771         * docs/Makefile.am:
12772         * docs/faq/Makefile.am:
12773         * docs/gst/Makefile.am:
12774         * docs/gst/tmpl/gstelement.sgml:
12775         * docs/gst/tmpl/gstplugin.sgml:
12776         * docs/gst/tmpl/gstreamer-unused.sgml:
12777         * docs/libs/Makefile.am:
12778         * docs/manual/Makefile.am:
12779         * docs/manuals.mak:
12780         * docs/pwg/Makefile.am:
12781         * docs/upload.mak:
12782           Separate out upload target and make it similar for
12783           both docbook and gtk-doc docs
12784
12785 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12786
12787         * docs/manuals.mak:
12788           Fix upload target to work with freedesktop
12789
12790 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12791
12792         * docs/pwg/advanced_types.xml:
12793           Add notes on creating your own types.
12794         * docs/pwg/building_boiler.xml:
12795         * docs/pwg/building_pads.xml:
12796         * docs/pwg/building_state.xml:
12797           Add some stuff about how to retrieve values from structures, how
12798           that relates to types and change layout slightly again to be almost
12799           perfect.
12800
12801 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12802
12803         * docs/pwg/advanced_dparams.xml:
12804         * docs/pwg/advanced_scheduling.xml:
12805           Change index layout slightly.
12806
12807 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12808
12809         * docs/pwg/advanced_clock.xml:
12810         * docs/pwg/advanced_interfaces.xml:
12811         * docs/pwg/advanced_midi.xml:
12812           General placeholders for now.
12813         * docs/pwg/advanced_request.xml:
12814           Explanation about sometimes and request pads.
12815         * docs/pwg/advanced_scheduling.xml:
12816           Concept of bytestream, loopfunctions and schedulers.
12817         * docs/pwg/building_boiler.xml:
12818           Add something about plugin-init.
12819
12820 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12821
12822         * docs/pwg/building_pads.xml:
12823           Fix broken docbook
12824
12825 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12826
12827         * docs/pwg/advanced_interfaces.xml:
12828         * docs/pwg/pwg.xml:
12829           Add as a placeholder for future filling-in.
12830         * docs/pwg/basics_autoplugging.xml:
12831         * docs/pwg/basics_buffers.xml:
12832         * docs/pwg/basics_elements.xml:
12833         * docs/pwg/basics_events.xml:
12834         * docs/pwg/basics_plugins.xml:
12835         * docs/pwg/basics_types.xml:
12836           Remove, because unused (this is all in intro_basics.xml).
12837         * docs/pwg/building_signals.xml:
12838           Short intro to signals + reference to GObject docs - we really
12839           shouldn't go into these sort of things to deply because we don't
12840           use them that extensively anyway.
12841         * docs/pwg/building_state.xml:
12842           Explanation of states. Benjamin, please check.
12843         * docs/pwg/building_testapp.xml:
12844           Put everything in one page - putting only a few lines of content
12845           per page doesn't really make sense.
12846
12847           Time to get into the advanced topics. ;).
12848
12849 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12850
12851         * docs/pwg/advanced_types.xml:
12852           Finish documenting the current state of mimetypes.
12853         * docs/pwg/building_boiler.xml:
12854         * docs/pwg/building_chainfn.xml:
12855         * docs/pwg/building_pads.xml:
12856         * docs/pwg/building_props.xml:
12857         * docs/pwg/building_testapp.xml:
12858           Start documenting the "how to build a simple audio filter" part
12859           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12860           states and (maybe?) a short introduction to capsnego in the chapter
12861           on pads (building_pads.xml). Capsnego should probably be explained
12862           fully in advanced_capsnego.xml or so.
12863
12864 2004-01-26  David Schleef  <ds@schleef.org>
12865
12866         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12867         * gst/gstpad.h: Add new function to allow element to (somewhat)
12868         specify non-fixed caps on a pad.
12869         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12870         that I added a few weeks ago.
12871
12872 2004-01-26  David Schleef  <ds@schleef.org>
12873
12874         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12875           making try_set_caps() work with non-fixed caps.
12876
12877 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12878
12879         * docs/pwg/advanced_types.xml:
12880         * docs/pwg/intro_basics.xml:
12881         * docs/pwg/intro_preface.xml:
12882         * docs/pwg/pwg.xml:
12883         * docs/pwg/titlepage.xml:
12884           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12885           in here (docs/random/mimetypes), and will from there on work on both
12886           updating outdated parts and adding missing parts.
12887           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12888
12889 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12890
12891         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12892           policy is set
12893
12894 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12895
12896         * gst/gstelement.h:
12897           remove gst_element_factory_get_version. It doesn't exist anymore.
12898         * gst/gstplugin.c:
12899         * gst/gstplugin.h:
12900           remove gst_plugin_set_name and change gst_plugin_get_longname to
12901           gst_plugin_get_description to match code.
12902         * gst/gsterror.h:
12903           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12904         * gst/gstpad.c: (gst_pad_try_set_caps):
12905           make it work with nonfixed caps.
12906           Note that even in the nonfixed case the link function of the pad
12907           that tries to set caps isn't called.
12908
12909 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12910
12911         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12912           fix bug where buffer was not assembled correctly
12913         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12914           silence by default
12915         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12916           only seek if there's no more buffers that could work without seeking
12917
12918 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12919
12920         * gst/gsttag.c: (_gst_tag_initialize):
12921         * gst/gsttag.h:
12922           Add application tag (for encoding/muxing app).
12923
12924 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12925
12926         * autogen.sh:
12927           make autopoint force, and libtoolize not copy
12928         * common/m4/as-docbook.m4:
12929           added docbook xml catalog setup check
12930         * common/m4/gst-doc.m4:
12931           use docbook check
12932
12933 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12934
12935         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12936         * gst/gsttag.h:
12937           add GstTagFlag
12938
12939 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12940
12941         * docs/gst/gstreamer-sections.txt:
12942         * docs/gst/tmpl/gst.sgml:
12943         * docs/gst/tmpl/gstbuffer.sgml:
12944         * docs/gst/tmpl/gstclock.sgml:
12945         * docs/gst/tmpl/gstelement.sgml:
12946         * docs/gst/tmpl/gstreamer-unused.sgml:
12947         * docs/gst/tmpl/gstxml.sgml:
12948           sync latest API changes to docs
12949
12950 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12951
12952         * gst/gstpluginfeature.c:
12953           fix doc snippet
12954         * tools/gst-inspect.c: (print_element_list):
12955           fix output of typefind
12956           add GPL header
12957         * tools/gst-launch.c:
12958           add GPL header
12959
12960 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12961
12962         * gst/elements/Makefile.am:
12963         * gst/elements/gstelements.c:
12964         * gst/elements/gsttypefindelement.c:
12965         * gst/elements/gsttypefindelement.h:
12966         * po/POTFILES.in:
12967         * po/fr.po:
12968         * po/nl.po:
12969           renamed gsttypefindelement to gsttypefind, conserving CVS history
12970
12971 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12972
12973         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12974         * gst/gsttag.h:
12975           add some tags used in ogg as well
12976           fix _ in replaygain tags
12977
12978 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12979
12980         * gst/gsterror.h:
12981           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12982
12983 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12984
12985         * gst/gstelement.c: (gst_element_error_full):
12986         * gst/gstelement.h:
12987           change _extended to _full
12988
12989 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12990
12991         reviewed by: <delete if not using a buddy>
12992
12993         * docs/gst/tmpl/gst.sgml:
12994         * docs/gst/tmpl/gstbuffer.sgml:
12995         * docs/gst/tmpl/gstclock.sgml:
12996         * docs/gst/tmpl/gstelement.sgml:
12997         * docs/gst/tmpl/gstreamer-unused.sgml:
12998         * docs/gst/tmpl/gstxml.sgml:
12999         * gst/gstelement.c: (gst_element_error_full):
13000         * gst/gstelement.h:
13001
13002 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13003
13004         * gst/gstelement.h: fix _gst_element_error_printf prototype
13005
13006 2004-01-20  David Schleef  <ds@schleef.org>
13007
13008         * gst/gststructure.c: (gst_structure_to_string):
13009         Convert function to use gst_value_serialize().
13010         * gst/gstvalue.c: (gst_value_serialize_list),
13011         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13012         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13013         (gst_value_serialize_int), (gst_value_serialize_double),
13014         (gst_string_wrap), (gst_value_serialize_string),
13015         (gst_value_serialize), (gst_value_deserialize):
13016         * gst/gstvalue.h:
13017         Add implementations for serialize.
13018
13019 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13020
13021         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13022         we want to keep that one in the future or change xvidenc.c to use 
13023         another error.
13024
13025 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13026
13027         * gst/gstelement.c: (_gst_element_error_printf):
13028         * gst/gstelement.h:
13029           privatise function
13030
13031 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13032
13033         * docs/random/error:
13034           doc explaining error system
13035         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13036           cleanup
13037
13038 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13039
13040         * gst/gst-i18n-app.h:
13041         * gst/gst-i18n-lib.h:
13042           remove inclusion of config.h
13043         * po/POTFILES.in:
13044         * po/nl.po:
13045           add gst/gstelement.c
13046
13047 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13048
13049         * po/nl.po: updated Dutch translation
13050
13051 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13052
13053         * gst/gsterror.c: (_gst_core_errors_init),
13054         (_gst_library_errors_init), (_gst_resource_errors_init),
13055         (_gst_stream_errors_init):
13056         remove ending punctuation dots
13057
13058 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13059
13060         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13061         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13062         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13063         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13064         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13065         use GST_ERROR_SYSTEM
13066
13067 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13068
13069         * gst/gstelement.c: (gst_element_error_printf),
13070         (gst_element_error_extended):
13071         * gst/gstelement.h:
13072           add a helper printf function so we can have NULL values passed.
13073
13074 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13075
13076         * gst/gstelement.h:
13077           add G_STMT macros to gst_element_error, which isn't strictly
13078           necessary but people tell me to anyway.
13079
13080 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13081
13082         * gst/Makefile.am:
13083         * gst/autoplug/gstspideridentity.c:
13084         (gst_spider_identity_sink_loop_type_finding):
13085         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13086         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13087         (gst_filesink_close_file), (gst_filesink_handle_event),
13088         (gst_filesink_chain):
13089         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13090         (gst_filesrc_map_region), (gst_filesrc_get_read),
13091         (gst_filesrc_open_file):
13092         * gst/elements/gstidentity.c: (gst_identity_chain):
13093         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13094         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13095         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13096         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13097         * gst/gst.h:
13098         * gst/gst_private.h:
13099         * gst/gstelement.c: (gst_element_class_init),
13100         (gst_element_default_error), (gst_element_error_func),
13101         (gst_element_error_extended):
13102         * gst/gstelement.h:
13103         * gst/gsterror.c: (_gst_core_errors_init),
13104         (_gst_library_errors_init), (_gst_resource_errors_init),
13105         (_gst_stream_errors_init), (gst_error_get_message):
13106         * gst/gsterror.h:
13107         * gst/gstinfo.c: (_gst_debug_init):
13108         * gst/gstmarshal.list:
13109         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13110         (gst_pad_recover_caps_error), (gst_pad_pull):
13111         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13112         * gst/schedulers/gstbasicscheduler.c:
13113         (gst_basic_scheduler_chainhandler_proxy),
13114         (gst_basic_scheduler_gethandler_proxy),
13115         (gst_basic_scheduler_cothreaded_chain):
13116         * po/POTFILES.in:
13117         * po/fr.po:
13118         * po/nl.po:
13119           change error signal
13120           add error categories
13121
13122 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13123
13124         * gst/gsttag.c: (_gst_tag_initialize):
13125         * gst/gsttag.h:
13126         Add replaygain tag
13127
13128 2004-01-18  Colin Walters  <walters@verbum.org>
13129
13130         * examples/retag/retag.c: Call gst_init before processing
13131         program args.  Add g_assert to _link_many call.
13132
13133 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13134
13135         * gst/gstpad.c: (gst_pad_alloc_buffer):
13136           Return a newly allocated buffer when the pad has no peer.
13137
13138 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13139
13140         * gst/gstclock.c: (gst_clock_get_time):
13141           make it compile with gcc 2.95 again.
13142           Patch by Scott Wheeler
13143
13144 2004-01-15  David Schleef  <ds@schleef.org>
13145
13146         * gst/gstcaps.h:
13147         Added gst_caps_is_simple() macro.
13148         * testsuite/caps/caps.c: (test1):
13149         * testsuite/caps/intersect2.c: (main):
13150         * testsuite/caps/intersection.c: (main):
13151         Fixes to make 'make check' work again after removing
13152         gst_caps_is_chained().
13153
13154 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13155
13156         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13157         and additions to the MIDI document.
13158
13159 2004-01-15  David Schleef  <ds@schleef.org>
13160
13161         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13162         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13163         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13164
13165 2004-01-15  David Schleef  <ds@schleef.org>
13166
13167         * gst/gstqueue.c:
13168         * gst/gstqueue.h:
13169         Fix the spelling of "treshold" and make min_threshold actually
13170         affect the queue.
13171
13172 2004-01-15  David Schleef  <ds@schleef.org>
13173
13174         * gst/gstcaps.c:
13175         Add lots of documentation.
13176         * gst/gstcaps.h:
13177         Deprecate a few functions.
13178         * gst/gstpad.c:
13179         Removed use of deprecated functions.
13180
13181 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13182
13183         * gst/gstpad.c: (gst_pad_is_linked):
13184         * gst/gstpad.h:
13185           implement gst_pad_is_linked
13186         * gst/gstelement.h:
13187           reserve space for initiate_state_change
13188
13189 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13190
13191         * gst/autoplug/gstspideridentity.c:
13192         (gst_spider_identity_sink_loop_type_finding):
13193           break infinite loop by just returning instead of looping
13194         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13195           set event time difference correctly. Set it to 1 second instead
13196           of 100ms to be more tolerant
13197         * gst/gstelement.c: (gst_element_set_time):
13198           add debugging output
13199
13200 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13201
13202         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13203           query if buffers are inside the pool, ignore events
13204
13205 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13206
13207         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13208         (gst_clock_set_speed), (gst_clock_set_active),
13209         (gst_clock_is_active), (gst_clock_reset),
13210         (gst_clock_handle_discont):
13211         * gst/gstclock.h:
13212           deprecate old interface and disable functions that aren't in use
13213           anymore.
13214         * gst/gstelement.h:
13215         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13216         (gst_element_set_time), (gst_element_adjust_time):
13217           add concept of "element time" and functions to get/set this time.
13218         * gst/gstelement.c: (gst_element_change_state):
13219           update element time correctly.
13220         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13221           This is a debug message, not a g_critical.
13222         * gst/gstpad.c: (gst_pad_event_default):
13223           handle discontinuous events right with element time.
13224         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13225           update to clocking fixes.
13226           set clocks on elements in READY=>PAUSED. The old behaviour caused
13227           a wrong element time on the first element that started playing.
13228         * gst/schedulers/gstbasicscheduler.c:
13229         (gst_basic_scheduler_class_init):
13230         * gst/schedulers/gstoptimalscheduler.c:
13231         (gst_opt_scheduler_class_init):
13232           remove code that just implements the default behaviour.
13233         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13234           update to use new clocking functions
13235         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13236         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13237           update to test new element time.
13238         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13239           use _get_allowed_caps instead of _get_caps. This catches filtered
13240           caps correctly.
13241         * testsuite/debug/commandline.c:
13242           update for new GST_DEBUG syntax.
13243         * testsuite/threads/Makefile.am:
13244           disable a test that only works sometimes.
13245
13246 2004-01-13  Julien MOUTTE <julien@moutte.net>
13247
13248         * po/LINGUAS: Adding fr.
13249         * po/fr.po: Adding french translation.
13250
13251 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13252
13253         * gst/parse/grammar.y:
13254         * po/POTFILES.in:
13255         * po/nl.po:
13256         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13257           translate parsing error messages
13258
13259 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13260
13261         * po/POTFILES.in: adding gst-launch
13262         * po/nl.po: updated translation, all 99 strings translated
13263         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13264         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13265           fix strings for translation
13266
13267 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13268
13269         * gst/gst.c:
13270           - capitalize beginnings of popt options
13271           - fix strings for translation
13272           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13273
13274 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13275
13276         * po/README: add some notes on how to update translations
13277
13278 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13279
13280         * ABOUT-NLS: removed, is autogenerated from autopoint
13281         * autogen.sh: add autopoint stuff
13282         * configure.ac: fix up gettext stuff
13283         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13284         * gst/elements/gsttypefindelement.c: add header include
13285         * gst/gettext.h: add header, copy from system-installed header
13286         * gst/gst-i18n-app.h: to be included by each app having translations
13287         * gst/gst-i18n-lib.h: to be included by each lib having translations
13288         * gst/gst.c: (init_pre): fix up gettext calls
13289         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13290         * po/LINGUAS: the new way to specify translations present
13291         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13292         * po/Makevars: the variables filled in for GStreamer
13293         * po/POTFILES.in: added new files with translations
13294         * po/de.po: has new strings
13295         * po/nl.po: readded, has new strings
13296
13297 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13298
13299         * gst/gsttag.c: fix some strings marked for translation
13300
13301 2004-01-13  Iain <iain@prettypeople.org>
13302
13303         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13304         group when we add an element to it, cos we unref it when we remove one
13305
13306 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13307
13308         * testsuite/debug/commandline.c: (debug_not_reached):
13309         * testsuite/debug/output.c: (check_message):
13310           fix testsuite
13311
13312 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13313
13314         * examples/cutter/.cvsignore:
13315         * examples/helloworld/.cvsignore:
13316         * examples/launch/.cvsignore:
13317         * examples/manual/.cvsignore:
13318         * examples/mixer/.cvsignore:
13319         * examples/pingpong/.cvsignore:
13320         * examples/plugins/.cvsignore:
13321         * examples/queue/.cvsignore:
13322         * examples/queue2/.cvsignore:
13323         * examples/queue3/.cvsignore:
13324         * examples/queue4/.cvsignore:
13325         * examples/retag/.cvsignore:
13326         * examples/thread/.cvsignore:
13327         * examples/typefind/.cvsignore:
13328         * examples/xml/.cvsignore:
13329         * gst/.cvsignore:
13330         * gst/autoplug/.cvsignore:
13331         * gst/elements/.cvsignore:
13332         * gst/indexers/.cvsignore:
13333         * gst/parse/.cvsignore:
13334         * gst/registries/.cvsignore:
13335         * gst/schedulers/.cvsignore:
13336         * libs/gst/bytestream/.cvsignore:
13337         * libs/gst/control/.cvsignore:
13338         * libs/gst/getbits/.cvsignore:
13339         * tests/.cvsignore:
13340         * tests/bufspeed/.cvsignore:
13341         * tests/instantiate/.cvsignore:
13342         * tests/memchunk/.cvsignore:
13343         * tests/muxing/.cvsignore:
13344         * tests/sched/.cvsignore:
13345         * tests/seeking/.cvsignore:
13346         * tests/threadstate/.cvsignore:
13347         * testsuite/.cvsignore:
13348         * testsuite/caps/.cvsignore:
13349         * testsuite/cleanup/.cvsignore:
13350         * testsuite/dynparams/.cvsignore:
13351         * testsuite/plugin/.cvsignore:
13352         * tools/.cvsignore:
13353           update - this is huge, because it includes *.bb, *.bbg and *.da files
13354           which are generated for gcov.
13355
13356 2004-01-11  David Schleef  <ds@schleef.org>
13357
13358         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13359         a function to parse integers in ways that strto[u]l() does not.
13360
13361 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13362
13363         * tools/gst-inspect.c: (print_caps):
13364           improve output of caps a bit
13365
13366 2004-01-11  David Schleef  <ds@schleef.org>
13367
13368         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13369         inherit correct flags (READONLY and DONTKEEP).
13370
13371 2004-01-11  David Schleef  <ds@schleef.org>
13372
13373         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13374         (gst_filesrc_map_region):
13375         * gst/gstbuffer.c: (_gst_buffer_initialize),
13376         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13377         (gst_buffer_new), (gst_buffer_create_sub),
13378         (gst_buffer_is_span_fast), (gst_buffer_span):
13379         * gst/gstbuffer.h:
13380         Change GstBuffer private structure element names. (all files)
13381         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13382         (gst_queue_link):
13383         * gst/gstqueue.h:
13384         Implement getcaps/pad_link functions that handle the case where
13385         there are data in the queue.
13386
13387 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13388
13389         * gst/elements/gstbufferstore.c:
13390           initialize debugging structure correctly
13391         * gst/elements/gsttee.c: (gst_tee_set_property):
13392           g_object_notify when property was changed
13393         * gst/elements/gsttypefindelement.c:
13394         (gst_type_find_element_change_state):
13395           clear caps correctly
13396
13397 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13398
13399         * gst/gstqueue.c: (gst_queue_init):
13400           Use better defaults for when a queue should block. This
13401           gets rid of jerky playback for quite a few files.
13402           It takes more memory.
13403
13404 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13405
13406         (gst_xml_registry_parse_padtemplate):
13407           make critical message slightly more useful
13408
13409 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13410
13411         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13412         (gst_debug_message_get), (gst_debug_log_default):
13413         * gst/gstinfo.h:
13414           Change gst_debug_log(_valist) to take a const format string.
13415           Change prototype of log function and functions using those to 
13416           take a GstDebugMessage instead of a string that requires using
13417           gst_debug_message_get.
13418
13419 2004-01-08  David Schleef  <ds@schleef.org>
13420
13421         * Makefile.am:
13422         * configure.ac:
13423         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13424         and -ftest-coverage, which allows gcov to show information about
13425         testsuite coverage.
13426
13427 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13428
13429         * gst/gstutils.h:
13430           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13431           GST_PARENT_CALL_WITH_DEFAULT
13432         * gst/elements/gstaggregator.c: 
13433         * gst/elements/gstbufferstore.c: 
13434         * gst/elements/gstfakesink.c: 
13435         * gst/elements/gstfakesrc.c: 
13436         * gst/elements/gstfdsink.c: 
13437         * gst/elements/gstfdsrc.c: 
13438         * gst/elements/gstfilesink.c: 
13439         * gst/elements/gstfilesrc.c: 
13440         * gst/elements/gstidentity.c: 
13441         * gst/elements/gstmd5sink.c: 
13442         * gst/elements/gstmultidisksrc.c:
13443         * gst/elements/gstpipefilter.c: 
13444         * gst/elements/gstshaper.c:
13445         * gst/elements/gststatistics.c:
13446         * gst/elements/gsttee.c:
13447         * gst/elements/gsttypefindelement.c:
13448           use them.
13449
13450 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13451
13452         * docs/gst/gstreamer-docs.sgml: remove props
13453         * docs/gst/gstreamer-sections.txt: remove props
13454         * docs/gst/tmpl/gst.sgml:
13455         * docs/gst/tmpl/gstbin.sgml:
13456         * docs/gst/tmpl/gstbuffer.sgml:
13457         * docs/gst/tmpl/gstcaps.sgml:
13458         * docs/gst/tmpl/gstclock.sgml:
13459         * docs/gst/tmpl/gstelement.sgml:
13460         * docs/gst/tmpl/gstindex.sgml:
13461         * docs/gst/tmpl/gstobject.sgml:
13462         * docs/gst/tmpl/gstpad.sgml:
13463         * docs/gst/tmpl/gstpadtemplate.sgml:
13464         * docs/gst/tmpl/gstreamer-unused.sgml:
13465         * docs/gst/tmpl/gstthread.sgml:
13466         * docs/gst/tmpl/gstxml.sgml:
13467           sync with code reorganization
13468
13469 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13470
13471         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13472         Make the 'Could not find compatible pad' message more informative.
13473
13474 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13475                                                                                 
13476         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13477           Fix for if we pass NULL as property to location.
13478         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13479         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13480           Fix for instantiate-test (see below).
13481         * gst/gststructure.c: (_gst_structure_parse_value):
13482           Fix compile error on gcc-2.96.
13483         * configure.ac:
13484         * tests/Makefile.am:
13485         * tests/instantiate/Makefile.am:
13486         * tests/instantiate/create.c: (create_all_elements), (main):
13487           Add a test that instantiates all elements. This makes it easy to
13488           track dead code for old API/design (like setting event functions
13489           on sink pads and so on).
13490
13491 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13492
13493         * gst/gstcaps.c: (gst_caps_append_structure):
13494           Move the poisoning to allow a NULL structure
13495         * gst/gstevent.c: (_gst_event_free):
13496           When freeing a navigation event, free the structure
13497           also
13498
13499 2004-01-04  David Schleef  <ds@schleef.org>
13500
13501         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13502         Remove usage of gst_pad_proxy_fixate.
13503         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13504         (gst_caps_split_one), (gst_caps_replace):
13505         Add poisoning code.
13506         * gst/gstmarshal.list:
13507         Add pointer__pointer for fixate signal
13508         * gst/gstpad.c: (gst_real_pad_class_init),
13509         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13510         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13511         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13512         Add poisoning code. Add fixate signal on RealPad. Change
13513         set_explicit_caps() to take const GstCaps, like try_set_caps().
13514         * gst/gstpad.h:
13515         * testsuite/caps/Makefile.am:
13516         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13517
13518 2004-01-03  David Schleef  <ds@schleef.org>
13519
13520         * gst/elements/gsttypefindelement.c:
13521         (gst_type_find_element_have_type), (gst_type_find_element_init):
13522         Use gst_pad_use_explicit_caps for src pad.
13523         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13524         before using it.
13525
13526 2004-01-03  David Schleef  <ds@schleef.org>
13527
13528         * gst/gstelement.c: (gst_element_link_pads_filtered),
13529         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13530         that linking was successful.
13531         * gst/gstpad.c: (gst_pad_link_free),
13532         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13533         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13534         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13535         GstPadLinkReturn correctly between functions, and don't fail
13536         when DELAYED is used (DELAYED is very important).  Better
13537         cleanup on unlinking and unnegotiation.  Should fix some spider
13538         bugs.
13539
13540 2004-01-02  David Schleef  <ds@schleef.org>
13541
13542         * gst/gstelement.c: (gst_element_class_init),
13543         (gst_element_base_class_init): ->padtemplates should be cleared
13544         in base_init, since we need to have a fresh list for every
13545         class.  (Alternately, we chould copy the list and share the
13546         actual pad templates (not the list), but that would require
13547         changing every plugin to move pad template registration from
13548         base_init to class_init.)
13549
13550 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13551
13552         * gst/gstelement.c: (gst_element_class_add_pad_template):
13553           Refuse registering a pad template if another pad template
13554           with the same name already exists (#114715).
13555
13556 2004-01-02  David Schleef  <ds@schleef.org>
13557
13558         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13559         (gst_caps_is_equal_fixed): Add new function.
13560         * gst/gstcaps.h: ditto.
13561         * gst/gstpad.c: (gst_real_pad_class_init),
13562         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13563         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13564         check new caps against existing caps -- if they're the same, return
13565         OK without renegotiating.  caps-nego-failed signal fixed so that
13566         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13567         to save an extra caps copy.  Don't complete negotiation if a pad
13568         link function returns DELAYED.
13569
13570 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13571
13572         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13573           Fix wrong g_return_if_fail
13574
13575 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13576
13577         * gst/gstbin.c: (gst_bin_class_init):
13578         Change the marshalling of element_added/element_removed
13579         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13580         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13581
13582 2004-01-01  David Schleef  <ds@schleef.org>
13583
13584         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13585         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13586         (gst_pad_use_explicit_caps):
13587         * gst/gstpad.h:
13588         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13589         to use an internal getcaps and link fuction so that negotiation
13590         always results in the explicitly set caps.
13591         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13592         are particularly useful for decoders.
13593
13594 2003-12-31  David Schleef  <ds@schleef.org>
13595
13596         * gst/elements/gstidentity.c: (gst_identity_class_init),
13597         (gst_identity_init), (gst_identity_chain),
13598         (gst_identity_set_property), (gst_identity_get_property):
13599         * gst/elements/gstidentity.h:
13600         * gst/gstqueue.c: (gst_queue_init):
13601           Negotiation fixes.
13602
13603 2003-12-31  David Schleef  <ds@schleef.org>
13604
13605         * gst/gstcaps.c: (gst_caps_intersect),
13606         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13607           Implement gst_caps_normalize().
13608         * testsuite/caps/normalisation.c: (main):
13609           Add an additional test
13610
13611 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13612
13613         * gst/gstqueue.c: (gst_queue_init):
13614           use gst_pad_proxy_getcaps()
13615
13616 2003-12-31  David Schleef  <ds@schleef.org>
13617
13618         * gst/elements/gstshaper.c: (gst_shaper_link):
13619         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13620         * gst/gstqueue.c: (gst_queue_link):
13621           Negotiation fixes.
13622
13623 2003-12-31  David Schleef  <ds@schleef.org>
13624
13625         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13626         * gst/gstpad.h: Add functions that are useful as default pad
13627         link and fixate functions for elements.
13628
13629 2003-12-30  David Schleef  <ds@schleef.org>
13630
13631         * gst/gstpad.c: (gst_pad_link_try):
13632           Fix segfault when attempting to return to old caps
13633
13634 2003-12-29  David Schleef  <ds@schleef.org>
13635
13636         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13637         (gst_caps_structure_simplify), (gst_caps_simplify):
13638         * gst/gstcaps.h:
13639           Add simplify function
13640         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13641         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13642         * gst/gstpad.h:
13643           Copy over srcnotify, sinknotify when calling old pad_link
13644           functions.  Add new is_negotiated() function.
13645         * gst/gststructure.c: (gst_structure_copy):
13646           Fix an incredibly stupid bug that should have been noticed
13647           weeks ago.  _copy() returned the argument, not the new copy.
13648
13649 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13650
13651         * gst/gstcaps.c: (gst_caps_append):
13652           add sanity checks
13653         * gst/gstcaps.h: (gst_caps_debug):
13654           remove, it doesn't exist anymore.
13655         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13656         (gst_element_threadsafe_properties_post_run):
13657           make debugging messages not clutter up THREAD debug category
13658         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13659         (gst_element_change_state):
13660           update to new caps API
13661         * gst/gstinterface.c: (gst_implements_interface_cast):
13662           don't put vital code in g_return_if_fail
13663         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13664         (gst_pad_link_filtered):
13665           add pst_pad_try_link and use it.
13666         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13667           implement correctly, deprecate first one.
13668         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13669           add and implement.
13670         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13671           implement.
13672         (gst_pad_get_negotiated_caps):
13673           add and implement. Make GST_PAD_CAPS call this function.
13674         (gst_pad_get_caps):
13675           remove unneeded check..
13676         (gst_pad_recover_caps_error):
13677           disable, always return FALSE.
13678         (gst_real_pad_dispose):
13679           don't free caps and appfilter anymore, they're unused.
13680         * gst/gstpad.h:
13681           Reflect changes mentioned above.
13682         * gst/gstsystemclock.c: (gst_system_clock_wait):
13683           Make 'clock is way behind' a debugging message.
13684         * gst/gstthread.c: (gst_thread_change_state):
13685           Fix debugging message
13686
13687 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13688
13689         * gst/gstinfo.h:
13690           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13691         * docs/gst/tmpl/gstreamer-unused.sgml:
13692           removed all traces of cvs conflicts
13693
13694 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13695
13696         * configure.ac:
13697         * gst/schedulers/cothreads_compat.h:
13698         * libs/Makefile.am:
13699           remove last instances of wingo cothread usage
13700
13701 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13702
13703         * gst/gstplugin.c:
13704         * gst/gstversion.h.in:
13705         * gst/parse/grammar.y:
13706           change comment block from /** to /* when not gtk-doc comments
13707
13708 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13709
13710         * gst/gst.c: whitespace and doc style fixes
13711
13712 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13713
13714         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13715
13716 2003-12-24  Colin Walters  <walters@verbum.org>
13717
13718         * gst/elements/gsttypefindelement.c:
13719           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13720           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13721           Don't double-free caps.
13722
13723 2003-12-23  David Schleef  <ds@schleef.org>
13724
13725         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13726           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13727           Many little fixes and additions of debug statements to
13728           get rhythmbox working.
13729
13730 2003-12-23  Colin Walters  <walters@verbum.org>
13731
13732         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13733         Use GST_PAD_LINK_SUCCESSFUL.
13734
13735 2003-12-23  David Schleef  <ds@schleef.org>
13736
13737         * gst/elements/gstaggregator.c:
13738         * gst/elements/gsttee.c:
13739           Use gst_pad_proxy_getcaps().
13740         * gst/gstpad.c:
13741         * gst/gstpad.h:
13742           Add gst_pad_proxy_getcaps(), which filter elements can use
13743           as a generic getcaps implementation.
13744           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13745           was advertised.
13746
13747 2003-12-23  David Schleef  <ds@schleef.org>
13748
13749         * gst/gstpad.c:
13750           Rearrange/rewrite much of the pad negotiation code, since it
13751           resembled pasta.  This actually changes the way some
13752           negotiation works, since the previous code was inconsistent
13753           depending on how it was invoked.  Add (internal) structure
13754           GstPadLink, which is used to hold some information (more in
13755           the future) about the link between two pads.  Fixes a number
13756           of bugs, including random lossage of filter caps when the
13757           initial negotiation is delayed.  A few functions are still
13758           unimplemented.
13759         * gst/gstpad.h:
13760           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13761           these when testing GstPadLinkReturn values instead of comparing
13762           directly.
13763
13764 2003-12-23  David Schleef  <ds@schleef.org>
13765
13766         * gst/gstvalue.c: 
13767         * gst/gstvalue.h:
13768           Rearrange lots of code.  Change registration of compare function
13769           into registration of compare/serialize/deserialize functions.
13770           Doesn't include implementation of gst_value_[de]serialize(),
13771           but that should be easy.
13772
13773 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13774
13775         * docs/gst/gstreamer-sections.txt:
13776         * docs/gst/tmpl/gstprops.sgml: removed
13777         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13778           David removed props and caps code, so let's remove their docs as well.
13779           Removed all no longer existing symbols from gstreamer-sections.txt
13780           
13781 2003-12-22  Colin Walters  <walters@verbum.org>
13782
13783         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13784           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13785           of tags directly.
13786
13787 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13788
13789         * gst/elements/gstelements.c:
13790           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13791         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13792           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13793           gst_caps (peer).
13794
13795 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13796
13797         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13798         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13799         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13800         (gst_spider_identity_sink_loop_type_finding):
13801         * gst/autoplug/gstspideridentity.h:
13802           Fix autoplugging in spider element, so it works with new caps.
13803           This was mainly caused by identifying empty caps incorrectly.
13804
13805 2003-12-22  David Schleef  <ds@schleef.org>
13806
13807         * gststructure.c, gstvalue.c, gstvalue.h: Add
13808           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13809           using g_value_copy()
13810
13811 2003-12-21  David Schleef  <ds@schleef.org>
13812
13813         * many, many files: Merge CAPS branch.  This includes:
13814           - implemention of GstValue and several GstValue types
13815           - implemention of GstStructure
13816           - entire rewrite of GstCaps
13817           - removal of GstProps
13818           - many changes to GstPad to compensate for new caps paradigm
13819           - removal of GstBufferpool
13820         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13821         gstvalue.h, gst/gstcaps[2]*.[ch]:
13822           - rename gstcaps2.[ch] to gstcaps.[ch]
13823
13824 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13825
13826         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13827         (gst_queue_chain), (gst_queue_handle_src_event):
13828           implement timeout for sending events. Workaround for if the
13829           pipeline on this queue is not passing any data.
13830
13831 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13832                                                                                 
13833         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13834         * moved CVS to freedesktop.org