gst/gstghostpad.c: Actually implement (re)setting the target on a ghostpad as describ...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-11  Wim Taymans  <wim@fluendo.com>
2
3         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
4         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
5         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
6         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
7         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
8         (gst_ghost_pad_set_target):
9         Actually implement (re)setting the target on a ghostpad
10         as described in the docs.
11
12 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
13
14         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
15           Check whether GST_DEBUG_NO_COLOR environment variable is
16           set and disable coloured debug output if that is the case.
17
18 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
19
20         * gst/base/gsttypefindhelper.c: (helper_find_peek),
21         (gst_type_find_helper):
22           The memory returned by gst_type_find_peek() needs to
23           stay valid until the end of a typefind function, and
24           typefind functions may keep results from different 
25           offsets around, so we can't just unref the buffer from
26           the previous _peek(), but have to save all buffers 
27           returned by _peek() until typefinding is done and only
28           free them then.
29
30 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
31
32         * docs/gst/gstreamer-sections.txt:
33         * gst/gstutils.h:
34           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
35
36 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
37
38         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
39           Fix a pretty good memleak.
40
41 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
42
43         * gst/gstiterator.h:
44           Fix wrong include and 'make distcheck'.
45
46 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
47
48         * gst/gstbin.c: (bin_bus_handler):
49           Use gst_element_post_message() instead.
50
51 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
52
53         * gst/base/gstadapter.h:
54         * gst/base/gstbasesink.h:
55         * gst/base/gstbasesrc.h:
56         * gst/base/gstbasetransform.h:
57         * gst/base/gstcollectpads.h:
58         * gst/base/gstpushsrc.h:
59         * gst/gstiterator.h:
60           Add padding to our base elements' class and instance structs and
61           to GstIterator (you will need to rebuild all plugins and apps!)
62
63 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
64
65         * gst/gstbin.c: (bin_bus_handler):
66           Make default message forwarding from child->bus to bin->bus
67           threadsafe and make it not emit warnings if the parent has no bus.
68
69 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
70
71         * gst/gstelement.c: (activate_pads):
72           On paused->ready, set pad->caps to NULL, as is the documented
73           behaviour in this state change. Fixes playback of series of
74           media files when visualization is enabled in Totem.
75
76 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
77
78         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
79           Allow NULL as filter-caps (which means "any").
80
81 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
82
83         * docs/libs/gstreamer-libs-sections.txt:
84         * libs/gst/controller/gst-controller.c:
85         * libs/gst/controller/gst-controller.h:
86         * libs/gst/controller/gst-helper.c:
87           adding more entries to the docs and fix small doc-bugs
88
89 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
90
91         * docs/gst/gstreamer-docs.sgml:
92         * docs/gst/gstreamer-sections.txt:
93         * docs/gst/gstreamer.types:
94         * docs/gst/tmpl/gstbasesink.sgml:
95         * docs/gst/tmpl/gstbasesrc.sgml:
96         * docs/gst/tmpl/gstbasetransform.sgml:
97         * docs/gst/tmpl/gstfakesrc.sgml:
98         * gst/base/gstcollectpads.c:
99         * gst/base/gstcollectpads.h:
100         * libs/gst/controller/gst-controller.c:
101         * libs/gst/controller/gst-controller.h:
102         * libs/gst/controller/gst-helper.c:
103         * libs/gst/controller/gst-interpolation.c:
104         * libs/gst/controller/lib.c:
105           added long/short desc for controller docs
106           added collectpads base class docs
107           added correct includes to base-class docs
108
109 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
110
111         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
112         (gst_test_mono_source_set_property),
113         (gst_test_mono_source_class_init), (GST_START_TEST),
114         (gst_controller_suite):
115         * docs/gst/gstreamer-docs.sgml:
116         * docs/gst/gstreamer-sections.txt:
117         * docs/gst/gstreamer.types:
118         * docs/libs/gstreamer-libs-docs.sgml:
119         * docs/libs/gstreamer-libs-sections.txt:
120         * gst/base/gstadapter.c:
121         * libs/gst/controller/gst-controller.c:
122         (gst_controlled_property_new), (gst_controlled_property_free),
123         (gst_controller_new_valist),
124         (gst_controller_remove_properties_valist),
125         (gst_controller_sink_values), (_gst_controller_finalize):
126         * libs/gst/controller/gst-controller.h:
127         * libs/gst/controller/gst-helper.c:
128         (gst_object_control_properties), (gst_object_uncontrol_properties),
129         (gst_object_get_controller), (gst_object_set_controller),
130         (gst_object_sink_values), (gst_object_get_value_arrays),
131         (gst_object_get_value_array):
132           more tests (and fixes) for the controller
133           more docs for the controller
134           integrated companies docs for the adapter 
135
136 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
137
138         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
139         (GST_START_TEST), (fakesrc_suite):
140           add tests for sizetype
141
142 2005-08-04  Andy Wingo  <wingo@pobox.com>
143
144         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
145         fixes buffer_alloc proxying among other things.
146
147         * gst/base/gstbasetransform.c:
148         * gst/base/gstbasetransform.h:
149         Revert patch to gstbasetransform from 7-28 removing
150         delay_configure.
151
152         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
153         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
154         Semantics changed, should return not the size of the output buffer
155         but the byte size of a buffer with a given caps.
156
157         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
158         debug object.
159         (gst_base_transform_configure_caps): Don't set out_size here: (in,
160         out) are not the pad caps until setcaps finishes.
161         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
162         not-in-place case as well. Deal with changing from in-place to
163         not-in-place within calling pad_alloc_buffer. Still a bit
164         concerned about the overhead here...
165
166 2005-08-03  Andy Wingo  <wingo@pobox.com>
167
168         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
169         fixating is an error.
170
171 2005-08-04  Edward Hervey  <edward@fluendo.com>
172
173         * gst/base/gstadapter.h: 
174         Added gst_adapter_get_type() to the header
175
176 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
177
178         * check/Makefile.am:
179         * check/gst-libs/controller.c:
180         * libs/gst/controller/gst-controller.c:
181         (gst_controller_new_valist):
182           added check test suite for the controller
183         * gst/base/gstpushsrc.c:
184           fixed a doc typo
185
186 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
187
188         * docs/gst/Makefile.am:
189         * docs/gst/gstreamer-docs.sgml:
190         * docs/gst/gstreamer-sections.txt:
191         * docs/gst/gstreamer.types:
192         * docs/gst/tmpl/gstfakesrc.sgml:
193         * gst/base/README:
194         * gst/base/gstbasesink.c:
195         * gst/base/gstbasesink.h:
196         * gst/base/gstbasesrc.c:
197         * gst/base/gstbasesrc.h:
198         * gst/base/gstbasetransform.c:
199         * gst/base/gstpushsrc.c:
200         * gst/base/gstpushsrc.h:
201           add short/long description docs to base classes
202           add pushsrc to the docs
203           remove consolidated doc fragments
204
205 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
206
207         * configure.ac:
208         * docs/libs/Makefile.am:
209         * docs/libs/gstreamer-libs-docs.sgml:
210         * docs/libs/gstreamer-libs-sections.txt:
211         * docs/libs/gstreamer-libs.types:
212         * examples/Makefile.am:
213         * examples/controller/.cvsignore:
214         * examples/controller/Makefile.am:
215         * examples/controller/audio-example.c: (main):
216         * libs/gst/Makefile.am:
217         * libs/gst/controller/.cvsignore:
218         * libs/gst/controller/Makefile.am:
219         * libs/gst/controller/gst-controller.c:
220         (on_object_controlled_property_changed), (gst_timed_value_compare),
221         (gst_timed_value_find),
222         (gst_controlled_property_set_interpolation_mode),
223         (gst_controlled_property_new), (gst_controlled_property_free),
224         (gst_controller_find_controlled_property),
225         (gst_controller_new_valist), (gst_controller_new),
226         (gst_controller_remove_properties_valist),
227         (gst_controller_remove_properties), (gst_controller_set),
228         (gst_controller_set_from_list), (gst_controller_unset),
229         (gst_controller_get), (gst_controller_get_all),
230         (gst_controller_sink_values), (gst_controller_get_value_arrays),
231         (gst_controller_get_value_array),
232         (gst_controller_set_interpolation_mode),
233         (_gst_controller_finalize), (_gst_controller_init),
234         (_gst_controller_class_init), (gst_controller_get_type):
235         * libs/gst/controller/gst-controller.h:
236         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
237         (g_object_uncontrol_properties), (g_object_get_controller),
238         (g_object_set_controller), (g_object_sink_values),
239         (g_object_get_value_arrays), (g_object_get_value_array):
240         * libs/gst/controller/gst-interpolation.c:
241         (gst_controlled_property_find_timed_value_node),
242         (interpolate_none_get), (interpolate_trigger_get),
243         (interpolate_trigger_get_value_array):
244         * libs/gst/controller/lib.c: (gst_controller_init):
245         * pkgconfig/Makefile.am:
246         * pkgconfig/gstreamer-control-uninstalled.pc.in:
247         * pkgconfig/gstreamer-control.pc.in:
248         * testsuite/Makefile.am:
249         * testsuite/controller/.cvsignore:
250         * testsuite/controller/Makefile.am:
251         * testsuite/controller/interpolator.c: (main):
252           added controller code
253           removed dparam pc files
254
255 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
256         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
257         (gst_collectpads_stop):
258           Broadcast the condition when shutting down, to make sure we wake all
259           threads up. Shut down pads on finalize, for safety.
260
261 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
262         * gst/base/gstbasetransform.c: (gst_base_transform_init),
263         (gst_base_transform_handle_buffer),
264         (gst_base_transform_change_state):
265           Handle PAUSED->READY->PAUSED transition after negotiation
266           occurred already.
267         * gst/gstmessage.c: (gst_message_init):
268           Extra piece of debug for new messages.
269
270 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
271
272         * configure.ac:
273         * docs/gst/tmpl/gstbasesrc.sgml:
274         * docs/gst/tmpl/gstelement.sgml:
275         * docs/gst/tmpl/gstevent.sgml:
276         * docs/gst/tmpl/gstfakesrc.sgml:
277         * docs/gst/tmpl/gstformat.sgml:
278         * docs/gst/tmpl/gstghostpad.sgml:
279         * docs/gst/tmpl/gstpad.sgml:
280         * docs/gst/tmpl/gstquery.sgml:
281         * docs/gst/tmpl/gststructure.sgml:
282         * docs/gst/tmpl/gsttaglist.sgml:
283         * docs/gst/tmpl/gstvalue.sgml:
284         * docs/libs/gstreamer-libs-docs.sgml:
285         * docs/libs/gstreamer-libs-sections.txt:
286         * docs/libs/gstreamer-libs.types:
287         * libs/gst/Makefile.am:
288         * libs/gst/control/.cvsignore:
289         * libs/gst/control/Makefile.am:
290         * libs/gst/control/control.c:
291         * libs/gst/control/control.h:
292         * libs/gst/control/dparam.c:
293         * libs/gst/control/dparam.h:
294         * libs/gst/control/dparam_smooth.c:
295         * libs/gst/control/dparam_smooth.h:
296         * libs/gst/control/dparamcommon.h:
297         * libs/gst/control/dparammanager.c:
298         * libs/gst/control/dparammanager.h:
299         * libs/gst/control/dplinearinterp.c:
300         * libs/gst/control/dplinearinterp.h:
301         * libs/gst/control/unitconvert.c:
302         * libs/gst/control/unitconvert.h:
303         * testsuite/Makefile.am:
304         * testsuite/dynparams/.cvsignore:
305         * testsuite/dynparams/Makefile.am:
306         * testsuite/dynparams/dparamstest.c:
307         * tools/Makefile.am:
308         * tools/gst-inspect.c: (print_element_info), (main):
309         * tools/gst-xmlinspect.c: (print_element_info), (main):
310           deactivate and remove dparams (libgstcontrol)
311
312 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
313
314         * gst/elements/gsttypefindelement.c:
315         (gst_type_find_element_have_type), (gst_type_find_element_init),
316         (stop_typefinding), (gst_type_find_element_handle_event),
317         (gst_type_find_element_chain), (gst_type_find_element_getrange):
318         * gst/elements/gsttypefindelement.h:
319           Set caps on all outgoing buffers, not just the first one.
320
321 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
322
323         * gst/elements/gsttypefindelement.c:
324         (gst_type_find_element_have_type),
325         (gst_type_find_element_check_set_buffer_caps),
326         (gst_type_find_element_init), (stop_typefinding),
327         (gst_type_find_element_handle_event),
328         (gst_type_find_element_chain), (gst_type_find_element_getrange):
329         * gst/elements/gsttypefindelement.h:
330           Set caps on first outgoing buffer when we've found the type.
331
332 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
333
334         * docs/gst/gstreamer-docs.sgml:
335         * docs/gst/gstreamer-sections.txt:
336         * docs/gst/tmpl/gstscheduler.sgml:
337         * docs/gst/tmpl/gstschedulerfactory.sgml:
338           Remove some old cruft from docs.
339
340 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
341
342         * gst/gstpad.h:
343           Fix inline docs for GstPadLinkReturn.
344           
345         * gst/gststructure.c: (gst_structure_has_name):
346         * gst/gststructure.h:
347         * docs/gst/gstreamer-sections.txt:
348           New API: gst_structure_has_name().
349
350 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
351
352         * configure.ac:
353           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
354           and _LARGEFILE_SOURCE in config.h as required. Do not 
355           export those flags in our .pc files any longer (#142209).
356
357           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
358
359         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
360         (gst_file_sink_do_seek), (gst_file_sink_event),
361         (gst_file_sink_get_current_offset), (gst_file_sink_render):
362           Redo seek/tell calls with large file support in mind; add some
363           debugging messages; add log message that tells us when large
364           file support is unavailable or not enabled for some reason.
365
366         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
367           Add log message that tells us when large file support 
368           is unavailable or not enabled for some reason.
369
370 2005-07-29  Wim Taymans  <wim@fluendo.com>
371
372         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
373         Added test for removing an element with ghostpad from a bin.
374         Fixed test as current implementation does the right thing.
375
376         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
377         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
378         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
379         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
380         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
381         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
382         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
383         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
384         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
385         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
386         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
387         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
388         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
389         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
390         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
391         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
392         * gst/gstghostpad.h:
393         Clean up ghostpads, remove properties for internal stuff.
394         Make threadsafe.
395         Fix refcounting.
396         Prepare for switching targets, not all use cases work yet.
397
398 2005-07-29  Wim Taymans  <wim@fluendo.com>
399
400         * docs/design/part-gstghostpad.txt:
401         Small update.
402
403         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
404         (gst_bin_remove_func):
405         Unlinking pads while holding the bin LOCK is not a good
406         idea.
407
408         * gst/gstpad.c: (gst_pad_class_init),
409         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
410         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
411         No prob setting template after creating the pad.
412
413 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
414
415         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
416         (gst_bus_peek), (gst_bus_source_dispatch),
417         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
418         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
419           gst_bus_poll may be called from other threads. Handle
420           this nicely by not making poll_data disappear off the
421           stack once gst_bus_poll returns.
422           gst_bus_peek now increments the refcount on the returned
423           message.
424
425 2005-07-29  Wim Taymans  <wim@fluendo.com>
426
427         * docs/design/part-gstghostpad.txt:
428         Overview of current GhostPad datastructures and use
429         cases for changing the target.
430
431 2005-07-28  Wim Taymans  <wim@fluendo.com>
432
433         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
434         Added checks for hierarchy consistency whan adding linked
435         elements to bins.
436
437         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
438         Added check to test element scheduling without bin/pipeline.
439
440         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
441         First add elements to bin, then link.
442         
443         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
444         (gst_bin_remove_func):
445         Unlink pads from elements added/removed from bin to maintain
446         hierarchy consistency.
447
448 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
449
450         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
451         (gst_base_transform_handle_buffer):
452         * gst/base/gstbasetransform.h:
453           Remove broken delay_configure (fixes renegotiation of software
454           scaling pipelines); remove some leftover printf()s.
455
456 2005-07-28  Wim Taymans  <wim@fluendo.com>
457
458         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
459         Added some more tests for wrong hierarchy
460
461         * docs/design/part-overview.txt:
462         Some updates.
463
464         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
465         Cleanups.
466
467         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
468         (gst_element_dispose):
469         Some more cleanups.
470
471         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
472         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
473         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
474         (gst_pad_set_caps), (gst_pad_send_event):
475         Check for correct hierarchy when linking pads. Moving to
476         strict requirement for ghostpads when linking elements in
477         different bins.
478
479         * gst/gstpad.h:
480         Clean ups. Added WRONG_HIERARCHY return value.
481
482 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
483
484         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
485           Better debug if no transform is possible.
486
487 2005-07-27  Wim Taymans  <wim@fluendo.com>
488
489         * docs/random/wtay/network-transp:
490         Some old doc I had.
491
492 2005-07-27  Wim Taymans  <wim@fluendo.com>
493
494         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
495         (gst_dp_event_from_packet):
496         Fix serialization of seek events.
497
498 2005-07-27  Wim Taymans  <wim@fluendo.com>
499
500         * check/gst-libs/gdp.c: (GST_START_TEST):
501         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
502         Fix compilation and fix event serialization.
503
504 2005-07-27  Wim Taymans  <wim@fluendo.com>
505
506         * CHANGES-0.9:
507         * docs/design/part-TODO.txt:
508         * docs/design/part-events.txt:
509         Some docs updates
510
511         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
512         (gst_base_sink_event), (gst_base_sink_do_sync),
513         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
514         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
515         (gst_base_src_do_seek), (gst_base_src_event_handler),
516         (gst_base_src_loop):
517         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
518         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
519         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
520         (gst_base_transform_event), (gst_base_transform_handle_buffer),
521         (gst_base_transform_set_passthrough),
522         (gst_base_transform_is_passthrough):
523         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
524         * gst/elements/gstfilesink.c: (gst_file_sink_event):
525         Event updates.
526
527         * gst/gstbuffer.h:
528         Use faster casts.
529
530         * gst/gstelement.c: (gst_element_seek):
531         * gst/gstelement.h:
532         Update gst_element_seek.
533
534         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
535         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
536         (gst_event_new_flush_start), (gst_event_new_flush_stop),
537         (gst_event_new_eos), (gst_event_new_newsegment),
538         (gst_event_parse_newsegment), (gst_event_new_tag),
539         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
540         (gst_event_parse_qos), (gst_event_new_seek),
541         (gst_event_parse_seek), (gst_event_new_navigation):
542         * gst/gstevent.h:
543         Make GstEvent use GstStructure. Add parsing code, make sure the
544         API is sufficiently generic.
545         Mark possible directions of events and serialization.
546
547         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
548         (_gst_message_copy), (gst_message_new_segment_start),
549         (gst_message_new_segment_done), (gst_message_new_custom),
550         (gst_message_parse_segment_start),
551         (gst_message_parse_segment_done):
552         Small cleanups.
553
554         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
555         (gst_pad_set_caps), (gst_pad_send_event):
556         Update for new events. 
557         Catch events sent in wrong directions.
558
559         * gst/gstqueue.c: (gst_queue_link_src),
560         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
561         (gst_queue_handle_src_query):
562         Event updates.
563
564         * gst/gsttag.c:
565         * gst/gsttag.h:
566         Remove event code from this file.
567
568         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
569         (gst_dp_event_from_packet):
570         Event updates.
571
572 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
573
574         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
575         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
576         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
577           Make debugging actually useful.
578
579 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
580
581         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
582         (gst_pad_fixate_caps):
583           Implement default fixation once again, so that gst_pad_fixate()
584           actually does anything at all. This probably needs to be some
585           sort of a last resort, and use profile-based fixation first, but
586           since that doesn't exist yet, this is the best we have. Fixes
587           visualization in Totem.
588
589 2005-07-22  Wim Taymans  <wim@fluendo.com>
590
591         * docs/design/part-events.txt:
592         Small update.
593
594         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
595         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
596         (gst_base_sink_activate_pull):
597         Some more comments.
598
599         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
600         (gst_fake_src_create):
601         Fix handoff marshall.
602
603         * gst/elements/gstidentity.c: (gst_identity_class_init),
604         (gst_identity_transform_ip):
605         We're a real inplace element.
606
607         * gst/gstbus.c: (gst_bus_post):
608         Added some comments.
609
610         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
611         * tests/muxing/case1.c: (main):
612         * tests/sched/dynamic-pipeline.c: (main):
613         * tests/sched/interrupt1.c: (main):
614         * tests/sched/interrupt2.c: (main):
615         * tests/sched/interrupt3.c: (main):
616         * tests/sched/runxml.c: (main):
617         * tests/sched/sched-stress.c: (main):
618         * tests/seeking/seeking1.c: (event_received), (main):
619         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
620         (main):
621         * tests/threadstate/threadstate3.c: (main):
622         * tests/threadstate/threadstate4.c: (main):
623         * tests/threadstate/threadstate5.c: (main):
624         Fix the tests.
625
626 2005-07-21  Wim Taymans  <wim@fluendo.com>
627
628         * docs/design/part-seeking.txt:
629         Some small additions.
630
631         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
632         (gst_base_sink_get_times), (gst_base_sink_do_sync),
633         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
634         * gst/base/gstbasesink.h:
635         discont values are gint64, handle the math correctly.
636
637         * gst/base/gstbasesrc.c: (gst_base_src_loop):
638         Make the basesrc report error if the source pad is not linked.
639
640         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
641         (gst_queue_loop), (gst_queue_handle_src_query),
642         (gst_queue_src_activate_push):
643         Make queue collect data even if the srcpad is not linked.
644         Start pushing out data as soon as it is linked.
645
646         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
647         * gst/gstutils.h:
648         Added gst_flow_get_name() to ease error reporting.
649
650 2005-07-20  Wim Taymans  <wim@fluendo.com>
651
652         * gst/gstmessage.c: (gst_message_new_segment_start),
653         (gst_message_new_segment_done), (gst_message_parse_segment_start),
654         (gst_message_parse_segment_done):
655         * gst/gstmessage.h:
656         Added a bunch of messages for advanced seeking.
657
658         * gst/parse/grammar.y:
659         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
660         (gst_dpman_state_changed):
661         Fix some new-pad -> pad-added signals
662
663 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
664
665         * docs/manual/appendix-porting.xml:
666         * docs/pwg/appendix-porting.xml:
667           Document new-pad/state-change signal renames and the FixedList
668           type rename.
669
670 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
671
672         * docs/manual/advanced-autoplugging.xml:
673         * docs/manual/basics-helloworld.xml:
674         * docs/manual/basics-pads.xml:
675         * docs/random/ds/0.9-suggested-changes:
676         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
677         * gst/gstelement.h:
678         * gst/gstevent.h:
679         * gst/gstformat.h:
680         * gst/gstquery.h:
681         * gst/gststructure.c: (gst_structure_value_get_generic_type),
682         (gst_structure_parse_array), (gst_structure_parse_value):
683         * gst/gstvalue.c: (gst_type_is_fixed),
684         (gst_value_list_prepend_value), (gst_value_list_append_value),
685         (gst_value_list_get_size), (gst_value_list_get_value),
686         (gst_value_transform_array_string), (gst_value_serialize_array),
687         (gst_value_deserialize_array), (gst_value_intersect_array),
688         (gst_value_is_fixed), (_gst_value_initialize):
689         * gst/gstvalue.h:
690           GstElement::new-pad -> pad-added, GstElement::state-change ->
691           state-changed, GstValueFixedList -> GstValueArray, add format and
692           flags as their own arguments in gst_element_seek() (should improve
693           "bindeability"), remove function generators since they don't work
694           under a whole bunch of compilers (they were deprecated already
695           anyway).
696
697 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
698
699         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
700         (_gst_debug_register_funcptr):
701         * gst/gstinfo.h:
702           Fix illegal cast on some platforms (#309253).
703
704 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
705
706         * gst/gstmessage.c: (gst_message_new_custom):
707         * gst/gstmessage.h:
708           Add _new_custom, make _new_application a macro to _new_custom.
709
710 2005-07-20  Wim Taymans  <wim@fluendo.com>
711
712         * gst/base/gstbasesrc.c: (gst_base_src_init),
713         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
714         * gst/base/gstbasesrc.h:
715         Add a gboolean to decide when to push out a discont.
716
717         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
718         (gst_queue_loop), (gst_queue_handle_src_query),
719         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
720         (gst_queue_set_property), (gst_queue_get_property):
721         Some cleanups.
722
723         * tests/threadstate/threadstate1.c: (main):
724         Make a thread test compile and run... very silly..
725
726
727 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
728
729         * docs/manual/appendix-porting.xml:
730           Mention removal of libgstgconf-0.9.la and existence of gconf
731           elements.
732
733 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
734
735         * docs/pwg/advanced-clock.xml:
736         * docs/pwg/appendix-porting.xml:
737         * docs/pwg/intro-preface.xml:
738         * docs/pwg/other-base.xml:
739         * docs/pwg/other-manager.xml:
740         * docs/pwg/other-nton.xml:
741         * docs/pwg/other-ntoone.xml:
742         * docs/pwg/other-oneton.xml:
743         * docs/pwg/pwg.xml:
744           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
745           demuxer), remove n-to-n (was never written), fix some code examples
746           and links and update the porting section to include all this.
747
748 2005-07-19  Wim Taymans  <wim@fluendo.com>
749
750         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
751         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
752         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
753         (gst_queue_src_activate_push), (gst_queue_change_state),
754         (gst_queue_get_property):
755         * gst/gstqueue.h:
756         Propagate GstFlowReturn more intelligently upstream and output
757         an ERROR/EOS when streaming stopped due to fatal error.
758
759 2005-07-19  Wim Taymans  <wim@fluendo.com>
760
761         * tools/gst-launch.c: (check_intr), (event_loop), (main):
762         Don't block forever for the state change to complete, the
763         pipeline already did with a sensible timeout.
764
765 2005-07-19  Wim Taymans  <wim@fluendo.com>
766
767         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
768         Make sure we never call the create function is we
769         got deactivated.
770
771 2005-07-19  Andy Wingo  <wingo@pobox.com>
772
773         * gst/parse/parse.l: Attempt to solve bug #172815.
774
775 2005-07-19  Wim Taymans  <wim@fluendo.com>
776
777         * docs/design/part-clocks.txt:
778         * docs/design/part-events.txt:
779         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
780         Small docs updates.
781         Only update the seeking values when we are not
782         busy streaming.
783
784 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
785
786         * gst/base/gstbasesrc.c: (gst_base_src_loop):
787           Oops, ignore the result of gst_pad_push_event here.
788
789 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
790
791         * gst/base/gstbasesrc.c: (gst_base_src_loop),
792         (gst_base_src_activate_push):
793           Send discont event from the loop function, as pads
794           aren't activated yet in the activate_push handler.
795
796         * gst/gstbin.c: (bin_bus_handler):
797           Don't leak element name.
798
799 2005-07-18  Andy Wingo  <wingo@pobox.com>
800
801         * configure.ac: Use AS_LIBTOOL_TAGS.
802
803 2005-07-18  Wim Taymans  <wim@fluendo.com>
804
805         * docs/gst/gstreamer.types:
806         Remove deleted types.
807
808 2005-07-18  Wim Taymans  <wim@fluendo.com>
809
810         * check/elements/gstfakesrc.c: (GST_START_TEST):
811         * configure.ac:
812         * gst/Makefile.am:
813         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
814         (init_popt_callback):
815         * gst/gst.h:
816         * gst/gst_private.h:
817         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
818         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
819         * gst/gstbin.h:
820         * gst/gstbus.h:
821         * gst/gstconfig.h.in:
822         * gst/gstelement.c: (gst_element_class_init),
823         (gst_element_set_base_time), (gst_element_get_base_time),
824         (iterator_fold_with_resync), (gst_element_change_state),
825         (gst_element_dispose), (gst_element_get_bus):
826         * gst/gstelement.h:
827         * gst/gstelementfactory.h:
828         * gst/gsterror.c: (_gst_core_errors_init):
829         * gst/gsterror.h:
830         * gst/gstevent.h:
831         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
832         * gst/gstindex.c:
833         * gst/gstinfo.c: (_gst_debug_init):
834         * gst/gstmessage.c: (_gst_message_copy):
835         * gst/gstmessage.h:
836         * gst/gstminiobject.h:
837         * gst/gstobject.c:
838         * gst/gstobject.h:
839         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
840         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
841         * gst/gstpad.h:
842         * gst/gstparse.h:
843         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
844         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
845         (gst_pipeline_get_last_stream_time):
846         * gst/gstpipeline.h:
847         * gst/gstpluginfeature.h:
848         * gst/gstquery.h:
849         * gst/gstscheduler.c:
850         * gst/gstscheduler.h:
851         * gst/gststructure.h:
852         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
853         (gst_task_finalize), (gst_task_func), (gst_task_create),
854         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
855         (gst_task_stop), (gst_task_pause):
856         * gst/gsttask.h:
857         * gst/gsttypefind.h:
858         * gst/gsttypes.h:
859         * gst/registries/gstlibxmlregistry.c: (load_feature),
860         (gst_xml_registry_load), (gst_xml_registry_save_feature):
861         * gst/registries/gstxmlregistry.c:
862         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
863         * gst/schedulers/threadscheduler.c:
864         * libs/gst/control/dparammanager.h:
865         * tools/gst-inspect.c: (print_element_list),
866         (print_plugin_features), (print_element_features):
867         * tools/gst-xmlinspect.c: (print_element_list),
868         (print_plugin_info), (main):
869         Removed plugable schedulers.
870         Removed Scheduler/Manager from elements.
871         Removed gsttypes.h, rearranged includes.
872         Removed dependency pad<->element, element<>pipeline, and
873         various others,  fix includes.
874         implement gst_pad_get_parent() with gst_object_get_parent()
875         Make GstTask sefcontained.
876         Fix _get_state() on GstBin, it did not return ASYNC with a 0
877         timeout.
878         Fix endless loop in iterator_fold_with_resync.
879
880
881 2005-07-18  Wim Taymans  <wim@fluendo.com>
882
883         * gst/Makefile.am:
884         * gst/gstarch.h:
885         Remove old file.
886
887 2005-07-18  Wim Taymans  <wim@fluendo.com>
888
889         * gst/Makefile.am:
890         No more cothreads.h
891
892 2005-07-18  Wim Taymans  <wim@fluendo.com>
893
894         * gst/cothreads.c:
895         * gst/cothreads.h:
896         Let's remove these.
897
898 2005-07-18  Wim Taymans  <wim@fluendo.com>
899
900         * docs/design/part-dynamic.txt:
901         * docs/design/part-events.txt:
902         * docs/design/part-seeking.txt:
903         Some more docs in the works.
904
905         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
906         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
907         (gst_base_transform_setcaps), (gst_base_transform_get_size),
908         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
909         (gst_base_transform_handle_buffer),
910         (gst_base_transform_sink_activate_push),
911         (gst_base_transform_src_activate_pull),
912         (gst_base_transform_set_passthrough),
913         (gst_base_transform_is_passthrough):
914         Refcounting fixes.
915
916         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
917         Cleanups.
918
919         * gst/gstevent.c: (gst_event_finalize):
920         Set SRC to NULL.
921
922         * gst/gstutils.c: (gst_element_unlink),
923         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
924         (gst_pad_proxy_setcaps):
925         * gst/gstutils.h:
926         Add _get_parent_element() to get a pads parent as an element.
927
928 2005-07-18  Wim Taymans  <wim@fluendo.com>
929
930         * check/gst/gstbin.c: (GST_START_TEST):
931         Remove bogus test.
932
933 2005-07-18  Wim Taymans  <wim@fluendo.com>
934
935         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
936         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
937         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
938         (gst_base_sink_event), (gst_base_sink_do_sync),
939         (gst_base_sink_chain), (gst_base_sink_loop),
940         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
941         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
942         Refcounting fixes.
943         Fix logic for returning ASYNC when not prerolled.
944
945 2005-07-18  Wim Taymans  <wim@fluendo.com>
946
947         * gst/gstqueue.c: (gst_queue_handle_sink_event):
948         Fix nasty refcount bug.
949
950 2005-07-16 Philippe Khalaf <burger@speedy.org>
951         * gst/elements/gstfdsrc.c:
952         * gst/elements/gstfdsrc.h:
953         * gst/elements/gstelements.c:
954         * gst/elements/Makefile.am:
955         Ported fdsrc to 0.9.
956
957 2005-07-16  Wim Taymans  <wim@fluendo.com>
958
959         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
960         (gst_base_sink_do_sync):
961         Fix compile error.
962
963 2005-07-16  Wim Taymans  <wim@fluendo.com>
964
965         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
966         (gst_base_sink_event), (gst_base_sink_get_times),
967         (gst_base_sink_do_sync), (gst_base_sink_change_state):
968         * gst/base/gstbasesink.h:
969         Store and use discont values when syncing buffers as described
970         in design docs.
971         
972         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
973         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
974         (gst_base_src_activate_push):
975         Push discont event when starting.
976
977         * gst/elements/gstidentity.c: (gst_identity_transform):
978         Small cleanups.
979
980         * gst/gstbin.c: (gst_bin_change_state):
981         Small cleanups in base_time  distribution.
982
983         * gst/gstelement.c: (gst_element_set_base_time),
984         (gst_element_get_base_time), (gst_element_change_state):
985         * gst/gstelement.h:
986         Added methods for the base_time of the element.
987         Some MT fixes.
988
989         * gst/gstpipeline.c: (gst_pipeline_send_event),
990         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
991         (gst_pipeline_get_last_stream_time):
992         * gst/gstpipeline.h:
993         MT fixes.
994         Handle seeking as described in design doc, remove stream_time
995         hack.
996         Cleanups clock and stream_time selection code. Added accessors
997         for the stream_time.
998         
999
1000 2005-07-16  Andy Wingo  <wingo@pobox.com>
1001
1002         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
1003         (#305291).
1004
1005 2005-07-16  Wim Taymans  <wim@fluendo.com>
1006
1007         * check/gst/gstbin.c: (GST_START_TEST):
1008         Make elements silent as the deep_notify refs the
1009         parent, which might make the test fail.
1010
1011         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1012         Don't hold the lock for too long.
1013
1014 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
1015
1016         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
1017           Don't unref the caps we passed to gst_caps_make_writable() after
1018           passing them. gst_caps_make_writable() will do that for us.
1019
1020 2005-07-15  Andy Wingo  <wingo@pobox.com>
1021
1022         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
1023         (#157311).
1024
1025         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
1026         own marshalling function for the handoff signal. Properly type the
1027         buffer as a buffer. Fixes some warnings. Should do a more general
1028         solution.
1029         (gst_identity_class_init): Plug into the right marshaller.
1030
1031 2005-07-15  Wim Taymans  <wim@fluendo.com>
1032
1033         * docs/design/part-TODO.txt:
1034         * docs/design/part-clocks.txt:
1035         * docs/design/part-element-sink.txt:
1036         * docs/design/part-events.txt:
1037         * docs/design/part-gstpipeline.txt:
1038         Updated docs, mostly DISCONT related.
1039
1040 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1041
1042         * docs/pwg/building-pads.xml:
1043           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1044
1045 2005-07-15  Andy Wingo  <wingo@pobox.com>
1046
1047         * tools/gst-typefind.c: Update, add copyright block.
1048
1049         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1050         Normalize and truncate caps before fixation.
1051
1052         * gst/gstcaps.h:
1053         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1054         discards all but the first structure from its argument.
1055
1056 2005-07-15  Wim Taymans  <wim@fluendo.com>
1057
1058         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1059         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1060         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1061         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1062         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1063         (gst_base_transform_chain), (gst_base_transform_change_state),
1064         (gst_base_transform_set_passthrough),
1065         (gst_base_transform_is_passthrough):
1066         * gst/base/gstbasetransform.h:
1067         Make passthrough work using the bufferpools.
1068         Changed API a bit, subclasses have to write into a buffer
1069         provided by the base class.
1070         More debug info in nego functions.
1071         
1072         * gst/elements/gstidentity.c: (gst_identity_init),
1073         (gst_identity_transform):
1074         Port to new base class.
1075
1076 2005-07-15  Wim Taymans  <wim@fluendo.com>
1077
1078         * gst/gstmessage.c: (gst_message_new_state_changed):
1079         * tools/gst-launch.c: (event_loop), (main):
1080         Totally dump messages in -launch with the -m option.
1081         Fix message name for State messages,
1082
1083 2005-07-14  Wim Taymans  <wim@fluendo.com>
1084
1085         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1086         Post error messages on errors.
1087
1088 2005-07-14  Wim Taymans  <wim@fluendo.com>
1089
1090         * gst/gstcaps.c: (gst_caps_do_simplify):
1091         Remove debug info.
1092
1093         * gst/gsterror.h:
1094         Define error for stream stopped.
1095
1096         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1097         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1098         Do proper return values.
1099
1100         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1101         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1102         (gst_pad_get_range):
1103         Better return values.
1104
1105         * gst/gstpad.h:
1106         Reorganise return values, add macro to check for fatal errors.
1107
1108         * gst/gstqueue.c: (gst_queue_chain):
1109         Return proper GstFlowReturn values,
1110
1111 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1112
1113         * docs/gst/gstreamer-sections.txt:
1114         * docs/gst/gstreamer.types:
1115         * docs/gst/tmpl/gst.sgml:
1116         * docs/gst/tmpl/gstbasesink.sgml:
1117         * docs/gst/tmpl/gstbasesrc.sgml:
1118         * docs/gst/tmpl/gstbasetransform.sgml:
1119         * docs/gst/tmpl/gstbin.sgml:
1120         * docs/gst/tmpl/gstbuffer.sgml:
1121         * docs/gst/tmpl/gstcaps.sgml:
1122         * docs/gst/tmpl/gstclock.sgml:
1123         * docs/gst/tmpl/gstcompat.sgml:
1124         * docs/gst/tmpl/gstconfig.sgml:
1125         * docs/gst/tmpl/gstelement.sgml:
1126         * docs/gst/tmpl/gstelementdetails.sgml:
1127         * docs/gst/tmpl/gstelementfactory.sgml:
1128         * docs/gst/tmpl/gstenumtypes.sgml:
1129         * docs/gst/tmpl/gsterror.sgml:
1130         * docs/gst/tmpl/gstevent.sgml:
1131         * docs/gst/tmpl/gstfakesink.sgml:
1132         * docs/gst/tmpl/gstfakesrc.sgml:
1133         * docs/gst/tmpl/gstfilesink.sgml:
1134         * docs/gst/tmpl/gstfilesrc.sgml:
1135         * docs/gst/tmpl/gstfilter.sgml:
1136         * docs/gst/tmpl/gstformat.sgml:
1137         * docs/gst/tmpl/gstghostpad.sgml:
1138         * docs/gst/tmpl/gstimplementsinterface.sgml:
1139         * docs/gst/tmpl/gstindex.sgml:
1140         * docs/gst/tmpl/gstindexfactory.sgml:
1141         * docs/gst/tmpl/gstinfo.sgml:
1142         * docs/gst/tmpl/gstiterator.sgml:
1143         * docs/gst/tmpl/gstmacros.sgml:
1144         * docs/gst/tmpl/gstmemchunk.sgml:
1145         * docs/gst/tmpl/gstminiobject.sgml:
1146         * docs/gst/tmpl/gstobject.sgml:
1147         * docs/gst/tmpl/gstpad.sgml:
1148         * docs/gst/tmpl/gstpadtemplate.sgml:
1149         * docs/gst/tmpl/gstparse.sgml:
1150         * docs/gst/tmpl/gstpipeline.sgml:
1151         * docs/gst/tmpl/gstplugin.sgml:
1152         * docs/gst/tmpl/gstpluginfeature.sgml:
1153         * docs/gst/tmpl/gstquery.sgml:
1154         * docs/gst/tmpl/gstqueue.sgml:
1155         * docs/gst/tmpl/gstregistry.sgml:
1156         * docs/gst/tmpl/gstregistrypool.sgml:
1157         * docs/gst/tmpl/gstscheduler.sgml:
1158         * docs/gst/tmpl/gstschedulerfactory.sgml:
1159         * docs/gst/tmpl/gststructure.sgml:
1160         * docs/gst/tmpl/gstsystemclock.sgml:
1161         * docs/gst/tmpl/gsttaglist.sgml:
1162         * docs/gst/tmpl/gsttagsetter.sgml:
1163         * docs/gst/tmpl/gsttrace.sgml:
1164         * docs/gst/tmpl/gsttrashstack.sgml:
1165         * docs/gst/tmpl/gsttypefind.sgml:
1166         * docs/gst/tmpl/gsttypefindfactory.sgml:
1167         * docs/gst/tmpl/gsttypes.sgml:
1168         * docs/gst/tmpl/gsturihandler.sgml:
1169         * docs/gst/tmpl/gsturitype.sgml:
1170         * docs/gst/tmpl/gstutils.sgml:
1171         * docs/gst/tmpl/gstvalue.sgml:
1172         * docs/gst/tmpl/gstversion.sgml:
1173         * docs/gst/tmpl/gstxml.sgml:
1174         * docs/libs/tmpl/gstcontrol.sgml:
1175         * docs/libs/tmpl/gstdataprotocol.sgml:
1176         * docs/libs/tmpl/gstdparam.sgml:
1177         * docs/libs/tmpl/gstdplinint.sgml:
1178         * docs/libs/tmpl/gstdpman.sgml:
1179         * docs/libs/tmpl/gstdpsmooth.sgml:
1180         * docs/libs/tmpl/gstgetbits.sgml:
1181         * docs/libs/tmpl/gstunitconvert.sgml:
1182         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1183         (gst_push_src_base_init), (gst_push_src_class_init),
1184         (gst_push_src_init), (gst_push_src_create):
1185         * gst/base/gstpushsrc.h:
1186         * gst/elements/gstelements.c:
1187         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1188         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1189         (gst_fake_sink_init), (gst_fake_sink_set_property),
1190         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1191         (gst_fake_sink_event), (gst_fake_sink_preroll),
1192         (gst_fake_sink_render), (gst_fake_sink_change_state):
1193         * gst/elements/gstfakesink.h:
1194         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1195         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1196         (gst_fake_src_base_init), (gst_fake_src_class_init),
1197         (gst_fake_src_init), (gst_fake_src_event_handler),
1198         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1199         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1200         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1201         (gst_fake_src_create_buffer), (gst_fake_src_create),
1202         (gst_fake_src_start), (gst_fake_src_stop):
1203         * gst/elements/gstfakesrc.h:
1204         * gst/elements/gstfilesink.c: (_do_init),
1205         (gst_file_sink_base_init), (gst_file_sink_class_init),
1206         (gst_file_sink_init), (gst_file_sink_dispose),
1207         (gst_file_sink_set_location), (gst_file_sink_set_property),
1208         (gst_file_sink_get_property), (gst_file_sink_open_file),
1209         (gst_file_sink_close_file), (gst_file_sink_query),
1210         (gst_file_sink_event), (gst_file_sink_render),
1211         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1212         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1213         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1214         * gst/elements/gstfilesink.h:
1215         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1216         (gst_file_src_class_init), (gst_file_src_init),
1217         (gst_file_src_finalize), (gst_file_src_set_location),
1218         (gst_file_src_set_property), (gst_file_src_get_property),
1219         (gst_file_src_map_region), (gst_file_src_map_small_region),
1220         (gst_file_src_create_mmap), (gst_file_src_create_read),
1221         (gst_file_src_create), (gst_file_src_is_seekable),
1222         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1223         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1224         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1225         (gst_file_src_uri_handler_init):
1226         * gst/elements/gstfilesrc.h:
1227           more autistic cleanliness in functions/names/defines
1228
1229 2005-07-13  Andy Wingo  <wingo@pobox.com>
1230
1231         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1232         source couldn't negotiate.
1233
1234         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1235         connections again.
1236
1237         * gst/gstutils.h:
1238         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1239         function. I am channeling Hades. Put your boots on suckers!!!
1240
1241 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1242
1243         * testsuite/caps/Makefile.am:
1244         * testsuite/caps/value_compare.c:
1245         * testsuite/caps/value_intersect.c:
1246         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1247           move two testsuite apps over to the check dir
1248
1249 2005-07-12  Wim Taymans  <wim@fluendo.com>
1250
1251         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1252         Added more debug info in the negotiate process.
1253
1254         * gst/gstmessage.h:
1255         Prepare for segment playback.
1256
1257         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1258         Better debugging.
1259
1260         * gst/gstutils.c:
1261         Some more docs.
1262
1263         * tools/gst-launch.c: (main):
1264         NULL pipeline on errors.
1265
1266 2005-07-12  Andy Wingo  <wingo@pobox.com>
1267
1268         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1269         not it comes from a malloc region. Make sure our copy gets freed.
1270
1271 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1272
1273         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1274         * check/gst/gstmessage.c: (GST_START_TEST):
1275         * check/gst/gststructure.c: (GST_START_TEST),
1276         (gst_structure_suite), (main):
1277           more testing
1278         * gst/gstelement.c: (gst_element_message_full):
1279           clean up GError and debug string now that they get copied
1280         * gst/gstmessage.c: (gst_message_new_error),
1281         (gst_message_new_warning), (gst_message_parse_error),
1282         (gst_message_parse_warning):
1283           use GST_TYPE_G_ERROR for structure_new, and take copies of
1284           arguments, so that we don't mess up refcounting
1285
1286 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1287
1288         * check/Makefile.am:
1289           add per-test valgrind targets
1290         * check/gst-libs/gdp.c: (GST_START_TEST),
1291         (gst_data_protocol_suite), (main):
1292           clean up
1293
1294 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1295
1296         * check/Makefile.am:
1297           instate more valgrindable tests
1298         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1299         (GST_START_TEST), (fakesrc_suite):
1300         * check/gst/gstpad.c: (GST_START_TEST):
1301         * check/gst/gststructure.c: (GST_START_TEST):
1302           fix test leaks
1303         * docs/gst/tmpl/gstminiobject.sgml:
1304         * gst/gstpad.c: (gst_pad_finalize):
1305           fix the static mutex leak
1306
1307 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1308
1309         * check/Makefile.am:
1310           add two more tests for valgrinding
1311         * check/gst/gstvalue.c: (GST_START_TEST):
1312           test refcount of deserialized buffer, found a leak
1313         * docs/gst/gstreamer-docs.sgml:
1314         * docs/gst/gstreamer-sections.txt:
1315         * docs/gst/gstreamer.types:
1316         * docs/gst/tmpl/gstminiobject.sgml:
1317           add miniobject to docs
1318         * gst/gstminiobject.c:
1319           add some docs
1320         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1321         (gst_string_unwrap):
1322           fix a hard-to-find invalid write for one of the tests
1323           fix a leak for deserialized buffers
1324
1325 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1326
1327         * docs/pwg/advanced-events.xml:
1328         * docs/pwg/advanced-request.xml:
1329         * docs/pwg/advanced-scheduling.xml:
1330         * docs/pwg/appendix-porting.xml:
1331         * docs/pwg/building-boiler.xml:
1332         * docs/pwg/intro-preface.xml:
1333         * docs/pwg/other-ntoone.xml:
1334           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1335           of example code and explanation for pad activation, loop() and
1336           getrange() functions and a bit more. Remove old comments pointing
1337           to loop-functions.
1338         * examples/pwg/Makefile.am:
1339           Add loop/getrange examples.
1340
1341 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1342
1343         * configure.ac:
1344           check for valgrind binary + some fixes
1345         * check/gst.supp:
1346           valgrind suppressions for the tests
1347         * check/Makefile.am:
1348           add a valgrind: target that valgrinds the unit tests
1349         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1350         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1351         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1352         * check/gst/gstghostpad.c:
1353           added some cleanup
1354         * check/gst/gstdata.c:
1355           removed
1356         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1357         (thread_unref), (gst_mini_object_suite), (main):
1358           added
1359         * gst/gst.c: (gst_deinit):
1360         * gst/gst.h:
1361           add a method to clean up.
1362         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1363         (gst_system_clock_obtain):
1364           allow for disposing the system clock.
1365         * tools/gst-launch.c: (main):
1366           deinit
1367
1368 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1369
1370         * docs/gst/tmpl/gstbasesrc.sgml:
1371         * docs/gst/tmpl/gstfakesrc.sgml:
1372         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1373         (gst_base_src_init), (gst_base_src_set_property),
1374         (gst_base_src_get_property), (gst_base_src_get_range),
1375         (gst_base_src_start):
1376         * gst/base/gstbasesrc.h:
1377           add num-buffers property
1378         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1379         (gst_fakesrc_init), (gst_fakesrc_set_property),
1380         (gst_fakesrc_get_property), (gst_fakesrc_create),
1381         (gst_fakesrc_start):
1382           remove num-buffers property
1383
1384 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1385
1386         * docs/gst/gstreamer-sections.txt:
1387         * docs/gst/tmpl/gstbasesink.sgml:
1388         * docs/gst/tmpl/gstbasesrc.sgml:
1389         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1390         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1391         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1392         (gst_base_sink_set_property), (gst_base_sink_get_property),
1393         (gst_base_sink_handle_object), (gst_base_sink_event),
1394         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1395         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1396         (gst_base_sink_loop), (gst_base_sink_deactivate),
1397         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1398         (gst_base_sink_change_state):
1399         * gst/base/gstbasesink.h:
1400         * gst/base/gstbasesrc.h:
1401         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1402         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1403         (gst_filesink_init):
1404           more macro splitting
1405
1406 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1407
1408         * gst/gstelement.c: (gst_element_get_bus):
1409           add debug
1410         * tools/gst-launch.c: (check_intr), (event_loop):
1411           fix bus leaks
1412
1413 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1414
1415         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1416           fix a caps leak
1417
1418 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1419
1420         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1421         (gst_base_src_finalize):
1422           add finalize method and clean up properly
1423         * gst/gstpipeline.c: (gst_pipeline_dispose):
1424           add debug
1425
1426 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1427
1428         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1429         (gst_bin_suite):
1430           add more things to check
1431         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1432         * gst/gstelement.c:
1433           more debug
1434
1435 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1436
1437         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1438         (GST_START_TEST), (fakesrc_suite):
1439         * check/gst-libs/gdp.c: (GST_START_TEST):
1440         * check/gst/gst.c: (GST_START_TEST):
1441         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1442         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1443         * check/gst/gstbus.c: (GST_START_TEST):
1444         * check/gst/gstcaps.c: (GST_START_TEST):
1445         * check/gst/gstdata.c: (GST_START_TEST):
1446         * check/gst/gstelement.c: (GST_START_TEST):
1447         * check/gst/gstghostpad.c: (GST_START_TEST):
1448         * check/gst/gstiterator.c: (GST_START_TEST):
1449         * check/gst/gstmessage.c: (GST_START_TEST):
1450         * check/gst/gstobject.c: (GST_START_TEST):
1451         * check/gst/gstpad.c: (GST_START_TEST):
1452         * check/gst/gststructure.c: (GST_START_TEST):
1453         * check/gst/gstsystemclock.c: (GST_START_TEST),
1454         (gst_systemclock_suite):
1455         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1456         * check/gst/gstvalue.c: (GST_START_TEST):
1457         * check/pipelines/cleanup.c: (GST_START_TEST):
1458         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1459         * check/states/sinks.c: (GST_START_TEST):
1460         * check/gstcheck.c: (gst_check_init):
1461         * check/gstcheck.h:
1462           add debugging category
1463           use GST_START_TEST now, so we add a debug line
1464
1465 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1466
1467         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1468           add test for state change message on a bin
1469         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1470           add another test
1471         * gst/gstbin.c: (gst_bin_init):
1472         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1473         * gst/gstelement.c: (gst_element_post_message),
1474         (gst_element_set_state):
1475         * gst/gstelementfactory.c: (gst_element_factory_create):
1476         * gst/gstmessage.c: (gst_message_new):
1477         * gst/gstscheduler.c:
1478           various debugging additions and cleanups
1479
1480 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1481
1482         * check/Makefile.am:
1483         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1484         (main):
1485           adding tests for elements
1486         * gst/gstelement.c: (gst_element_dispose):
1487
1488 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1489
1490         * gst/registries/gstlibxmlregistry.c: (load_feature):
1491           plug more leaks.  A simple gst_init() now is leakfree, yay.
1492
1493 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1494
1495         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1496         (gst_xml_registry_load):
1497           plug another memleak
1498
1499 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1500
1501         * configure.ac:
1502           use GST_SET_ERROR_CFLAGS
1503         * docs/faq/cvs.xml:
1504           change to ERROR_CFLAGS
1505
1506 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1507
1508         * configure.ac:
1509           make GST_ERROR_CFLAGS overridable and re-enable Werror
1510         * docs/faq/cvs.xml:
1511           add a note about error CFLAGS
1512         * docs/gst/tmpl/gstfakesrc.sgml:
1513         * gst/elements/gstfakesrc.c:
1514           comment out some unused code
1515         * gst/gst.c: (split_and_iterate):
1516         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1517         (load_feature):
1518           plug some memleaks
1519
1520 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1521
1522         * common/Makefile.am:
1523         * common/gtk-doc.mak:
1524         * docs/gst/Makefile.am:
1525           factor out gtk-doc.mak
1526
1527 2005-07-07  Wim Taymans  <wim@fluendo.com>
1528
1529         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1530         (gst_thread_scheduler_dispose):
1531         Unlock the STREAM_LOCK completely.
1532
1533 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1534
1535         * check/Makefile.am:
1536         * check/elements/.cvsignore:
1537         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1538         (START_TEST), (fakesrc_suite), (main):
1539         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1540         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1541         (gst_fakesrc_create), (gst_fakesrc_start):
1542         * gst/elements/gstfakesrc.h:
1543           adding a first element test
1544
1545 2005-07-07  Andy Wingo  <wingo@pobox.com>
1546
1547         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1548         debug message.
1549
1550 2005-07-07  Wim Taymans  <wim@fluendo.com>
1551
1552         * gst/gstquery.c:
1553         * gst/gstquery.h:
1554         Remove old types
1555
1556 2005-07-07  Wim Taymans  <wim@fluendo.com>
1557
1558         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1559         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1560         Allow subclasses to implement their own negotiation.
1561
1562 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1563
1564         * docs/design/part-gstbin.txt:
1565         * docs/design/part-gstpipeline.txt:
1566           Update design notes to reflect the movement of
1567           responsibility for bus handling from GstPipeline to
1568           GstBin
1569
1570 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1571
1572         * configure.ac:
1573           Remove unnecessary queue2/3/4 examples.
1574
1575 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1576
1577         * examples/Makefile.am:
1578         * examples/helloworld/helloworld.c: (event_loop), (main):
1579         * examples/queue/queue.c: (event_loop), (main):
1580         * examples/queue2/queue2.c: (main):
1581           Update a couple of the examples to work again.
1582
1583         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1584         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1585          Spelling corrections and extra debug.
1586         
1587         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1588         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1589         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1590         * gst/gstbin.h:
1591         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1592         (gst_pipeline_change_state):
1593         * gst/gstpipeline.h:
1594           Move the bus handler for children to the GstBin, and create a
1595           separate bus for receiving messages from children to the one the
1596           bus sends 'upwards' on.
1597
1598 2005-07-06  Wim Taymans  <wim@fluendo.com>
1599
1600         * gst/base/README:
1601         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1602         (gst_base_sink_handle_object), (gst_base_sink_loop),
1603         (gst_base_sink_change_state):
1604         * gst/base/gstbasesink.h:
1605         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1606         (gst_base_src_init), (gst_base_src_setcaps),
1607         (gst_base_src_getcaps), (gst_base_src_loop),
1608         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1609         (gst_base_src_start), (gst_base_src_change_state):
1610         * gst/base/gstbasesrc.h:
1611         Make basesrc negotiate.
1612         Handle the case where preroll fails in basesink.
1613         Update README.
1614
1615 2005-07-06  Wim Taymans  <wim@fluendo.com>
1616
1617         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1618         Implement the fixate function.
1619         Clean up acceptcaps.
1620
1621 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1622
1623         * docs/pwg/building-filterfactory.xml:
1624         * docs/pwg/pwg.xml:
1625           Remove never-written filter-factory chapter; I'll add the various
1626           base classes to part 4 ("other element types") later on.
1627
1628 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1629
1630         * docs/pwg/advanced-negotiation.xml:
1631         * docs/pwg/building-boiler.xml:
1632         * docs/pwg/building-pads.xml:
1633         * docs/pwg/pwg.xml:
1634         * examples/pwg/Makefile.am:
1635           Add a chapter on caps negotiation, simplify the original code
1636           samples a bit w.r.t. caps negotiation, add link to the advanced
1637           section. Add a bunch of examples showing different use cases of
1638           different types of caps negotiation. Upstream renegotiation isn't
1639           fully documented yet since nobody knows how that works.
1640
1641 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1642
1643         * check/gst/gstpad.c:
1644         * check/gstcheck.c:
1645         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1646           if pad has no parent, return NULL as list of internal links
1647
1648 2005-07-05  Andy Wingo  <wingo@pobox.com>
1649
1650         * gst/elements/gstfilesrc.c:
1651         * gst/elements/gstfakesrc.c: 
1652         * gst/base/gstpushsrc.c:
1653         * gst/base/gstbasesrc.h: 
1654         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1655         
1656 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1657
1658         * Makefile.am:
1659           better report generation target (lcov needs a patch)
1660
1661 2005-07-05  Andy Wingo  <wingo@pobox.com>
1662
1663         * gst/elements, testsuite: Null if we got it...
1664
1665 2005-07-05  Wim Taymans  <wim@fluendo.com>
1666
1667         * configure.ac:
1668         * libs/gst/dataprotocol/Makefile.am:
1669         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1670         * libs/gst/dataprotocol/dataprotocol.h:
1671         * pkgconfig/Makefile.am:
1672         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1673         * pkgconfig/gstreamer-dataprotocol.pc.in:
1674         Ported dataprotol to 0.9. 
1675         Added pkgconfig files.
1676
1677 2005-07-05  Andy Wingo  <wingo@pobox.com>
1678
1679         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1680         Default to returning TRUE for the case when tranform_caps returns
1681         a fixed caps, like for identity or volume.
1682
1683         * check/gst/gstbus.c (pound_bus_with_messages): 
1684         * check/gst/gstmessage.c (START_TEST): 
1685         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1686         message API change.
1687
1688         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1689         logic weaks here: always run transform_caps, trying passthrough
1690         operation only if the original caps intersects with the transform.
1691
1692         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1693         source and sink caps.
1694
1695         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1696         Intersect the peer caps with the pad template before going into
1697         transform_caps.
1698         (gst_base_transform_transform_caps): More debugging.
1699
1700         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1701         src argument.
1702
1703 2005-07-04  Edward Hervey  <edward@fluendo.com>
1704
1705         * gst/gstutils.c:
1706         * gst/gstutils.h:
1707         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1708         in bindings.
1709
1710 2005-07-04  Andy Wingo  <wingo@pobox.com>
1711
1712         * check/gst/gstpad.c: Only set explicit caps on pads.
1713
1714 2005-07-01  Andy Wingo  <wingo@pobox.com>
1715
1716         * tests/network-clock.scm: Commentary update.
1717
1718         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1719         Didn't really make sense, not implementable with basetransform,
1720         etc.
1721         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1722         attempt at implementing the sync property, needs an unlock method.
1723
1724         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1725         New func, by default returns the same caps (the identity
1726         transformation).
1727         (gst_base_transform_getcaps): Uses transform_caps to return
1728         something sensible.
1729         (gst_base_transform_setcaps): Complicated logic to get caps on
1730         both pads, even if they are different, and to call set_caps once
1731         for every time both pads get their caps set.
1732         (gst_base_transform_handle_buffer): Give the ref to the transform
1733         function. Allows in-place modification of the buffer.
1734
1735         * gst/base/gstbasetransform.h (transform_caps): New class method.
1736         Given caps on one side, what can I do on the other.
1737         (set_caps): Take two caps, one for each side of the element.
1738
1739         * gst/gstpad.h:
1740         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1741         caps in place. This is safe because we can check the mutability of
1742         the caps, and a good idea because fixate functions are just called
1743         as a matter of last resort. (Not actually implemented.)
1744         (gst_pad_set_caps): If the caps we're setting is actually the same
1745         as the existing pad caps, just update the pointer without calling
1746         setcaps. Assert that caps is either NULL or fixed, as per the
1747         docs.
1748
1749         * gst/gstghostpad.c: Update for fixate changes.
1750
1751 2005-07-02  Andy Wingo  <wingo@pobox.com>
1752
1753         * gst/gstcaps.c:
1754         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1755         two refcounts makes it immutable, which is enough. Doc more.
1756
1757 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1758
1759         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1760           Put the mini_object into GValue as a mini_object,
1761           not a gpointer, since that's how we declared
1762           the signal.
1763
1764 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1765
1766         * examples/pwg/Makefile.am:
1767           Fix buildbot again.
1768
1769 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1770
1771         * docs/pwg/building-testapp.xml:
1772           Add extra check.
1773         * examples/pwg/Makefile.am:
1774           Fix buildbot.
1775
1776 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1777
1778         * configure.ac:
1779         * examples/Makefile.am:
1780         * examples/pwg/Makefile.am:
1781         * examples/pwg/extract.pl:
1782           Enable building the PWG examples.
1783         * docs/pwg/advanced-interfaces.xml:
1784           Add URI interface stub.
1785         * docs/pwg/advanced-types.xml:
1786         * docs/pwg/other-autoplugger.xml:
1787         * docs/pwg/appendix-porting.xml:
1788         * docs/pwg/pwg.xml:
1789           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1790         * docs/pwg/building-boiler.xml:
1791         * docs/pwg/building-chainfn.xml:
1792         * docs/pwg/building-pads.xml:
1793         * docs/pwg/building-props.xml:
1794         * docs/pwg/building-state.xml:
1795         * docs/pwg/building-testapp.xml:
1796           Update the building-*.xml parts for 0.9 changes. All examples
1797           code blocks compile in examples/pwg/*.
1798
1799 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1800
1801         * docs/manual/advanced-autoplugging.xml:
1802         * docs/manual/appendix-checklist.xml:
1803         * docs/manual/appendix-integration.xml:
1804         * docs/manual/highlevel-components.xml:
1805           Fix playbin/decodebin examples, update docs a bit, mention bus
1806           instead of signals in various places, mention kmplayer and
1807           kaffeine since they have a working GStreamer backend in the KDE
1808           section.
1809
1810 2005-06-30  Wim Taymans  <wim@fluendo.com>
1811
1812         * CHANGES-0.9:
1813         * docs/design/draft-ghostpads.txt:
1814         * docs/design/draft-push-pull.txt:
1815         * docs/design/draft-query.txt:
1816         * docs/design/part-TODO.txt:
1817         * docs/design/part-query.txt:
1818         Added CHANGES-0.9 doc, updated status of other docs.
1819         
1820         * gst/gstquery.h:
1821         Remove "hmm" macro
1822
1823 2005-06-30  Wim Taymans  <wim@fluendo.com>
1824
1825         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1826         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1827         (gst_base_sink_change_state):
1828         * gst/base/gstbasesink.h:
1829         Some tweaks, only EOS and a buffer complete a preroll.
1830
1831 2005-06-30  Andy Wingo  <wingo@pobox.com>
1832
1833         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1834         activate_push down to the internal pad as well.
1835
1836 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1837
1838         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1839
1840         * gst/gsttaginterface.c:
1841           Some documentation fixes (#307394 and #307397).
1842
1843 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1844
1845         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1846
1847         * gst/gstvalue.c: (gst_value_intersect_list):
1848           Fix memleak (#309125).
1849
1850 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1851
1852         * docs/manual/advanced-dataaccess.xml:
1853           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1854         * docs/manual/basics-pads.xml:
1855           Add reference for filtered caps to above chapter.
1856
1857 2005-06-30  Wim Taymans  <wim@fluendo.com>
1858
1859         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1860         (gst_bin_change_state):
1861         Probes are gone.
1862         Lame attempt at making the state change function a bit
1863         more readable.
1864
1865 2005-06-30  Wim Taymans  <wim@fluendo.com>
1866
1867         * docs/design/part-clocks.txt:
1868         * docs/design/part-element-sink.txt:
1869         * docs/design/part-events.txt:
1870         * docs/design/part-preroll.txt:
1871         * docs/design/part-states.txt:
1872         Some more tweeks and additions to the docs.
1873
1874 2005-06-30  Wim Taymans  <wim@fluendo.com>
1875
1876         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1877         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1878         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1879         (gst_pad_check_pull_range), (gst_pad_get_range),
1880         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1881         * gst/gstpad.h:
1882         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1883         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1884         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1885         (gst_pad_remove_buffer_probe):
1886         Removed atomic operations, use existing LOCK.
1887         Move exception handling out of main code path.
1888
1889 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1890
1891         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1892         (silly_return_true_function), (gst_pad_class_init),
1893         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1894         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1895         (gst_pad_send_event):
1896           Fix accumulator, add default value by using _emitv() instead
1897           of _emit() for signal emission.
1898
1899 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1900
1901         * docs/manual/advanced-dataaccess.xml:
1902         * examples/manual/Makefile.am:
1903           Add probe example.
1904         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1905           Make work (??).
1906
1907 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1908
1909         * gst/elements/gstfilesink.c: (gst_filesink_render):
1910           Simplify code so that we don't have to handle short
1911           writes and return GST_FLOW_ERROR if an error occured.
1912
1913 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1914
1915         * docs/gst/gstreamer-docs.sgml:
1916           Remove probes more.
1917
1918 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1919
1920         * docs/gst/gstreamer-sections.txt:
1921         * docs/gst/tmpl/gstpad.sgml:
1922         * docs/gst/tmpl/gstprobe.sgml:
1923         * gst/Makefile.am:
1924         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1925         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1926         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1927         (gst_pad_push_event), (gst_pad_send_event):
1928         * gst/gstpad.h:
1929         * gst/gstutils.c: (gst_pad_add_data_probe),
1930         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1931         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1932         (gst_pad_remove_buffer_probe):
1933         * gst/gstutils.h:
1934           Remove old probes, add new g-signal-based probes and some utility
1935           functions.
1936
1937 2005-06-29  Edward Hervey  <edward@fluendo.com>
1938
1939         * gst/gstelementfactory.c:
1940         * gst/gstutils.h:
1941         * gst/gstutils.c:
1942         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1943         the definition to the header file.
1944
1945 2005-06-29  Andy Wingo  <wingo@pobox.com>
1946
1947         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1948         plugins from the source directory.
1949
1950 2005-06-29  Wim Taymans  <wim@fluendo.com>
1951
1952         * docs/gst/tmpl/gstbuffer.sgml:
1953         * docs/gst/tmpl/gstclock.sgml:
1954         Some fixings for blantently wrong text.
1955
1956 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1957
1958         * check/Makefile.am:
1959         * gst/gst.c: (add_path_func), (init_pre):
1960         * gst/gstregistry.c: (gst_registry_add_path):
1961           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1962           only scan the GST_PLUGIN_PATH locations, and not add
1963           system locations
1964
1965 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1966
1967         * docs/gst/gstreamer-sections.txt:
1968         * docs/gst/tmpl/gstbasesrc.sgml:
1969         * gst/gstelement.c:
1970         * gst/gstelement.h:
1971         * gst/gstevent.c:
1972         * gst/gstutils.c:
1973           doc fixes
1974
1975 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1976
1977         * docs/manual/advanced-autoplugging.xml:
1978           Fix autoplugging example.
1979
1980 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1981
1982         * docs/manual/advanced-autoplugging.xml:
1983         * docs/manual/mime-world.fig:
1984           Try to get autoplugging working, fix type detection. Fix text
1985           in hello-world image.
1986
1987 2005-06-29  Wim Taymans  <wim@fluendo.com>
1988
1989         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1990         (gst_base_sink_change_state):
1991         Small debug line.
1992
1993         * gst/gstclock.h:
1994         map SIGNAL and BROADCAST to the right function.
1995
1996         * gst/gstobject.h:
1997         Remove redundant braces.
1998
1999         * gst/gstpad.c: (gst_pad_set_caps):
2000         Don't call setcaps function when reseting caps to NULL.
2001
2002         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2003         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
2004         (gst_system_clock_id_unschedule):
2005         Use BROADCAST as this is what we do.
2006
2007 2005-06-29  Wim Taymans  <wim@fluendo.com>
2008
2009         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2010         We are actually prerolling before commiting the state
2011         change. 
2012
2013 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2014
2015         * docs/manual/advanced-clocks.xml:
2016         * docs/manual/advanced-interfaces.xml:
2017         * docs/manual/advanced-metadata.xml:
2018         * docs/manual/advanced-position.xml:
2019         * docs/manual/advanced-schedulers.xml:
2020         * docs/manual/advanced-threads.xml:
2021         * docs/manual/appendix-porting.xml:
2022         * docs/manual/basics-bins.xml:
2023         * docs/manual/basics-bus.xml:
2024         * docs/manual/basics-elements.xml:
2025         * docs/manual/basics-helloworld.xml:
2026         * docs/manual/basics-pads.xml:
2027         * docs/manual/highlevel-components.xml:
2028         * docs/manual/manual.xml:
2029         * docs/manual/thread.fig:
2030           Update (until threads/scheduling) Application Development Manual;
2031           remove GstThread, add GstBus, add simple porting checklist, add
2032           documentation for tag writing, clocks, make all examples until this
2033           part compile and run.
2034         * examples/manual/Makefile.am:
2035           Update from changes to Application Development Manual; add bus
2036           example, remove thread example.
2037
2038 2005-06-28  Wim Taymans  <wim@fluendo.com>
2039
2040         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2041         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2042         (gst_bus_source_dispatch):
2043         Add debugging messages.
2044         Make internal methods static.
2045         Handle the case where the bus is flushed in the handler.
2046         
2047         * gst/gstelement.c: (gst_element_get_bus):
2048         Fix refcount in _get_bus();
2049
2050         * gst/gstpipeline.c: (gst_pipeline_change_state),
2051         (gst_pipeline_get_clock_func):
2052         Clock refcounting fixes.
2053         Handle the case where preroll timed out more gracefully.
2054         
2055         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2056         Clean up the internal thread in dispose. This is needed
2057         for subclasses that actually get disposed.
2058         
2059         * gst/schedulers/threadscheduler.c:
2060         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2061         (gst_thread_scheduler_dispose):
2062         Free thread pool in dispose.
2063
2064 2005-06-28  Andy Wingo  <wingo@pobox.com>
2065
2066         * tests/network-clock-utils.scm (debug, print-event): New utils.
2067
2068         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2069         (*packet-loss*): Unified loss probability.
2070         (network-time): Report out-of-band events.
2071
2072         * tests/plot-data: Add support for out-of-band events. Hack it
2073         into this script instead of passing it down the pipe; should fix
2074         this later.
2075
2076 2005-06-28  Wim Taymans  <wim@fluendo.com>
2077
2078         * docs/gst/gstreamer.types:
2079         * docs/gst/tmpl/gstbasesrc.sgml:
2080         * docs/gst/tmpl/gstpad.sgml:
2081         Docs fixes.
2082
2083 2005-06-28  Wim Taymans  <wim@fluendo.com>
2084
2085         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2086         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2087         (gst_proxy_pad_do_fixatecaps):
2088         Correctly proxy the check_pull_range function.
2089
2090 2005-06-28  Andy Wingo  <wingo@pobox.com>
2091
2092         * tests/network-clock.scm: Removed need for slib.
2093         
2094 2005-06-28  Wim Taymans  <wim@fluendo.com>
2095
2096         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2097         (gst_basesink_preroll_queue_flush):
2098         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2099         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2100         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2101         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2102         (gst_proxy_pad_set_property):
2103         * gst/gstpad.c:
2104         * gst/gstpad.h:
2105         * gst/gstqueue.c: (gst_queue_init):
2106         The deprecated pad loop function is removed now.
2107
2108 2005-06-28  Andy Wingo  <wingo@pobox.com>
2109
2110         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2111         New parameters, simulate network packet loss.
2112
2113         * tests/network-clock-utils.scm: Initialize the RNG.
2114
2115 2005-06-28  Wim Taymans  <wim@fluendo.com>
2116
2117         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2118         (gst_basesink_event), (gst_basesink_deactivate):
2119         Flushing the preroll queue always needs to unlock the waiters.
2120
2121 2005-06-28  Edward Hervey  <edward@fluendo.com>
2122
2123         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2124         Wheen a seek was successful on a pipeline, set the stream_time to the
2125         seek offset in order to have a synchronized stream_time.
2126
2127 2005-06-28  Wim Taymans  <wim@fluendo.com>
2128
2129         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2130         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2131         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2132         (gst_proxy_pad_do_fixatecaps):
2133         Call wrapper function instead of just calling the function
2134         pointers. This takes care of any locking and whatmore.
2135
2136 2005-06-28  Wim Taymans  <wim@fluendo.com>
2137
2138         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2139         (gst_pad_pull_range):
2140         * gst/gstpad.h:
2141         CONNECTED -> LINKED.
2142
2143 2005-06-28  Andy Wingo  <wingo@pobox.com>
2144
2145         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2146         source-munging commit!!!
2147
2148         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2149         (gst_object_sink): Take gpointer arguments, not GstObject --
2150         avoids casts. Like GLib.
2151
2152         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2153         activate.
2154
2155 2005-06-27  Andy Wingo  <wingo@pobox.com>
2156
2157         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2158         remaining buffer.
2159
2160         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2161         returns a sorted copy of the trace list.
2162         (gst_alloc_trace_print_live): New API, only prints traces with
2163         live objects. Sort the list.
2164         (gst_alloc_trace_print_all): Sort the list.
2165         (gst_alloc_trace_print): Align columns.
2166
2167         * gst/elements/gstttypefindelement.c:
2168         * gst/elements/gsttee.c:
2169         * gst/base/gstbasesrc.c:
2170         * gst/base/gstbasesink.c:
2171         * gst/base/gstbasetransform.c:
2172         * gst/gstqueue.c: Adapt for pad activation changes.
2173
2174         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2175         sched.
2176         (gst_pipeline_dispose): Drop ref on sched.
2177
2178         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2179         (gst_pad_activate_default): Push mode by default.
2180         (pre_activate_switch, post_activate_switch): New stubs, things to
2181         do before and after switching activation modes on pads.
2182         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2183         the pad's activate function to choose which mode to activate.
2184         Shortcut on deactivation and call the right function directly.
2185         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2186         mode.
2187         (gst_pad_activate_push): New API, same for push mode.
2188         (gst_pad_set_activate_function) 
2189         (gst_pad_set_activatepull_function) 
2190         (gst_pad_set_activatepush_function): Setters for new API.
2191
2192         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2193         Trace all miniobjects.
2194         (gst_mini_object_make_writable): Unref the arg if we copy, like
2195         gst_caps_make_writable.
2196
2197         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2198
2199         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2200         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2201         Adapt for new pad API.
2202
2203         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2204
2205         * gst/gstelement.h:
2206         * gst/gstelement.c (gst_element_iterate_src_pads) 
2207         (gst_element_iterate_sink_pads): New API functions.
2208         
2209         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2210         should fold into gstiterator.c in some form.
2211         (gst_element_pads_activate): Simplified via use of fold and
2212         delegation of decisions to gstpad->activate.
2213
2214         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2215         help in debugging.
2216
2217         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2218         class once in init, like gstmessage. Didn't run into this issue
2219         but it seems correct. Don't initialize a trace, gstminiobject does
2220         that.
2221
2222         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2223         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2224         to the bus.
2225         (assert_live_count): New util function, uses alloc traces to check
2226         cleanup.
2227
2228         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2229         To be modified when unlink drops the internal pad.
2230
2231 2005-06-27  Wim Taymans  <wim@fluendo.com>
2232
2233         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2234         (gst_bin_change_state):
2235         Cleanup the get_state() function a little, make sure it
2236         iterates the same set of elements.
2237         Added stub iterate_state_order().
2238
2239 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2240
2241         * docs/gst/gstreamer-docs.sgml:
2242         * docs/gst/gstreamer-sections.txt:
2243         * docs/gst/gstreamer.types:
2244         * docs/gst/tmpl/gstbasesink.sgml:
2245         * docs/gst/tmpl/gstbasesrc.sgml:
2246         * docs/gst/tmpl/gstbasetransform.sgml:
2247         * docs/gst/tmpl/gstelement.sgml:
2248         * docs/gst/tmpl/gstiterator.sgml:
2249         * gst/base/gstbasesrc.c:
2250         * gst/base/gstbasesrc.h:
2251         * gst/base/gstbasetransform.h:
2252         * gst/gstelement.c:
2253         * gst/gstiterator.h:
2254           adding basetransform and iterator docs
2255
2256 2005-06-27  Andy Wingo  <wingo@pobox.com>
2257
2258         * docs/design/part-activation.txt: Notes on how activation should
2259         work -- not quite implemented yet.
2260
2261 2005-06-25  Wim Taymans  <wim@fluendo.com>
2262
2263         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2264         At least get the chain function correct, needs more
2265         fixing.
2266
2267 2005-06-25  Wim Taymans  <wim@fluendo.com>
2268
2269         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2270         (gst_basesink_handle_object), (gst_basesink_event),
2271         (gst_basesink_do_sync), (gst_basesink_handle_event),
2272         (gst_basesink_change_state):
2273         * gst/gsttask.h:
2274         Right, two problems here: ghostpads don't take locks and
2275         glib _rec_mutex_lock_full() with depth==0 still locks.
2276         Catch illegal locking and g_warn them.
2277
2278 2005-06-25  Wim Taymans  <wim@fluendo.com>
2279
2280         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2281         Have to check for completion now...
2282
2283 2005-06-25  Wim Taymans  <wim@fluendo.com>
2284
2285         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2286         (gst_basesink_handle_object), (gst_basesink_event),
2287         (gst_basesink_do_sync), (gst_basesink_handle_event),
2288         (gst_basesink_change_state):
2289         * gst/gstpad.h:
2290         Unlock STREAM_LOCK whatever the recursion was.
2291
2292 2005-06-25  Wim Taymans  <wim@fluendo.com>
2293
2294         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2295         (gst_basesink_preroll_queue_empty),
2296         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2297         (gst_basesink_event), (gst_basesink_do_sync),
2298         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2299         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2300         (gst_basesink_change_state):
2301         Reworked the base sink, handle event and buffer serialisation
2302         correctly and removed possible deadlock.
2303         Handle EOS correctly.
2304
2305 2005-06-25  Wim Taymans  <wim@fluendo.com>
2306
2307         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2308         (gst_pipeline_change_state):
2309         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2310         Allow elements to post EOS in the state change function.
2311         Fix up -launch, make it exit the poll loop when the
2312         pipeline actually changed state.
2313         Fix up warning parsing in -launch.
2314
2315 2005-06-25  Wim Taymans  <wim@fluendo.com>
2316
2317         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2318         (gst_tee_sink_activate):
2319         Core takes STREAM_LOCK for us now.
2320
2321 2005-06-25  Wim Taymans  <wim@fluendo.com>
2322
2323         * gst/gstelement.c: (gst_element_get_state_func),
2324         (gst_element_set_state):
2325         * gst/gstelement.h:
2326         * gst/gstmessage.c: (gst_message_parse_error),
2327         (gst_message_parse_warning):
2328         Keep track of current target state while performing a state
2329         change so that subclasses can do something interesting.
2330         Fix parsing of warning/error messages when GError is NULL.
2331
2332 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2333
2334         * docs/gst/Makefile.am:
2335         * docs/gst/gstreamer-docs.sgml:
2336         * docs/gst/gstreamer-sections.txt:
2337         * docs/gst/gstreamer.types:
2338         * docs/gst/tmpl/gstbasesink.sgml:
2339         * docs/gst/tmpl/gstbasesrc.sgml:
2340         * docs/gst/tmpl/gstbin.sgml:
2341         * docs/gst/tmpl/gstcompat.sgml:
2342         * docs/gst/tmpl/gstfakesink.sgml:
2343         * docs/gst/tmpl/gstfakesrc.sgml:
2344         * docs/gst/tmpl/gstfilesink.sgml:
2345         * docs/gst/tmpl/gstfilesrc.sgml:
2346         * docs/gst/tmpl/gstindex.sgml:
2347         * docs/manual/appendix-quotes.xml:
2348         * gst/base/gstbasesrc.h:
2349         * gst/elements/gstfakesrc.h:
2350         * gst/gstmessage.h:
2351           start pulling in base classes and elements in our docs
2352
2353 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2354
2355         * docs/gst/Makefile.am:
2356         * docs/libs/Makefile.am:
2357           fixed make distcheck with gtk-doc 1.3
2358
2359 2005-06-23  Wim Taymans  <wim@fluendo.com>
2360
2361         * gst/gstelement.c: (gst_element_get_state_func),
2362         (gst_element_set_state), (gst_element_change_state):
2363         When the state did not change, also report NO_PREROLL
2364         when it matters.
2365
2366 2005-06-23  Wim Taymans  <wim@fluendo.com>
2367
2368         * gst/gstpad.c: (gst_pad_event_default):
2369         * gst/gstqueue.c: (gst_queue_loop):
2370         No unsafe task pausing please.
2371
2372 2005-06-23  Wim Taymans  <wim@fluendo.com>
2373
2374         * gst/schedulers/threadscheduler.c:
2375         (gst_thread_scheduler_task_start),
2376         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2377         Ref the task before pushing it on the threadpool. This
2378         makes sure that we have a ref when the threadfunction is
2379         actually called.
2380
2381 2005-06-23  Andy Wingo  <wingo@pobox.com>
2382
2383         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2384         offset is greater than the file's size.
2385
2386         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2387         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2388         * gst/gstobject.c (gst_object_class_init): Make the class lock
2389         recursive. Wim won't let me drop deep_notify. Decodebin works
2390         again, whoopdy doo.
2391
2392         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2393         internal pad, and hacks accordingly. Doesn't do it on the target
2394         pad because we change its caps. Probably catches all cases of
2395         interest tho.
2396         (gst_ghost_pad_set_property): Connect to notify::caps as
2397         appropritate.
2398
2399         * tests/network-clock.scm (plot-simulation): Pipe data to the
2400         elite python skript.
2401
2402         * tests/network-clock-utils.scm (define-parameter): New macro,
2403         defines a parameter that can be set via the command line.
2404         (set-parameter!, parse-parameter-arguments): Command line args
2405         parser.
2406
2407         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2408         stdin.
2409
2410 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2411
2412         * gst/elements/gsttypefindelement.c:
2413         (gst_type_find_element_handle_event):
2414           Don't restart typefinding on a discont.
2415         * gst/gstelement.c: (gst_element_set_state):
2416           Debug spelling fix.
2417         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2418           Allow changing mode of an active pad.
2419           Debug output fixes.
2420         * gst/registries/gstlibxmlregistry.c: (load_feature):
2421           Don't cast a static pad template to a normal pad template.
2422
2423 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2424
2425         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2426         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2427           remove gst_strtoll completely, since it didn't actually do
2428           anything more than what g_ascii_strtoull already does.
2429           check for range errors when deserializing
2430           do a cast for the unsigned cases; but further fixing needs
2431           a decision on what the interpretation of "(int)" and
2432           deserialization should be for values that fall outside the
2433           type's boundaries (ie, refuse, or interpret as casting)
2434
2435 2005-06-23  Wim Taymans  <wim@fluendo.com>
2436
2437         * check/Makefile.am:
2438         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2439         * docs/design/part-live-source.txt:
2440         * docs/design/part-states.txt:
2441         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2442         (gst_basesrc_set_live), (gst_basesrc_is_live),
2443         (gst_basesrc_get_range), (gst_basesrc_activate),
2444         (gst_basesrc_change_state):
2445         * gst/base/gstbasesrc.h:
2446         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2447         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2448         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2449         * gst/gstelement.c: (gst_element_get_state_func),
2450         (gst_element_set_state):
2451         * gst/gstelement.h:
2452         * gst/gsttypes.h:
2453         * tools/gst-launch.c: (event_loop), (main):
2454         Added support for live sources and other elements that
2455         cannot do preroll.
2456         Updated design docs, added live-source design doc.
2457         Implemented live source functionality in basesrc
2458         Fix error condition in _bin_get_state()
2459         Implement live source handling in -launch.
2460         Added check for live sources.
2461         Fixed case in GstBin where elements were changed state
2462         multiple times.
2463
2464
2465 2005-06-23  Andy Wingo  <wingo@pobox.com>
2466
2467         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2468         borken refcounting.
2469
2470         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2471         gst_caps_replace takes care of this for us.
2472
2473         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2474         gst_pad_set_caps on the target, not just its setcaps() function.
2475
2476         * tests/network-clock.scm: 
2477         * tests/network-clock-utils.scm: A network clock simulator.
2478         Something of an algorithmic testbed before doing something in C.
2479
2480 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2481
2482         * check/Makefile.am:
2483         * check/gst/capslist.h:
2484           copy over from 0.8, and add two with bitmasks specified with
2485           (int) 0xFF...
2486         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2487           add test to parse everything from capslist.h
2488         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2489         (main):
2490           add test for structure deserialization
2491         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2492           add tests for deserialization of strings to int types
2493         * gst/gststructure.c: (gst_structure_nth_field_name):
2494         * gst/gststructure.h:
2495           add a way to get the name of a field referenced by index
2496         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2497           instead of checking if the resulting long long lies between
2498           min and max, we check if the long long would fit into
2499           a number of bytes for the final type.
2500           This fixes cases where a string represents 2^32 - 1, which
2501           when cast to int would be the (valid) -1, but is bigger than
2502           G_MAXINT
2503
2504 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2505
2506         * gst/parse/grammar.y:
2507           add a log line for type deserialization
2508
2509 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2510
2511         * check/gst/gstvalue.c: (START_TEST):
2512         * gst/gstvalue.c: (gst_value_deserialize):
2513           return long long, not int, so gint64 deserialization actually
2514           works.  Is there any flag that makes the compiler check this ?
2515           Fixes #308559
2516
2517 2005-06-22  Wim Taymans  <wim@fluendo.com>
2518
2519         * gst/gstbuffer.h:
2520         Added convenience macros for setting buffers in GValue.
2521
2522 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2523
2524         * check/gst/.cvsignore:
2525         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2526           add a test deserializing int64, and comment part out because
2527           it fails, yay !
2528
2529 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2530
2531         * check/Makefile.am:
2532         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2533         * testsuite/Makefile.am:
2534         * testsuite/caps/Makefile.am:
2535         * testsuite/caps/value_serialize.c:
2536         * testsuite/test_gst_init.c:
2537           move a value_serialize test over
2538
2539 2005-06-20  Wim Taymans  <wim@fluendo.com>
2540
2541         * gst/gstpad.c:
2542         Small doc updates.
2543         
2544         * gst/gstvalue.c: (gst_value_compare_buffer),
2545         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2546         (gst_value_compare_flags), (gst_value_serialize_flags),
2547         (gst_value_deserialize_flags), (_gst_value_initialize):
2548         Fix serialisation of buffers, they are not boxed types anymore
2549
2550 2005-06-20  Wim Taymans  <wim@fluendo.com>
2551
2552         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2553         Testcase to show error in buffer-on-caps serialisation.
2554
2555 2005-06-20  Andy Wingo  <wingo@pobox.com>
2556
2557         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2558         will be adding to later.
2559
2560         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2561         if its socks fill with rocks.
2562         (gst_system_clock_obtain): Set the name on object construction.
2563         Avoid double-checked locking.
2564
2565 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2566
2567         * gst/gsturi.c: (gst_element_make_from_uri):
2568           Fix potential endless loop.
2569
2570 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2571
2572         * check/Makefile.am:
2573           add gsttag
2574         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2575         (main):
2576           move over from testsuite dir and clean up
2577         * configure.ac:
2578         * gst/gsttag.c:
2579         * testsuite/Makefile.am:
2580         * testsuite/tags/.cvsignore:
2581         * testsuite/tags/Makefile.am:
2582         * testsuite/tags/merge.c:
2583           remove testsuite/tags
2584
2585 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2586
2587         * docs/gst/gstreamer-sections.txt:
2588         * docs/gst/tmpl/gstenumtypes.sgml:
2589         * win32/gstenumtypes.c:
2590           clean up documentation build a little
2591
2592 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2593
2594         * check/gstcheck.h:
2595           add macros for checking refcounts on objects and caps
2596         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2597           add some more unit tests
2598         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2599         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2600           fix leaked refcounts (I hope :)) so unittest works
2601         * gst/gstpad.h:
2602           whitespace removal
2603
2604 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2605
2606         * configure.ac: back to HEAD
2607
2608 === release 0.9.1 ===
2609
2610 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2611
2612         * NEWS:
2613         * RELEASE:
2614           updated
2615
2616 2005-06-17  Andy Wingo  <wingo@pobox.com>
2617
2618         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2619         assert; it's always possible that the pad gets deactivated in
2620         between the checks in gstpad.c and the implementation. Rely on
2621         finish_preroll() to return a FLUSHING or similar instead of on the
2622         assert.
2623         
2624         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2625         clock and post an EOS message if we come out of finish_preroll in
2626         the playing state.
2627
2628 2005-06-16  David Schleef  <ds@schleef.org>
2629
2630         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2631         (gst_capsfilter_set_property): Allow NULL as possible value
2632         for filter_caps property, indicating GST_CAPS_ANY.
2633
2634 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2635
2636         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2637           fix debug output
2638         * gst/schedulers/Makefile.am:
2639           use libgst prefix
2640         * gstreamer.spec.in:
2641           fix spec for it
2642
2643 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2644
2645         * gstreamer.spec.in:
2646           clean up
2647
2648 2005-06-08  Andy Wingo  <wingo@pobox.com>
2649
2650         * gst/gstutils.c: RPAD fixes all around.
2651         (gst_element_link_pads): Refcounting fixes.
2652
2653         * tools/gst-inspect.c:
2654         * tools/gst-xmlinspect.c:
2655         * parse/grammar.y:
2656         * gst/base/gsttypefindhelper.c:
2657         * gst/base/gstbasesink.c:
2658         * gst/gstqueue.c: RPAD fixes.
2659
2660         * gst/gstghostpad.h:
2661         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2662         pads. The tricky thing is they provide both source and sink
2663         interfaces, since they proxy the internal pad for the external
2664         pad, and vice versa. Implement with lower-level ProxyPad objects,
2665         with the interior proxy pad as a child of the exterior ghost pad.
2666         Should write a doc on this.
2667         
2668         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2669         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2670         gst_object API.
2671         
2672         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2673         pads are real pads. No ghost pads in this file. Not documenting
2674         the myriad s/RPAD/PAD/ and REALIZE fixes.
2675         (gst_pad_class_init): Add properties for "direction" and
2676         "template". Both are construct-only, so they can't change during
2677         the life of the pad. Fixes properly deriving from GstPad.
2678         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2679         derived objects, just set properties when creating the objects via
2680         g_object_new.
2681         (gst_pad_get_parent): Implement as a function, return NULL if the
2682         parent is not an element.
2683         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2684         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2685         
2686         * gst/gstobject.c (gst_object_class_init): Make name a construct
2687         property. Don't set it in the object init.
2688
2689         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2690         with UNKNOWN direction.
2691         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2692         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2693         (gst_element_remove_pad): Remove ghost-pad special cases.
2694         (gst_element_pads_activate): Remove rpad cruft.
2695
2696         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2697         catch the pad's-parent-not-an-element case.
2698
2699         * gst/gst.h: Include gstghostpad.h.
2700
2701         * gst/gst.c (init_post): No more real, ghost pads.
2702
2703         * gst/Makefile.am: Add gstghostpad.[ch].
2704
2705         * check/Makefile.am:
2706         * check/gst/gstbin.c:
2707         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2708         into a bin creates ghost pads, and that the refcounts are right.
2709         Partly moved from gstbin.c.
2710
2711 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2712
2713         * check/gst-libs/.cvsignore:
2714         * check/gst/.cvsignore:
2715         * check/pipelines/.cvsignore:
2716           ignore more
2717         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2718         (START_TEST), (cleanup_suite), (main):
2719           add some tests related to cleanup after running pipelines
2720
2721 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2722
2723         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2724           add a testsuite for GstBuffer
2725
2726 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2727
2728         * gst/gstminiobject.h:
2729           add defines for accessing the refcount
2730
2731 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2732
2733         * Makefile.am: added support for html unit test coverage reports
2734
2735 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2736
2737         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2738           Free existing caps if the capsfilter changes. Add a FIXME about
2739           setting those caps on the pads.
2740
2741         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2742           Before adding a ghost pad to a parent bin, check that there isn't
2743           already one for the element on the bin. Prevents infinite recursion
2744           when using decodebin in parse pipelines. Andy says he'll rewrite the
2745           way this works anyway, so ignore the hack.
2746
2747 2005-06-02  Andy Wingo  <wingo@pobox.com>
2748
2749         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2750         file size, pass it on to the type find helper.
2751
2752         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2753         segment_start and segment_end properly according to the seek
2754         method. Segment_end is still a bit flaky because offset can be
2755         negative for CUR and END cases, but it takes -1 as an "unset"
2756         value.
2757
2758 2005-06-02  Wim Taymans  <wim@fluendo.com>
2759
2760         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2761         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2762         (gst_basesink_activate):
2763         * gst/base/gstbasesink.h:
2764         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2765         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2766         (gst_pad_query), (gst_pad_start_task):
2767         * gst/gstpad.h:
2768         * gst/gstqueue.c: (gst_queue_bufferalloc),
2769         (gst_queue_handle_sink_event), (gst_queue_chain):
2770         Bufferalloc: return GstFlowReturn to more accuratly report
2771         why allocation failed.
2772
2773 2005-06-02  Wim Taymans  <wim@fluendo.com>
2774
2775         * gst/gstpipeline.c: (gst_pipeline_send_event):
2776         Take snapshot of state without blocking.
2777
2778 2005-06-02  Wim Taymans  <wim@fluendo.com>
2779
2780         * docs/design/part-TODO.txt:
2781         * docs/design/part-caps.txt:
2782         * docs/design/part-clocks.txt:
2783         * docs/design/part-negotiation.txt:
2784         * docs/design/part-preroll.txt:
2785         Small doc updates 
2786
2787 2005-05-30  Wim Taymans  <wim@fluendo.com>
2788
2789         * gst/elements/gstidentity.c: (gst_identity_event),
2790         (gst_identity_transform), (gst_identity_get_property):
2791         Protect last_message property as it is accessed from
2792         multiple threads.
2793
2794 2005-05-30  Wim Taymans  <wim@fluendo.com>
2795
2796         * gst/gstelement.c: (gst_element_init),
2797         (gst_element_pads_activate), (gst_element_change_state):
2798         Slicker pad activation code.
2799
2800 2005-05-30  Wim Taymans  <wim@fluendo.com>
2801
2802         * gst/Makefile.am:
2803         * gst/gstelement.h:
2804         * gst/gstelementfactory.h:
2805         * gst/gsttypes.h:
2806         Move elementfactory methods to separate .h file.
2807
2808 2005-05-30  Wim Taymans  <wim@fluendo.com>
2809
2810         * docs/design/part-overview.txt:
2811         * gst/gstsystemclock.h:
2812         Small typo fixes, doc updates.
2813
2814 2005-05-30  Wim Taymans  <wim@fluendo.com>
2815
2816         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2817         (init_popt_callback):
2818         Remove cpu-opt flag.
2819
2820 2005-05-30  Wim Taymans  <wim@fluendo.com>
2821
2822         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2823         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2824         * gst/gstbuffer.h:
2825         Avoid typechecking in places where not needed.
2826         Added accessor for malloc_data.
2827
2828 2005-05-30  Wim Taymans  <wim@fluendo.com>
2829
2830         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2831         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2832         (gst_pad_configure_sink), (gst_pad_configure_src),
2833         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2834         (gst_pad_start_task):
2835         Propagate errors from _set_caps() in configure_src/sink
2836         functions instead of returning TRUE.
2837         FLUSH events can travel up and downstream
2838
2839
2840 2005-05-30  Wim Taymans  <wim@fluendo.com>
2841
2842         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2843         (gst_basesink_activate):
2844         Handle EOS in preroll.
2845
2846 2005-05-30  Wim Taymans  <wim@fluendo.com>
2847
2848         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2849         (gst_queue_loop), (gst_queue_handle_src_event):
2850         Remove old pieces of code
2851         Flushing the queue in an upstream event is a very bad idea.
2852
2853 2005-05-26  Andy Wingo  <wingo@pobox.com>
2854
2855         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2856         gst_value_set_mini_object so as to add a ref on the object (which
2857         will be removed when the value is unset).
2858
2859         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2860         arg type in ::handoff.
2861
2862         * gst/gstelement.c (gst_element_change_state): Also deactivate
2863         pads in READY->NULL, just in case the element didn't make it to
2864         PAUSED. Wingo tested, Wim approved.
2865
2866 2005-05-26  Wim Taymans  <wim@fluendo.com>
2867
2868         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2869         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2870         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2871         A flushing pad cannot be used to alloc_buffer from.
2872
2873 2005-05-26  Wim Taymans  <wim@fluendo.com>
2874
2875         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2876         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2877         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2878         (gst_bus_create_watch), (gst_bus_add_watch_full):
2879         * gst/gstbus.h:
2880         Implement a real GSource and use g_main_context_wakeup() to
2881         signal new messages instead of the socketpair.
2882
2883 2005-05-25  Wim Taymans  <wim@fluendo.com>
2884
2885         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2886         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2887         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2888         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2889         (gst_pad_send_event), (gst_pad_start_task):
2890         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2891         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2892         (gst_queue_sink_activate), (gst_queue_src_activate),
2893         (gst_queue_change_state):
2894         * gst/gstqueue.h:
2895         Fix state changes for non sinks. We now change sinks, then elements
2896         with unconnected srcpads, then the rest.
2897         More efficient queue unlocking in flush and state changes.
2898         Set the pad activate mode even if it does not have an activate
2899         function.
2900
2901 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2902
2903         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2904           Don't go in pull mode for non-seekable sources.
2905         * gst/elements/gsttypefindelement.h:
2906         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2907         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2908         (free_entry), (stop_typefinding),
2909         (gst_type_find_element_handle_event), (find_peek),
2910         (gst_type_find_element_chain), (do_pull_typefind),
2911         (gst_type_find_element_change_state):
2912           Allow typefinding (w/o seeking) in push-mode, simplified version
2913           of what was in 0.8.
2914         * gst/gstutils.c: (gst_buffer_join):
2915         * gst/gstutils.h:
2916           gst_buffer_join() from 0.8.
2917
2918 2005-05-25  Wim Taymans  <wim@fluendo.com>
2919
2920         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2921         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2922         (gst_pad_send_event), (gst_pad_start_task):
2923         Disable attempt at mode switching until it is figured out.
2924
2925 2005-05-25  Wim Taymans  <wim@fluendo.com>
2926
2927         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2928         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2929         (gst_basesink_finish_preroll), (gst_basesink_chain),
2930         (gst_basesink_loop), (gst_basesink_activate),
2931         (gst_basesink_change_state):
2932         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2933         (gst_basesrc_get_range), (gst_basesrc_loop),
2934         (gst_basesrc_activate):
2935         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2936         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2937         (gst_real_pad_init), (gst_real_pad_set_property),
2938         (gst_real_pad_get_property), (gst_pad_set_active),
2939         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2940         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2941         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2942         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2943         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2944         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2945         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2946         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2947         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2948         (gst_pad_stop_task):
2949         * gst/gstpad.h:
2950         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2951         (gst_queue_loop), (gst_queue_src_activate):
2952         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2953         (gst_task_get_state):
2954         * gst/gsttask.h:
2955         * gst/schedulers/threadscheduler.c:
2956         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2957         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2958         in task function.
2959         Remove ACTIVE pad flag, use FLUSHING everywhere
2960         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2961         functions.
2962         Add locks around IS_FLUSHING when reading.
2963         Take STREAM lock in chain(), get_range() functions so plugins
2964         don't need to take it anymore.
2965         
2966
2967
2968 2005-05-25  Wim Taymans  <wim@fluendo.com>
2969
2970         * tools/gst-launch.c: (event_loop):
2971         Unref message after using its contents instead of
2972         before.
2973
2974 2005-05-24  Wim Taymans  <wim@fluendo.com>
2975
2976         * docs/design/draft-ghostpads.txt:
2977         * docs/design/draft-push-pull.txt:
2978         * docs/design/draft-query.txt:
2979         * docs/design/part-overview.txt:
2980         Docs updates, added general overview doc.
2981
2982 2005-05-21  David Schleef  <ds@schleef.org>
2983
2984         * docs/gst/tmpl/old/GstBin.sgml:
2985         * docs/gst/tmpl/old/GstBuffer.sgml:
2986         * docs/gst/tmpl/old/GstCaps.sgml:
2987         * docs/gst/tmpl/old/GstClock.sgml:
2988         * docs/gst/tmpl/old/GstCompat.sgml:
2989         * docs/gst/tmpl/old/GstData.sgml:
2990         * docs/gst/tmpl/old/GstElement.sgml:
2991         * docs/gst/tmpl/old/GstEvent.sgml:
2992         * docs/gst/tmpl/old/GstIndex.sgml:
2993         * docs/gst/tmpl/old/GstStructure.sgml:
2994         * docs/gst/tmpl/old/GstTag.sgml:
2995         * docs/gst/tmpl/old/cothreads.sgml:
2996         * docs/gst/tmpl/old/cothreads_compat.sgml:
2997         * docs/gst/tmpl/old/gettext.sgml:
2998         * docs/gst/tmpl/old/gobject2gtk.sgml:
2999         * docs/gst/tmpl/old/grammar.tab.sgml:
3000         * docs/gst/tmpl/old/gst-i18n-app.sgml:
3001         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
3002         * docs/gst/tmpl/old/gst_private.sgml:
3003         * docs/gst/tmpl/old/gstaggregator.sgml:
3004         * docs/gst/tmpl/old/gstarch.sgml:
3005         * docs/gst/tmpl/old/gstatomic_impl.sgml:
3006         * docs/gst/tmpl/old/gstbufferstore.sgml:
3007         * docs/gst/tmpl/old/gstdata_private.sgml:
3008         * docs/gst/tmpl/old/gstdisksink.sgml:
3009         * docs/gst/tmpl/old/gstdisksrc.sgml:
3010         * docs/gst/tmpl/old/gstelementfactory.sgml:
3011         * docs/gst/tmpl/old/gstextratypes.sgml:
3012         * docs/gst/tmpl/old/gstfakesink.sgml:
3013         * docs/gst/tmpl/old/gstfakesrc.sgml:
3014         * docs/gst/tmpl/old/gstfdsink.sgml:
3015         * docs/gst/tmpl/old/gstfdsrc.sgml:
3016         * docs/gst/tmpl/old/gstfilesink.sgml:
3017         * docs/gst/tmpl/old/gstfilesrc.sgml:
3018         * docs/gst/tmpl/old/gsthttpsrc.sgml:
3019         * docs/gst/tmpl/old/gstidentity.sgml:
3020         * docs/gst/tmpl/old/gstindexfactory.sgml:
3021         * docs/gst/tmpl/old/gstmarshal.sgml:
3022         * docs/gst/tmpl/old/gstmd5sink.sgml:
3023         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
3024         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
3025         * docs/gst/tmpl/old/gstpadtemplate.sgml:
3026         * docs/gst/tmpl/old/gstpipefilter.sgml:
3027         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
3028         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3029         * docs/gst/tmpl/old/gstshaper.sgml:
3030         * docs/gst/tmpl/old/gstspider.sgml:
3031         * docs/gst/tmpl/old/gstspideridentity.sgml:
3032         * docs/gst/tmpl/old/gststatistics.sgml:
3033         * docs/gst/tmpl/old/gsttee.sgml:
3034         * docs/gst/tmpl/old/gsttimecache.sgml:
3035         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3036         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3037         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3038         * docs/gst/tmpl/old/types.sgml:
3039           I didn't intend to add these or check them in.
3040
3041 2005-05-19  David Schleef  <ds@schleef.org>
3042
3043         * configure.ac: Use -no-common everywhere.  In a sane world, it
3044           would be the default in libtool, because without it, you can't
3045           build DLLs on Windows.
3046         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3047         * docs/gst/gstreamer-sections.txt:
3048         * docs/gst/tmpl/gstcpu.sgml:
3049         * docs/gst/tmpl/gstdata.sgml:
3050         * docs/gst/tmpl/gstthread.sgml:
3051
3052 2005-05-19  David Schleef  <ds@schleef.org>
3053
3054         * gst/gstminiobject.c: (gst_value_set_mini_object),
3055         (gst_value_take_mini_object), (gst_value_get_mini_object):
3056         * gst/gstminiobject.h: Add GValue set/get functions.
3057
3058 2005-05-19  Wim Taymans  <wim@fluendo.com>
3059
3060         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3061         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3062         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3063         * gst/gstbuffer.h:
3064         * gst/gstbus.c: (gst_bus_post):
3065         * gst/gstelement.c: (gst_element_get_random_pad):
3066         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3067         Make subbufer unref the parent in finalize.
3068         some more debugging info.
3069
3070
3071 2005-05-19  Wim Taymans  <wim@fluendo.com>
3072
3073         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3074         (gst_basesink_init), (gst_basesink_finalize),
3075         (gst_basesink_activate), (gst_basesink_change_state):
3076         Don't free preroll queue too early.
3077
3078 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3079
3080         * gst/Makefile.am:
3081         * gst/ROADMAP:
3082           Hi, I'm outdated. Please shoot me.
3083
3084 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3085
3086         * gst/gstpipeline.c: (gst_pipeline_send_event):
3087           Do not access variables after they have been deleted.
3088
3089 2005-05-19  Wim Taymans  <wim@fluendo.com>
3090
3091         * tools/gst-inspect.c: (print_plugin_features):
3092         A plugin feature does unfortunatly not use the
3093         object name yet...
3094
3095 2005-05-18  Wim Taymans  <wim@fluendo.com>
3096
3097         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3098         Port _span() functions to new subbuffers.
3099
3100 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3101
3102         * gst/gstbin.c: (gst_bin_add_func):
3103           Fix clock settery in bins when adding kids after the clock has
3104           been selected.
3105
3106 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3107
3108         * gst/elements/gstidentity.c: (gst_identity_class_init):
3109           Workaround until signals support GstMiniObject.
3110
3111 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3112
3113         * gst/gstbuffer.c:
3114         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3115
3116 2005-05-18  Wim Taymans  <wim@fluendo.com>
3117
3118         * gst/base/Makefile.am:
3119         * gst/base/gstadapter.c: (gst_adapter_base_init),
3120         (gst_adapter_class_init), (gst_adapter_init),
3121         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3122         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3123         (gst_adapter_flush), (gst_adapter_available),
3124         (gst_adapter_available_fast):
3125         * gst/base/gstadapter.h:
3126         Ported and added adapter to the base classes.
3127
3128 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3129
3130         * gst/gst.c:
3131         * gst/gstmessage.c:
3132           Make sure the class is reffed/unreffed once before threads can be
3133           used.  Fixes #304551.
3134
3135 2005-05-17  Wim Taymans  <wim@fluendo.com>
3136
3137         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3138         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3139         * gst/gstminiobject.c: (gst_mini_object_get_type),
3140         (gst_mini_object_free):
3141         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3142         (gst_pad_push), (gst_pad_push_event):
3143         * gst/gstqueue.c: (gst_queue_change_state):
3144         Don't queue buffers in basesink when we are flushing.
3145         Unref buffer when flushing in basesink.
3146         Flush queue when going to READY
3147         Unref buffer when _push() returns an error.
3148         Don't free MiniObject instance when refcount is incremented
3149         in _finalize() so that we can recover objects.
3150
3151 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3152
3153         * docs/manual/advanced-schedulers.xml:
3154         * docs/manual/appendix-checklist.xml:
3155         * docs/pwg/advanced-clock.xml:
3156         * docs/pwg/advanced-interfaces.xml:
3157         * docs/pwg/advanced-request.xml:
3158         * docs/pwg/advanced-types.xml:
3159         * docs/pwg/intro-preface.xml:
3160         * examples/plugins/example.c: (gst_example_get_type),
3161         (gst_example_class_init), (gst_example_chain),
3162         (gst_example_set_property), (gst_example_get_property),
3163         (gst_example_change_state), (plugin_init):
3164         * examples/plugins/example.h:
3165           small doc fixes
3166
3167 2005-05-17  Wim Taymans  <wim@fluendo.com>
3168
3169         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3170         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3171         * gst/gstqueue.c: (gst_queue_change_state):
3172         Clear queue when going to READY.
3173         Remove IN_SETCAPS flag too.
3174
3175 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3176
3177         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3178           Remove implicit cast from gboolean to GstElementStateReturn;
3179           make sure we still return failure in paused => ready case if
3180           the parent class fails to change state and our own stop 
3181           vfunc succeeds.
3182
3183 2005-05-17  Wim Taymans  <wim@fluendo.com>
3184
3185         * tools/gst-launch.c: (event_loop):
3186         Message was unreffed too soon.
3187
3188 2005-05-16  Andy Wingo  <wingo@pobox.com>
3189
3190         * gst/gstbin.c (sink_iterator_filter): Err... um...
3191
3192         * check/gst/gstbin.c (test_ghost_pads): New test for the
3193         ghosting-if-elements-not-in-same-bin behavior.
3194
3195 2005-05-16  David Schleef  <ds@schleef.org>
3196
3197         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3198         accessing refcount directly.
3199
3200 2005-05-15  David Schleef  <ds@schleef.org>
3201
3202         * check/Makefile.am: remove GstData checks
3203         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3204         * gst/Makefile.am: add miniobject, remove data
3205         * gst/gst.h: add miniobject, remove data
3206         * gst/gstdata.c: remove
3207         * gst/gstdata.h: remove
3208         * gst/gstdata_private.h: remove
3209         * gst/gsttypes.h: remove GstEvent and GstMessage
3210         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3211         * gst/gstmarshal.list: change BOXED -> OBJECT
3212
3213         Implement GstMiniObject.
3214         * gst/gstminiobject.c:
3215         * gst/gstminiobject.h:
3216
3217         Modify to be subclasses of GstMiniObject.
3218         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3219         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3220         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3221         (gst_subbuffer_get_type), (gst_subbuffer_init),
3222         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3223         (gst_buffer_span):
3224         * gst/gstbuffer.h:
3225         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3226         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3227         (_gst_event_copy), (gst_event_new):
3228         * gst/gstevent.h:
3229         * gst/gstmessage.c: (_gst_message_initialize),
3230         (gst_message_get_type), (gst_message_class_init),
3231         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3232         (gst_message_new), (gst_message_new_error),
3233         (gst_message_new_warning), (gst_message_new_tag),
3234         (gst_message_new_state_changed), (gst_message_new_application):
3235         * gst/gstmessage.h:
3236         * gst/gstprobe.c: (gst_probe_perform),
3237         (gst_probe_dispatcher_dispatch):
3238         * gst/gstprobe.h:
3239         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3240         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3241         (_gst_query_copy), (gst_query_new):
3242
3243         Update elements for GstData -> GstMiniObject changes
3244         * gst/gstquery.h:
3245         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3246         (gst_queue_chain), (gst_queue_loop):
3247         * gst/elements/gstbufferstore.c:
3248         (gst_buffer_store_add_buffer_func),
3249         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3250         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3251         (gst_fakesink_render):
3252         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3253         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3254         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3255         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3256         (gst_filesrc_create_read):
3257         * gst/elements/gstidentity.c: (gst_identity_class_init):
3258         * gst/elements/gsttypefindelement.c:
3259         (gst_type_find_element_src_event), (free_entry_buffers),
3260         (gst_type_find_element_handle_event):
3261         * libs/gst/dataprotocol/dataprotocol.c:
3262         (gst_dp_header_from_buffer):
3263         * libs/gst/dataprotocol/dataprotocol.h:
3264         * libs/gst/dataprotocol/dp-private.h:
3265
3266 2005-05-15  David Schleef  <ds@schleef.org>
3267
3268         * gst/elements/gstelements.c: Don't include headers that were
3269         just removed.
3270
3271 2005-05-15  David Schleef  <ds@schleef.org>
3272
3273         * gst/elements/Makefile.am: Remove some elements that don't
3274         need to be in the core (or even exist at all).
3275         * gst/elements/gstaggregator.c:
3276         * gst/elements/gstaggregator.h:
3277         * gst/elements/gstmd5sink.c:
3278         * gst/elements/gstmd5sink.h:
3279         * gst/elements/gstmultifilesrc.c:
3280         * gst/elements/gstmultifilesrc.h:
3281         * gst/elements/gstpipefilter.c:
3282         * gst/elements/gstpipefilter.h:
3283         * gst/elements/gstshaper.c:
3284         * gst/elements/gstshaper.h:
3285         * gst/elements/gststatistics.c:
3286         * gst/elements/gststatistics.h:
3287         * po/POTFILES.in: Remove above files.
3288
3289 2005-05-14  Andy Wingo  <wingo@pobox.com>
3290
3291         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3292         so as to get the refs right.
3293         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3294         unreffing objects that don't pass the filter.
3295
3296         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3297         gst_element_set_bus.
3298         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3299         normal cases, this will destroy the bus.
3300
3301         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3302         object.
3303
3304         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3305         has no sinks.
3306
3307 2005-05-13  Andy Wingo  <wingo@pobox.com>
3308
3309         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3310         gst_pad_link, call pad_link_maybe_ghosting,
3311         (pad_link_maybe_ghosting): Links pads, making sure that the
3312         elements being linked are in the same bin.
3313         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3314         Helpers for pad_link_maybe_ghosting.
3315
3316 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3317
3318         * configure.ac:
3319           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3320
3321 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3322
3323         * docs/design/part-element-source.txt:
3324           Mention GstPushSrc
3325
3326 2005-05-12  Wim Taymans  <wim@fluendo.com>
3327
3328         * gst/base/gstbasesink.c: (gst_basesink_init),
3329         (gst_basesink_activate):
3330         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3331         (gst_basesrc_is_seekable):
3332         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3333         (bin_element_is_sink), (gst_bin_change_state):
3334         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3335         * gst/gstelement.h:
3336         Identify sinks by their flag to avoid overly complicated
3337         checks (fow now).
3338         Do state changes even for elements not reachable from the
3339         sinks.
3340         BaseSink is a sink now :)
3341         Some more debugging info in the basesrc.
3342
3343
3344 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3345
3346         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3347           Implement _query on a bin, similar to _send_event.
3348
3349 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3350
3351         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3352           Discont event offset format should be GST_FORMAT_BYTES,
3353           not GST_FORMAT_TIME.
3354
3355 2005-05-12  Wim Taymans  <wim@fluendo.com>
3356
3357         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3358         Same fix as Ronald's but without the signal. 
3359
3360 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3361
3362         * gst/gstutils.c: (gst_element_query_position):
3363           No, an element is not a pad.
3364
3365 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3366
3367         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3368         (gst_bin_get_state):
3369           If a child is removed from a bin while we remove the child from
3370           the bin and while we're retrieving its state, signal this to the
3371           get_state function so we abort the wait (instead of waiting for
3372           a timeout) and can immediately re-iterate over all other elements.
3373
3374 2005-05-12  Wim Taymans  <wim@fluendo.com>
3375
3376         * gst/base/Makefile.am:
3377         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3378         (gst_basesrc_start):
3379         * gst/base/gstbasesrc.h:
3380         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3381         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3382         (gst_pushsrc_init), (gst_pushsrc_create):
3383         * gst/base/gstpushsrc.h:
3384         Added is_seekable to BaseSrc
3385         Added simple PushSrc.
3386
3387 2005-05-11  Wim Taymans  <wim@fluendo.com>
3388
3389         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3390         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3391         (gst_element_link_pads), (gst_element_query_position),
3392         (gst_element_query_convert), (intersect_caps_func),
3393         (gst_pad_query_position), (gst_pad_query_convert):
3394         Fix refcounting in utils function.
3395         No point in trying to activate a pad when it's added, it could
3396         be added from the state change function and then we deadlock, the
3397         element has to decide what to do.
3398
3399 2005-05-10  Andy Wingo  <wingo@pobox.com>
3400
3401         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3402         *all* the arguments.
3403
3404         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3405         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3406         lock (according to the docs -- if this is wrong change the docs).
3407
3408         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3409         flush messages in the NULL state.
3410
3411         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3412         message immediately and return.
3413         (gst_bus_set_flushing): New function. If a bus is flushing, it
3414         flushes out any queued messages and immediately unrefs new
3415         messages. This is so when an element goes to NULL, all of the
3416         unhandled messages coming from it can be freed, and their
3417         references to the element dropped. In other words: message source
3418         ref considered harmful :P
3419
3420         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3421         we're finished with it.
3422
3423         * gst/gstmessage.c (gst_message_new_state_changed): 
3424
3425 2005-05-10  Wim Taymans  <wim@fluendo.com>
3426
3427         * gst/gstvalue.c: (gst_value_compare_flags),
3428         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3429         (_gst_value_initialize):
3430         Added flags serialize/deserialize/compare code.
3431
3432 2005-05-09  Andy Wingo  <wingo@pobox.com>
3433
3434         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3435         Intersect the peer's caps with our caps.
3436
3437 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3438
3439         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3440         * gst/elements/gsttypefindelement.c: (find_peek):
3441           Handle negative offsets better. Fixes decodebin.
3442
3443 2005-05-09  Wim Taymans  <wim@fluendo.com>
3444
3445         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3446         (gst_base_transform_event):
3447         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3448         Implement accept_caps.
3449         Fix silly lock/unlock mismatch in base class.
3450
3451 2005-05-09  Wim Taymans  <wim@fluendo.com>
3452
3453         * docs/design/draft-push-pull.txt:
3454         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3455         * gst/elements/gstfilesink.c: (gst_filesink_init),
3456         (gst_filesink_query):
3457         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3458         (gst_type_find_handle_src_query), (find_element_get_length):
3459         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3460         * gst/gstelement.h:
3461         * gst/gstmessage.c:
3462         * gst/gstmessage.h:
3463         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3464         (gst_real_pad_get_caps_unlocked),
3465         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3466         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3467         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3468         (gst_real_pad_dispose), (gst_real_pad_finalize),
3469         (gst_pad_load_and_link), (gst_pad_save_thyself),
3470         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3471         (gst_pad_check_pull_range), (gst_pad_pull_range),
3472         (gst_pad_template_get_type), (gst_pad_template_class_init),
3473         (gst_pad_template_init), (gst_pad_template_dispose),
3474         (name_is_valid), (gst_static_pad_template_get),
3475         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3476         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3477         (gst_pad_get_element_private), (gst_pad_start_task),
3478         (gst_pad_pause_task), (gst_pad_stop_task),
3479         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3480         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3481         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3482         (gst_ghost_pad_new):
3483         * gst/gstpad.h:
3484         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3485         (gst_query_new_position), (gst_query_set_position),
3486         (gst_query_parse_position), (gst_query_new_convert),
3487         (gst_query_set_convert), (gst_query_parse_convert):
3488         * gst/gstquery.h:
3489         * gst/gstqueryutils.c:
3490         * gst/gstqueryutils.h:
3491         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3492         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3493         (gst_queue_handle_src_query):
3494         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3495         (gst_element_query_position), (gst_element_query_convert),
3496         (intersect_caps_func), (gst_pad_query_position),
3497         (gst_pad_query_convert):
3498         * gst/gstutils.h:
3499         * tools/gst-inspect.c: (print_pad_info):
3500         * tools/gst-xmlinspect.c: (print_element_info):
3501         Remove old query functions. Ported old code.
3502         Added position/convert helper functions to gstutils.
3503         Reordered gstpad.c code, grouping relevant things.
3504         Remove gst_message_new(), always need to speficy a specific
3505         message.
3506
3507
3508 2005-05-09  Andy Wingo  <wingo@pobox.com>
3509
3510         * gst/gstiterator.h: Add some includes.
3511
3512         * gst/gstqueryutils.h: Include more headers.
3513
3514         * gst/gstpad.h:
3515         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3516         some uses of gst_pad_query.
3517
3518         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3519         NULL out parameters.
3520         (gst_query_new_position): New proc, allocates a new position
3521         query.
3522
3523         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3524         gstqueryutils.c to the build.
3525
3526         * gst/gststructure.c (gst_structure_set_valist): Implement with
3527         the generic G_VALUE_COLLECT.
3528         
3529 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3530
3531         * gst/Makefile.am: (gst_headers):
3532         Added gstqueryutils.h to the list of headers to install, that was
3533         a 'nachty' move wingo :)
3534
3535 2005-05-06  Andy Wingo  <wingo@pobox.com>
3536
3537         * gst/gstquery.h
3538         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3539         GstData, init a memchunk.
3540         (standard_definitions): Add a few query types, deprecate a few.
3541         (gst_query_get_type): New proc.
3542         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3543         implementation.
3544         (gst_query_new_application, gst_query_get_structure): New public
3545         procs.
3546
3547         * docs/design/draft-query.txt: Removed LINKS from the query types,
3548         because all the rest can be dispatched to other pads -- seemed
3549         ugly to have a query that couldn't be dispatched. internal_links
3550         is fine as a pad method.
3551
3552         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3553         in gstpad.c, but maintain binary compatibility for the moment.
3554         Will fix before 0.9 is out.
3555
3556         * gst/gstqueryutils.c: 
3557         * gst/gstqueryutils.h: New files, implement 3 methods for each
3558         query type: parse_query, parse_response, and set. Probably need an
3559         allocator as well.
3560
3561         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3562
3563         * gst/elements/gstfilesink.c (gst_filesink_query2):
3564         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3565         query_types, and formats methods.
3566
3567         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3568         (gst_pad_set_query2_function): New functions.
3569         (gst_real_pad_init): Set query2_default as the default query2
3570         function. Basically just dispatches to internally linked pads.
3571
3572         Needs review!
3573         
3574         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3575         without using the atomic operations. Only one thread can possibly
3576         be accessing the data at this point. Changed so as to avoid
3577         gst_atomic operations.
3578
3579 2005-05-06  Wim Taymans  <wim@fluendo.com>
3580
3581         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3582         Also set caps if we use the fallback buffer alloc.
3583
3584 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3585
3586         * docs/gst/Makefile.am:
3587         * docs/gst/gstreamer-docs.sgml:
3588         * docs/gst/gstreamer-sections.txt:
3589         * docs/gst/tmpl/gstatomic.sgml:
3590         * docs/gst/tmpl/gstmemchunk.sgml:
3591         * testsuite/elements/struct_i386.h:
3592         * win32/GStreamer.vcproj:
3593         * win32/Makefile:
3594           Purge GstAtomic stuff from docs and win32 makefiles as well
3595
3596 2005-05-06  Wim Taymans  <wim@fluendo.com>
3597
3598         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3599         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3600         * gst/gstpad.c: (gst_pad_peer_get_caps):
3601         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3602         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3603         (gst_queue_src_activate), (gst_queue_change_state):
3604         * gst/gstqueue.h:
3605         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3606         (intersect_caps_func):
3607         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3608         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3609         Some fixes for the peer_get_caps() change.
3610
3611 2005-05-06  Wim Taymans  <wim@fluendo.com>
3612
3613         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3614         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3615         (gst_basesink_activate):
3616         Actually do something with error codes returned from the push
3617         functions.
3618
3619 2005-05-06  Wim Taymans  <wim@fluendo.com>
3620
3621         * docs/design/part-element-sink.txt:
3622         * docs/design/part-element-source.txt:
3623         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3624         (gst_basesink_event), (gst_basesink_activate):
3625         * gst/base/gstbasesink.h:
3626         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3627         (gst_basesrc_activate):
3628         * gst/base/gstbasesrc.h:
3629         * gst/gstelement.c: (gst_element_pads_activate):
3630         Some more documentation.
3631         Fixed scheduling decision in _pads_activate().
3632
3633 2005-05-05  Andy Wingo  <wingo@pobox.com>
3634
3635         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3636         the test suite.
3637
3638 2005-05-05  Wim Taymans  <wim@fluendo.com>
3639
3640         * gst/base/Makefile.am:
3641         * gst/base/gstbasesink.h:
3642         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3643         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3644         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3645         (gst_collectpads_class_init), (gst_collectpads_init),
3646         (gst_collectpads_finalize), (gst_collectpads_new),
3647         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3648         (find_pad), (gst_collectpads_remove_pad),
3649         (gst_collectpads_is_active), (gst_collectpads_collect),
3650         (gst_collectpads_collect_range), (gst_collectpads_start),
3651         (gst_collectpads_stop), (gst_collectpads_peek),
3652         (gst_collectpads_pop), (gst_collectpads_available),
3653         (gst_collectpads_read), (gst_collectpads_flush),
3654         (gst_collectpads_chain):
3655         * gst/base/gstcollectpads.h:
3656         * gst/elements/Makefile.am:
3657         * gst/elements/gstelements.c:
3658         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3659         (gst_fakesink_get_times), (gst_fakesink_event),
3660         (gst_fakesink_preroll), (gst_fakesink_render):
3661         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3662         (gst_filesink_init), (gst_filesink_set_location),
3663         (gst_filesink_open_file), (gst_filesink_close_file),
3664         (gst_filesink_pad_query), (gst_filesink_event),
3665         (gst_filesink_render), (gst_filesink_change_state):
3666         * gst/elements/gstfilesink.h:
3667         Added object to help in making collect pad based elements.
3668         Ported filesink.
3669         Make event function in sink baseclass return gboolean.
3670
3671 2005-05-05  Wim Taymans  <wim@fluendo.com>
3672
3673         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3674         (gst_bin_get_by_name):
3675         * gst/gstbuffer.h:
3676         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3677         (gst_clock_finalize):
3678         * gst/gstdata.c: (gst_data_replace):
3679         * gst/gstdata.h:
3680         * gst/gstelement.c: (gst_element_request_pad),
3681         (gst_element_pads_activate):
3682         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3683         (gst_object_unref):
3684         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3685         (gst_pad_set_checkgetrange_function),
3686         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3687         (gst_pad_check_pull_range), (gst_pad_pull_range),
3688         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3689         (gst_pad_pause_task), (gst_pad_stop_task):
3690         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3691         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3692         Fix name lookup in GstBin.
3693         Added _data_replace() function and _buffer_replace()
3694         Use finalize method to clean up clock.
3695         Fix refcounting on request pads.
3696         Fix pad schedule mode error.
3697         Some more object refcounting debug info,
3698
3699
3700 2005-05-04  Andy Wingo <wingo@pobox.com>
3701
3702         * check/Makefile.am:
3703         * docs/gst/tmpl/gstatomic.sgml:
3704         * docs/gst/tmpl/gstplugin.sgml:
3705         * gst/base/gstbasesink.c: (gst_basesink_activate):
3706         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3707         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3708         (gst_basesrc_query), (gst_basesrc_set_property),
3709         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3710         (gst_basesrc_activate):
3711         * gst/base/gstbasesrc.h:
3712         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3713         (gst_base_transform_src_activate):
3714         * gst/elements/gstelements.c:
3715         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3716         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3717         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3718         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3719         (gst_type_find_element_checkgetrange),
3720         (gst_type_find_element_activate):
3721         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3722         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3723         (gst_caps_load_thyself):
3724         * gst/gstelement.c: (gst_element_pads_activate),
3725         (gst_element_save_thyself), (gst_element_restore_thyself):
3726         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3727         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3728         * gst/gstpad.h:
3729         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3730         (gst_xml_parse_file), (gst_xml_parse_memory),
3731         (gst_xml_get_element), (gst_xml_make_element):
3732         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3733         (_file_index_id_save_xml), (gst_file_index_commit):
3734         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3735         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3736         (load_paths):
3737         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3738         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3739         * tools/gst-complete.c: (main):
3740         * tools/gst-compprep.c: (main):
3741         * tools/gst-inspect.c: (print_element_properties_info):
3742         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3743         * tools/gst-xmlinspect.c: (print_element_properties):
3744         GCC 4 fixen.
3745         
3746 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3747
3748         * gst/gstplugin.c: (gst_plugin_check_module),
3749         (gst_plugin_check_file), (gst_plugin_load_file):
3750             apply patch from #172526 to make register work on MacOSX
3751
3752 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3753
3754         * docs/gst/tmpl/gstconfig.sgml:
3755         * gst/gstconfig.h.in:
3756           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3757         * testsuite/debug/printf_extension.c: (main):
3758           Do not use GST_PTR_FORMAT on pointers to types with
3759           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3760         * testsuite/elements/property.h:
3761           use correct printf format
3762
3763 2005-05-02  Wim Taymans  <wim@fluendo.com>
3764
3765         * docs/design/draft-push-pull.txt:
3766         * docs/design/draft-query.txt:
3767         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3768         (gst_basesrc_start):
3769         Added draft for new query API.
3770         Added draft for better selecting scheduling methods.
3771         Make basesrc ignore length if the subclass does not support
3772         it.
3773
3774 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3775
3776         * gst/Makefile.am:
3777           possible fixes for automake-1.5 - _LIBADD is reserved
3778
3779 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3780
3781         * docs/faq/Makefile.am:
3782         * docs/manual/Makefile.am:
3783         * docs/manuals.mak:
3784         * docs/pwg/Makefile.am:
3785         * gst/Makefile.am:
3786           possible fixes for automake-1.5
3787
3788 2005-04-28  Wim Taymans  <wim@fluendo.com>
3789
3790         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3791         (gst_basesink_pad_getcaps), (gst_basesink_init),
3792         (gst_basesink_do_sync):
3793         * gst/gstclock.c: (gst_clock_entry_new):
3794         * gst/gstevent.c: (gst_event_discont_get_value):
3795         * gst/gstpipeline.c: (pipeline_bus_handler),
3796         (gst_pipeline_change_state):
3797         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3798         Better debugging of clocking info.
3799         Allow NULL values when getting discont values.
3800
3801 2005-04-27  Wim Taymans  <wim@fluendo.com>
3802
3803         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3804         * check/gst/gstpad.c: (gst_pad_suite):
3805         Increase timeout for checks.
3806
3807 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3808
3809         * check/Makefile.am:
3810           fix the broken rule for cleanup.  Apparently this rule is
3811           only needed on FC2, so maybe this warrants further autotool
3812           inspection.
3813
3814 2005-04-26  Wim Taymans  <wim@fluendo.com>
3815
3816         * gst/gsttrashstack.h:
3817         Ooohh. a nasty one! After having a failed pop() from the stack,
3818         it's possible that the stack is empty. In that case, don't
3819         follow the NULL pointer.
3820
3821 2005-04-25  Wim Taymans  <wim@fluendo.com>
3822
3823         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3824         (gst_pad_set_checkgetrange_function),
3825         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3826         (gst_pad_check_pull_range), (gst_pad_pull_range),
3827         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3828         (gst_pad_pause_task), (gst_pad_stop_task):
3829         * gst/gstplugin.c: (gst_plugin_load):
3830         * gst/gstplugin.h:
3831         Remove gst_library_load as it does more harm than good with
3832         the new g_module flags.
3833         Revert bogus caps template check in pad linking, pad caps
3834         are important when linking not the template, which is more
3835         general than the current caps.
3836
3837 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3838
3839         * gst/autoplug/.cvsignore:
3840         * gst/autoplug/Makefile.am:
3841         * gst/autoplug/gstsearchfuncs.c:
3842         * gst/autoplug/gstsearchfuncs.h:
3843         * gst/autoplug/gstspider.c:
3844         * gst/autoplug/gstspider.h:
3845         * gst/autoplug/gstspideridentity.c:
3846         * gst/autoplug/gstspideridentity.h:
3847         * gst/autoplug/spidertest.c:
3848           Die, spider, die.
3849
3850 2005-04-25  Wim Taymans  <wim@fluendo.com>
3851
3852         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3853         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3854         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3855         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3856         * gst/gstpad.h:
3857         Added stubs for unimplemented functions. 
3858
3859 2005-04-24  David Schleef  <ds@schleef.org>
3860
3861         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3862         please fix.
3863
3864 2005-04-24  David Schleef  <ds@schleef.org>
3865
3866         Convert everything from GstAtomicInt to g_atomic_int_*, and
3867         remove gstatomic.
3868         * gst/Makefile.am:
3869         * gst/gstatomic.c:
3870         * gst/gstatomic.h:
3871         * gst/gstatomic_impl.h:
3872         * gst/gstbuffer.c:
3873         * gst/gstcaps.c:
3874         * gst/gstcaps.h:
3875         * gst/gstclock.c:
3876         * gst/gstclock.h:
3877         * gst/gstdata.c:
3878         * gst/gstdata.h:
3879         * gst/gstdata_private.h:
3880         * gst/gstevent.c:
3881         * gst/gstinfo.c:
3882         * gst/gstinfo.h:
3883         * gst/gstmessage.c:
3884         * gst/gstobject.c:
3885         * gst/gstobject.h:
3886         * gst/gststructure.c:
3887         * gst/gststructure.h:
3888         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3889         * gst/gstutils.h:
3890
3891 2005-04-24  David Schleef  <ds@schleef.org>
3892
3893         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3894         make the regressions tests work.  Remove some code that is no
3895         longer true.
3896         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3897         Disable warning for pads without templates.
3898
3899 2005-04-24  David Schleef  <ds@schleef.org>
3900
3901         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3902         functions that handle filtered links.
3903         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3904         removed functions.
3905         * gst/gstutils.c: Fix/remove utility functions that handle
3906         filtered caps.
3907         * gst/gstutils.h:
3908         * gst/gstvalue.c: Add serialization/deserialization of caps
3909         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3910         requires fixing so that the filter caps notation creates
3911         a capsfilter element and sets the filter_caps property.  I
3912         think everyone probably wants to keep the shorthand notation.
3913         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3914         * docs/gst/tmpl/gstpad.sgml:
3915
3916         * gst/elements/gstelements.c: Register capsfilter element.
3917         * gst/Makefile.am: fix spacing
3918         * docs/random/ds/0.9-suggested-changes: random
3919
3920 2005-04-23  David Schleef  <ds@schleef.org>
3921
3922         * gst/elements/Makefile.am:
3923         * gst/elements/gstcapsfilter.c: New element that acts like an
3924         identity, but filters caps.  Will eventually replace filtered
3925         caps in pad linking.
3926         * gst/gstutils.c: (gst_element_create_all_pads): New function
3927         to create all the ALWAYS pads that are registered with an
3928         element class.  This functionality should eventually be
3929         merged in with GstElement initialization.
3930         * gst/gstutils.h:
3931         * testsuite/trigger/README: part of trigger test code that should
3932         have been checked in a long time ago.
3933
3934 2005-04-23  David Schleef  <ds@schleef.org>
3935
3936         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3937         needed with new versions of libtool (nobody will confirm this),
3938         and hard to carry around.
3939         * gst/autoplug/Makefile.am:
3940         * gst/base/Makefile.am:
3941         * gst/elements/Makefile.am:
3942         * gst/indexers/Makefile.am:
3943         * gst/schedulers/Makefile.am:
3944         * libs/gst/bytestream/Makefile.am:
3945         * libs/gst/control/Makefile.am:
3946         * libs/gst/dataprotocol/Makefile.am:
3947         * libs/gst/getbits/Makefile.am:
3948
3949 2005-04-21  Wim Taymans  <wim@fluendo.com>
3950
3951         * docs/design/draft-push-pull.txt:
3952         * docs/design/part-MT-refcounting.txt:
3953         * docs/design/part-TODO.txt:
3954         * docs/design/part-caps.txt:
3955         * docs/design/part-events.txt:
3956         * docs/design/part-gstbus.txt:
3957         * docs/design/part-gstpipeline.txt:
3958         * docs/design/part-messages.txt:
3959         * docs/design/part-push-pull.txt:
3960         * docs/design/part-query.txt:
3961         Some more docs.
3962
3963 2005-04-21  Wim Taymans  <wim@fluendo.com>
3964
3965         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3966         (gst_message_new), (gst_message_new_error),
3967         (gst_message_new_warning), (gst_message_new_tag),
3968         (gst_message_new_state_changed), (gst_message_new_application),
3969         (gst_message_get_structure):
3970         * gst/gstmessage.h:
3971         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3972         (gst_structure_copy_conditional):
3973         Use parent refcount in GstMessage to ensure GstStructure
3974         consistency.
3975         Cleaned up headers a bit.
3976         
3977
3978 2005-04-20  Wim Taymans  <wim@fluendo.com>
3979
3980         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3981         (gst_basesink_pad_getcaps), (gst_basesink_init),
3982         (gst_basesink_chain_unlocked):
3983         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3984         (gst_type_find_helper):
3985         * gst/elements/gsttypefindelement.c:
3986         (gst_type_find_element_have_type), (gst_type_find_element_init),
3987         (stop_typefinding), (gst_type_find_element_handle_event),
3988         (find_suggest), (gst_type_find_element_chain),
3989         (gst_type_find_element_checkgetrange),
3990         (gst_type_find_element_getrange), (do_typefind),
3991         (gst_type_find_element_activate):
3992         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3993         (gst_buffer_default_free), (gst_buffer_default_copy),
3994         (gst_buffer_set_caps):
3995         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3996         (gst_caps_replace):
3997         * gst/gstmessage.c: (gst_message_new),
3998         (gst_message_new_state_changed):
3999         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4000         (gst_pad_set_checkgetrange_function),
4001         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
4002         (gst_pad_set_caps), (gst_pad_check_pull_range),
4003         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
4004         * gst/gstpad.h:
4005         * gst/gsttypefind.c: (gst_type_find_register):
4006         Make gst_caps_replace() work like other _replace() functions.
4007         Use _caps_replace() where possible.
4008         Make sure _message_new() initialises its field.
4009         Add gst_static_pad_template_get_caps()
4010
4011
4012 2005-04-18  Andy Wingo  <wingo@pobox.com>
4013
4014         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
4015         on the peer, not the pad. I think that was a typo. Pass an extra
4016         arg to see if random access is possible. Activate the pads as
4017         PULL_RANGE if possible.
4018
4019         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
4020
4021         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
4022         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
4023         to PROP_....
4024
4025 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4026
4027         * docs/faq/using.xml:
4028           Add note on gstreamer-properties (#154996).
4029
4030 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4031
4032         * docs/random/bbb/optional-properties:
4033           Some analysis on optional properties.
4034
4035 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4036
4037         * docs/gst/tmpl/gstelementfactory.sgml:
4038         * gst/gstelement.h:
4039         * gst/gstelementfactory.c: (gst_element_factory_init),
4040         (gst_element_factory_cleanup), (gst_element_register),
4041         (__gst_element_factory_add_static_pad_template),
4042         (gst_element_factory_get_static_pad_templates),
4043         (gst_element_factory_can_src_caps),
4044         (gst_element_factory_can_sink_caps):
4045         * gst/registries/Makefile.am:
4046         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4047         (gst_xml_registry_class_init), (gst_xml_registry_init),
4048         (gst_xml_registry_new), (gst_xml_registry_set_property),
4049         (gst_xml_registry_get_property), (get_time), (make_dir),
4050         (gst_xml_registry_get_perms_func),
4051         (plugin_times_older_than_recurse), (plugin_times_older_than),
4052         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4053         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4054         (add_to_char_array), (read_string), (read_uint), (read_enum),
4055         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4056         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4057         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4058         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4059         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4060         (gst_xml_registry_rebuild):
4061         * gst/registries/gstlibxmlregistry.h:
4062         * tools/gst-compprep.c: (main):
4063         * tools/gst-inspect.c: (print_pad_templates_info):
4064         * tools/gst-xmlinspect.c: (print_element_info):
4065           Use libxml2 for registry parsing, use staticpadtemplates in
4066           elementfactories. Makes gst_init() +/- 10x faster.
4067
4068 2005-04-12  Wim Taymans  <wim@fluendo.com>
4069
4070         * gst/base/Makefile.am:
4071         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4072         (gst_basesink_pad_getcaps), (gst_basesink_init),
4073         (gst_basesink_event), (gst_basesink_change_state):
4074         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4075         (gst_basesrc_init), (gst_basesrc_query),
4076         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4077         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4078         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4079         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4080         (gst_basesrc_stop), (gst_basesrc_activate),
4081         (gst_basesrc_change_state):
4082         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4083         (helper_find_suggest), (gst_type_find_helper):
4084         * gst/base/gsttypefindhelper.h:
4085         * gst/elements/Makefile.am:
4086         * gst/elements/gstelements.c:
4087         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4088         (gst_fakesink_get_times), (gst_fakesink_event),
4089         (gst_fakesink_preroll), (gst_fakesink_render):
4090         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4091         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4092         (gst_fakesrc_get_property), (gst_fakesrc_create),
4093         (gst_fakesrc_start), (gst_fakesrc_stop):
4094         * gst/elements/gstfakesrc.h:
4095         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4096         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4097         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4098         (gst_filesrc_create_read), (gst_filesrc_create),
4099         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4100         (gst_filesrc_start):
4101         * gst/elements/gsttypefindelement.c:
4102         (gst_type_find_element_have_type), (gst_type_find_element_init),
4103         (start_typefinding), (stop_typefinding), (push_buffer_store),
4104         (gst_type_find_element_handle_event),
4105         (gst_type_find_element_chain),
4106         (gst_type_find_element_checkgetrange),
4107         (gst_type_find_element_getrange), (do_typefind),
4108         (gst_type_find_element_activate),
4109         (gst_type_find_element_change_state):
4110         * gst/elements/gsttypefindelement.h:
4111         * gst/gstpipeline.c: (pipeline_bus_handler):
4112         Added typefind helper.
4113         Small preroll fix in the base sink.
4114         Disable typefind code in basesrc.
4115         Crude port of typefindelement.
4116         Fakesrc cleanups.
4117
4118
4119 2005-04-11  Wim Taymans  <wim@fluendo.com>
4120
4121         * check/gst/gstbus.c: (gstbus_suite):
4122         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4123         * check/gstcheck.h:
4124           Fix up the timeout so that the test does not fail.
4125
4126 2005-04-06  Wim Taymans  <wim@fluendo.com>
4127
4128         * gst/base/README:
4129         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4130         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4131         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4132         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4133         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4134         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4135         (gst_basesrc_stop), (gst_basesrc_activate),
4136         (gst_basesrc_change_state), (basesrc_find_peek),
4137         (basesrc_find_suggest), (gst_basesrc_type_find):
4138         * gst/base/gstbasesrc.h:
4139         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4140         (gst_filesrc_class_init), (gst_filesrc_init),
4141         (gst_filesrc_finalize), (gst_filesrc_set_location),
4142         (gst_filesrc_set_property), (gst_filesrc_get_property),
4143         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4144         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4145         (gst_filesrc_create_read), (gst_filesrc_create),
4146         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4147         * gst/elements/gstfilesrc.h:
4148         * gst/gstelement.c: (gst_element_get_state_func),
4149         (gst_element_lost_state), (gst_element_pads_activate):
4150         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4151         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4152         (gst_pad_pull_range):
4153         * gst/gstpad.h:
4154         More work on the generic source base class, implement seeking,
4155         query.
4156         Make filesrc extend the base source class.
4157         Added gst_pad_set_checkgetrange_function to GstPad.
4158
4159 2005-04-06  Andy Wingo  <wingo@pobox.com>
4160
4161         * pkgconfig/gstreamer-base.pc.in:
4162         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4163
4164         * pkgconfig/Makefile.am:
4165         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4166
4167 2005-04-04  Wim Taymans  <wim@fluendo.com>
4168
4169         * gst/base/Makefile.am:
4170         * gst/base/README:
4171         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4172         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4173         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4174         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4175         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4176         (gst_basesrc_base_init), (gst_basesrc_class_init),
4177         (gst_basesrc_init), (gst_basesrc_get_formats),
4178         (gst_basesrc_get_query_types), (gst_basesrc_query),
4179         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4180         (gst_basesrc_set_property), (gst_basesrc_get_property),
4181         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4182         (gst_basesrc_loop), (gst_basesrc_activate),
4183         (gst_basesrc_change_state):
4184         * gst/base/gstbasesrc.h:
4185         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4186         (gst_fakesrc_class_init), (gst_fakesrc_init),
4187         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4188         (gst_fakesrc_get_property), (gst_fakesrc_create):
4189         * gst/elements/gstfakesrc.h:
4190         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4191         (gst_filesrc_open_file), (gst_filesrc_loop),
4192         (gst_filesrc_activate), (filesrc_find_peek),
4193         (gst_filesrc_type_find):
4194         Made base source class, make fakesrc extend it.
4195         Add comments to basesink class.
4196         Some filesrc cleanup.
4197
4198 2005-03-31  David Schleef  <ds@schleef.org>
4199
4200         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4201         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4202         expected to link against libgstreamer.
4203         * gst/base/Makefile.am: link against libgstreamer
4204         * gst/elements/Makefile.am: same
4205
4206 2005-03-31  Andy Wingo  <wingo@pobox.com>
4207
4208         * tests/instantiate/Makefile.am:
4209         * tests/instantiate/caps.c: Add test to test speed of caps copy
4210         and free.
4211
4212         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4213         GMemChunk to be fair.
4214
4215         * gst/gsttrashstack.h: Remove warning about using the fallback
4216         trash stack implementation, it's still faster than malloc.
4217
4218 2005-03-30  Andy Wingo  <wingo@pobox.com>
4219
4220         * tests/complexity.c: Add a copyright.
4221
4222 2005-03-31  Wim Taymans  <wim@fluendo.com>
4223
4224         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4225         (gst_base_transform_class_init), (gst_base_transform_init),
4226         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4227         (gst_base_transform_get_property),
4228         (gst_base_transform_sink_activate),
4229         (gst_base_transform_src_activate),
4230         (gst_base_transform_change_state):
4231         * gst/base/gstbasetransform.h:
4232         * gst/elements/gstidentity.c: (gst_identity_class_init),
4233         (gst_identity_event), (gst_identity_check_perfect),
4234         (gst_identity_transform), (gst_identity_start),
4235         (gst_identity_stop):
4236         Added start/stop methods to transform base class so subclasses 
4237         don't need to deal with state changes even.
4238
4239 2005-03-31  Wim Taymans  <wim@fluendo.com>
4240
4241         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4242         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4243         * gst/gstevent.h:
4244         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4245         (gst_pad_pull_range):
4246         Added rate to the discont event to prepare for variable speed
4247         and reverse playback.
4248
4249 2005-03-29  David Schleef  <ds@schleef.org>
4250
4251         * configure.ac:
4252         * testsuite/trigger/Makefile.am:
4253         * testsuite/trigger/trigger.c: A little example program to show
4254         how trigger-based elements can work.
4255
4256 2005-03-29  Wim Taymans  <wim@fluendo.com>
4257
4258         * gst/base/Makefile.am:
4259         * gst/base/README:
4260         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4261         (gst_basesink_base_init), (gst_basesink_class_init),
4262         (gst_basesink_pad_getcaps), (gst_basesink_init),
4263         (gst_basesink_activate), (gst_basesink_change_state):
4264         * gst/base/gstbasesink.h:
4265         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4266         (gst_base_transform_base_init), (gst_base_transform_finalize),
4267         (gst_base_transform_class_init), (gst_base_transform_init),
4268         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4269         (gst_base_transform_event), (gst_base_transform_getrange),
4270         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4271         (gst_base_transform_set_property),
4272         (gst_base_transform_get_property),
4273         (gst_base_transform_sink_activate),
4274         (gst_base_transform_src_activate),
4275         (gst_base_transform_change_state):
4276         * gst/base/gstbasetransform.h:
4277         * gst/elements/gstidentity.c: (gst_identity_finalize),
4278         (gst_identity_class_init), (gst_identity_init),
4279         (gst_identity_event), (gst_identity_check_perfect),
4280         (gst_identity_transform), (gst_identity_set_property),
4281         (gst_identity_get_property), (gst_identity_change_state):
4282         * gst/elements/gstidentity.h:
4283         * gst/gstelement.c: (gst_element_get_state_func),
4284         (gst_element_lost_state), (gst_element_pads_activate):
4285         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4286         (gst_pad_check_pull_range), (gst_pad_pull_range):
4287         * gst/gstpad.h:
4288         Simplify pad activation.
4289         Added function to check if pull_range can be performed.
4290         Error out when pulling inactive or flushing pads.
4291         Removed const from refcounted types as it does not make sense.
4292         Simplify pad templates in basesink
4293         Added base class for simple 1-to-1 transforms.
4294         Make identity subclass the base transform.
4295
4296 2005-03-29  Andy Wingo  <wingo@pobox.com>
4297
4298         * docs/libs/gstreamer-libs-overrides.txt: 
4299         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4300         really don't understand what's going on, but like whatever. I want
4301         green buildbot!
4302
4303         * docs/gst/Makefile.am:
4304         * docs/libs/Makefile.am: Dist the overrides files.
4305
4306         * check/Makefile.am (clean-local): Remove .libs directories.
4307
4308         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4309         elements to EXTRA_DIST, so po/ files are happy.
4310
4311         * po/POTFILES.in: Er, remove it here.
4312
4313         * po/POTFILES: Remove gstspider.c.
4314
4315         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4316
4317         * docs/libs/gstreamer-libs-docs.sgml: 
4318         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4319         bytestream.
4320
4321         * tests/complexity.c (main): Set the length of the preroll queue
4322         on the sinks to prevent a lockup.
4323
4324         * libs/gst/dataprotocol/Makefile.am: 
4325         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4326         the same as the one in check/gst-libs/gdp.c.
4327
4328         * po/, docs/gst/: Commit automatic changes to docs and po files.
4329
4330         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4331         the versioned libgstbase.
4332
4333         * check/Makefile.am: Depend on an unversioned gst-register, seems
4334         to make autoconf happier.
4335
4336         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4337
4338 2005-03-28  Wim Taymans  <wim@fluendo.com>
4339
4340         * configure.ac:
4341         * docs/design/part-gstelement.txt:
4342         * docs/design/part-negotiation.txt:
4343         * docs/design/part-preroll.txt:
4344         * docs/design/part-scheduling.txt:
4345         * docs/design/part-states.txt:
4346         * gst/Makefile.am:
4347         * gst/base/Makefile.am:
4348         * gst/base/README:
4349         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4350         (gst_basesink_base_init), (gst_basesink_class_init),
4351         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4352         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4353         (gst_basesink_set_pad_functions),
4354         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4355         (gst_basesink_set_property), (gst_basesink_get_property),
4356         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4357         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4358         (gst_basesink_preroll_queue_push),
4359         (gst_basesink_preroll_queue_empty),
4360         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4361         (gst_basesink_event), (gst_basesink_get_times),
4362         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4363         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4364         (gst_basesink_loop), (gst_basesink_activate),
4365         (gst_basesink_change_state):
4366         * gst/base/gstbasesink.h:
4367         * gst/elements/Makefile.am:
4368         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4369         (gst_fakesink_class_init), (gst_fakesink_init),
4370         (gst_fakesink_set_property), (gst_fakesink_get_property),
4371         (gst_fakesink_get_times), (gst_fakesink_event),
4372         (gst_fakesink_preroll), (gst_fakesink_render),
4373         (gst_fakesink_change_state):
4374         * gst/elements/gstfakesink.h:
4375         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4376         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4377         * gst/gstelement.c: (gst_element_add_pad),
4378         (gst_element_get_state_func), (gst_element_abort_state),
4379         (gst_element_commit_state), (gst_element_lost_state),
4380         (gst_element_set_state), (gst_element_pads_activate):
4381         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4382         * gst/gstpipeline.c: (gst_pipeline_send_event),
4383         (gst_pipeline_change_state):
4384         Added state change code.
4385         Added/updated docs.
4386         Added sink base class, make fakesink extend the base class.
4387         Small cleanups in GstPipeline.
4388
4389 2005-03-26  David Schleef  <ds@schleef.org>
4390
4391         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4392         is broken and should be implemented in a different library.
4393         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4394         * gst/gst.h: remove gstcpu.h
4395         * gst/gstcpu.c: remove
4396         * gst/gstcpu.h: remove
4397         * gst/Makefile.am.future: Remove this file.  It's ancient.
4398
4399 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4400
4401         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4402         (gst_bin_send_event):
4403           Add default event/set_manager handlers. The set_manager handler
4404           takes care that the manager is distributed over kids that were
4405           already in the bin before the manager was set. The event handler
4406           is a utility virtual function that sends the event over all sinks,
4407           so that gst_element_send_event (bin, event); has the expected
4408           behaviour.
4409         * gst/gstpad.c: (gst_pad_event_default):
4410           Re-install default event handling for discontinuities, so that
4411           seeking works without requiring hacks in applications or extra
4412           code in sinks.
4413         * gst/gstpipeline.c: (gst_pipeline_class_init),
4414         (gst_pipeline_send_event):
4415           Half hack, half utility: set a pipeline to PAUSED for seek events,
4416           since that is the only way we can guarantee a/v sync. Means that
4417           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4418           and it "just works".
4419
4420 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4421
4422         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4423           Lock/unlock mismatch.
4424
4425 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4426
4427         * docs/faq/gst-uninstalled:
4428           add gst-plugins-base
4429         * docs/gst/Makefile.am:
4430           don't error out until docs are fixed
4431         * docs/gst/gstreamer.types:
4432           remove thread
4433
4434 2005-03-22  Wim Taymans  <wim@fluendo.com>
4435
4436         * check/Makefile.am:
4437         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4438         * gst/gststructure.c: (gst_structure_set_valist),
4439         (gst_structure_copy_conditional):
4440         Activated more tests.
4441         Added message test.
4442         Added G_TYPE_POINTER to GstStructure.
4443         
4444
4445 2005-03-22  Wim Taymans  <wim@fluendo.com>
4446
4447         * docs/design/part-TODO.txt:
4448         * docs/design/part-events.txt:
4449         * docs/design/part-gstbin.txt:
4450         * docs/design/part-gstbus.txt:
4451         * docs/design/part-gstpipeline.txt:
4452         * docs/design/part-messages.txt:
4453         * gst/gstbus.c:
4454         * gst/gstmessage.c:
4455         Docs updates
4456
4457 2005-03-21  Wim Taymans  <wim@fluendo.com>
4458
4459         * gst/gstbus.c: (gst_bus_post):
4460         Fix copy-and-paste error.
4461
4462 2005-03-21  Wim Taymans  <wim@fluendo.com>
4463
4464         * check/Makefile.am:
4465         * gst/Makefile.am:
4466         * gst/elements/Makefile.am:
4467         * gst/elements/gstelements.c:
4468         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4469         (gst_fakesink_event), (gst_fakesink_chain):
4470         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4471         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4472         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4473         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4474         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4475         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4476         (gst_fakesrc_loop), (gst_fakesrc_activate),
4477         (gst_fakesrc_change_state):
4478         * gst/elements/gstfakesrc.h:
4479         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4480         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4481         (gst_filesrc_open_file), (gst_filesrc_loop),
4482         (gst_filesrc_activate), (gst_filesrc_change_state),
4483         (filesrc_find_peek), (filesrc_find_suggest),
4484         (gst_filesrc_type_find):
4485         * gst/elements/gstidentity.c: (gst_identity_finalize),
4486         (gst_identity_class_init), (gst_identity_init),
4487         (gst_identity_proxy_getcaps), (identity_queue_push),
4488         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4489         (gst_identity_getrange), (gst_identity_chain),
4490         (gst_identity_sink_loop), (gst_identity_src_loop),
4491         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4492         (gst_identity_set_property), (gst_identity_get_property),
4493         (gst_identity_change_state):
4494         * gst/elements/gstidentity.h:
4495         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4496         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4497         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4498         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4499         (gst_tee_sink_activate):
4500         * gst/elements/gsttee.h:
4501         * gst/gst.c: (gst_register_core_elements), (init_post):
4502         * gst/gst.h:
4503         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4504         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4505         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4506         (gst_bin_change_state):
4507         * gst/gstbin.h:
4508         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4509         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4510         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4511         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4512         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4513         (bus_watch_callback), (bus_watch_destroy),
4514         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4515         (poll_timeout), (gst_bus_poll):
4516         * gst/gstbus.h:
4517         * gst/gstcaps.h:
4518         * gst/gstdata.h:
4519         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4520         (gst_element_post_message), (gst_element_message_full),
4521         (gst_element_get_state_func), (gst_element_get_state),
4522         (gst_element_abort_state), (gst_element_commit_state),
4523         (gst_element_lost_state), (gst_element_set_state),
4524         (gst_element_pads_activate), (gst_element_change_state),
4525         (gst_element_dispose), (gst_element_set_manager_func),
4526         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4527         (gst_element_set_manager), (gst_element_get_manager),
4528         (gst_element_set_bus), (gst_element_get_bus),
4529         (gst_element_set_scheduler), (gst_element_get_scheduler):
4530         * gst/gstelement.h:
4531         * gst/gstevent.c: (gst_event_new_segment_seek),
4532         (gst_event_new_flush):
4533         * gst/gstevent.h:
4534         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4535         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4536         (gst_message_new_eos), (gst_message_new_error),
4537         (gst_message_new_warning), (gst_message_new_tag),
4538         (gst_message_new_state_changed), (gst_message_new_application),
4539         (gst_message_get_structure), (gst_message_parse_tag),
4540         (gst_message_parse_state_changed), (gst_message_parse_error),
4541         (gst_message_parse_warning):
4542         * gst/gstmessage.h:
4543         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4544         (gst_real_pad_set_property), (gst_pad_set_active),
4545         (gst_pad_is_active), (gst_pad_set_blocked_async),
4546         (gst_pad_set_blocked), (gst_pad_is_blocked),
4547         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4548         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4549         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4550         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4551         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4552         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4553         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4554         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4555         (gst_pad_set_caps), (gst_pad_configure_sink),
4556         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4557         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4558         (gst_real_pad_dispose), (gst_real_pad_finalize),
4559         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4560         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4561         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4562         * gst/gstpad.h:
4563         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4564         (pipeline_bus_handler), (gst_pipeline_change_state),
4565         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4566         * gst/gstpipeline.h:
4567         * gst/gstprobe.h:
4568         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4569         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4570         (gst_queue_link_src), (gst_queue_bufferalloc),
4571         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4572         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4573         (gst_queue_loop), (gst_queue_handle_src_event),
4574         (gst_queue_handle_src_query), (gst_queue_src_activate),
4575         (gst_queue_change_state):
4576         * gst/gstqueue.h:
4577         * gst/gstscheduler.c: (gst_scheduler_init),
4578         (gst_scheduler_dispose), (gst_scheduler_create_task),
4579         (gst_scheduler_factory_create):
4580         * gst/gstscheduler.h:
4581         * gst/gststructure.c: (gst_structure_get_type),
4582         (gst_structure_copy_conditional):
4583         * gst/gststructure.h:
4584         * gst/gsttaginterface.h:
4585         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4586         (gst_task_init), (gst_task_dispose), (gst_task_create),
4587         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4588         (gst_task_pause):
4589         * gst/gsttask.h:
4590         * gst/gstthread.c:
4591         * gst/gstthread.h:
4592         * gst/gsttypes.h:
4593         * gst/schedulers/Makefile.am:
4594         * gst/schedulers/cothreads_compat.h:
4595         * gst/schedulers/entryscheduler.c:
4596         * gst/schedulers/faircothreads.c:
4597         * gst/schedulers/faircothreads.h:
4598         * gst/schedulers/fairscheduler.c:
4599         * gst/schedulers/gstbasicscheduler.c:
4600         * gst/schedulers/gstoptimalscheduler.c:
4601         * gst/schedulers/gthread-cothreads.h:
4602         * gst/schedulers/threadscheduler.c:
4603         (gst_thread_scheduler_task_get_type),
4604         (gst_thread_scheduler_task_class_init),
4605         (gst_thread_scheduler_task_init),
4606         (gst_thread_scheduler_task_start),
4607         (gst_thread_scheduler_task_stop),
4608         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4609         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4610         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4611         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4612         (plugin_init):
4613         * libs/gst/Makefile.am:
4614         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4615         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4616         (gst_file_pad_parent_set):
4617         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4618         (gst_dp_event_from_packet):
4619         * tests/complexity.c: (main):
4620         * tests/mass_elements.c: (main):
4621         * testsuite/states/locked.c: (message_received), (main):
4622         * testsuite/states/parent.c: (main):
4623         * tools/gst-inspect.c: (print_element_flag_info),
4624         (print_implementation_info), (print_pad_info):
4625         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4626         (main):
4627         * tools/gst-md5sum.c: (event_loop), (main):
4628         * tools/gst-typefind.c: (main):
4629         * tools/gst-xmlinspect.c: (print_element_info):
4630         Next big merge.
4631         Added GstBus for mainloop integration.
4632         Added GstMessage for sending notifications on the bus.
4633         Added GstTask as an abstraction for pipeline entry points.
4634         Removed GstThread.
4635         Removed Schedulers.
4636         Simplified GstQueue for multithreaded core.
4637         Made _link threadsafe, removed old capsnego.
4638         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4639         Added pad blocking functions.
4640         Reworked scheduling functions in GstPad to prepare for
4641         scheduling updates soon.
4642         Moved events out of data stream.
4643         Simplified GstEvent types.
4644         Added return values to push/pull.
4645         Removed clocking from GstElement.
4646         Added prototypes for state change function for next merge.
4647         Removed iterate from bins and state change management.
4648         Fixed some elements, disabled others for now.
4649         Fixed -inspect and -launch.
4650         Added check for GstBus.
4651
4652 2005-03-10  Wim Taymans  <wim@fluendo.com>
4653
4654         * docs/design/part-MT-refcounting.txt:
4655         * docs/design/part-clocks.txt:
4656         * docs/design/part-gstelement.txt:
4657         * docs/design/part-gstobject.txt:
4658         * docs/design/part-standards.txt:
4659         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4660         (gst_bin_remove_func), (gst_bin_remove):
4661         * gst/gstbin.h:
4662         * gst/gstbuffer.c:
4663         * gst/gstcaps.h:
4664         * testsuite/clock/clock1.c: (main):
4665         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4666         (main):
4667         * testsuite/dlopen/loadgst.c: (do_test):
4668         * testsuite/refcounting/bin.c: (add_remove_test1),
4669         (add_remove_test2), (main):
4670         * testsuite/refcounting/element.c: (main):
4671         * testsuite/refcounting/element_pad.c: (main):
4672         * testsuite/refcounting/pad.c: (main):
4673         * tools/gst-launch.c: (sigint_handler_sighandler):
4674         * tools/gst-typefind.c: (main):
4675         Doc updates.
4676         Added doc about clock.
4677         removed gst_bin_iterate_recurse_up(), marked methods
4678         for removal.
4679         Fix more testsuites.
4680
4681 2005-03-09  Wim Taymans  <wim@fluendo.com>
4682
4683         * gst/gstpad.c: (gst_pad_get_direction),
4684         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4685         (gst_pad_collect_valist):
4686         * testsuite/bins/interface.c: (main):
4687         * testsuite/caps/audioscale.c: (test_caps):
4688         * testsuite/caps/caps.c: (test1), (test2), (test3):
4689         * testsuite/caps/deserialize.c: (main):
4690         * testsuite/caps/enumcaps.c: (main):
4691         * testsuite/caps/filtercaps.c: (main):
4692         * testsuite/caps/intersect2.c: (main):
4693         * testsuite/caps/random.c: (main):
4694         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4695         * testsuite/caps/sets.c: (check_caps):
4696         * testsuite/caps/simplify.c: (check_caps), (main):
4697         * testsuite/caps/subtract.c: (check_caps):
4698         Fix _pad_get_direction wrt ghostpads.
4699         Fix caps testsuite.
4700
4701 2005-03-09  Wim Taymans  <wim@fluendo.com>
4702
4703         * check/Makefile.am:
4704         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4705         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4706         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4707         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4708         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4709         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4710         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4711         (bin_element_is_sink), (gst_bin_iterate_sinks),
4712         (gst_bin_iterate_all_by_interface):
4713         * gst/gstbin.h:
4714         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4715         (gst_element_change_state), (gst_element_dispose),
4716         (gst_element_finalize), (gst_element_set_loop_function):
4717         * gst/gstelement.h:
4718         * gst/gstiterator.c: (find_custom_fold_func):
4719         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4720         (gst_pad_collectv), (gst_pad_collect_valist),
4721         (gst_pad_template_new):
4722         * gst/gstpipeline.c: (gst_pipeline_class_init),
4723         (gst_pipeline_dispose), (gst_pipeline_set_property),
4724         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4725         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4726         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4727         * gst/gstutils.h:
4728         * gst/schedulers/entryscheduler.c:
4729         * gst/schedulers/gstbasicscheduler.c:
4730         (gst_basic_scheduler_cothreaded_chain),
4731         (gst_basic_scheduler_chain_add_element):
4732         * testsuite/bins/interface.c: (main):
4733         Added GstBin test.
4734         Added GstSystemClock test.
4735         Implemented clock distribution code in GstBin.
4736         Implemented iterate sinks method for future use.
4737         Rearranged gstelement.h
4738         Fix GstIterator comparison bug.
4739         Moved some code to GstPipeline, mostly clocking related.
4740
4741 2005-03-09  Wim Taymans  <wim@fluendo.com>
4742
4743         * configure.ac:
4744         * gst/gst_private.h:
4745         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4746         (gst_bin_remove_func), (gst_bin_remove),
4747         (gst_bin_get_by_name_recurse_up):
4748         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4749         (gst_clock_id_compare_func), (gst_clock_id_wait),
4750         (gst_clock_id_wait_async), (gst_clock_init),
4751         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4752         * gst/gstelement.h:
4753         * gst/gstinfo.c: (_gst_debug_init):
4754         * gst/gstobject.h:
4755         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4756         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4757         * gst/gstpad.h:
4758         Bump version number, we're now 0.9.0
4759         Add future debugging category.
4760         Fix NULL _unref() in _get_by_name_recurse_up
4761         Rearrange gstpad.h.
4762         Update some docs.
4763
4764 2005-03-08  Wim Taymans  <wim@fluendo.com>
4765
4766         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4767         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4768         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4769         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4770         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4771         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4772         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4773         * gst/elements/gstidentity.c: (gst_identity_class_init):
4774         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4775         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4776         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4777         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4778         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4779         (gst_tee_link):
4780         * gst/gstelement.c: (gst_element_class_init),
4781         (gst_element_base_class_init), (gst_element_init),
4782         (gst_element_get_random_pad), (gst_element_wait_state_change),
4783         (gst_element_change_state), (gst_element_dispose),
4784         (gst_element_finalize), (gst_element_set_loop_function):
4785         * gst/gstelement.h:
4786         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4787         * gst/gstthread.c: (gst_thread_class_init),
4788         (gst_thread_release_children_locks), (gst_thread_change_state):
4789         * gst/schedulers/gstbasicscheduler.c:
4790         (gst_basic_scheduler_loopfunc_wrapper),
4791         (gst_basic_scheduler_chain_wrapper),
4792         (gst_basic_scheduler_src_wrapper),
4793         (gst_basic_scheduler_remove_element):
4794         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4795         Remove threadsafe properties. Fix elements because GObject
4796         complains when installing a property before declaring a
4797         set/get_property handler.
4798         Rearrange gstelement.h file, use STATE macros for state locks.
4799         Free mutexes in the finalize method instead of dispose.
4800
4801 2005-03-08  Wim Taymans  <wim@fluendo.com>
4802
4803         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4804         * gst/gstthread.c: (gst_thread_release_children_locks):
4805         Added parentage check.
4806         Fix build og GstThread again.
4807
4808 2005-03-08  Wim Taymans  <wim@fluendo.com>
4809
4810         * docs/design/part-MT-refcounting.txt:
4811         * docs/design/part-conventions.txt:
4812         * docs/design/part-gstobject.txt:
4813         * docs/design/part-relations.txt:
4814         * docs/design/part-standards.txt:
4815         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4816         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4817         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4818         (gst_bin_iterate_all_by_interface):
4819         * gst/gstbuffer.h:
4820         * gst/gstclock.h:
4821         * gst/gstelement.c: (gst_element_class_init),
4822         (gst_element_change_state), (gst_element_set_loop_function):
4823         * gst/gstelement.h:
4824         * gst/gstiterator.c:
4825         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4826         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4827         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4828         (gst_object_set_parent), (gst_object_unparent),
4829         (gst_object_check_uniqueness):
4830         * gst/gstobject.h:
4831         Docs updates, clean up some headers.
4832
4833 2005-03-07  Wim Taymans  <wim@fluendo.com>
4834
4835         * check/.cvsignore:
4836         * check/Makefile.am:
4837         * check/gst-libs/.cvsignore:
4838         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4839         * check/gst/.cvsignore:
4840         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4841         (START_TEST), (gstbus_suite), (main):
4842         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4843         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4844         (gst_data_suite), (main):
4845         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4846         (add_fold_func), (gstiterator_suite), (main):
4847         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4848         (thread_name_object), (thread_name_object_default),
4849         (gst_object_name_compare), (gst_object_suite), (main):
4850         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4851         (gst_pad_suite), (main):
4852         * check/gstcheck.c: (gst_check_log_message_func),
4853         (gst_check_log_critical_func), (gst_check_init):
4854         * check/gstcheck.h:
4855         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4856         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4857         Added checks.
4858
4859 2005-03-07  Wim Taymans  <wim@fluendo.com>
4860
4861         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4862         (gst_list_iterator_next), (gst_list_iterator_resync),
4863         (gst_list_iterator_free), (gst_iterator_new_list),
4864         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4865         (gst_iterator_free), (gst_iterator_push), (filter_next),
4866         (filter_resync), (filter_uninit), (filter_free),
4867         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4868         (gst_iterator_foreach), (find_custom_fold_func),
4869         (gst_iterator_find_custom):
4870         * gst/gstiterator.h:
4871         Added missing files.
4872
4873 2005-03-07  Wim Taymans  <wim@fluendo.com>
4874
4875         * Makefile.am:
4876         * configure.ac:
4877         * docs/design/part-MT-refcounting.txt:
4878         * docs/design/part-conventions.txt:
4879         * docs/design/part-gstobject.txt:
4880         * docs/design/part-relations.txt:
4881         * examples/mixer/mixer.c: (main):
4882         * examples/thread/thread.c: (eos), (main):
4883         * gst/Makefile.am:
4884         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4885         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4886         (gst_spider_plug_from_srcpad):
4887         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4888         (gst_spider_identity_change_state),
4889         (gst_spider_identity_sink_loop_type_finding):
4890         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4891         * gst/elements/gstidentity.c: (gst_identity_init):
4892         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4893         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4894         * gst/elements/gsttypefindelement.c: (free_entry):
4895         * gst/gst.c:
4896         * gst/gst.h:
4897         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4898         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4899         (gst_bin_set_index), (gst_bin_set_element_sched),
4900         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4901         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4902         (gst_bin_iterate_elements), (iterate_child_recurse),
4903         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4904         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4905         (compare_interface), (gst_bin_get_by_interface),
4906         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4907         * gst/gstbin.h:
4908         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4909         (gst_buffer_default_free), (gst_buffer_default_copy),
4910         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4911         (gst_buffer_create_sub):
4912         * gst/gstbuffer.h:
4913         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4914         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4915         (gst_caps_unref), (gst_static_caps_get),
4916         (gst_caps_remove_and_get_structure), (gst_caps_append),
4917         (gst_caps_append_structure), (gst_caps_remove_structure),
4918         (gst_caps_copy_nth), (gst_caps_set_simple),
4919         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4920         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4921         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4922         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4923         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4924         (gst_caps_structure_figure_out_union),
4925         (gst_caps_switch_structures), (gst_caps_do_simplify),
4926         (gst_caps_replace), (gst_caps_from_string),
4927         (gst_caps_copy_conditional):
4928         * gst/gstcaps.h:
4929         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4930         (_gst_clock_id_free), (gst_clock_id_unref),
4931         (gst_clock_id_compare_func), (gst_clock_id_wait),
4932         (gst_clock_id_wait_async), (gst_clock_class_init),
4933         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4934         (gst_clock_get_time), (gst_clock_set_time_adjust),
4935         (gst_clock_set_property), (gst_clock_get_property):
4936         * gst/gstclock.h:
4937         * gst/gstcompat.h:
4938         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4939         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4940         * gst/gstdata.h:
4941         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4942         (gst_element_requires_clock), (gst_element_provides_clock),
4943         (gst_element_set_clock), (gst_element_clock_wait),
4944         (gst_element_wait), (gst_element_set_time_delay),
4945         (gst_element_is_indexable), (gst_element_add_pad),
4946         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4947         (pad_compare_name), (gst_element_get_static_pad),
4948         (gst_element_request_pad), (gst_element_get_request_pad),
4949         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4950         (gst_element_class_get_pad_template_list),
4951         (gst_element_class_get_pad_template), (gst_element_error_func),
4952         (gst_element_get_random_pad), (gst_element_get_event_masks),
4953         (gst_element_send_event), (gst_element_seek),
4954         (gst_element_get_query_types), (gst_element_query),
4955         (gst_element_get_formats), (gst_element_convert),
4956         (gst_element_is_locked_state), (gst_element_set_locked_state),
4957         (gst_element_sync_state_with_parent), (gst_element_change_state),
4958         (gst_element_finalize), (gst_element_yield),
4959         (gst_element_interrupt), (gst_element_set_scheduler),
4960         (gst_element_get_scheduler), (gst_element_set_loop_function):
4961         * gst/gstelement.h:
4962         * gst/gstevent.h:
4963         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4964         (gst_format_get_by_nick), (gst_format_get_details),
4965         (gst_format_iterate_definitions):
4966         * gst/gstformat.h:
4967         * gst/gstindex.c: (gst_index_gtype_resolver):
4968         * gst/gstinfo.c:
4969         * gst/gstinfo.h:
4970         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4971         (gst_mem_chunk_free):
4972         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4973         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4974         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4975         (gst_object_dispatch_properties_changed),
4976         (gst_object_set_name_default), (gst_object_set_name),
4977         (gst_object_get_name), (gst_object_set_name_prefix),
4978         (gst_object_get_name_prefix), (gst_object_set_parent),
4979         (gst_object_get_parent), (gst_object_unparent),
4980         (gst_object_check_uniqueness), (gst_object_save_thyself),
4981         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4982         (gst_object_set_property), (gst_object_get_property),
4983         (gst_object_get_path_string):
4984         * gst/gstobject.h:
4985         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4986         (gst_real_pad_init), (gst_real_pad_get_property),
4987         (gst_pad_custom_new), (gst_pad_get_direction),
4988         (gst_pad_set_active), (gst_pad_is_active),
4989         (gst_pad_set_event_function), (gst_pad_is_linked),
4990         (gst_pad_link_free), (gst_pad_link_intersect),
4991         (gst_pad_link_fixate), (gst_pad_set_caps),
4992         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4993         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4994         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4995         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4996         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4997         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4998         (gst_pad_realize), (gst_pad_get_allowed_caps),
4999         (gst_real_pad_dispose), (gst_real_pad_finalize),
5000         (gst_pad_collectv), (gst_pad_collect_valist),
5001         (gst_pad_template_dispose), (gst_pad_template_new),
5002         (gst_pad_get_internal_links):
5003         * gst/gstpad.h:
5004         * gst/gstpipeline.c: (gst_pipeline_dispose),
5005         (gst_pipeline_change_state):
5006         * gst/gstpipeline.h:
5007         * gst/gstplugin.c:
5008         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
5009         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
5010         * gst/gstpluginfeature.h:
5011         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5012         * gst/gstquery.c: (_gst_query_type_initialize),
5013         (gst_query_type_register), (gst_query_type_get_by_nick),
5014         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
5015         * gst/gstquery.h:
5016         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
5017         * gst/gstscheduler.c: (gst_scheduler_add_element),
5018         (gst_scheduler_factory_create):
5019         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5020         (gst_structure_free), (gst_structure_set_name),
5021         (gst_structure_id_set_value), (gst_structure_set_value),
5022         (gst_structure_set_valist), (gst_structure_remove_field),
5023         (gst_structure_remove_fields),
5024         (gst_structure_remove_fields_valist),
5025         (gst_structure_remove_all_fields), (gst_structure_foreach),
5026         (gst_structure_map_in_place),
5027         (gst_caps_structure_fixate_field_nearest_int),
5028         (gst_caps_structure_fixate_field_nearest_double):
5029         * gst/gststructure.h:
5030         * gst/gstsystemclock.c: (gst_system_clock_class_init),
5031         (gst_system_clock_init), (gst_system_clock_dispose),
5032         (gst_system_clock_async_thread),
5033         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
5034         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5035         * gst/gstsystemclock.h:
5036         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5037         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5038         * gst/gsttaginterface.c:
5039         * gst/gstthread.c: (gst_thread_dispose),
5040         (gst_thread_release_children_locks), (gst_thread_change_state),
5041         (gst_thread_main_loop):
5042         * gst/gsttrashstack.h:
5043         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5044         * gst/gsttypes.h:
5045         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5046         (gst_element_request_pad), (gst_element_get_pad_from_template),
5047         (gst_element_request_compatible_pad),
5048         (gst_element_get_compatible_pad_filtered),
5049         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5050         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5051         (gst_element_link_many), (gst_element_link),
5052         (gst_element_link_pads), (gst_element_unlink_pads),
5053         (gst_element_unlink_many), (gst_element_unlink),
5054         (gst_pad_can_link_filtered), (gst_pad_can_link),
5055         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5056         (gst_object_default_error), (gst_bin_add_many),
5057         (gst_bin_remove_many), (gst_element_populate_std_props),
5058         (gst_element_class_install_std_props), (gst_buffer_merge),
5059         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5060         (link_fold_func), (gst_pad_proxy_setcaps):
5061         * gst/gstutils.h:
5062         * gst/gstvalue.c: (gst_value_deserialize_string):
5063         * gst/parse/grammar.y:
5064         * gst/schedulers/gstbasicscheduler.c:
5065         (gst_basic_scheduler_cothreaded_chain),
5066         (gst_basic_scheduler_chain_recursive_add),
5067         (gst_basic_scheduler_pad_link):
5068         * gst/schedulers/gstoptimalscheduler.c:
5069         (get_group_schedule_function),
5070         (gst_opt_scheduler_state_transition),
5071         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5072         * libs/gst/bytestream/bytestream.c:
5073         * libs/gst/dataprotocol/dataprotocol.c:
5074         (gst_dp_header_from_buffer):
5075         * po/nb.po:
5076         * po/ru.po:
5077         * tests/threadstate/threadstate2.c: (eos):
5078         * tools/gst-compprep.c: (main):
5079         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5080         (print_pad_info), (print_children_info):
5081         * tools/gst-launch.c: (idle_func), (main):
5082         * tools/gst-md5sum.c: (idle_func), (main):
5083         * tools/gst-xmlinspect.c: (print_element_info):
5084         First THREADED backport attempt, focusing on adding locks and
5085         making sure the API is threadsafe. Needs more work. More docs
5086         follow this week.
5087
5088 2005-02-24  Andy Wingo  <wingo@pobox.com>
5089
5090         * tests/bench-complexity.scm:
5091         * tests/complexity.gnuplot: New files, good for running complexity
5092         benchmarks.
5093
5094         * tests/Makefile.am:
5095         * tests/complexity.c: New test, sets up N elements, at each level
5096         teeing into M streams per element. Eeeenteresting.
5097
5098         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5099         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5100         running bench-mass_elements.scm.
5101
5102         * tests/bench-mass_elements.scm: New script, runs mass_elements
5103         for various numbers of identities, outputting the results to a
5104         file. Requires guile 1.6. Just for testing.
5105
5106 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5107
5108         * gst/schedulers/fairscheduler.c:
5109           compile with debug disabled
5110
5111 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5112
5113         * configure.ac:
5114           hunting season on 0.9 is now OPEN
5115
5116 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5117
5118         * docs/libs/tmpl/gstcontrol.sgml:
5119         * docs/libs/tmpl/gstdparam.sgml:
5120         * docs/libs/tmpl/gstdplinint.sgml:
5121         * docs/libs/tmpl/gstdpman.sgml:
5122         * docs/libs/tmpl/gstdpsmooth.sgml:
5123         * docs/libs/tmpl/gstunitconvert.sgml:
5124           more docs for the state of dparams
5125
5126 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5127
5128         * gst/gstelementfactory.c: (gst_element_factory_create):
5129         * gst/gstobject.c: (gst_object_init),
5130         (gst_object_set_name_default), (gst_object_set_name):
5131           name objects by default, not in gst_element_factory_create. Allows
5132           using elements created with g_object_new. (fixes #167283)
5133
5134 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5135
5136         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5137           make the time that debugging functions print relative to when
5138           gst_init was called
5139
5140 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5141
5142         * gst/gsttaginterface.c:
5143           Fix inline docs: tag setter vararg functions are NULL-terminated,
5144           GST_TAG_INVALID doesn't exist any more.
5145
5146 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5147
5148         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5149         Allocate the 1 byte more memory that was forgotten!!!!!
5150         fixes memory corruption on 64bit platforms
5151
5152 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5153
5154         * docs/pwg/building-pads.xml:
5155         * docs/pwg/intro-basics.xml:
5156           fixed a few typos, relabeled introductionary list of types
5157         * docs/random/ensonic/dparams.txt:
5158           more notes abut dparam changes
5159         * libs/gst/control/dparam.c: (gst_dparam_attach):
5160         * libs/gst/control/dparammanager.c:
5161         * libs/gst/control/dparammanager.h:
5162           - many comments and notes on dparam implementation
5163           - new dparams are were not initialized to the default value
5164             from param spec
5165
5166 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5167
5168         submitted by: Peter Astakhov
5169
5170         * po/LINGUAS:
5171         * po/ru.po:
5172           adding Russian translation
5173
5174 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5175
5176         * configure.ac:
5177         * docs/gst/Makefile.am:
5178         * docs/libs/Makefile.am:
5179           make sure popt is added to gtk-doc flags.  Fixes #147782.
5180
5181 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5182
5183         * docs/faq/using.xml:
5184           Fix typo in FAQ (artssink => artsdsink)
5185
5186 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5187
5188         * tools/gst-launch.1.in:
5189           Fix typo (#166699).
5190
5191 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5192
5193         * docs/faq/using.xml:
5194           Add -v argument to fakesrc/fakesink gst-launch line,
5195           so that the promised output will actually show up.
5196
5197 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5198
5199         * gst/gstthread.c: (gst_thread_change_state):
5200           Implement state-change error handling (#166073).
5201
5202 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5203
5204         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5205           Release interrupt after handling (#166250).
5206
5207 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5208
5209         * configure.ac:
5210           back to HEAD
5211
5212 === release 0.8.9 ===
5213
5214 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5215
5216         * NEWS:
5217         * RELEASE:
5218         * configure.ac:
5219           releasing 0.8.9, "Like Eating Glass"
5220
5221 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5222
5223         submitted by: Clytie Siddall
5224
5225         * po/vi.po: Added Vietnamese translation
5226
5227 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5228
5229         patch by: Tim Philipp-Müller
5230
5231         * configure.ac:
5232         * gst/gstpad.c:
5233           unref data when probe function returns FALSE.  Fixes #166362
5234
5235 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5236
5237         * gst/gst.c: (gst_init_get_popt_table):
5238           Fix typo (#166269).
5239
5240 2005-02-04  Andy Wingo  <wingo@pobox.com>
5241
5242         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5243         the debugging on whether the caps are compatible.
5244
5245 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5246
5247         * docs/manual/basics-elements.xml:
5248           Fix two typos.
5249
5250 2005-02-02  Wim Taymans  <wim@fluendo.com>
5251
5252         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5253         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5254         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5255         Remove some FIXMEs after analysing and commenting why they
5256         are not issues.
5257
5258 2005-02-02  Wim Taymans  <wim@fluendo.com>
5259
5260         * gst/schedulers/gstoptimalscheduler.c:
5261         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5262         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5263         (get_invalid_call), (chain_invalid_call),
5264         (get_group_schedule_function), (loop_group_schedule_function),
5265         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5266         (gst_opt_scheduler_state_transition),
5267         (gst_opt_scheduler_add_element),
5268         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5269         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5270         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5271         (gst_opt_scheduler_show):
5272         Added lock to protect scheduler data structures.
5273
5274 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5275
5276         * testsuite/threads/threadi.c: (cb_data):
5277           Fix buglet in test.
5278
5279 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5280
5281         * testsuite/threads/Makefile.am:
5282         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5283           On Wim's request, split the test in three separately-compiled
5284           tests that each test a very specific bug. Two of them still fail,
5285           will create bugs for those. threadi.c indicates why they fail.
5286
5287 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5288
5289         * gst/schedulers/gstoptimalscheduler.c:
5290         (get_group_schedule_function):
5291           Try to work with the threading mess that queue_link is.
5292
5293 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5294
5295         * gst/gstbin.c: (gst_bin_remove_func):
5296           Explicitely make an element release locks in a group when being
5297           remove from a bin.
5298         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5299           If there's no scheduler, always return immediately (similar to
5300           gst_element_interrupt).
5301
5302 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5303
5304         * gst/gstbin.c: (gst_bin_child_state_change_func):
5305           Remove a piece of code that could never be reached.
5306         * docs/gst/gstreamer-sections.txt:
5307         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5308         (gst_pad_call_get_function):
5309         * gst/gstpad.h:
5310         * testsuite/pad/Makefile.am:
5311           Fix #150546, enable tests.
5312
5313 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5314
5315         * docs/pwg/advanced-types.xml:
5316           Fix description for buffer-frames=0.
5317         * docs/gst/tmpl/gstbin.sgml:
5318         * gst/gstbin.c: (gst_bin_child_state_change_func),
5319         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5320         * gst/gstbin.h:
5321         * testsuite/threads/Makefile.am:
5322         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5323         (cb_state), (cb_play), (main):
5324           Fix non-recursive state changes to *really* change the state
5325           of the object, and not just call parent_class->state_change.
5326           Fix a lot of lockups caused by this. Fixes #132775. Add test
5327           for the problem. Also enable test to show #142588 (fixed).
5328         * gst/gstthread.c: (gst_thread_change_state),
5329         (gst_thread_child_state_change):
5330           Don't exit the thread if we go to NULL and are inside thread
5331           context. Instead, return control to the main thread context
5332           and exit from there.
5333         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5334           Don't unset virtual functions, since those may still be used.
5335           That's not necessarily correct, but suffices for now.
5336         * configure.ac:
5337         * testsuite/Makefile.am:
5338         * testsuite/pad/Makefile.am:
5339         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5340         (gst_test_sink_base_init), (gst_test_sink_chain),
5341         (gst_test_sink_init), (main):
5342         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5343         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5344         (main):
5345         * testsuite/pad/link.c: (gst_test_element_class_init),
5346         (gst_test_element_base_init), (gst_test_src_get),
5347         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5348         (gst_test_filter_loop), (gst_test_filter_init),
5349         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5350         (cb_error), (main):
5351           Add tests to show #150546. Pass, but should fail (currently
5352           disabled from the testsuite).
5353         * gst/gstscheduler.c: (gst_scheduler_dispose):
5354           Dereference child schedulers on dispose (#94464).
5355         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5356           Fix typo.
5357         * testsuite/threads/thread.c: (main):
5358           Add more debug.
5359
5360 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5361
5362         * gst/gstpad.c: (gst_pad_push):
5363           Oops, revert previous commit, broke testsuite...
5364
5365 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5366
5367         * gst/gstpad.c: (gst_pad_push):
5368           Add check that the pad on which the push is performed is not a
5369           get-based pad (#150546).
5370
5371 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5372
5373         * gst/elements/gsttypefindelement.c:
5374         (gst_type_find_element_handle_event):
5375           Fix buffer pushing if stream EOSes during typefinding.
5376
5377 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5378
5379         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5380
5381         * gst/gstvalue.c: (gst_string_wrap):
5382           Allow NULL-strings as argument (#165365).
5383
5384 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5385
5386         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5387
5388         * gst/schedulers/faircothreads.c:
5389         (gst_fair_scheduler_cothread_queue_show):
5390           Fix build without debug enabled.
5391
5392 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5393
5394         * docs/gst/gstreamer-sections.txt:
5395         * docs/libs/gstreamer-libs-docs.sgml:
5396         * docs/libs/gstreamer-libs-sections.txt:
5397         * docs/libs/tmpl/gstcontrol.sgml:
5398         * docs/libs/tmpl/gstdparam.sgml:
5399         * docs/libs/tmpl/gstdplinint.sgml:
5400         * docs/libs/tmpl/gstdpman.sgml:
5401         * docs/libs/tmpl/gstdpsmooth.sgml:
5402         * docs/libs/tmpl/gstputbits.sgml:
5403         * docs/libs/tmpl/gstunitconvert.sgml:
5404         * libs/gst/control/dparam.c:
5405         * libs/gst/control/dparam.h:
5406         * libs/gst/control/dparammanager.c:
5407         (gst_dpman_add_required_dparam_callback),
5408         (gst_dpman_add_required_dparam_direct),
5409         (gst_dpman_add_required_dparam_array),
5410         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5411         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5412         (gst_dpman_get_manager)
5413           restructured DParam docs
5414
5415 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5416
5417         * gst-element-check.m4:
5418           Only check for gst-inspect if we haven't already
5419           found it in previous element check runs
5420
5421 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5422
5423         * docs/gst/Makefile.am:
5424         * docs/libs/Makefile.am:
5425           fixed install rules to treat style.css as optional
5426
5427 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5428
5429         * docs/gst/Makefile.am:
5430         * docs/libs/Makefile.am:
5431           install style.css along with docs
5432         * docs/gst/tmpl/gstbin.sgml:
5433         * docs/gst/tmpl/gstclock.sgml:
5434         * docs/gst/tmpl/gstdata.sgml:
5435         * docs/gst/tmpl/gstelement.sgml:
5436         * gst/gstbin.h:
5437         * gst/gstelement.c: (gst_element_class_init):
5438         * gst/gstelement.h:
5439           fixing incomplete docs
5440
5441 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5442
5443         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5444           Don't unref seek event twice when fflush() fails
5445           
5446 2005-01-22  David Schleef  <ds@schleef.org>
5447
5448         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5449
5450 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5451
5452         * docs/gst/Makefile.am:
5453         * docs/libs/Makefile.am:
5454           added params for deprecation guards
5455         * gst/gst.c:
5456         * gst/gst.h:
5457         * gst/gsterror.c: (_gst_resource_errors_init),
5458         (_gst_stream_errors_init):
5459         * gst/gsterror.h:
5460           documented some more enums
5461
5462 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5463         * gst/autoplug/gstspideridentity.c:
5464         Cosmetic fix - spider_find_peek should be static
5465         * gst/parse/parse.l:
5466         Applying fix for #164261
5467
5468 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5469
5470         * docs/gst/gstreamer-sections.txt:
5471         * docs/gst/tmpl/gstplugin.sgml:
5472         * docs/libs/gstreamer-libs-sections.txt:
5473         * docs/libs/tmpl/gstcontrol.sgml:
5474         * gst/gstbuffer.h:
5475         * gst/gsttag.h:
5476         * gst/gstvalue.c:
5477           added docs for the TAG defines
5478
5479 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5480
5481         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5482           Only unref entry if there is an entry.
5483
5484 2005-01-17  Wim Taymans  <wim@fluendo.com>
5485
5486         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5487         (remove_from_group), (schedule_group), (normalize_group),
5488         (gst_opt_scheduler_iterate):
5489         Also ref/unref decoupled elements before iterating the
5490         group since they are not added to the list of elements.
5491
5492 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5493
5494         * docs/manual/highlevel-components.xml:
5495           Add subtitle/streamselection as new features to playbin.
5496
5497 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5498
5499         * docs/manual/manual.xml:
5500           Re-enable dataaccess docs (oops).
5501
5502 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5503
5504         * docs/pwg/advanced-types.xml:
5505         * docs/random/mimetypes:
5506           Add documentation on libsndfile types (#163309), by Steve Baker
5507           <steve@stevebaker.org>.
5508         * gst/gstelement.c: (gst_element_release_request_pad):
5509           If an element has no explicit function, just remove the pad.
5510
5511 2005-01-17  Luca Ognibene  <luogni@tin.it>
5512
5513         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5514
5515         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5516           Fix memleak (#163801).
5517
5518 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5519
5520         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5521           I think this is actually more correct...
5522
5523 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5524
5525         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5526           Another workaround for memory access while destroyed in callback.
5527           Please, someone with refcount knowledge, have a look at this.
5528
5529 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5530
5531         * docs/faq/faq.xml:
5532         * docs/faq/legal.xml:
5533           move the legal Q&A here
5534
5535 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5536
5537         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5538         (gst_tee_request_new_pad):
5539           Fix negotiation.
5540
5541 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5542
5543         * docs/random/omega/caps2:
5544         * testsuite/caps/caps_strings:
5545           replace framerate aproximations by their real value
5546           (24000/1001, 30000/1001, 60000/1001)
5547           Partially fixes bug #164049
5548
5549 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5550
5551         * docs/gst/Makefile.am:
5552           don't fail on the stupid GstPoptOption
5553
5554 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5555
5556         * gst/gstpad.h:
5557         * gst/gstprobe.c:
5558           allow probes to work on ghost pads by realizing the pad
5559           probe debugging
5560
5561 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5562
5563         * docs/gst/gstreamer-sections.txt:
5564         * docs/gst/tmpl/gstpad.sgml:
5565         * gst/gstpad.c: (gst_pad_set_active_recursive):
5566         * gst/gstpad.h:
5567           Add gst_pad_set_active_recursive().
5568
5569 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5570
5571         * docs/random/release:
5572           updates
5573         * gst/gst_private.h:
5574         * gst/gstinfo.c:
5575         * gst/gstobject.c:
5576           move deep_notify logging to a new category
5577         * gst/gstprobe.c:
5578         * gst/gstprobe.h:
5579           add stuff so bindings can wrap probes
5580
5581 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5582
5583         * gst/gstplugin.c: (gst_plugin_load):
5584           Fix plugin loading if plugin/lib was already loaded. Fixes
5585           #163383
5586
5587 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5588
5589         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5590
5591         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5592           Protect plugin loading by a mutex so it's threadsafe. Fixes
5593           #163234.
5594
5595 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5596
5597         * gst/gstevent.c: (_gst_event_copy):
5598           Reference source object when copying events, since it'll be
5599           dereferenced on event dereferencing as well.
5600
5601 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5602
5603         * docs/gst/gstreamer-sections.txt:
5604         * docs/gst/tmpl/gstevent.sgml:
5605         * gst/gstevent.c: (gst_event_new_filler_stamped),
5606         (gst_event_filler_get_duration):
5607         * gst/gstevent.h:
5608           Add two new functions for filler events (which are used to
5609           synchronize streams if one of them is not having any data
5610           for a while) without interrupting the actual data-stream.
5611           Basically a no-op.
5612         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5613         (gst_queue_link_sink), (gst_queue_link_src),
5614         (gst_queue_change_state):
5615           Allow for renegotiation while filled. Required for stream
5616           switching while playing.
5617
5618 2005-01-08  Benjamin Otte  <otte@gnome.org>
5619
5620         * gst/gstelement.c: (gst_element_link_many):
5621           fix up g_return_if_fail's
5622         * po/LINGUAS:
5623         * po/de.po:
5624           add German translation, that was somehow not included
5625
5626 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5627
5628         * docs/random/mimetypes:
5629           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5630           do not add them to riff-lib as they are not common
5631
5632 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5633
5634         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5635           Check for existence of probe after performing the probe before
5636           re-accessing it to prevent segfaults caused by removal of the
5637           probe in the callback.
5638
5639 2005-01-05  David Schleef  <ds@schleef.org>
5640
5641         * testsuite/registry/Makefile.am:
5642         * testsuite/registry/gst-print-formats.c:
5643         (print_pad_templates_info), (print_element_list),
5644         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5645         (g_list_uniqify), (get_pad_templates_info),
5646         (get_element_mime_list), (print_mime_list), (main): A little
5647         program that looks through the registry to find elements of
5648         a given type.  Not particularly interesting as a test, except
5649         that there's no other test covering the same area.
5650
5651 2005-01-05  David Schleef  <ds@schleef.org>
5652
5653         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5654         (fault_handler_sigaction), (fault_spin),
5655         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5656         in signal.h-type signal handlers by not calling forbidden functions,
5657         including gst_element_set_state().
5658
5659 2005-01-05  David Schleef  <ds@schleef.org>
5660
5661         * gst/gstvalue.h: Mark _gst_reserved[] as private
5662
5663 2005-01-05  David Schleef  <ds@schleef.org>
5664
5665         * gst/gstvalue.c: Fix doc build problem.
5666
5667 2005-01-05  David Schleef  <ds@schleef.org>
5668
5669         * gst/gstvalue.c: Add some documentation
5670
5671 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5672
5673         * docs/README:
5674           another shell oneliner for empty return value docs
5675         * gst/gstcaps.c:
5676         * gst/gstvalue.c:
5677         * libs/gst/control/dparam.c:
5678           more doc fixes (parameters and return values)
5679
5680 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5681
5682         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5683
5684         * gst/gstregistry.h:
5685         * gst/registries/gstxmlregistry.c:
5686           Fix macro's for Mingw (fixes #162276).
5687
5688 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5689
5690         * docs/README:
5691           quick shell oneliner to find undocumented members
5692         * docs/gst/tmpl/gstplugin.sgml:
5693         * docs/gst/tmpl/gstscheduler.sgml:
5694         * docs/gst/tmpl/gstthread.sgml:
5695           more enumtypes cleanup
5696         * gst/gsterror.h:
5697           activated documentation comments, now someone needs to document
5698           the enums :(
5699
5700 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5701
5702         * docs/manual/manual.xml:
5703           Add dataaccess part (doh!).
5704
5705 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5706
5707         * docs/manual/advanced-autoplugging.xml:
5708           Fix typo (intiate -> initiate).
5709
5710 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5711
5712         * docs/random/bbb/streamselection:
5713           Add some notes on how to handle multi-subtitle/-audio streams.
5714
5715 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5716
5717         * docs/gst/gstreamer-docs.sgml:
5718         * docs/gst/gstreamer-sections.txt:
5719         * docs/gst/tmpl/gstenumtypes.sgml:
5720         * docs/gst/tmpl/gsterror.sgml:
5721         * docs/gst/tmpl/gstevent.sgml:
5722         * docs/gst/tmpl/gstpad.sgml:
5723         * docs/gst/tmpl/gstpadtemplate.sgml:
5724         * docs/gst/tmpl/gstthread.sgml:
5725           removed gstenumtypes section from docs and put all the enums into
5726           their sections
5727
5728 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5729
5730         * gst/gstplugin.c:
5731           document gst_library_load a bit more (riff special case + return
5732           value if already loaded)
5733         * testsuite/bytestream/filepadsink.c:
5734           plugin name is 'gstbytestream', not 'bytestream'
5735
5736 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5737
5738         * docs/random/bbb/subtitles:
5739           Add some first mind rumblings on proper subtitle support.
5740
5741 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5742
5743         * po/ca.po:
5744         * po/sv.po:
5745           updated translations
5746
5747 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5748
5749         * docs/manual/advanced-dataaccess.xml:
5750           Add section on how to use fakesrc/fakesink/identity in your
5751           application, plus section on how to embed plugins. Also mention
5752           probes.
5753         * docs/manual/appendix-checklist.xml:
5754         * docs/manual/appendix-debugging.xml:
5755         * docs/manual/appendix-gnome.xml:
5756         * docs/manual/appendix-integration.xml:
5757           Debug -> checklist, GNOME -> integration, add sections on Linux,
5758           KDE integration and add other things useful for application
5759           development.
5760         * docs/manual/manual.xml:
5761           Remove some fixmes, update some file pointers.
5762         * docs/pwg/appendix-checklist.xml:
5763           Fix typo.
5764         * docs/pwg/building-boiler.xml:
5765           Remove ugly header and add commented fixme.
5766         * docs/pwg/pwg.xml:
5767           Add fixme.
5768         * examples/manual/Makefile.am:
5769           Add example for added docs.
5770
5771 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5772
5773         * configure.ac:
5774           back to HEAD
5775
5776 === release 0.8.8 ===
5777
5778 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5779
5780         * NEWS:
5781         * RELEASE:
5782         * configure.ac:
5783           Releasing 0.8.8, "I'll Take Care Of You"
5784
5785 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5786
5787         * configure.ac:
5788           second prerelease
5789
5790 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5791
5792         patch by: Wim Taymans
5793
5794         * gst/gstbin.c:
5795           Fix for #159852 - make iterate emission threadsafe
5796
5797 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5798
5799         * docs/faq/cvs.xml:
5800           notes about new fdo account request
5801
5802 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5803
5804         * docs/gst/gstreamer-docs.sgml:
5805         * docs/gst/tmpl/gstenumtypes.sgml:
5806         * docs/gst/tmpl/gstplugin.sgml:
5807         * docs/libs/gstreamer-libs-docs.sgml:
5808           Added missing short docs. Added ids for navigation.
5809
5810 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5811
5812         * docs/manual/advanced-autoplugging.xml:
5813         * docs/manual/advanced-schedulers.xml:
5814         * docs/manual/advanced-threads.xml:
5815           Rewrites. Remove cothreads, go a bit into opt specifically,
5816           document threads and their gotchas, and do some technical stuff
5817           on autoplugging plus add some working examples. Fixes #157395.
5818         * examples/manual/Makefile.am:
5819           Add typefind/autoplugger example (one that actually works).
5820           Remove queue example since it's a duplicate of the thread one.
5821
5822 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5823
5824         * gst/gstvalue.c: (gst_value_deserialize_string):
5825           use deprecated g_value_set_string_take_ownership to keep compatible
5826           with glib 2.2
5827
5828 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5829
5830         * gst/gstvalue.c: (gst_value_deserialize_string):
5831           revert last patch, only dom a g_utf8_validate now before accepting
5832           the string - caps parsing strips " from strings so we can't rely on
5833           them
5834         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5835           disable a test that tested the above and comment it
5836
5837 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5838
5839         Patch reviewed by David Schleef  <ds@schleef.org>
5840
5841         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5842         bug #153882)
5843         * win32/gstenumtypes.h: same
5844
5845 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5846
5847         * gst/gstpad.c: (gst_pad_query):
5848           Do query on realized pad, similar to how convert/send_event handle
5849           this. Also makes sense, since this pad belongs to the function to
5850           which this query will be sent. Fixes #158163.
5851
5852 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5853
5854         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5855
5856 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5857
5858         * docs/faq/general.xml: fix pipeline to actually work
5859
5860 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5861
5862         * gst/gstvalue.c: (gst_value_deserialize_string):
5863           check that a simple string that gets deserialized does not contain
5864           invalid characters
5865         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5866           remove a test that tested a wring behaviour
5867
5868 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5869
5870         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5871
5872         * docs/manual/intro-motivation.xml:
5873           Fix typos.
5874
5875 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5876
5877         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5878
5879         * docs/gst/tmpl/gstprobe.sgml:
5880           Fix documentation of probe callback - it is supposed to return
5881           FALSE, not TRUE, to remove data from the stream (#159087).
5882
5883 2004-12-16  Daniel Gazard  <dany42@free.fr>
5884
5885         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5886
5887         * gst/gstelementfactory.c: (gst_element_factory_create):
5888           Fix compile failure if compiling without libxml2 support (#149936).
5889
5890 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5891
5892         * docs/manual/advanced-autoplugging.xml:
5893         * docs/manual/highlevel-components.xml:
5894           Move spider from autoplugging to components. Autoplugging is for
5895           internals, not for solutions. ;-).
5896
5897 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5898
5899         * docs/random/ds/0.9-suggested-changes:
5900           Make note on device/location/uri property names.
5901
5902 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5903
5904         * docs/manual/advanced-autoplugging.xml:
5905         * docs/manual/advanced-clocks.xml:
5906         * docs/manual/advanced-interfaces.xml:
5907         * docs/manual/advanced-metadata.xml:
5908         * docs/manual/advanced-position.xml:
5909         * docs/manual/advanced-schedulers.xml:
5910         * docs/manual/advanced-threads.xml:
5911         * docs/manual/appendix-gnome.xml:
5912         * docs/manual/appendix-programs.xml:
5913         * docs/manual/appendix-quotes.xml:
5914         * docs/manual/autoplugging.xml:
5915         * docs/manual/basics-bins.xml:
5916         * docs/manual/basics-data.xml:
5917         * docs/manual/basics-elements.xml:
5918         * docs/manual/basics-helloworld.xml:
5919         * docs/manual/basics-init.xml:
5920         * docs/manual/basics-pads.xml:
5921         * docs/manual/basics-plugins.xml:
5922         * docs/manual/bins-api.xml:
5923         * docs/manual/bins.xml:
5924         * docs/manual/buffers-api.xml:
5925         * docs/manual/buffers.xml:
5926         * docs/manual/clocks.xml:
5927         * docs/manual/components.xml:
5928         * docs/manual/cothreads.xml:
5929         * docs/manual/debugging.xml:
5930         * docs/manual/dparams-app.xml:
5931         * docs/manual/dynamic.xml:
5932         * docs/manual/elements-api.xml:
5933         * docs/manual/elements.xml:
5934         * docs/manual/factories.xml:
5935         * docs/manual/gnome.xml:
5936         * docs/manual/goals.xml:
5937         * docs/manual/helloworld.xml:
5938         * docs/manual/helloworld2.xml:
5939         * docs/manual/highlevel-components.xml:
5940         * docs/manual/highlevel-xml.xml:
5941         * docs/manual/init-api.xml:
5942         * docs/manual/intro-basics.xml:
5943         * docs/manual/intro-motivation.xml:
5944         * docs/manual/intro-preface.xml:
5945         * docs/manual/intro.xml:
5946         * docs/manual/links-api.xml:
5947         * docs/manual/links.xml:
5948         * docs/manual/manual.xml:
5949         * docs/manual/motivation.xml:
5950         * docs/manual/pads-api.xml:
5951         * docs/manual/pads.xml:
5952         * docs/manual/plugins-api.xml:
5953         * docs/manual/plugins.xml:
5954         * docs/manual/programs.xml:
5955         * docs/manual/queues.xml:
5956         * docs/manual/quotes.xml:
5957         * docs/manual/schedulers.xml:
5958         * docs/manual/states-api.xml:
5959         * docs/manual/states.xml:
5960         * docs/manual/threads.xml:
5961         * docs/manual/typedetection.xml:
5962         * docs/manual/win32.xml:
5963         * docs/manual/xml.xml:
5964           Try 2. This time, include a short preface as a "general
5965           introduction", also add code blocks around all code samples
5966           so they get compiled. We still need a way to tell readers
5967           the filename of the code sample. In some cases, don't show
5968           all code in the documentation, but do include it in the generated
5969           code. This allows for focussing on specific bits in the docs,
5970           while still having a full test application available.
5971         * examples/manual/Makefile.am:
5972           Fix up examples for new ADM. Add several of the new examples that
5973           were either added or were missing from the build system.
5974         * examples/manual/extract.pl:
5975           Allow nameless blocks.
5976
5977 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5978
5979         * docs/manual/elements-api.xml:
5980         * docs/manual/helloworld.xml:
5981         * examples/manual/extract.pl:
5982           fix last example.  Add example of adding code blocks that are not
5983           shown in docbook output.
5984
5985 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5986
5987         * docs/manual/dynamic.xml:
5988         * docs/manual/elements-api.xml:
5989         * docs/manual/gnome.xml:
5990         * docs/manual/helloworld2.xml:
5991         * docs/manual/init-api.xml:
5992         * docs/manual/queues.xml:
5993         * docs/manual/threads.xml:
5994         * docs/manual/xml.xml:
5995         * examples/manual/extract.pl:
5996           Make it possible to extract example code from separate blocks.
5997           Should make Ronald happy.
5998
5999 2004-12-15  Wim Taymans  <wim@fluendo.com>
6000
6001         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6002         (remove_from_group), (group_elements_set_visited),
6003         (normalize_group), (gst_opt_scheduler_iterate):
6004         Fix bug where a flag was not updated on a decoupled entry point 
6005         because we were just checking the group element list and decoupled
6006         elements are not in that list..
6007
6008 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6009
6010         * docs/manual/advanced-autoplugging.xml:
6011         * docs/manual/advanced-clocks.xml:
6012         * docs/manual/advanced-dparams.xml:
6013         * docs/manual/advanced-interfaces.xml:
6014         * docs/manual/advanced-metadata.xml:
6015         * docs/manual/advanced-position.xml:
6016         * docs/manual/advanced-schedulers.xml:
6017         * docs/manual/advanced-threads.xml:
6018         * docs/manual/appendix-debugging.xml:
6019         * docs/manual/appendix-gnome.xml:
6020         * docs/manual/appendix-programs.xml:
6021         * docs/manual/appendix-quotes.xml:
6022         * docs/manual/appendix-win32.xml:
6023         * docs/manual/autoplugging.xml:
6024         * docs/manual/basics-bins.xml:
6025         * docs/manual/basics-data.xml:
6026         * docs/manual/basics-elements.xml:
6027         * docs/manual/basics-helloworld.xml:
6028         * docs/manual/basics-init.xml:
6029         * docs/manual/basics-pads.xml:
6030         * docs/manual/basics-plugins.xml:
6031         * docs/manual/bins-api.xml:
6032         * docs/manual/bins.xml:
6033         * docs/manual/buffers-api.xml:
6034         * docs/manual/buffers.xml:
6035         * docs/manual/clocks.xml:
6036         * docs/manual/components.xml:
6037         * docs/manual/cothreads.xml:
6038         * docs/manual/debugging.xml:
6039         * docs/manual/dparams-app.xml:
6040         * docs/manual/dynamic.xml:
6041         * docs/manual/elements-api.xml:
6042         * docs/manual/elements.xml:
6043         * docs/manual/factories.xml:
6044         * docs/manual/gnome.xml:
6045         * docs/manual/goals.xml:
6046         * docs/manual/helloworld.xml:
6047         * docs/manual/helloworld2.xml:
6048         * docs/manual/highlevel-components.xml:
6049         * docs/manual/highlevel-xml.xml:
6050         * docs/manual/init-api.xml:
6051         * docs/manual/intro-motivation.xml:
6052         * docs/manual/intro-preface.xml:
6053         * docs/manual/intro.xml:
6054         * docs/manual/links-api.xml:
6055         * docs/manual/links.xml:
6056         * docs/manual/manual.xml:
6057         * docs/manual/motivation.xml:
6058         * docs/manual/pads-api.xml:
6059         * docs/manual/pads.xml:
6060         * docs/manual/plugins-api.xml:
6061         * docs/manual/plugins.xml:
6062         * docs/manual/programs.xml:
6063         * docs/manual/queues.xml:
6064         * docs/manual/quotes.xml:
6065         * docs/manual/schedulers.xml:
6066         * docs/manual/states-api.xml:
6067         * docs/manual/states.xml:
6068         * docs/manual/threads.xml:
6069         * docs/manual/typedetection.xml:
6070         * docs/manual/win32.xml:
6071         * docs/manual/xml.xml:
6072           First try at rewriting the ADM. Needs lotsamore work, but some
6073           parts might already be somewhat useful.
6074         * docs/pwg/advanced-interfaces.xml:
6075           Remove properties interface, it never actually existed (except for
6076           on my HD...).
6077
6078 2004-12-13  David Schleef  <ds@schleef.org>
6079
6080         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6081         be NULL (bug #160220).
6082
6083 2004-12-13  David Schleef  <ds@schleef.org>
6084
6085         * configure.ac: remove all mmx stuff, because it's not used.
6086         * docs/random/ds/0.9-suggested-changes: additional notes
6087         * include/Makefile.am: we don't use these anymore
6088         * include/mmx.h: remove
6089         * include/sse.h: remove
6090
6091 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6092
6093         * docs/random/mimetypes:
6094           Add FOURCC code for h264 codec (VSSH)
6095           Add alternate FOURCC codes for h263 related codecs
6096
6097 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6098
6099         * docs/manual/programs.xml:
6100           Added more gst-launch examples.
6101
6102 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6103
6104         * gst/gstqueue.c: (gst_queue_handle_src_query):
6105           Check for availability again.
6106
6107 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6108
6109         * gst/gstcaps.c: (gst_caps_compare_structures):
6110           Simple caps go first. This has the nice side-effect of fixing an
6111           obscure warning.
6112
6113 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6114
6115         * gst/gstversion.h.in:
6116           Protect header.
6117
6118 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6119
6120         * gst/schedulers/gstoptimalscheduler.c:
6121         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6122         (gst_opt_scheduler_get_wrapper):
6123           When we're recursing into a chain run, only run the directly
6124           related group, not all queued ones. This will fix a possible
6125           deadlock in chains with more than two groups.
6126
6127 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6128
6129         * autogen.sh:
6130           remove patch if autopoint fails
6131
6132 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6133
6134         * docs/gst/gstreamer-sections.txt:
6135           Document Thomas' addition, fix build, make Luis the sheriff happy.
6136
6137 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6138
6139         * gst/gstplugin.c:
6140         * gst/gstplugin.h:
6141           add accessor for version field
6142
6143 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6144
6145         submitted by: Luca Ferretti <elle.uca@infinito.it>
6146
6147         * po/LINGUAS:
6148         * po/it.po:
6149           New tranlation added: Italian
6150
6151 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6152
6153         * gst/gstpad.c: (gst_pad_is_negotiated),
6154         (gst_pad_get_negotiated_caps):
6155           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6156           it doesn't actually check the contents), so be sure to hand it
6157           a RealPad else we'll crash.
6158
6159 2004-12-03  Wim Taymans  <wim@fluendo.com>
6160
6161         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6162         (gst_queue_link), (gst_queue_handle_src_query):
6163         Reverted to 1.110 until this makes the testsuite and various
6164         apps work.
6165
6166 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6167
6168         * docs/upload.mak: fix included CVS conflict strings
6169
6170 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6171
6172         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6173
6174         * gst/gstelement.c: (gst_element_error_full):
6175           Use g_error_new_literal because error text may have
6176           percentage signs in it. Fixes #160019.
6177
6178 2004-12-01  Benjamin Otte  <otte@gnome.org>
6179
6180         * gst/elements/gstbufferstore.c:
6181         (gst_buffer_store_add_buffer_func):
6182           don't try to make subbuffers bigger than they can be. (fixes
6183           #159970)
6184
6185 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6186
6187         * docs/gst/gstreamer-sections.txt:
6188         * docs/gst/tmpl/gstvalue.sgml:
6189           Add new function to docs to fix build.
6190
6191 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6192
6193         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6194         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6195         (_gst_pad_default_fixate_foreach):
6196         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6197         * gst/gstvalue.h:
6198           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6199           in some cases (arrays), the fixedness depends on the content.
6200         * gst/gstqueue.c: (gst_queue_handle_src_query):
6201           Check for availability before doing something.
6202
6203 2004-11-29  Wim Taymans  <wim@fluendo.com>
6204
6205         * testsuite/threads/Makefile.am:
6206         * testsuite/threads/signals.c: (gst_test_get_type),
6207         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6208         (gst_test_set_property), (gst_test_get_property),
6209         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6210         (gst_test_do_prop), (run_thread), (main):
6211         Added a bunch of testcases that show threadsafety bugs in glib.
6212
6213 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6214
6215         * docs/manual/programs.xml:
6216           Added a first batch of gst-launch examples, as provided by Ronald
6217           and others from the devel-mlist
6218
6219 2004-11-28  Benjamin Otte  <otte@gnome.org>
6220
6221         * gst/gstelement.c: (gst_element_negotiate_pads):
6222           simplify
6223         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6224         (gst_value_serialize_string), (gst_value_deserialize_string):
6225           add unwrapping of previously wrapped strings. Fix bug in wrapping
6226           while at it.
6227         * testsuite/caps/value_serialize.c: (test1),
6228         (test_string_serialization), (test_string_deserialization), (main):
6229           add tests for string (de)serialization
6230
6231 2004-11-26  Wim Taymans  <wim@fluendo.com>
6232
6233         * testsuite/threads/159566.c: (object_deep_notify), (main):
6234         * testsuite/threads/Makefile.am:
6235         Added testsuite to show bug #159566
6236
6237 2004-11-25  Wim Taymans  <wim@fluendo.com>
6238
6239         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6240         (gst_thread_child_state_change), (gst_thread_main_loop):
6241         Ref the thread object in the GThread mainloop. Break out of the
6242         thread mainloop if it holds the last ref. This properly exits
6243         the threads when disposing the thread from its own context. It
6244         also avoids possible deadlocks in the dispose function.
6245
6246 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6247
6248         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6249         it is necessary to wait.
6250
6251 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6252
6253         * docs/pwg/building-boiler.xml:
6254           Make description somewhat clearer.
6255
6256 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6257
6258         * docs/upload.mak:
6259           Apparently docs changed location on FDO's server.
6260
6261 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6262
6263         * docs/pwg/appendix-checklist.xml:
6264           Add some random notes on things to check when writing an element.
6265           This list can be extended as people see fit.
6266
6267 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6268
6269         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6270         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6271         pad. The queue will now wait until it is empty and forward the new
6272         caps to the source.
6273         * gst/gstbin.c (gst_bin_set_element_sched)
6274         (gst_bin_unset_element_sched): Make sure that all elements and
6275         links are registered and unregistered with the scheduler exactly
6276         once. This elaborates on a fix by Benjamin Otte, but
6277         guarantees that decoupled elements are also registered.
6278
6279 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6280
6281         * docs/manual/quotes.xml:
6282           add a quote
6283         * configure.ac:
6284         * gst/gst.c:
6285         * gst/gstinfo.c:
6286           add LIBDIR and move init message higher up so it's at the start
6287
6288 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6289
6290         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6291         * gstreamer.spec.in: add fair
6292
6293 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6294
6295         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6296         * gst/elements/gstidentity.c: (gst_identity_class_init):
6297           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6298           <teuf@gnome.org> (#157263).
6299         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6300         (gst_type_find_handle_src_query):
6301           Subtract size of internally stored data from position queries.
6302
6303 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6304
6305         * gst/schedulers/fairscheduler.c:
6306         * gst/schedulers/faircothreads.c:
6307         * gst/schedulers/faircothreads.h:
6308         New cothread based scheduler: Fair scheduler.
6309         * gst/schedulers/gthread-cothreads.h: 
6310         Add the standard #if around the whole file.
6311         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6312         compilation of the functions defined in this file. This is
6313         necessary to be able to use this file as a normal header.
6314         * gst/schedulers/Makefile.am: Add compiling support for fair
6315         scheduler.
6316         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6317         scheduler cothreads layer from documentation generation.
6318
6319 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6320
6321         * gst/autoplug/gstspideridentity.c:
6322         (gst_spider_identity_sink_loop_type_finding):
6323           Don't crash if that function is not implemented.
6324
6325 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6326
6327         * docs/pwg/advanced-types.xml:
6328           Another typo.
6329
6330 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6331
6332         * docs/pwg/intro-preface.xml:
6333           Hm, ok, so the brackets weren't really useful...
6334         * docs/pwg/other-ntoone.xml:
6335           Fix embarassing typo.
6336
6337 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6338
6339         * docs/pwg/intro-preface.xml:
6340           Rewrite preface.
6341
6342 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6343
6344         * docs/pwg/advanced-scheduling.xml:
6345         * docs/pwg/advanced-tagging.xml:
6346         * docs/pwg/advanced-types.xml:
6347         * docs/pwg/building-boiler.xml:
6348         * docs/pwg/building-chainfn.xml:
6349         * docs/pwg/building-signals.xml:
6350         * docs/pwg/building-state.xml:
6351         * docs/pwg/building-testapp.xml:
6352         * docs/pwg/intro-basics.xml:
6353         * docs/pwg/other-manager.xml:
6354         * docs/pwg/other-source.xml:
6355           Typo fixes.
6356         * docs/pwg/other-manager.xml:
6357           Add some first content. No example code yet.
6358         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6359           Remove double newlines.
6360
6361 2004-11-04  Wim Taymans  <wim@fluendo.com>
6362
6363         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6364         (remove_from_group), (normalize_group), (group_migrate_connected),
6365         (gst_opt_scheduler_iterate):
6366         * testsuite/schedulers/.cvsignore:
6367         * testsuite/schedulers/Makefile.am:
6368         * testsuite/schedulers/queue_link.c: (main):
6369         Added testcase for scheduler segfault.
6370         Fix scheduler segfault when removing a decoupled
6371         entry point as the last element from a group.
6372
6373 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6374
6375         * gst/gstmarshal.list: add missing marshaller, fixes build
6376
6377 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6378
6379         * docs/random/signal: added notes about using BOXED for GstBuffer
6380         signal marshallers, not POINTER
6381
6382 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6383
6384         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6385         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6386         POINTER=>BOXED changes to marshal GstBuffers
6387
6388 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6389
6390         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6391         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6392
6393 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6394
6395         * docs/gst/gstreamer-sections.txt:
6396         * docs/gst/tmpl/gstcaps.sgml:
6397         * docs/gst/tmpl/gsterror.sgml:
6398         * docs/gst/tmpl/gstinfo.sgml:
6399         * docs/gst/tmpl/gstmacros.sgml:
6400         * docs/gst/tmpl/gstutils.sgml:
6401         * docs/random/ensonic/interfaces.txt:
6402         * gst/gstinfo.h:
6403           added some more docs, removed two obsolete defines
6404
6405 2004-11-02  Kjartan Maraas <as at gnome.org>
6406
6407         reviewed by: Wim Taymans, Ronald Bultje.
6408
6409         * gst/cothreads.c: (cothread_create):
6410         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6411         (gst_bin_child_state_change_func):
6412         * gst/gstbuffer.c: (gst_buffer_span):
6413         * gst/gstelement.c: (gst_element_get_index),
6414         (gst_element_get_event_masks), (gst_element_get_query_types),
6415         (gst_element_get_formats):
6416         * gst/gsterror.c: (_gst_core_errors_init),
6417         (_gst_library_errors_init), (_gst_resource_errors_init),
6418         (_gst_stream_errors_init):
6419         * gst/gstobject.c: (gst_object_default_deep_notify):
6420         * gst/gstpad.c: (gst_pad_get_event_masks),
6421         (gst_pad_get_internal_links_default):
6422         * gst/gstplugin.c: (gst_plugin_register_func),
6423         (gst_plugin_get_module):
6424         * gst/gststructure.c: (gst_structure_get_string),
6425         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6426         (gst_structure_to_abbr):
6427         * gst/gstutils.c: (gst_print_element_args):
6428         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6429         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6430         Aplied part of patch #157127: Cleanup of issues reported by 
6431         sparse.
6432         Also do not try to use cothreads when there is no cothread
6433         context yet.
6434
6435 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6436
6437         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6438         (gst_opt_scheduler_iterate):
6439         Applied patch #154061. Running a pipeline in which an element 
6440         calls GST_ELEMENT_ERROR in the chain function, the opt 
6441         scheduler doesn't unref the chain so it never gets freed.
6442
6443 2004-11-02  Wim Taymans  <wim@fluendo.com>
6444
6445         * gst/gststructure.c: (gst_structure_get_abbrs),
6446         (gst_structure_from_abbr), (gst_structure_to_abbr):
6447         Remove that ugly if-then thing in the code that converts
6448         between strings and types.
6449
6450 2004-11-02  Wim Taymans  <wim@fluendo.com>
6451
6452         * gst/gstscheduler.c: (gst_scheduler_add_element),
6453         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6454         Aplied clock distribution patch, this should fix bug
6455         #148787.
6456
6457 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6458
6459         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6460
6461         * po/LINGUAS:
6462         * po/nb.po:
6463           Added Norwegian Bokmaal translation
6464
6465 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6466
6467         * tools/gst-inspect.c: (print_signal_info):
6468           print signal arguments as pointers if they are
6469
6470 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6471
6472         * docs/pwg/building-boiler.xml:
6473           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6474
6475 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6476
6477         * gst/parse/parse.l:
6478         * testsuite/parse/parse1.c: (main):
6479         Since parse can do 'element name=a:b' make 'a:b.' work as
6480         well. 
6481         Added testcase to verify fix.
6482
6483 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6484
6485         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6486         Use the realpad when printing the direction.
6487         Add extra \n when printing extensions of typefind factories.
6488
6489 2004-10-13  David Schleef  <ds@schleef.org>
6490
6491         * examples/manual/Makefile.am: $< isn't portable in Makefile
6492         rules.
6493
6494 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6495
6496         * docs/gst/tmpl/gstobject.sgml:
6497         * docs/gst/tmpl/gstplugin.sgml:
6498         * docs/gst/tmpl/gstpluginfeature.sgml:
6499         * docs/gst/tmpl/gstregistry.sgml:
6500         * docs/gst/tmpl/gstversion.sgml:
6501         * gst/gstbin.c:
6502           more api documentation
6503         * gst/gstplugin.c: (gst_plugin_register_func),
6504         (gst_plugin_check_file), (gst_plugin_load_file):
6505           better error signaling and logging
6506
6507 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6508
6509         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6510           Subtract current queue contents from position queries.
6511
6512 2004-10-11  Johan Dahlin  <johan@gnome.org>
6513
6514         * gst/gsturi.c (gst_uri_get_location): unescape string
6515         (gst_uri_construct): escape string.
6516
6517 2004-10-11  Benjamin Otte  <otte@gnome.org>
6518
6519         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6520         (gst_pad_try_set_caps_nonfixed):
6521           allow renegotiation of unconnected pads (as inside spider). Simply
6522           return OK if unconnected - mimic try_set_caps there.
6523
6524 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6525
6526         * gst/gstbin.c: (gst_bin_sync_children_state):
6527           Add missing break.
6528
6529 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6530
6531         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6532         Set element to EOS before sending EOS event
6533
6534 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6535
6536         * gst/elements/gsttypefindelement.c:
6537         (gst_type_find_element_handle_event):
6538         Handle EOS events when doing the transition from
6539         typefind to data passing. This should fix the
6540         infinite loops in short files.
6541
6542 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6543
6544         * gst/gstthread.c: (gst_thread_change_state),
6545         (gst_thread_child_state_change):
6546         Make sure no iteration happens while performing
6547         the state change as it could mess up the internal
6548         consistency of the thread state.
6549
6550 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6551
6552         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6553         (gst_thread_change_state), (gst_thread_child_state_change):
6554         Do not try to grab the iterate lock in the state change method
6555         when we are in the same thread as the iterate or else we
6556         could deadlock. Some other cleanups.
6557
6558 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6559
6560         * configure.ac:
6561           bump nano to cvs
6562
6563 === release 0.8.7 ===
6564
6565 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6566
6567         * configure.ac:
6568         * NEWS:
6569         * RELEASE:
6570         * configure.ac:
6571           releasing 0.8.7, "A Cruise"
6572
6573 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6574
6575         * docs/random/mimetypes:
6576         Add an entry for Sony ATRAC3 audio format with mime-type
6577         used by rmdemux et riff-read
6578
6579 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6580
6581         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6582         Push the buffer store instead of clearing it in case that
6583         the stream is not seekable.
6584
6585 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6586
6587         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6588         (gst_thread_main_loop):
6589         Lock the iteration and the state change so that automatic
6590         negotiation and fixation does not happen at the same time
6591         as the in stream negotiation.
6592
6593 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6594
6595         * configure.ac:
6596           bump nano to cvs
6597
6598 === release 0.8.6 ===
6599
6600 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6601
6602         * configure.ac:
6603         * NEWS:
6604         * RELEASE:
6605         * configure.ac:
6606           releasing 0.8.6, "Narc"
6607
6608 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6609
6610         * configure.ac:
6611           prerel bump
6612
6613 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6614
6615         patch by: Steve Lhomme
6616
6617         * gst/elements/gstfakesrc.c:
6618         * gst/elements/gstidentity.c:
6619         * gst/gstthread.c:
6620           Fix for #153881
6621
6622 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6623
6624         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6625         Fix threadsafety of the crc checking function.
6626
6627 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6628
6629         patch by: Ronald Bultje
6630
6631         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6632         (gst_type_find_element_handle_event),
6633         (gst_type_find_element_chain):
6634         * gst/elements/gsttypefindelement.h:
6635          #153657.
6636          Filter out discont event from seekable sources when typefind
6637          asks them to seek.  Fixes typefind with demuxers for
6638          avi, asf and matroska.
6639
6640 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6641
6642         * docs/gst/gstreamer-sections.txt:
6643         * gst/gstcaps.c:
6644         * gst/gstcaps.h:
6645         * gst/gstpad.c:
6646           Revert preferred caps: (#147789)
6647
6648 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6649
6650         * win32/dirent.c:
6651           fix a memory leak
6652
6653 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6654
6655         * configure.ac:
6656           bump for prerelease
6657
6658 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6659
6660         * docs/Makefile.am:
6661         * docs/manual/elements-api.xml:
6662           restructure so that common stuff is shown first
6663         * docs/manual/init-api.xml:
6664           convert to examples
6665         * docs/manual/manual.xml:
6666         * docs/manuals.mak:
6667         * docs/url.entities:
6668           link to API on the website, possibly override later in build
6669         * examples/manual/.cvsignore:
6670           ignore more
6671         * examples/manual/Makefile.am:
6672           add more examples
6673         * examples/manual/extract.pl:
6674           error out on failure
6675
6676 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6677
6678         * docs/gst/tmpl/gstthread.sgml:
6679         * docs/manual/init-api.xml:
6680         * examples/manual/Makefile.am:
6681           convert two code bits to examples
6682
6683 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6684
6685         * gst/gstelement.c: (gst_element_change_state):
6686           Well, actually, I was about to remove this insane assert when
6687           I noticed Wim already did that. A warning is nice so we can
6688           fix actual ugs (using --g-fatal-warnings and backtraces), so
6689           I added that instead.
6690
6691 2004-09-06  Wim Taymans  <wim@fluendo.com>
6692
6693         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6694         (gst_element_threadsafe_properties_post_run),
6695         (gst_element_set_state), (gst_element_change_state):
6696         Added extra refcounting around various places. 
6697
6698 2004-09-06  Wim Taymans  <wim@fluendo.com>
6699
6700         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6701         Fix debug info.
6702
6703 2004-09-06  Wim Taymans  <wim@fluendo.com>
6704
6705         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6706         (remove_from_group):
6707         Some more debug info.
6708
6709 2004-09-03  Wim Taymans  <wim@fluendo.com>
6710
6711         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6712         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6713         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6714         (gst_fakesrc_get), (gst_fakesrc_change_state):
6715         * gst/elements/gstfakesrc.h:
6716         * gst/elements/gstidentity.c: (gst_identity_class_init),
6717         (gst_identity_init), (gst_identity_chain),
6718         (gst_identity_set_property), (gst_identity_get_property),
6719         (gst_identity_change_state):
6720         * gst/elements/gstidentity.h:
6721         Added datarate properties to limit the datarate.
6722
6723 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6724
6725         * gst/autoplug/gstspider.c: (plugin_init):
6726           don't set a rank. We don't want to autoplug by inserting spiders.
6727
6728 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6729
6730         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6731         (gst_spider_identity_plug):
6732           add a template for spider's sink
6733         * gst/gst.c: (gst_register_core_elements):
6734           queue's rank should be NULL, we don't want spider to add it.
6735
6736 2004-08-18  David Schleef  <ds@schleef.org>
6737
6738         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6739         * docs/libs/Makefile.am: same
6740         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6741         * docs/random/ds/0.9-planning: random additions
6742         * docs/random/ds/0.9-suggested-changes: same
6743         * gst/gstxml.h: remove vestigal GstXMLNs definition
6744
6745         Preferred caps: (#147789)
6746         * docs/gst/gstreamer-sections.txt: Add symbols
6747         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6748         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6749         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6750         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6751         (gst_caps_get_preferred), (gst_caps_set_preferred),
6752         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6753         (gst_caps_use_preferred): Handle caps preferences
6754         * gst/gstcaps.h: Add caps preferences
6755         * gst/gstpad.c: (gst_pad_link_get_preferred),
6756         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6757         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6758         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6759         negotiation.
6760
6761 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6762
6763         * gst/autoplug/gstspideridentity.c:
6764         (gst_spider_identity_request_new_pad):
6765         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6766         (gst_aggregator_init):
6767         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6768         (gst_fakesink_init):
6769         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6770         (gst_fakesrc_init):
6771         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6772         (gst_fdsink_init):
6773         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6774         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6775         (gst_filesink_init):
6776         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6777         (gst_filesrc_init):
6778         * gst/elements/gstidentity.c: (gst_identity_base_init),
6779         (gst_identity_init):
6780         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6781         (gst_multifilesrc_init):
6782         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6783         (gst_pipefilter_init):
6784         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6785         (gst_statistics_init):
6786         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6787         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6788           s/gst_pad_new/&_from_template/
6789           register pad templates in the base_init function
6790           add static pad template definitions
6791
6792 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6793
6794         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6795         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6796         * testsuite/refcounting/pad.c: (main):
6797         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6798           s/gst_pad_new/&_from_template/
6799           prepare deprecation of gst_pad_new
6800
6801 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6802
6803         patch by: Luca Ognibene <skaboy81@virgilio.it>
6804
6805         * gst/gstcaps.c:
6806         * gst/gstelement.c:
6807         * gst/gstpad.c:
6808         * gst/gstxml.c:
6809           fix memleaks.  Fixes #150001
6810
6811 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6812
6813         * docs/random/ds/0.9-suggested-changes:
6814           add notes - mostly about pad templates
6815
6816 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6817
6818         * win32/GStreamer.vcproj:
6819           temporary locale files are .gmo not .mo
6820
6821 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6822
6823         * configure.ac: bump nano to cvs
6824
6825 === release 0.8.5 ===
6826
6827 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6828
6829         * configure.ac:
6830           releasing 0.8.5, "Stuttgart"
6831         * NEWS:
6832         * RELEASE:
6833         * configure.ac:
6834         * docs/random/release:
6835           updates for release
6836
6837 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6838
6839         patch by: Wim Taymans (wim@fluendo.com)
6840
6841         * gst/gstbuffer.c:
6842         * gst/gstindex.h:
6843         * libs/gst/dataprotocol/dataprotocol.c:
6844           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6845
6846 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6847
6848         * Makefile.am:
6849         * win32/MANIFEST:
6850           add win32 dir to the build.  Fixes #149981.
6851
6852 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6853
6854         * configure.ac:
6855           bump libtool versioning
6856         * gst/gststructure.c:
6857           mark function as static
6858         * po/af.po:
6859         * po/az.po:
6860         * po/ca.po:
6861         * po/cs.po:
6862         * po/en_GB.po:
6863         * po/fr.po:
6864         * po/nl.po:
6865         * po/sq.po:
6866         * po/sr.po:
6867         * po/sv.po:
6868         * po/tr.po:
6869         * po/uk.po:
6870           translations update
6871         * win32/README.txt:
6872           trademark protection
6873
6874 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6875
6876         * configure.ac:
6877           fix GST_ORIGIN
6878           set GST_PACKAGE to source, and distinguish between release and other
6879         * tools/gst-inspect.c:
6880           print out plugin an element factory is part of so we see this info
6881
6882 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6883
6884         * docs/gst/gstreamer-sections.txt:
6885         * docs/gst/tmpl/gstbuffer.sgml:
6886         * docs/gst/tmpl/gstschedulerfactory.sgml:
6887           reorder docs a little, make GstBuffer's more sensible.
6888         * gst/gstbuffer.h:
6889           API: added GST_BUFFER_FLAG_DELTA_UNIT
6890         * gst/gstscheduler.c:
6891           comment API addition
6892
6893 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6894
6895         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6896           work with non-regular files that can be mmapped (like /dev/zero)
6897         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6898           get rid of typefinds that require a seek when we can't seek instead
6899           of trying them over and over again
6900         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6901           return non-zero failure value when the pipeline was interrupted or
6902           an error occurred
6903
6904 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6905
6906         * win32/config.h:
6907         * win32/GStreamer.vcproj:
6908           compile and install the locales
6909
6910 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6911
6912         * gst/gstvalue.c:
6913           fix a possible memory leak under Windows
6914
6915 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6916
6917         * win32/GStreamer.vcproj:
6918           fix a memory leak that occured under Windows
6919         * win32/gstreamer.def:
6920           add gst_scheduler_register
6921
6922 2004-08-11  Benjamin Otte  <otte@gnome.org>
6923
6924         * docs/gst/gstreamer-sections.txt:
6925         * gst/gstscheduler.c: (gst_scheduler_register):
6926         * gst/gstscheduler.h:
6927           API:
6928           add gst_scheduler_register shortcut similar to gst_element_register
6929         * gst/schedulers/entryscheduler.c: (plugin_init):
6930         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6931         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6932           use it
6933
6934 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6935
6936         * gst/gstvalue.h:
6937           fix a memory leak that occured under Windows
6938
6939 2004-08-10  Colin Walters  <walters@redhat.com>
6940
6941         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6942         Don't use O_EXCL to open temporary registry.  It will prevent
6943         registry creation if a temporary one already exists, which
6944         is unnecessary.
6945
6946 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6947
6948         * docs/gst/gstreamer-sections.txt:
6949         * docs/gst/tmpl/gstvalue.sgml:
6950           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6951
6952 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6953
6954         * win32/gstbytestream.vcproj:
6955         * win32/gstelements.vcproj:
6956         * win32/gstgetbits.vcproj:
6957         * win32/gst-inspect.vcproj:
6958         * win32/gst-launch.vcproj:
6959         * win32/gstoptimalscheduler.vcproj:
6960         * win32/GStreamer.vcproj:
6961         * win32/gst-register.vcproj:
6962         * win32/gstspider.vcproj:
6963           update the include and lib dirs to fit standard libraries as
6964           described in the Win32 manual
6965
6966 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6967
6968         * win32/config.h:
6969         * win32/gstversion.h:
6970           enable NLS again, push the version number for the coming 0.8.5 release
6971
6972 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6973
6974         * gst/gstvalue.h:
6975           export gst_type_XXX for windows DLLs
6976
6977 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6978
6979         * docs/faq/gst-uninstalled:
6980           fix PKG_CONFIG_PATH and PYTHONPATH
6981         * gst/schedulers/Makefile.am:
6982           cleanup
6983         * libs/gst/bytestream/bytestream.c:
6984           remove newline
6985         * po/LINGUAS:
6986         * po/sq.po:
6987           adding Albanian translation (Laurent Dhima)
6988         * po/cs.po:
6989           updated
6990
6991 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6992
6993         * po/ca.po:
6994         * po/sv.po:
6995           updated translations
6996
6997 2004-08-04  Benjamin Otte  <otte@gnome.org>
6998
6999         * tests/mass_elements.c: (main):
7000           allow specifying src and sink element explicitly, so I can test
7001           videotestsrc instead of fakesrc
7002
7003 2004-08-04  Benjamin Otte  <otte@gnome.org>
7004
7005         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
7006         (gst_structure_id_empty_new), (gst_structure_empty_new),
7007         (gst_structure_copy):
7008           add gst_structure_id_empty_new_with_size to allow preallocating
7009           value array sizes. Use this in gst_structure_copy to get rid of
7010           reallocs.
7011           don't do quark=>string=>quark when copying structures
7012
7013 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
7014
7015         * docs/manual/win32.xml:
7016         * win32/README.txt:
7017           update documentation with the clean version of dependencies
7018
7019 2004-08-03  Benjamin Otte  <otte@gnome.org>
7020
7021         * gst/schedulers/entryscheduler.c:
7022         (gst_entry_scheduler_remove_element):
7023           fix for GST_DISABLE_DEBUG
7024         * tools/gst-launch.c: (print_tag):
7025           fixes for G_DISABLE_ASSERT
7026
7027 2004-08-03  Benjamin Otte  <otte@gnome.org>
7028
7029         * gst/gst.c: (gst_register_core_elements):
7030           fix for G_DISABLE_ASSERT
7031         * gst/gstinfo.c: (__gst_in_valgrind):
7032           add for GST_DISABLE_DEBUG
7033
7034 2004-08-03  Benjamin Otte  <otte@gnome.org>
7035
7036         * gst/parse/parse.l:
7037           fix for G_DISABLE_ASSERT
7038
7039 2004-08-03  Wim Taymans  <wim@fluendo.com>
7040
7041         * gst/gstbin.c: (gst_bin_get_type),
7042         (gst_bin_child_state_change_func):
7043         * gst/gstthread.c: (gst_thread_change_state):
7044         Backported some debug logging from a reverted patch
7045         Don't try to destroy the thread twice. Added some more
7046         debugging in GstThread. Unlock and signal even if we
7047         are in the thread context.
7048
7049 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7050
7051         * po/uk.po:
7052           updated translation
7053
7054 2004-07-30  David Schleef  <ds@schleef.org>
7055
7056         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7057
7058 2004-07-29  David Schleef  <ds@schleef.org>
7059
7060         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7061         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7062
7063 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7064
7065         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7066         (gst_bin_add_func), (gst_bin_remove_func),
7067         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7068         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7069         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7070         (gst_bin_sync_children_state):
7071         * gst/gstbin.h:
7072         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7073         (gst_thread_change_state):
7074         * testsuite/states/Makefile.am:
7075           revert state change patches as agreed so we can rework them
7076           gradually
7077
7078 2004-07-29  Benjamin Otte  <otte@gnome.org>
7079
7080         * libs/gst/control/Makefile.am:
7081           link to libgstreamer (fixes Debian bug 262019, see
7082           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7083
7084 2004-07-29  Wim Taymans  <wim@fluendo.com>
7085
7086         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7087         (check_from_fraction_convert), (transform_test), (main):
7088         Make the test less pedantic about float roundoff errors.
7089
7090 2004-07-29  Benjamin Otte  <otte@gnome.org>
7091
7092         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7093         (gst_filesrc_srcpad_event):
7094           make seek events to before start/after end of file not fail, but
7095           seek to start/end instead
7096         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7097           add more output
7098
7099 2004-07-29  Benjamin Otte  <otte@gnome.org>
7100
7101         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7102           check that caps are fixed
7103         * gst/gstpad.c: (gst_pad_template_new):
7104           don't try to simplify caps, costs too much time on gst_init
7105         * gst/gstplugin.c: (gst_plugin_add_feature):
7106           G_ERROR if features are added twice
7107         * gst/gsttypefind.c: (gst_type_find_register):
7108         * gst/gstelementfactory.c: (gst_element_register):
7109           don't add features twice
7110         * docs/random/ds/0.9-suggested-changes:
7111           add note about possible gst_init optimization
7112
7113 2004-07-28  David Schleef  <ds@schleef.org>
7114
7115         * testsuite/elements/Makefile.am:
7116         * testsuite/elements/struct_i386.h:
7117         * testsuite/elements/struct_size.c: (main):  A little test
7118         to keep distcheck from working if someone changes a structure
7119         size accidentally.
7120
7121 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7122
7123         * docs/libs/Makefile.am:
7124         * docs/libs/gstreamer-libs-docs.sgml:
7125         * docs/libs/gstreamer-libs-sections.txt:
7126         * docs/libs/tmpl/gstbytestream.sgml:
7127         * docs/libs/tmpl/gstcontrol.sgml:
7128         * docs/libs/tmpl/gstdataprotocol.sgml:
7129         * docs/libs/tmpl/gstgetbits.sgml:
7130         * libs/gst/bytestream/Makefile.am:
7131         * libs/gst/bytestream/bytestream.c:
7132         * libs/gst/bytestream/bytestream.h:
7133         * libs/gst/control/Makefile.am:
7134         * libs/gst/dataprotocol/Makefile.am:
7135         * libs/gst/getbits/Makefile.am:
7136         * libs/gst/getbits/getbits.h:
7137           various doc and style fixes, adding bytestream to libs docs.
7138
7139 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7140
7141         * docs/gst/gstreamer-docs.sgml:
7142         * docs/libs/Makefile.am:
7143         * docs/libs/gstreamer-libs-docs.sgml:
7144         * docs/libs/gstreamer-libs-sections.txt:
7145         * libs/gst/control/dparam.c:
7146           more doc fixes.  gst-libs docs now build the same way as gst.
7147
7148 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7149
7150         * configure.ac:
7151         * testsuite/Makefile.am:
7152         * testsuite/bins/Makefile.am:
7153         * testsuite/caps/Makefile.am:
7154         * testsuite/cleanup/Makefile.am:
7155         * testsuite/clock/Makefile.am:
7156         * testsuite/debug/Makefile.am:
7157         * testsuite/dlopen/Makefile.am:
7158         * testsuite/dynparams/Makefile.am:
7159         * testsuite/elements/.cvsignore:
7160         * testsuite/elements/Makefile.am:
7161         * testsuite/enumcaps/Makefile.am:
7162         * testsuite/enumcaps/enumcaps.c:
7163         * testsuite/ghostpads/Makefile.am:
7164         * testsuite/indexers/Makefile.am:
7165         * testsuite/negotiation/Makefile.am:
7166         * testsuite/parse/Makefile.am:
7167         * testsuite/plugin/Makefile.am:
7168         * testsuite/refcounting/Makefile.am:
7169         * testsuite/schedulers/.cvsignore:
7170         * testsuite/states/Makefile.am:
7171         * testsuite/tags/Makefile.am:
7172         * testsuite/threads/Makefile.am:
7173           fold enumcaps into caps dir
7174           clean up Makefile.am's for testsuite
7175
7176 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7177
7178         * docs/gst/Makefile.am:
7179         * docs/libs/Makefile.am:
7180           clean up docs build.  Fixes needless rebuilding of template files.
7181
7182 2004-07-28  Wim Taymans  <wim@fluendo.com>
7183
7184         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7185         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7186         Make sure that a bin state change tries to keep the children
7187         in sync. 
7188         Added debug logging to the thread.
7189
7190 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7191
7192         * win32/GStreamer.vcproj:
7193         * win32/gstreamer.def:
7194           more exports for the plugins
7195
7196 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7197
7198         * win32/gstgetbits.vcproj:
7199         * win32/gstgetbits.def:
7200         * win32/msvc71.sln:
7201           add support for the getbits plugin
7202
7203 2004-07-27  Wim Taymans  <wim@fluendo.com>
7204
7205         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7206         (gst_value_transform_fraction_double), (_gst_value_initialize):
7207         * testsuite/caps/Makefile.am:
7208         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7209         (check_from_fraction_convert), (transform_test), (main):
7210         Added transform functions between double and fraction.
7211         Added testcase to verify transforms
7212
7213 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7214
7215         * win32/GStreamer.vcproj:
7216           rename GStreamer-0.8.lib to libgstreamer.lib
7217
7218 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7219
7220         * win32/gstelements.vcproj:
7221         * win32/gstoptimalscheduler.vcproj:
7222           fixes for the Release build
7223
7224 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7225
7226         * win32/config.h:
7227           update the version number
7228
7229 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7230
7231         * win32/GStreamer.vcproj:
7232           add gstinterface to the build
7233
7234 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7235
7236         * win32/gstreamer.def:
7237           add many definitions needed by plugins,
7238           GST_CAT_DEFAULT only available in the Debug build ?
7239
7240 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7241
7242         * gst/gstelement.c: (gst_element_set_eos_recursive):
7243           various whitespace fixes.
7244           doc fix, fixes #148497
7245
7246 2004-07-25  Benjamin Otte  <otte@gnome.org>
7247
7248         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7249           don't delay links on the sink elements, it causes unnegotiated
7250           links.
7251         * gst/elements/gsttypefindelement.c:
7252         (gst_type_find_element_base_init):
7253           add our padtemplates, we indeed do have some.
7254         * gst/elements/gsttypefindelement.c:
7255         (gst_type_find_element_handle_event),
7256         (gst_type_find_element_chain):
7257           don't push data when typefinding failed.
7258         * gst/gstpad.c: (gst_pad_link_fixate):
7259           check that no fixate function returns empty caps.
7260         * gst/gstpad.c: (gst_pad_push):
7261           check that the link is negotiated before data gets pushed.
7262         * tools/gst-register.c: (main):
7263           don't assert (fixes #148283)
7264
7265 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7266
7267         * docs/gst/gstreamer-sections.txt:
7268         * docs/gst/tmpl/gstconfig.sgml:
7269           add GST_PLUGIN_EXPORT definition
7270
7271 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7272
7273         * gst/gstplugin.h:
7274         * gst/gstconfig.h.in:
7275         * win32/gstconfig.h:
7276         * win32/gstelements.def:
7277         * win32/gstelements.vcproj:
7278         * win32/gstoptimalscheduler.def:
7279         * win32/gstoptimalscheduler.vcproj:
7280         * win32/gstspider.def:
7281         * win32/gstspider.vcproj:
7282           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7283
7284 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7285
7286         * docs/gst/gstreamer-sections.txt:
7287           remove GST_CAT_DEFAULT because the type has changed
7288
7289 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7290
7291         * win32/gstbytestream.vcproj:
7292         * win32/gstelements.vcproj:
7293         * win32/gst-inspect.vcproj:
7294         * win32/gst-launch.vcproj:
7295         * win32/gstoptimalscheduler.vcproj:
7296         * win32/GStreamer.vcproj:
7297         * win32/gst-register.vcproj:
7298         * win32/gstspider.vcproj:
7299         * win32/msvc71.sln:
7300           Copy the files where needed after building, The testsuite will be
7301           built separately
7302
7303 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7304
7305         * win32/config.h:
7306         * win32/README.txt:
7307         * docs/manual/win32.xml:
7308         Fixed the plugin and GStreamer location
7309
7310 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7311
7312         * win32/gstreamer.def:
7313         More exports for the plugins
7314
7315 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7316
7317         * gst/gstinfo.h:
7318         Marc was right, we need to export literally GST_CAT_DEFAULT
7319
7320 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7321
7322         * win32/config.h:
7323         NLS crashes in gettext, disabled until this is solved
7324
7325 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7326
7327         * win32/gst-inspect.vcproj:
7328         * win32/gst-launch.vcproj:
7329         Should use NLS when available
7330
7331 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7332
7333         * gst/registries/gstxmlregistry.c:
7334         removing the file doesn't seem to be a good idea on Linux
7335
7336 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7337
7338         * gst/registries/gstxmlregistry.c:
7339         Remove the registry before renaming the tempfile (needed for Windows)
7340
7341 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7342
7343         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7344         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7345         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7346         * gst/elements/gstmultifilesrc.h:
7347         Added newmedia property so it generates newmedia events between each
7348         file when property is set, as well as fixed eos handling
7349
7350 2004-07-22  David Schleef  <ds@schleef.org>
7351
7352         * gst/gststructure.c: (gst_structure_id_empty_new),
7353         (gst_structure_empty_new):  Set type field correctly.
7354         * gst/gststructure.h: Check type field correctly.
7355         * testsuite/caps/Makefile.am:
7356         * testsuite/caps/structure.c: (test1), (main): Add a very small
7357         test for structures.
7358
7359 2004-07-22  David Schleef  <ds@schleef.org>
7360
7361         * docs/random/ds/0.9-suggested-changes: more comments
7362         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7363
7364 2004-07-22  Benjamin Otte  <otte@gnome.org>
7365
7366         * gst/gstelementfactory.c: (gst_element_register):
7367           set the factory in the class struct, so gst_element_get_factory
7368           actually works
7369         * gst/parse/grammar.y:
7370           set element to playing when it gets unlocked as we can't rely on the
7371           bin state - all elements in the bin state might still be locked in
7372           NULL)
7373
7374 2004-07-22  Benjamin Otte  <otte@gnome.org>
7375
7376         * gst/gstelement.c: (gst_element_set_state_func):
7377           make this a static function
7378
7379 2004-07-22  Wim Taymans  <wim@fluendo.com>
7380
7381         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7382         (gst_opt_scheduler_pad_link):
7383         fix 147894-2 and the group_link problem.
7384
7385 2004-07-22  Wim Taymans  <wim@fluendo.com>
7386
7387         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7388         (handoff_identity), (main):
7389         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7390         (handoff_identity), (main):
7391         * testsuite/schedulers/Makefile.am:
7392         * testsuite/schedulers/group_link.c: (main):
7393         Show bug in scheduler when linking chain and loop based element 
7394         where the chain based element was not yet in a group.
7395
7396 2004-07-21  Benjamin Otte  <otte@gnome.org>
7397
7398         * gst/.cvsignore:
7399         * gst/autoplug/.cvsignore:
7400         * gst/elements/.cvsignore:
7401         * gst/indexers/.cvsignore:
7402         * libs/gst/bytestream/.cvsignore:
7403         * libs/gst/control/.cvsignore:
7404         * libs/gst/getbits/.cvsignore:
7405         * testsuite/states/.cvsignore:
7406         * testsuite/threads/.cvsignore:
7407           keep this up to date, since I seem to be the only one who cares
7408           about not missing files on commits (editor's note: no you don't,
7409           but feel free to change them at the time you add stuff instead
7410           of later on)
7411
7412 2004-07-21  Benjamin Otte  <otte@gnome.org>
7413
7414         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7415         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7416         (gst_bin_child_state_change_func), (set_kid_state_func),
7417         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7418           make state changes work correctly and reentrant (so removing
7419           elements from bins during state changes of bins doesn't cause
7420           segfaults or even wrong states)
7421           add debugging category and debugging output to print children states
7422         * gst/gstbin.c: (gst_bin_dispose): 
7423           add some assertion checks
7424         * gst/gstbin.h:
7425         * gst/gstbin.c: (gst_bin_sync_children_state):
7426           deprecate this function - it just does gst_bin_set_state (bin,
7427           GST_STATE (bin)) 
7428         * testsuite/threads/queue.c: (main):
7429           don't use gst_bin_sync_children_state anymore
7430         * testsuite/states/Makefile.am:
7431         * testsuite/states/bin.c:
7432           test that the state changes of bins work as expected
7433         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7434           some adjustments to change states correctly, too
7435         * gst/gstthread.c: (gst_thread_change_state):
7436           don't enable/disable "threadsafe" properties, they're unused and
7437           cause random segfaults
7438         * testsuite/threads/Makefile.am:
7439           the queue check randomly passes now, ignore it
7440
7441 2004-07-21  Benjamin Otte  <otte@gnome.org>
7442
7443         * gst/gstpad.c:
7444           check if data is NULL before outputting debug info. (fixes #145100)
7445
7446 2004-07-21  Benjamin Otte  <otte@gnome.org>
7447
7448         * gst/schedulers/entryscheduler.c:
7449         (gst_entry_scheduler_loop_wrapper),
7450         (gst_entry_scheduler_chain_wrapper),
7451         (gst_entry_scheduler_get_wrapper):
7452           reset the state when the cothread starts, so we don't get assertion
7453           failures on restarting of cothreads
7454
7455 2004-07-20  Benjamin Otte  <otte@gnome.org>
7456
7457         * gst/gstelement.c: (gst_element_link_pads_filtered):
7458           use correct sinkpad, if only sinkpad is specified, but not srcpad
7459           (fixes #147889)
7460         * gst/gstelement.c: (gst_element_set_state_func),
7461         (gst_element_change_state): ref/unref the element, signal handlers
7462         could get rid of the element otherwise
7463
7464 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7465
7466         * docs/random/ds/0.9-suggested-changes:
7467           Make note about renaming fixed-list to array.
7468         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7469         (_gst_value_initialize):
7470           Add array intersections.
7471         * testsuite/caps/intersect2.c: (main):
7472           Add test for array intersections.
7473
7474 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7475
7476         * configure.ac: back to cvs
7477
7478 === release 0.8.4 ===
7479
7480 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7481
7482         * configure.ac:
7483           releasing 0.8.4, "Paella"
7484           bump libtool versioning
7485
7486 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7487
7488         * po/LINGUAS:
7489         * po/ca.po:
7490           adding Catalan translation (Jordi Mallach)
7491
7492 2004-07-20  Wim Taymans  <wim@fluendo.com>
7493
7494         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7495         (handoff_identity), (main):
7496         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7497         (handoff_identity), (main):
7498         * testsuite/schedulers/Makefile.am:
7499         Added failing testcase for variant of #147894
7500
7501 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7502
7503         patch by: David Moore
7504
7505         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7506         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7507         (group_migrate_connected):
7508         * testsuite/schedulers/Makefile.am:
7509           fix for #142813 (Deadlock in optimal scheduler)
7510
7511 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7512
7513         patch by: Wim Taymans
7514
7515         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7516         (gst_opt_scheduler_schedule_run_queue),
7517         (gst_opt_scheduler_get_wrapper), (get_group),
7518         (group_migrate_connected):
7519         * testsuite/schedulers/Makefile.am:
7520           fix for #147819 (Add some checks in the opt scheduler)
7521
7522 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7523
7524         patch by: Benjamin Otte
7525
7526         * gst/gstelementfactory.c: (__gst_element_details_set):
7527           fix for #147929: running gst-register in non-utf8 locale can cause
7528           invalid registry
7529
7530 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7531
7532         patch by: Wim Taymans
7533
7534         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7535         (group_has_element), (element_get_reachables_func),
7536         (group_migrate_connected):
7537           fix for #147894 (opt scheduler decoupled elements mismanagement)
7538         * testsuite/schedulers/Makefile.am:
7539           testsuite app now passes
7540
7541 2004-07-19  Wim Taymans  <wim@fluendo.com>
7542
7543         * testsuite/schedulers/147819.c: (handoff_identity1),
7544         (handoff_identity2), (main):
7545         * testsuite/schedulers/Makefile.am:
7546         Added testcase for bug 147819
7547
7548 2004-07-19  Wim Taymans  <wim@fluendo.com>
7549
7550         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7551         (handoff_identity), (main):
7552         * testsuite/schedulers/Makefile.am:
7553         Added testcase for bug 147894
7554
7555 2004-07-16  Wim Taymans  <wim@fluendo.com>
7556
7557         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7558         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7559         * testsuite/schedulers/Makefile.am:
7560         Added testsuite for bug 142183 in its two incarnations. Refcount
7561         is not increased for scheduled elements and threadsafe properties
7562         mutexes are not properly unlocked.
7563
7564 2004-07-16  Wim Taymans  <wim@fluendo.com>
7565
7566         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7567         (create_chain), (destroy_chain), (create_group), (destroy_group),
7568         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7569         (group_dec_link), (gst_opt_scheduler_pad_link),
7570         (group_inc_links_for_element), (group_migrate_connected):
7571         Call group_inc_link with the proper src->sink ordering -- 
7572         break this, and we break sort_chain. patch from wingo for bug
7573         147713.
7574         Partially revert patch 1.89. When adding a loop based element to 
7575         the scheduler, the links to other groups are automatically followed
7576         and incremented. This should not happen because the bin will call
7577         pad_link explicitly for those connection, resulting in them counted 
7578         twice. Results in assertion failure on pipeline cleanup.
7579
7580 2004-07-16  Wim Taymans  <wim@fluendo.com>
7581
7582         * testsuite/schedulers/143777-2.c: (main):
7583         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7584         (main):
7585         * testsuite/schedulers/Makefile.am:
7586         Added cleanup code to testcase 143777-2.
7587         Added testcase to show bug 147713, does not really show the
7588         deadlock as I can't figure out how to trigger it, but it does
7589         demonstrate bad ordering in the scheduler.
7590
7591 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7592
7593         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7594           change strndup to g_strndup.  Fixes #147707
7595
7596 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7597
7598         * po/af.po:
7599         * po/az.po:
7600         * po/cs.po:
7601         * po/en_GB.po:
7602         * po/fr.po:
7603         * po/nl.po:
7604         * po/sr.po:
7605         * po/sv.po:
7606         * po/tr.po:
7607         * po/uk.po:
7608           updated translations
7609
7610 2004-07-16  Benjamin Otte  <otte@gnome.org>
7611
7612         * gst/gstvalue.c: (gst_greatest_common_divisor):
7613           use ints and return ints, fractions only use ints, too, so this
7614           avoids accidently casting multiplications to unsigned
7615         (gst_value_lcopy_fraction): it's ints, not uint32
7616         (gst_value_set_fraction): disallow minint, multiplying and negation
7617           are broken with it
7618         (gst_value_fraction_multiply): fix to make large numbers work and get
7619         rid of the assumption that the multiplication of two ints fits an
7620         int64 - dunno if that's true for all systems
7621         * testsuite/caps/Makefile.am:
7622         * testsuite/caps/fraction-multiply-and-zero.c:
7623         (check_multiplication), (check_equal), (zero_test), (main):
7624           add tests for all the stuff above
7625         * testsuite/caps/value_compare.c: (test1):
7626           fix comment
7627         * tests/.cvsignore:
7628         * testsuite/caps/.cvsignore:
7629         * testsuite/debug/.cvsignore:
7630         * testsuite/dlopen/.cvsignore:
7631         * testsuite/states/.cvsignore:
7632           get up to date
7633
7634 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7635
7636         * docs/manual/bins-api.xml:
7637         * docs/manual/factories.xml:
7638         * docs/manual/helloworld.xml:
7639         * docs/manual/links-api.xml: 
7640           fixes for out of date info, incorrect info and grammar
7641
7642 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7643
7644         * docs/manual/pads.xml:
7645         * docs/manual/pads-api.xml: grammar fix
7646
7647 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7648
7649         * docs/manual/pads-api.xml: typo + grammar fix
7650
7651 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7652
7653         * docs/gst/gstreamer-sections.txt:
7654           add new symbols
7655         * docs/gst/tmpl/gstelement.sgml:
7656         * docs/gst/tmpl/gstpad.sgml:
7657         * docs/gst/tmpl/gsttypes.sgml:
7658         * docs/gst/tmpl/gstvalue.sgml:
7659           update docs
7660         * gst/gststructure.c: (gst_structure_set_valist),
7661         (gst_structure_from_abbr), (gst_structure_to_abbr):
7662         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7663         (gst_greatest_common_divisor), (gst_value_init_fraction),
7664         (gst_value_copy_fraction), (gst_value_collect_fraction),
7665         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7666         (gst_value_get_fraction_numerator),
7667         (gst_value_get_fraction_denominator),
7668         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7669         (gst_value_deserialize_fraction),
7670         (gst_value_transform_fraction_string),
7671         (gst_value_transform_string_fraction),
7672         (gst_value_compare_fraction), (_gst_value_initialize):
7673         * gst/gstvalue.h:
7674           adding GstFraction GValue type, get/set, and multiply
7675         * testsuite/caps/Makefile.am:
7676         * testsuite/caps/fraction.c: (test), (main):
7677         * testsuite/caps/string-conversions.c: (main):
7678         * testsuite/caps/value_compare.c: (test1), (main):
7679           add regression tests for GstFraction
7680
7681 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7682         
7683         * docs/manual/init-api.xml: Grammar fix
7684
7685 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7686
7687         * docs/manual/states.xml: Fix inconsistent information
7688
7689 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7690
7691         * gst/gstelement.c: (gst_element_set_state):
7692         * gst/gstpad.c: (gst_pad_try_set_caps):
7693         * gst/gststructure.c:
7694         * gst/gstthread.c: (gst_thread_child_state_change):
7695         * gst/gstvalue.c: (gst_value_compare_double):
7696         * gst/gstvalue.h:
7697         * testsuite/parse/parse1.c: (main):
7698           debugging additions and style cleanups
7699
7700 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7701
7702         * docs/manual/states.xml: Grammar fix
7703
7704 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7705
7706         * docs/manual/pads.xml: Grammar fix
7707
7708 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7709
7710         * docs/manual/elements.xml: Fixed image reference
7711
7712 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7713
7714         * docs/manual/goals.xml: Grammar fix
7715
7716 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7717
7718         * docs/manual/motivation.xml:
7719         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7720
7721 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7722
7723         * docs/manual/motivation.xml: Fix spelling
7724
7725 2004-07-15  Benjamin Otte  <otte@gnome.org>
7726
7727         * gst/gstelement.h: 
7728           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7729           strings.
7730         * gst/gstelement.c (gst_element_class_init):
7731           GError's are boxed, not objects
7732         * gst/gstmarshal.list:
7733           update list for the fixed error signal
7734
7735 2004-07-14  Andy Wingo  <wingo@pobox.com>
7736
7737         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7738         there all along, but the function wasn't. (guile-gstreamer's build
7739         system uses the address of the function -- I wasn't actually
7740         trying to use this.)
7741
7742 2004-07-14  Andy Wingo  <wingo@pobox.com>
7743
7744         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7745         as gst_pad_proxy_pad_link) just link to every other pad when they
7746         are called. In the case where the graph has cycles, this will mean
7747         that a call to try_set_caps will recurse. Allow this recursion
7748         and return OK, while we wait for the first try_set_caps to give a
7749         proper return value.
7750         (gst_pad_link_call_link_functions): Since this function is the
7751         only one to set the NEGOTIATING flag on a pad, if the flag is set
7752         it means that the link functions have indirectly recursed. If this
7753         happens, error out to avoid infinite recursion and an eventual
7754         SEGV.
7755         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7756         (gst_pad_proxy_getcaps): Intersect the result with the template
7757         caps to ensure that the return value is valid.
7758
7759 2004-07-14  Andy Wingo  <wingo@pobox.com>
7760
7761         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7762         one refcount, the calling function is the owner of the buffer.
7763
7764 2004-07-14  Wim Taymans  <wim@fluendo.com>
7765
7766         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7767         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7768         Fix stupid warning when an element is to be migrated but
7769         is already migrated.
7770
7771 2004-07-14  Wim Taymans  <wim@fluendo.com>
7772
7773         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7774         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7775         Make sure that a single non-loop-based element does not 
7776         end up in a group. This fixes the testsuite again.
7777
7778 2004-07-14  Wim Taymans  <wim@fluendo.com>
7779
7780         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7781         (add_to_group), (merge_groups), (schedule_group),
7782         (gst_opt_scheduler_get_wrapper), (group_elements),
7783         (group_dec_link), (gst_opt_scheduler_pad_link),
7784         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7785         (gst_opt_scheduler_iterate):
7786         move isolated groups to a new chain.
7787         Emit a warning instead of segfaulting in some error cases.
7788         Fix a bug where the link count between groups was not calculated 
7789         correctly. Fixes #144510.
7790
7791 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7792         * gst/elements/gstfilesrc.c:
7793           Binary files support under Windows now OK
7794       
7795 2004-07-13  Benjamin Otte  <otte@gnome.org>
7796
7797           compatibility fixes for Solaris 8/gcc 2.95
7798         * configure.ac:
7799           include libintl libs in LDFLAGS
7800         * gstvalue.c (gst_value_deserialize_buffer):
7801           cast isxdigit stuff to int to silence compiler warning
7802
7803 2004-07-12  Benjamin Otte  <otte@gnome.org>
7804
7805         * gst/gsttypes.h:
7806           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7807           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7808           just causes support madness
7809         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7810           make it work without this
7811         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7812         (gst_file_index_commit):
7813           glib IO channels don't want binary mode
7814         * testsuite/bytestream/filepadsink.c: (main):
7815         * testsuite/bytestream/test1.c: (read_param_file):
7816           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7817
7818 2004-07-12  Benjamin Otte  <otte@gnome.org>
7819
7820         * gst/gstelement.c: (gst_element_class_init),
7821         (gst_element_set_state), (gst_element_set_state_func):
7822           virutalize gst_element_set_state, use set_state member in class
7823           struct that was already added in 0.7 for this.
7824         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7825         (gst_bin_change_state):
7826           make gst_bin_foreach works similar to other foreach functions, plug
7827           memleaks in it. Make functions using it work with the new approach.
7828           Document gst_bin_foreach, so it can be exported if we want to
7829         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7830           use virtualized set_state to make set_state on bins set the state of
7831           all its children.
7832
7833 2004-07-12  Benjamin Otte  <otte@gnome.org>
7834
7835         * configure.ac:
7836           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7837           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7838         * gst/gstpad.c: (gst_pad_alloc_buffer):
7839           allow buffer_alloc functions to return NULL and allocate a normal
7840           buffer in that case
7841
7842 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7843         * gst/elements/gstfilesink.c:
7844         * gst/elements/gstfilesrc.c:
7845         * gst/indexers/gstfileindex.c:
7846         * gst/gsttypes.h:
7847         * testsuite/bytestream/filepadsink.c:
7848         * testsuite/bytestream/test1.c:
7849           Handle binary files under Windows
7850
7851 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7852         * docs/manual/win32.xml:
7853         * win32/config.h:
7854         * win32/gst-register.vcproj:
7855         * win32/gstreamer.def:
7856           Update to another gettext public build
7857
7858 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7859         * gst/gstplugin.c:
7860           Fix an impossible C syntax
7861         * win32/config.h:
7862           Disable i18n under Windows for the moment
7863         * win32/gst-register.vcproj:
7864           Use this configuration
7865
7866 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7867         * docs/manual/quotes.xml:
7868           Keep the quotes file alive
7869         * docs/random/ds/0.9-suggested-changes:
7870           Add the suggestion of including a 'rowstride' as part of video
7871           format caps
7872
7873 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7874
7875         * gst/gstelement.c: (gst_element_set_state),
7876         (gst_element_change_state):
7877           d'oh.  Set PENDING state correctly before forcing bin to change.
7878         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7879         (gst_structure_parse_fixed_list):
7880         * gst/schedulers/gstoptimalscheduler.c:
7881         (gst_opt_scheduler_state_transition):
7882         * testsuite/states/parent.c: (main):
7883           remove comment now that it's fixed.
7884
7885 2004-07-11  Benjamin Otte  <otte@gnome.org>
7886
7887         * gst/gstclock.h:
7888           GST_SECOND shouldn't cause a conversion to unsigned.
7889         * testsuite/clock/.cvsignore:
7890         * testsuite/clock/Makefile.am:
7891         * testsuite/clock/signedness.c: (main):
7892           make sure it never will again
7893
7894 2004-07-11  Andy Wingo  <wingo@pobox.com>
7895
7896         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7897         whose state is higher than the bin state, raise the bin state to
7898         ensure that bin state := highest child state.
7899         
7900 2004-07-11  Andy Wingo  <wingo@pobox.com>
7901
7902         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7903         procedure on the children of a bin. Assumes that the procedure can
7904         change the set of children.
7905         (set_kid_state_func): New static function.
7906         (gst_bin_change_state): Use gst_bin_foreach to call
7907         set_kid_state_func. Fixes a bug: if a child had a state-change
7908         handler that removes it from the bin, there would be a segfault.
7909         Hopefully it should also work in the case where the state-change
7910         handler on one child adds or removes other children. In any case,
7911         fixes should go to gst_bin_foreach.
7912
7913 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7914
7915         * gst/gstelement.c: (gst_element_set_state):
7916           compatibility fix for latest plugins release.  Change loop back
7917           to while {}
7918
7919 2004-07-09  Wim Taymans  <wim@fluendo.com>
7920
7921         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7922         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7923         (gst_thread_main_loop):
7924         Since remove is virtual in GstBin we must not assume the 
7925         elements GList to have anothing useful.
7926         Add some more logging to GstThread and be a bit more paranoid
7927         when resetting the scheduler.
7928         Set the state of the bin to NULL before removing the children.
7929
7930 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7931
7932         * testsuite/threads/Makefile.am:
7933         * testsuite/threads/threadg.c:
7934           added test to check if problem when removing all elements from a
7935           GstThread before setting GstThread state to NULL
7936
7937 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7938
7939         * docs/gst/tmpl/gstelement.sgml:
7940         * docs/gst/tmpl/gsttypes.sgml:
7941         * gst/gstbin.c: (gst_bin_change_state):
7942         * gst/gstelement.c: (gst_element_set_state),
7943         (gst_element_change_state):
7944           rework so that for bins we try to set the state on all children
7945           as well even if the bin is in the correct state already.
7946           change while to do so at least one iteration is done.
7947           For regular elements, we fall back to the previous behaviour for
7948           now since we first need a new plugins release.
7949         * testsuite/states/parent.c: (main):
7950           test for this case
7951           Fixes #123774
7952
7953 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7954
7955         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7956         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7957         (gst_queue_release_locks), (gst_queue_change_state),
7958         (gst_queue_set_property):
7959           add proper lock debugging.  Change dispose to finalize, since
7960           we're freeing mutexes and other stuff which should happen only once.
7961
7962 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7963
7964         * docs/gst/tmpl/gstelement.sgml:
7965         * docs/gst/tmpl/gstplugin.sgml:
7966         * docs/gst/tmpl/gsttypes.sgml:
7967         * docs/pwg/building-state.xml:
7968         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7969         * gst/gstelement.c: (gst_element_change_state):
7970         * gst/gstthread.c: (gst_thread_change_state):
7971           catch wrong state changes in element base class.
7972
7973 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7974
7975         * gst/gstinfo.h:
7976           clean up layout a little.
7977
7978 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7979
7980         * configure.ac:
7981         * testsuite/Makefile.am:
7982         * testsuite/states/Makefile.am:
7983         * testsuite/states/parent.c: (main):
7984           re-enable states testsuite dir.  Add test for state changes and
7985           parent behaviour
7986
7987 2004-07-09  Wim Taymans  <wim@fluendo.com>
7988
7989         * gst/schedulers/gstoptimalscheduler.c:
7990         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7991         (element_get_reachables_func), (element_get_reachables),
7992         (debug_element), (rechain_group), (group_migrate_connected),
7993         (gst_opt_scheduler_pad_unlink):
7994         Do not try to migrate decoupled elements to a new group since
7995         they are not added to groups.
7996
7997 2004-07-08  Benjamin Otte  <otte@gnome.org>
7998
7999         * gst/gstelement.c: (gst_element_error_func):
8000           make reentrant (= allow removing elements in error handler)
8001
8002 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8003
8004         * gst/gstpad.c: (gst_pad_event_default_dispatch),
8005         (gst_pad_send_event), (gst_pad_call_chain_function):
8006           events sent to elements below PAUSED cannot be handled, so
8007           don't try to
8008
8009 2004-07-08  Wim Taymans  <wim@fluendo.com>
8010
8011         * gst/schedulers/gstoptimalscheduler.c:
8012         (chain_recursively_migrate_group), (create_group),
8013         (schedule_group), (gst_opt_scheduler_pad_link),
8014         (group_elements_set_visited), (element_get_reachables_func),
8015         (element_get_reachables), (group_can_reach_group), (debug_element),
8016         (rechain_group), (group_migrate_connected),
8017         (gst_opt_scheduler_pad_unlink):
8018         * testsuite/schedulers/Makefile.am:
8019         Implemented group splitting and rechaining.
8020         Fixes 143777 and 143777-2 in the testsuite.
8021
8022 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8023
8024         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8025           extra debugging
8026         * gst/gstevent.h:
8027         * gst/gstinfo.c: (gst_debug_log_default):
8028           print time nicely.  add thread pointer until someone figures out
8029           a completely portable way of getting at thread id's.
8030         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
8031         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
8032         (gst_pad_call_chain_function):
8033           extra debugging
8034         * gst/schedulers/gstoptimalscheduler.c:
8035         (get_group_schedule_function), (loop_group_schedule_function),
8036         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8037         (pad_clear_queued), (gst_opt_scheduler_iterate):
8038           rename BUFPEN and friends to DATAPEN since that's what they are.
8039
8040 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8041
8042         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8043         * gst/gstbuffer.h:
8044         * gst/gstpad.c:
8045           cleanups and debugging
8046
8047 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8048
8049         * configure.ac:
8050         * gst/gstvalue.c: (gst_value_compare_enum),
8051         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8052         (gst_value_can_compare), (gst_value_compare):
8053         * testsuite/Makefile.am:
8054         * testsuite/enumcaps/Makefile.am:
8055         * testsuite/enumcaps/enumcaps.c:
8056           Fix enum serialization, deserialization, comparison in caps, add
8057           a test to ensure that this continues working in the future.
8058
8059 2004-07-06  David Schleef  <ds@schleef.org>
8060
8061         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8062         Fix memleak.
8063
8064 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8065
8066         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8067         * gst/gstplugin.h:
8068         * gst/registries/gstxmlregistry.c:
8069         (plugin_times_older_than_recurse), (plugin_times_older_than),
8070         (gst_xml_registry_parse_padtemplate):
8071           only rebuild registry when actual plugins have a newer time than
8072           the registry.  Fixes #145520
8073
8074 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8075
8076         * docs/manual/manual.xml:
8077         * docs/manual/win32.xml:
8078           add chapter on win32 building.  fixes #142422
8079
8080 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8081
8082         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8083
8084         * gst/autoplug/gstspider.c: (gst_spider_init),
8085         (gst_spider_dispose):
8086           fix spider memleaks.  fixes #137863
8087
8088 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8089
8090         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8091
8092         * gst/schedulers/gstoptimalscheduler.c:
8093         (gst_opt_scheduler_pad_unlink):
8094           fix SIGBUS error, fixes #145338
8095
8096 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8097
8098         * gst/gstobject.c: (gst_object_replace):
8099         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8100         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8101           clean up clock lifecycle.  Fixes #109831
8102
8103 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8104
8105         * po/LINGUAS:
8106         * po/cs.po:
8107           added Czech translation (Miloslav Trmac)
8108
8109 2004-07-04  David Schleef  <ds@schleef.org>
8110
8111         * tools/Makefile.am:
8112         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8113
8114 2004-07-04  David Schleef  <ds@schleef.org>
8115
8116         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8117
8118 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8119
8120         * gst/gstbin.c: (gst_bin_restore_thyself):
8121           chain to parent restore so the bins get restored correctly
8122           in the editor
8123
8124 2004-07-03  David Schleef  <ds@schleef.org>
8125
8126         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8127         Actually do something in these functions, like before the big
8128         caps change.  (bug #145137)
8129
8130 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8131
8132         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8133         (gst_element_get_compatible_pad_filtered):
8134         * gst/gstthread.c: (gst_thread_main_loop):
8135           more debugging
8136
8137 2004-07-02  David Schleef  <ds@schleef.org>
8138
8139         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8140         * gst/gstobject.h:
8141         * gst/gstparse.h:
8142         * gst/gsttrace.h:
8143         * gst/gstxml.h:
8144
8145 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8146
8147         * gst/gstpad.c: (gst_pad_check_schedulers),
8148         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8149         (gst_pad_link_prepare):
8150           revert until testsuite is fixed
8151
8152 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8153
8154         * testsuite/Makefile.am:
8155         * testsuite/caps/filtercaps.c: (main):
8156         * testsuite/clock/clock1.c: (main):
8157         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8158           fix some more tests
8159
8160 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8161
8162         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8163         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8164         * testsuite/cleanup/cleanup4.c: (main):
8165           fix testsuite
8166
8167 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8168
8169         * libs/gst/control/control.c:
8170         * libs/gst/control/dparam.c:
8171         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8172         * libs/gst/control/dparammanager.c:
8173         * libs/gst/control/dparammanager.h:
8174         * testsuite/dynparams/Makefile.am:
8175         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8176         (gst_dptest_change_state), (gst_dptest_chain), (main):
8177           fix testcase for dparams
8178           add debugging category
8179
8180 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8181
8182         * testsuite/Rules:
8183           change path
8184
8185 2004-07-02  Benjamin Otte  <otte@gnome.org>
8186
8187         * tests/.cvsignore:
8188         * tests/Makefile.am:
8189         * tests/mass_elements.c: (gst_get_current_time), (main):
8190           add simple benchmark to test various speeds of fakesrc ! identity !
8191           identity ! ... ! fakesink.
8192           Usage: mass_elements [num_identities] [num_buffers]
8193           If not specified they default to 1000.
8194
8195 2004-07-02  Benjamin Otte  <otte@gnome.org>
8196
8197         * gst/gstpad.c: (gst_pad_check_schedulers),
8198         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8199         (gst_pad_link_prepare):
8200           check that pads that get linked belong to the same manager. The old
8201           code allowed linking elements before putting them into bins, so it
8202           worked to link them and then put them in different threads, which
8203           lead to weird behaviour.
8204           Since this effectively disallows linking elements before putting
8205           them in a bin, some applications might not work after this and error
8206           out. If these applications are too critical, we might need to revert
8207           that patch. Please test this before the next release...
8208
8209 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8210
8211         * gst/gstpad.c: (gst_pad_get_caps):
8212           throw an error if the getcaps function does not return a subset of
8213           the template caps.
8214         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8215           make disconts without position info an error in debugging
8216         * tests/spidey_bench.c: (handoff), (main):
8217           don't count first try when averaging
8218
8219 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8220
8221         * gst/gstplugin.c: (gst_plugin_load_file):
8222           figure out problem with dynamic test
8223
8224 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8225
8226         * docs/gst/Makefile.am:
8227           fix docs build
8228
8229 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8230
8231         * po/POTFILES.in:
8232         * po/af.po:
8233         * po/az.po:
8234         * po/en_GB.po:
8235         * po/fr.po:
8236         * po/nl.po:
8237         * po/sr.po:
8238         * po/sv.po:
8239         * po/tr.po:
8240         * po/uk.po:
8241         * tools/gst-register.c: (plugin_added_func), (main):
8242           i18n-ize -register, fix plural
8243
8244 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8245
8246         * gst/elements/gstidentity.c: (gst_identity_class_init),
8247         (gst_identity_init), (gst_identity_chain),
8248         (gst_identity_set_property), (gst_identity_get_property):
8249         * gst/elements/gstidentity.h:
8250           check for perfect stream
8251
8252 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8253
8254         * gst/elements/gstidentity.c: (gst_identity_chain):
8255           print offset_end
8256
8257 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8258
8259         * docs/gst/Makefile.am:
8260         * docs/gst/gstreamer-docs.sgml:
8261           doc fixes
8262
8263 2004-06-24  David Schleef  <ds@schleef.org>
8264
8265         * autogen.sh:  Remove call to env, since the buildbot isn't
8266         broken anymore.
8267
8268 2004-06-24  Wim Taymans  <wim@fluendo.com>
8269
8270         * gst/elements/Makefile.am:
8271         * gst/elements/gstelements.c:
8272         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8273         (gst_multifdsink_class_init), (gst_multifdsink_init),
8274         (gst_multifdsink_add), (gst_multifdsink_remove),
8275         (gst_multifdsink_clear), (gst_multifdsink_chain),
8276         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8277         * gst/elements/gstmultifdsink.h:
8278         Added an element that writes to multiple filedescriptors at once.
8279
8280 2004-06-24  Benjamin Otte  <otte@gnome.org>
8281
8282         * gst/parse/grammar.y:
8283           don't try to link elements before they have been added to bins
8284
8285 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8286
8287         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8288         (gst_file_pad_get_length):
8289         * libs/gst/bytestream/filepad.h:
8290           add 2 new functions
8291
8292 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8293
8294         * docs/gst/gstreamer-sections.txt:
8295         remove from docs, the define that Benjamin removed from gstelement.h
8296
8297 2004-06-22  Benjamin Otte  <otte@gnome.org>
8298
8299         * gst/gstelement.h:
8300           remove define that referenced a nonexisting GstElement struct member
8301
8302 2004-06-20  Benjamin Otte  <otte@gnome.org>
8303
8304         * gst/gstdata.c: (gst_data_is_writable):
8305           whoops, return values were wrong, so writable data was marked as
8306           non-writable and vice versa. (fixes #143953, spotted by Francis
8307           Labonte)
8308           Shows how rarely we need to copy data ;)
8309
8310 2004-06-20  Benjamin Otte  <otte@gnome.org>
8311
8312         * testsuite/schedulers/.cvsignore:
8313         * testsuite/schedulers/Makefile.am:
8314         * testsuite/schedulers/143777-2.c: (main):
8315           add test for opt breakage in bug #143777
8316
8317 2004-06-20  Benjamin Otte  <otte@gnome.org>
8318
8319         * gst/gstpad.c: (gst_pad_call_chain_function):
8320           check for if we were unlinked while inside the chainfunction (fixes
8321           entrygthread having issues with #143777)
8322         * testsuite/schedulers/143777.c: (main):
8323         * testsuite/schedulers/Makefile.am:
8324           add a test for that fix
8325
8326 2004-06-20  Benjamin Otte  <otte@gnome.org>
8327
8328         * gst/gstvalue.c: (gst_value_set_int_range):
8329           test that start is smaller then end
8330         * libs/gst/bytestream/Makefile.am:
8331         * libs/gst/bytestream/filepad.c: 
8332         * libs/gst/bytestream/filepad.h:
8333           add GstFilePad - a pad that behaves like a FILE*
8334         * testsuite/bytestream/.cvsignore:
8335         * testsuite/bytestream/Makefile.am:
8336         * testsuite/bytestream/filepadsink.c: 
8337           test for the GstFilePad
8338
8339 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8340
8341         * gst/elements/gstidentity.c: (gst_identity_class_init),
8342         (gst_identity_init), (gst_identity_set_clock),
8343         (gst_identity_chain), (gst_identity_set_property),
8344         (gst_identity_get_property):
8345         * gst/elements/gstidentity.h:
8346         * gst/gstclock.c: (gst_clock_id_wait):
8347           add a "sync" property to sync to the clock
8348
8349 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8350
8351         * gst/gstelementfactory.c: (gst_element_factory_create):
8352           make the freakin "elementfactory bla has no type" message more
8353           useful. So we actually can do something when someone shows up
8354           complaining about it.
8355
8356 2004-06-15  Johan Dahlin  <johan@gnome.org>
8357
8358         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8359         found. This matches the old behavior better. Thanks to Thomas for
8360         pointing out.
8361
8362 2004-06-14  David Schleef  <ds@schleef.org>
8363
8364         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8365         -fomit-frame-pointer.  Appears to generate correct code in
8366         other cases as well.
8367
8368 2004-06-14  Johan Dahlin  <johan@gnome.org>
8369
8370         * tools/gst-inspect.c (main): Add two new command line options: -a
8371         to print all elements and -n to print the name on each line. Also
8372         fix some error reporting.
8373         (main): Simplify, remove -n and always print names if -a is specified
8374
8375 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8376
8377         * win32/gstconfig.h:
8378         * win32/GSTreamer.vcproj:
8379         * win32/Makefile:
8380         * gst/gstconfig.h.in:
8381         * gst/gst.h:
8382         * gst/gstbin.h:
8383         * gst/gstelement.h:
8384         * gst/gstevent.h:
8385         * gst/gstobject.h:
8386         * gst/gstpad.h:
8387         * docs/gst/gstreamer-sections.txt:
8388         * docs/gst/tmpl/gstconfig.sgml:
8389           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8390
8391 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8392         * docs/gst/gstreamer-sections.txt:
8393         * docs/gst/tmpl/gstconfig.sgml:
8394         Add the GSTREAMER_EXPORT macro to the docs
8395
8396 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8397
8398         * tools/gst-compprep.c: (handle_xmlerror), (main):
8399         Add a check for the version that introduced SetStructuredError to fix
8400         the build on FC1
8401
8402 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8403
8404         * win32/msvc71.sln:
8405         * win32/testsuite/:
8406           prepare to compile the testsuite with MSVC
8407
8408 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8409
8410         * docs/manual/win32.xml:
8411           attempt to transform the Win32 README into an XML doc
8412
8413 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8414
8415         * gst/gst.c:
8416         * gst/gstbin.*:
8417         * gst/config.h.in:
8418         * gst/gstelement.*:
8419         * gst/gstevent.h:
8420         * gst/gstobject.*:
8421         * gst/gstpad.h:
8422         * tools/gst-register.c:
8423         * win32/gstreamer.def:
8424           extern symbols are now exported for the Windows DLL
8425
8426 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8427
8428         * gst/gstinfo.h:
8429           fix a problem to enable/disable DEBUG under MSVC
8430
8431 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8432
8433         * win32/:
8434           enable more debug code in DEBUG build
8435
8436 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8437
8438         * win32/config.h:
8439         * gst/gst-i18n-app.h:
8440           enable NLS under Windows
8441
8442 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8443         * tools/gst-compprep.c: (handle_xmlerror), (main):
8444           Make an error that baffled me a bit clearer
8445
8446 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8447
8448         * gst/gstqueue.c:
8449           don't use g_queue_get_length () because it's 2.4, use ->length
8450
8451 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8452
8453         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8454
8455         * tools/gst-inspect.c: (print_signal_info):
8456           don't free random data twice. (fixes #144185)
8457
8458 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8459
8460         * gst/gstqueue.c:
8461         * gst/gstqueue.h:
8462           fix removing from the wrong queue on event timeout
8463           fix disposing of the event queue by casting correctly
8464           add mutexes for handling the event queue
8465           someone was sleeping when fixing queue last time around :)
8466
8467 2004-06-10  Johan Dahlin  <johan@gnome.org>
8468
8469         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8470         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8471
8472 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8473
8474         * docs/random/gdp:
8475         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8476         * libs/gst/dataprotocol/dataprotocol.c:
8477         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8478         (gst_dp_buffer_from_header):
8479         * libs/gst/dataprotocol/dataprotocol.h:
8480         * libs/gst/dataprotocol/dp-private.h:
8481           rev version to 0.1, add buffer flags and copy them
8482
8483 2004-06-09  Johan Dahlin  <johan@gnome.org>
8484
8485         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8486         the flags from the buffer we're copying.
8487
8488 2004-06-09  Wim Taymans  <wim@fluendo.com>
8489
8490         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8491         * gst/elements/gstidentity.c: (gst_identity_init),
8492         (gst_identity_chain):
8493         Print more buffer info in fakesink.
8494         Make identity output similar to fakesink.
8495
8496 2004-06-07  Daniel Gazard  <dany42@free.fr>
8497
8498         reviewed by Benjamin Otte  <otte@gnome.org>
8499
8500         * configure.ac:
8501           fix cross compiling not working. (fixes #143741)
8502
8503 2004-06-07  Benjamin Otte  <otte@gnome.org>
8504
8505         * gst/gstelement.c: (gst_element_set_time_delay):
8506           add failure check
8507         * gst/gstinfo.h:
8508           put brackets around macro arguments of GST_TIME_ARGS, add note to
8509           move it to correct header in 0.9
8510
8511 2004-06-07  Benjamin Otte  <otte@gnome.org>
8512
8513         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8514         (gst_file_index_load), (_file_index_id_save_entries),
8515         (gst_file_index_commit), (gst_file_index_add_association),
8516         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8517         (gst_file_index_plugin_init):
8518           make debugging use a default category
8519
8520 2004-06-06  David Moore  <dcm@acm.org>
8521
8522         reviewed by Benjamin Otte  <otte@gnome.org>
8523
8524         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8525         (gst_fdsrc_change_state):
8526           reset offset counter when going READY => PAUSED. (fixes #142903)
8527
8528 2004-06-06  ed@catmur.co.uk
8529
8530         reviewed by Benjamin Otte  <otte@gnome.org>
8531
8532         * gst/registries/gstxmlregistry.c:
8533         (gst_xml_registry_rebuild_recurse):
8534           don't rely on g_dir_open to figure out if a file is a directory, use
8535           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8536           directories. (fixes #142850)
8537
8538 2004-06-06  Benjamin Otte  <otte@gnome.org>
8539
8540         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8541           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8542         * libs/gst/bytestream/adapter.c:
8543         * libs/gst/bytestream/adapter.h:
8544           fix copyright in header and typo in debugging category name
8545
8546 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8547
8548         * configure.ac:
8549           bump nano to cvs
8550
8551 === release 0.8.3 ===
8552
8553 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8554
8555         * configure.ac:
8556           update libtool versioning
8557           do a new release
8558         * docs/gst/tmpl/gstelement.sgml:
8559         * docs/gst/tmpl/gsttypes.sgml:
8560         * gst/gstinfo.c: (_gst_debug_init):
8561           put back GST_CAT_DATAFLOW to fix API breakage
8562
8563 2004-06-04  David Schleef  <ds@schleef.org>
8564
8565         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8566
8567 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8568
8569         * configure.ac:
8570           bump nano to cvs
8571
8572 === release 0.8.2 ===
8573
8574 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8575
8576         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8577           check GST_DEBUG environment variable which is parsed the same way
8578           as --gst-debug=
8579
8580 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8581
8582         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8583                             gstmd5sink.c gstshaper.c gsttee.c
8584                             gsttypefindelement.c
8585         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8586
8587           - removing trailing commas at end of enums
8588             it is correct C99 code but C90 compilers would complain
8589             (AIX, Forte, ...)
8590             ('should' fix #143290, at least partially)
8591
8592 2004-05-27  Wim Taymans  <wim@fluendo.com>
8593
8594         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8595         (chain_group_set_enabled), (create_group), (add_to_group),
8596         (merge_groups), (setup_group_scheduler), (group_elements),
8597         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8598         Don't try to follow the pad connections with other groups
8599         when a loop based element is added to the scheduler because
8600         the bin will inform the scheduler about the pad links a little
8601         later.
8602
8603 2004-05-27  Wim Taymans  <wim@fluendo.com>
8604
8605         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8606         (remove_from_chain), (chain_group_set_enabled),
8607         (setup_group_scheduler), (group_element_set_enabled),
8608         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8609         (gst_opt_scheduler_show):
8610         Elements without a group can do a state change as well, just wait
8611         with the setup of the scheduling function when it is added to a
8612         chain.
8613
8614 2004-05-27  Wim Taymans  <wim@fluendo.com>
8615
8616         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8617         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8618         (merge_groups), (setup_group_scheduler),
8619         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8620         (gst_opt_scheduler_show):
8621         Fixes to maintain internal consistency of the scheduler data
8622         structures. 
8623          - adding an enabled group to a chain should increment the
8624            number of enabled elements in that chain.
8625          - removing an enabled group from a chain could disable the
8626            chain.
8627          - removing a disabled group from a chain could enable the
8628            chain.
8629          - add g_assert when internal inconsistency is detected.
8630          - adding an element to a group could increase the number of
8631            links this group has with other groups.
8632          - merging two groups also merges the chains.
8633          - also show group links in the _show method.
8634            
8635
8636 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8637
8638         * gst/gstcaps.c: (gst_caps_structure_simplify):
8639           don't print error messages when there is no error
8640         * gst/gstvalue.c: (gst_value_compare_int_range):
8641           compare the second value, too
8642         * testsuite/caps/Makefile.am:
8643         * testsuite/caps/random.c: (assert_on_error), (main):
8644           add tests to make sure the two things above are checked for
8645
8646 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8647
8648         * configure.ac:
8649         * libs/gst/dataprotocol/Makefile.am:
8650         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8651         * libs/gst/dataprotocol/dataprotocol.h:
8652           wrap header in GST_ENABLE_NEW.  make code use it
8653
8654 2004-05-23  Johan Dahlin  <johan@gnome.org>
8655
8656         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8657         so verbose and print GstElement signal names all the time.
8658
8659 2004-05-22  David Schleef  <ds@schleef.org>
8660
8661         * gst/registries/gstxmlregistry.c:
8662         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8663         (bug #142957)
8664
8665 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8666
8667         * configure.ac:
8668           scrub cflags for glib2 so gcc doesn't complain when glib is in
8669           /usr/local
8670
8671 2004-05-21  Johan Dahlin  <johan@gnome.org>
8672
8673         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8674         __GNUC__, patch from Brian Cameron, fixes bug #142804
8675
8676 2004-05-20  David Schleef  <ds@schleef.org>
8677
8678         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8679         comparison code.  (bug #142819)
8680
8681 2004-05-20  Wim Taymans  <wim@fluendo.com>
8682
8683         * gst/gstbuffer.c: (gst_buffer_default_copy):
8684         * gst/gstbuffer.h:
8685         Added Comment to a flag.
8686         copy relevant flags in _buffer_copy.
8687
8688 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8689
8690         reviewed by: Wim Taymans <wim at fluendo dot com>
8691
8692         * gst/gstbuffer.h:
8693           add GST_BUFFER_IN_CAPS buffer flag
8694         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8695         (gst_structure_parse_any_list), (gst_structure_parse_list),
8696         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8697         * gst/gstvalue.c: (gst_value_serialize_any_list),
8698         (gst_value_transform_any_list_string),
8699         (gst_value_list_prepend_value), (gst_value_list_append_value),
8700         (gst_value_list_get_size), (gst_value_list_get_value),
8701         (gst_value_transform_list_string),
8702         (gst_value_transform_fixed_list_string),
8703         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8704         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8705         (_gst_value_initialize):
8706         * gst/gstvalue.h:
8707           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8708           < , > as a format.
8709         * testsuite/caps/string-conversions.c: (main):
8710           add regression tests for < >
8711
8712 2004-05-20  Johan Dahlin  <johan@gnome.org>
8713
8714         * docs/gst/Makefile.am (all-local): Re-add
8715
8716 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8717
8718         * docs/gst/Makefile.am:
8719         * docs/gst/gstreamer-docs.sgml:
8720         * docs/libs/Makefile.am:
8721         * docs/libs/gstreamer-libs-docs.sgml:
8722           fix distcheck issues
8723
8724 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8725
8726         * libs/gst/dataprotocol/Makefile.am:
8727           add to autotest
8728
8729 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8730
8731         * libs/gst/dataprotocol/Makefile.am:
8732         * libs/gst/dataprotocol/dataprotocol.c:
8733         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8734         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8735         * libs/gst/dataprotocol/dp-private.h:
8736           use GST macros to read/write fixed length ints
8737           add some more asserts
8738
8739 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8740
8741         * docs/libs/gstreamer-libs-docs.sgml:
8742         * docs/libs/gstreamer-libs-sections.txt:
8743           remove idct and putbits
8744         * configure.ac:
8745         * docs/libs/tmpl/gstdataprotocol.sgml:
8746         * libs/gst/Makefile.am:
8747         * libs/gst/dataprotocol/Makefile.am:
8748         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8749         (buffer_test), (caps_test), (event_test), (main):
8750         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8751         (gst_dp_dump_byte_array), (gst_dp_init),
8752         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8753         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8754         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8755         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8756         (gst_dp_validate_header), (gst_dp_validate_payload),
8757         (gst_dp_validate_packet), (plugin_init):
8758         * libs/gst/dataprotocol/dataprotocol.h:
8759         * libs/gst/dataprotocol/dp-private.h:
8760           add dataprotocol
8761
8762 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8763
8764         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8765           fix int variable deserialization and add a helper so we can actually
8766           debug this.
8767
8768 2004-05-18  David Schleef  <ds@schleef.org>
8769
8770         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8771           argv[0].  Calling yourself is probably not the best way to
8772           construct a test like this, btw.
8773
8774 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8775
8776         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8777           don't claim to be more intelligent than a scheduler when the
8778           scheduler claims the pipeline is stopped
8779         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8780         (safe_cothread_destroy),
8781         (gst_entry_scheduler_remove_all_cothreads),
8782         (gst_entry_scheduler_reset), (_remove_cothread),
8783         (gst_entry_scheduler_state_transition):
8784           hold off cothread destruction if we're not in main cothread
8785         * configure.ac:
8786         * testsuite/Makefile.am:
8787           add new test dir
8788         * testsuite/schedulers/.cvsignore:
8789         * testsuite/schedulers/Makefile.am:
8790           add tests
8791         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8792           check relinking and adding/removing elements from a running pipeline
8793         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8794           check unlinking in a running pipeline
8795         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8796           check unreffing a running pipeline
8797         * testsuite/schedulers/useless_iteration.c: (main):
8798           check iterating a pipeline that contains running threads works
8799
8800 2004-05-18  David Schleef  <ds@schleef.org>
8801
8802         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8803           is false.
8804
8805 2004-05-18  Wim Taymans  <wim@fluendo.com>
8806
8807         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8808         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8809         Fixed an error introduced with patch for 1.63. When setting
8810         a get based element as the entry point in a group, make sure
8811         to mark the group as GET based.
8812
8813 2004-05-18  Wim Taymans  <wim@fluendo.com>
8814
8815         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8816         (setup_group_scheduler), (loop_group_schedule_function),
8817         (gst_opt_scheduler_pad_link):
8818         Added some more debug info and fixed a bug where the group
8819         type was set to LOOP but it was in fact unknown.
8820
8821 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8822
8823         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8824           make resetting scheduler work twice in a row
8825
8826 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8827
8828         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8829         (CREATE_USERIALIZATION), (_gst_value_initialize),
8830         (gst_value_compare_float), (gst_value_serialize_float),
8831         (gst_value_deserialize_float), (gst_value_compare_enum),
8832         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8833           add serialization and comparison functions for long, int64, enum and
8834           float values
8835         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8836           use best serialization function in type hierarchy instead of only a
8837           matching one. This is required for enums to work.
8838         * gst/parse/grammar.y:
8839           use gst_caps_deserialize
8840         * testsuite/parse/Makefile.am:
8841           parse1 now works
8842         * testsuite/parse/parse1.c: (main):
8843           remove aggregator check, aggregator is broken, this test works now
8844           but fails because of bug #138012
8845         * testsuite/parse/parse2.c: (main):
8846           s/xvideosink/xvimagesink - this test looks a lot like we should
8847           disable it
8848
8849 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8850
8851         * gst/gstelement.c: (gst_element_class_init):
8852           whoops, store the signal id correctly
8853         * gst/schedulers/gstbasicscheduler.c:
8854         (gst_basic_scheduler_chain_wrapper):
8855           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8856           chain function isn't linked
8857
8858 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8859         * configure.ac:
8860         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8861         support until we decide where the flags should be used
8862         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8863         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8864         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8865         Output refused caps in the debug info
8866
8867 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8868
8869         * gst/elements/gstidentity.c: (gst_identity_chain):
8870           add duration debug
8871         * gst/gstinfo.c: (gst_debug_log_default):
8872           add timestamp
8873
8874 2004-05-13  Benjamin Otte  <otte@gnome.org>
8875
8876         * gst/gstpipeline.c: (gst_pipeline_dispose),
8877         (gst_pipeline_change_state):
8878           call gst_scheduler_reset on dispose (fixes #141416)
8879
8880 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8881
8882         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8883           compute mapsize correctly
8884         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8885           use correct datatypes when calling a varargs function
8886         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8887           push a DISCONT event as first thing
8888         * gst/gst_private.h:
8889         * gst/gstinfo.c: (_gst_debug_init):
8890           remove GST_DATAFLOW debugging category
8891         * gst/gstbin.c: (gst_bin_iterate):
8892           use GST_SCHEDULING category
8893         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8894         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8895         (gst_pad_call_get_function):
8896           add GST_DATAFLOW to easily track flow of buffers or events.
8897         * gst/gstqueue.c: (gst_queue_get_type),
8898         (gst_queue_handle_pending_events), (gst_queue_chain),
8899         (gst_queue_get), (gst_queue_handle_src_event):
8900           use own static debugging category GST_DATAFLOW for dataflow,
8901           use DEBUG category for showing which path events go, use LOG
8902           category for buffers.
8903
8904 2004-05-10  David Schleef  <ds@schleef.org>
8905
8906         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8907
8908 2004-05-10  David Schleef  <ds@schleef.org>
8909
8910         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8911         symbols, because otherwise we don't know what they are.  Thanks,
8912         the GStreamer team.
8913         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8914
8915 2004-05-10  David Schleef  <ds@schleef.org>
8916
8917         (from Steve Lhomme)
8918         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8919         are deleted.  Fix.
8920         * win32/Makefile.inspect:
8921         * win32/Makefile.launch:
8922         * win32/Makefile.register:
8923
8924 2004-05-10  David Schleef  <ds@schleef.org>
8925
8926         * gst/gstinfo.h: Add missing inline function.
8927         * gst/gsttrace.c: add include
8928         * gst/parse/grammar.y: remove unused code
8929         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8930         more portable.
8931         * tools/gst-register.c: wrap unistd.h
8932         
8933         More additions/fixes from Steve for the MSVC build.
8934         * win32/GStreamer.vcproj:
8935         * win32/Makefile:
8936         * win32/Makefile.inspect:
8937         * win32/Makefile.launch:
8938         * win32/Makefile.register:
8939         * win32/README.txt:
8940         * win32/gst-inspect.vcproj:
8941         * win32/gst-launch.vcproj:
8942         * win32/gst-register.vcproj:
8943         * win32/gstbytestream.def:
8944         * win32/gstbytestream.vcproj:
8945         * win32/gstconfig.h:
8946         * win32/gstelements.def:
8947         * win32/gstelements.vcproj:
8948         * win32/gstenumtypes.c:
8949         * win32/gstenumtypes.h:
8950         * win32/gstoptimalscheduler.def:
8951         * win32/gstoptimalscheduler.vcproj:
8952         * win32/gstreamer.def:
8953         * win32/gstspider.def:
8954         * win32/gstspider.vcproj:
8955         * win32/gstversion.h:
8956         * win32/msvc71.sln:
8957
8958 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8959
8960         * gst/gstelement.c: (gst_element_class_init),
8961         (gst_element_no_more_pads):
8962         * gst/gstelement.h:
8963           add gst_element_no_more_pads and the "no-more-pads" signal
8964
8965 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8966
8967         * gst/gstregistry.c: (gst_registry_add_plugin):
8968           refuse to add plugins when a plugin with same name is already
8969           registered. Fixes a bunch of "How to remove plugins?" issues.
8970           May lead to other problems though, let's test
8971
8972 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8973
8974         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8975         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8976         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8977
8978 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8979
8980         * tests/Makefile.am: fix am16 issue
8981
8982 2004-05-09  Benjamin Otte  <otte@gnome.org>
8983
8984         * libs/gst/bytestream/Makefile.am:
8985           we should indeed add .c files to makefiles or they won't be built
8986           (d'oh)
8987
8988 2004-05-08  Benjamin Otte  <otte@gnome.org>
8989
8990         * gst/gstpad.c: (gst_pad_proxy_fixate):
8991           really reduce the set of caps
8992
8993 2004-05-08  Benjamin Otte  <otte@gnome.org>
8994
8995         * tests/Makefile.am:
8996         * tests/spidey_bench.c: (handoff), (main):
8997           add benchmark to test how long spider needs to create a pipeline
8998
8999 2004-05-08  Benjamin Otte  <otte@gnome.org>
9000
9001         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
9002           mark links as unengaged when unnegotiating instead of deactivating.
9003           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
9004
9005 2004-05-08  Benjamin Otte  <otte@gnome.org>
9006
9007         * docs/manual/helloworld.xml:
9008           s/audiosink/osssink (patch by Patrick Guimond)
9009
9010 2004-05-07  David Schleef  <ds@schleef.org>
9011
9012         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
9013         since it contains important stuff.
9014
9015 2004-05-07  David Schleef  <ds@schleef.org>
9016
9017         * testsuite/caps/caps.c: (test3), (main): A check for appending
9018         ANY caps.
9019
9020 2004-05-07  David Schleef  <ds@schleef.org>
9021
9022         * common/m4/as-compiler-flag.m4: Properly quote arguments,
9023         which may contain commas.  Fixes detection of -Wa,-mregnames
9024
9025 2004-05-06  David Schleef  <ds@schleef.org>
9026
9027         Changes to handle compilers that don't have variadic macro
9028         support.  In particular, glib headers define some inlines
9029         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
9030         builds.
9031         * gst/Makefile.am:
9032         * gst/cothreads.c:
9033         * gst/elements/gstfdsink.c:
9034         * gst/elements/gstfdsrc.c:
9035         * gst/elements/gstfilesink.c:
9036         * gst/elements/gstfilesrc.c:
9037         * gst/gst_private.h:
9038         * gst/gstatomic.c:
9039         * gst/gstcaps.c: (gst_caps_append):
9040         * gst/gstcpu.c: (gst_cpuid_i386):
9041         * gst/gstelement.c:
9042         * gst/gsterror.c:
9043         * gst/gstfilter.c:
9044         * gst/gstinfo.h:
9045         * gst/gstprobe.c:
9046         * gst/gstquery.c:
9047         * gst/gstregistry.c:
9048         * gst/gststructure.c:
9049         * gst/gsttaginterface.c:
9050         * gst/gsttrace.c: (gst_trace_new):
9051         * gst/gsttrashstack.c:
9052         * gst/gsturi.c:
9053         * gst/gstvalue.c:
9054         * gst/parse/grammar.y:
9055         * gst/parse/parse.l:
9056         * tools/gst-inspect.c: (main):
9057         * tools/gst-launch.c: (main):
9058         * tools/gst-xmlinspect.c: (PUT_STRING):
9059
9060 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9061
9062         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9063         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9064         * gst/elements/gstfilesrc.h:
9065           send NEW_MEDIA events correctly
9066         * gst/elements/gsttypefindelement.c: (start_typefinding),
9067         (gst_type_find_element_handle_event):
9068           restart typefinding when we get a NEW_MEDIA event
9069         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9070         (gst_bin_dispose):
9071           don't die when someone removes elements in callbacks
9072         * gst/gstelement.c: (gst_element_change_state):
9073           improve debugging
9074         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9075           we need a NEW_MEDIA event to engage a link
9076         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9077           don't g_print debugging stuff
9078         * testsuite/caps/simplify.c: (check_caps):
9079
9080 2004-05-04  Benjamin Otte  <otte@gnome.org>
9081
9082         * gst/parse/grammar.y:
9083           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9084
9085 2004-05-04  Benjamin Otte  <otte@gnome.org>
9086
9087         * testsuite/caps/renegotiate.c: (main):
9088           improve output in error case
9089
9090 2004-05-04  Benjamin Otte  <otte@gnome.org>
9091
9092         * gst/parse/grammar.y:
9093           fix assert to not trigger when there's no error argument
9094         * gst/parse/parse.l:
9095           fix definition of caps to allow more than two structures
9096         * testsuite/caps/Makefile.am:
9097         * testsuite/caps/renegotiate.c: (main):
9098           it's sinesrc and works in that case
9099
9100 2004-05-04  Wim Taymans  <wim@fluendo.com>
9101
9102         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9103         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9104         when removing an element from a group, we always need to
9105         decrement the link count that this group had with other 
9106         groups through the element.
9107         added an extra assert to catch inconsistencies when decrementing
9108         the link count.
9109
9110 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9111
9112         * configure.ac:
9113         * docs/gst/Makefile.am:
9114         * docs/gst/gstreamer-sections.txt:
9115         * docs/gst/tmpl/gstcompat.sgml:
9116         * examples/appreader/Makefile.am:
9117         * examples/cutter/Makefile.am:
9118         * examples/events/Makefile.am:
9119         * examples/helloworld/Makefile.am:
9120         * examples/helloworld2/Makefile.am:
9121         * examples/launch/Makefile.am:
9122         * examples/manual/Makefile.am:
9123         * examples/mixer/Makefile.am:
9124         * examples/pingpong/Makefile.am:
9125         * examples/plugins/Makefile.am:
9126         * examples/queue/Makefile.am:
9127         * examples/queue2/Makefile.am:
9128         * examples/queue3/Makefile.am:
9129         * examples/queue4/Makefile.am:
9130         * examples/retag/Makefile.am:
9131         * examples/thread/Makefile.am:
9132         * examples/typefind/Makefile.am:
9133         * examples/xml/Makefile.am:
9134         * gst/Makefile.am:
9135         * gst/autoplug/Makefile.am:
9136         * gst/elements/Makefile.am:
9137         * gst/gstcompat.h:
9138         * gst/indexers/Makefile.am:
9139         * gst/parse/Makefile.am:
9140         * gst/registries/Makefile.am:
9141         * gst/schedulers/Makefile.am:
9142         * libs/gst/bytestream/Makefile.am:
9143         * libs/gst/control/Makefile.am:
9144         * libs/gst/getbits/Makefile.am:
9145         * po/af.po:
9146         * po/az.po:
9147         * po/en_GB.po:
9148         * po/fr.po:
9149         * po/nl.po:
9150         * po/sr.po:
9151         * po/sv.po:
9152         * po/tr.po:
9153         * po/uk.po:
9154         * tests/Makefile.am:
9155         * tests/bufspeed/Makefile.am:
9156         * tests/instantiate/Makefile.am:
9157         * tests/memchunk/Makefile.am:
9158         * tests/muxing/Makefile.am:
9159         * tests/negotiation/Makefile.am:
9160         * tests/probes/Makefile.am:
9161         * tests/sched/Makefile.am:
9162         * tests/seeking/Makefile.am:
9163         * tests/threadstate/Makefile.am:
9164         * testsuite/caps/Makefile.am:
9165         * testsuite/cleanup/Makefile.am:
9166         * testsuite/dlopen/Makefile.am:
9167         * testsuite/dynparams/Makefile.am:
9168         * testsuite/plugin/Makefile.am:
9169         * testsuite/states/Makefile.am:
9170         * tools/Makefile.am:
9171           reorganize compile/link flags to be consistent
9172           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9173
9174 2004-05-04  David Schleef  <ds@schleef.org>
9175
9176         The "once more, with feeling" check-in.
9177         * testsuite/caps/Makefile.am: dist caps_strings
9178         * testsuite/caps/renegotiate.c: (main): This test triggers a
9179           segfault in the core.  Marking as failing.
9180
9181 2004-05-03  David Schleef  <ds@schleef.org>
9182
9183         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9184           by the build bots.
9185         * testsuite/caps/renegotiate.c: (main): Same.
9186
9187 2004-05-03  David Schleef  <ds@schleef.org>
9188
9189         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9190
9191 2004-05-03  David Schleef  <ds@schleef.org>
9192
9193         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9194           variable to find our source file.
9195
9196 2004-05-03  David Schleef  <ds@schleef.org>
9197
9198         * configure.ac:  Link plugins with libgstreamer and dependent
9199           libraries
9200         * testsuite/caps/Makefile.am:
9201         * testsuite/caps/caps_strings:
9202         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9203           through a file of caps strings and test each one
9204
9205 2004-05-04  Benjamin Otte  <otte@gnome.org>
9206
9207         * libs/gst/bytestream/Makefile.am:
9208         * libs/gst/bytestream/adapter.c: 
9209         * libs/gst/bytestream/adapter.h:
9210           add GstAdapter, similar to bytestream, but doesn't require ugly event
9211           handling or uglier loopbased elements
9212
9213 2004-05-03  David Schleef  <ds@schleef.org>
9214
9215         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9216         * testsuite/caps/erathostenes.c:
9217         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9218
9219 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9220
9221         * docs/pwg/pwg.xml:
9222           remove hardcoded stylesheet path (duh)
9223         * docs/random/release:
9224         * docs/gst/gstreamer-sections.txt:
9225         * gst/Makefile.am:
9226         * gst/gst.h:
9227         * gst/gst_private.h:
9228         * gst/gstcaps.c:
9229         * gst/gstevent.c:
9230         * gst/gstformat.c:
9231         * gst/gstinfo.c:
9232         * gst/gstinfo.h:
9233         * gst/gstinterface.c:
9234         * gst/gstmemchunk.c:
9235         * gst/gstprobe.c:
9236         * gst/gstquery.c:
9237         * gst/gstregistry.c:
9238         * gst/gstregistrypool.c:
9239         * gst/gststructure.c:
9240         * gst/gsttaginterface.c:
9241         * gst/gstthread.c:
9242         * gst/gsttrace.c:
9243         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9244         * gst/gsturi.c:
9245         * gst/gstvalue.c:
9246           deprecate gst_info; remove gstlog.h
9247    
9248
9249 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9250
9251         * Makefile.am:
9252         * po/en_GB.po:
9253         * po/sv.po:
9254         * po/uk.po:
9255           updated translations
9256
9257 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9258
9259         * gst/gstbin.c: (gst_bin_dispose):
9260           better debugging
9261
9262 2004-05-03  Johan Dahlin  <johan@gnome.org>
9263
9264         * gst/schedulers/gstoptimalscheduler.c
9265         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9266         really is a GstElement. Avoids critical when running gst-launch -v
9267         and a oggdemux/decoding pipeline.
9268
9269 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9270
9271         * docs/gst/tmpl/gstpipeline.sgml :
9272         * docs/manual/elements-api.xml :
9273                 doc fix by Patrick Guimond (Protector) from devel ML
9274                 reviewed by ronald
9275
9276 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9277
9278         * docs/gst/Makefile.am :
9279         * docs/libs/Makefile.am :
9280                 apply a patch from Arwed v. Merkatz so that gtk-doc
9281                 generated docs install (same for .devhelp file)
9282                 (fixes part 1 of #138836)
9283
9284 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9285
9286         * docs/faq/dependencies.xml: typo
9287         * docs/faq/getting.xml :
9288             - fix download URL for new gstreamer site
9289             - hide sf.net download page as latest version aren't there
9290             - fix apt URLs
9291             - fill "get via CVS" paragraph (link to dev page on the site)
9292         * docs/faq/general.xml:
9293             hide status tables as they no more exists
9294             change case on plugins license file to reflect reality
9295         * docs/faq/troubleshooting.xml:
9296             remove the wiki question/answer as there is no more wiki
9297
9298 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9299
9300         * gst/gsterror.h:
9301           include the headers needed for declarations used in this header
9302
9303 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9304
9305         * docs/random/uraeus/gstreamer_and_midi.txt :
9306           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9307           (fixes #132288)
9308
9309 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9310
9311         reviewed by Benjamin Otte  <otte@gnome.org>
9312
9313         * gst/schedulers/gthread-cothreads.h:
9314           free allocated data for main cothread, too when destroying context
9315           (fixes #141417)
9316
9317 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9318
9319         * docs/manual/goals.xml : remove duplicated paragraph at end 
9320         of doc page (fixes #141448)
9321
9322 2004-04-29  David Schleef  <ds@schleef.org>
9323
9324         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9325         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9326
9327 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9328
9329         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9330           fix property
9331         * gst/gstcaps.c:
9332           fix doc string
9333         * po/POTFILES.in:
9334           rename typefind source file
9335
9336 2004-04-28  David Schleef  <ds@schleef.org>
9337
9338         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9339         * win32/GStreamer.vcproj:
9340         * win32/Makefile:
9341         * win32/config.h:
9342         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9343         (_trewinddir), (_ttelldir), (_tseekdir):
9344         * win32/dirent.h:
9345         * win32/gst-inspect.vcproj:
9346         * win32/gst-launch.vcproj:
9347         * win32/gst-register.vcproj:
9348         * win32/gstbytestream.vcproj:
9349         * win32/gstelements.vcproj:
9350         * win32/gstoptimalscheduler.vcproj:
9351         * win32/gstspider.vcproj:
9352         * win32/gtchar.h:
9353         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9354         * win32/mman.h:
9355         * win32/mman.inl:
9356         * win32/msvc71.sln:
9357
9358 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9359
9360         * gst/gst.c: (init_post):
9361         * gst/gstinfo.c:
9362           remove useless _gst_progname stuff
9363         * tools/gst-inspect.c: (print_field), (print_caps):
9364           improve caps output
9365
9366 2004-04-28  David Schleef  <ds@schleef.org>
9367
9368         Disable parsing of a lot of files that aren't part of the
9369         exported API.  Move corresponding template files to old/,
9370         waiting for removal when they don't contain anything
9371         interesting.
9372         * docs/gst/Makefile.am:
9373         * docs/gst/gstreamer-sections.txt:
9374         * docs/gst/tmpl/cothreads.sgml:
9375         * docs/gst/tmpl/cothreads_compat.sgml:
9376         * docs/gst/tmpl/gettext.sgml:
9377         * docs/gst/tmpl/gobject2gtk.sgml:
9378         * docs/gst/tmpl/grammar.tab.sgml:
9379         * docs/gst/tmpl/gst-i18n-app.sgml:
9380         * docs/gst/tmpl/gst-i18n-lib.sgml:
9381         * docs/gst/tmpl/gst_private.sgml:
9382         * docs/gst/tmpl/gstaggregator.sgml:
9383         * docs/gst/tmpl/gstarch.sgml:
9384         * docs/gst/tmpl/gstatomic_impl.sgml:
9385         * docs/gst/tmpl/gstbufferstore.sgml:
9386         * docs/gst/tmpl/gstdata_private.sgml:
9387         * docs/gst/tmpl/gstdisksink.sgml:
9388         * docs/gst/tmpl/gstdisksrc.sgml:
9389         * docs/gst/tmpl/gstelementfactory.sgml:
9390         * docs/gst/tmpl/gstextratypes.sgml:
9391         * docs/gst/tmpl/gstfakesink.sgml:
9392         * docs/gst/tmpl/gstfakesrc.sgml:
9393         * docs/gst/tmpl/gstfdsink.sgml:
9394         * docs/gst/tmpl/gstfdsrc.sgml:
9395         * docs/gst/tmpl/gstfilesink.sgml:
9396         * docs/gst/tmpl/gstfilesrc.sgml:
9397         * docs/gst/tmpl/gsthttpsrc.sgml:
9398         * docs/gst/tmpl/gstidentity.sgml:
9399         * docs/gst/tmpl/gstindexfactory.sgml:
9400         * docs/gst/tmpl/gstmarshal.sgml:
9401         * docs/gst/tmpl/gstmd5sink.sgml:
9402         * docs/gst/tmpl/gstmultidisksrc.sgml:
9403         * docs/gst/tmpl/gstmultifilesrc.sgml:
9404         * docs/gst/tmpl/gstpadtemplate.sgml:
9405         * docs/gst/tmpl/gstpipefilter.sgml:
9406         * docs/gst/tmpl/gstschedulerfactory.sgml:
9407         * docs/gst/tmpl/gstsearchfuncs.sgml:
9408         * docs/gst/tmpl/gstshaper.sgml:
9409         * docs/gst/tmpl/gstspider.sgml:
9410         * docs/gst/tmpl/gstspideridentity.sgml:
9411         * docs/gst/tmpl/gststatistics.sgml:
9412         * docs/gst/tmpl/gsttee.sgml:
9413         * docs/gst/tmpl/gsttimecache.sgml:
9414         * docs/gst/tmpl/gsttypefind.sgml:
9415         * docs/gst/tmpl/gsttypefindfactory.sgml:
9416         * docs/gst/tmpl/gstxmlregistry.sgml:
9417         * docs/gst/tmpl/gthread-cothreads.sgml:
9418         * docs/gst/tmpl/old/cothreads.sgml:
9419         * docs/gst/tmpl/old/cothreads_compat.sgml:
9420         * docs/gst/tmpl/old/gettext.sgml:
9421         * docs/gst/tmpl/old/gobject2gtk.sgml:
9422         * docs/gst/tmpl/old/grammar.tab.sgml:
9423         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9424         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9425         * docs/gst/tmpl/old/gst_private.sgml:
9426         * docs/gst/tmpl/old/gstaggregator.sgml:
9427         * docs/gst/tmpl/old/gstarch.sgml:
9428         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9429         * docs/gst/tmpl/old/gstbufferstore.sgml:
9430         * docs/gst/tmpl/old/gstdata_private.sgml:
9431         * docs/gst/tmpl/old/gstdisksink.sgml:
9432         * docs/gst/tmpl/old/gstdisksrc.sgml:
9433         * docs/gst/tmpl/old/gstelementfactory.sgml:
9434         * docs/gst/tmpl/old/gstextratypes.sgml:
9435         * docs/gst/tmpl/old/gstfakesink.sgml:
9436         * docs/gst/tmpl/old/gstfakesrc.sgml:
9437         * docs/gst/tmpl/old/gstfdsink.sgml:
9438         * docs/gst/tmpl/old/gstfdsrc.sgml:
9439         * docs/gst/tmpl/old/gstfilesink.sgml:
9440         * docs/gst/tmpl/old/gstfilesrc.sgml:
9441         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9442         * docs/gst/tmpl/old/gstidentity.sgml:
9443         * docs/gst/tmpl/old/gstindexfactory.sgml:
9444         * docs/gst/tmpl/old/gstmarshal.sgml:
9445         * docs/gst/tmpl/old/gstmd5sink.sgml:
9446         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9447         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9448         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9449         * docs/gst/tmpl/old/gstpipefilter.sgml:
9450         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9451         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9452         * docs/gst/tmpl/old/gstshaper.sgml:
9453         * docs/gst/tmpl/old/gstspider.sgml:
9454         * docs/gst/tmpl/old/gstspideridentity.sgml:
9455         * docs/gst/tmpl/old/gststatistics.sgml:
9456         * docs/gst/tmpl/old/gsttee.sgml:
9457         * docs/gst/tmpl/old/gsttimecache.sgml:
9458         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9459         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9460         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9461         * docs/gst/tmpl/old/types.sgml:
9462         * docs/gst/tmpl/types.sgml:
9463
9464         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9465         gtkdoc-scan doesn't like files with the same name in different
9466         directories.
9467         * gst/elements/Makefile.am:
9468         * gst/elements/gstelements.c:
9469         * gst/elements/gsttypefind.c: 
9470         * gst/elements/gsttypefind.h:
9471         * gst/elements/gsttypefindelement.c:
9472         * gst/elements/gsttypefindelement.h:
9473
9474 2004-04-28  David Schleef  <ds@schleef.org>
9475
9476         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9477         patch (bug #141317):
9478         * gst/gst-i18n-lib.h: Allow disabling gettext.
9479         * gst/gstatomic_impl.h: disable warning when it's dumb.
9480         * gst/gstclock.c: fix include
9481         * gst/gstcompat.h: fix variadic macro
9482         * gst/gstinfo.c: fix include
9483         * gst/gstmacros.h: add defines for inlines on MSVC
9484         * gst/gstplugin.c: fix includes
9485         * gst/gstregistry.c: fix includes
9486         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9487         * gst/gstsystemclock.c: fix include
9488         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9489         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9490         * gst/registries/gstxmlregistry.c:
9491         (gst_xml_registry_parse_element_factory): fix use of non-portable
9492         functions
9493         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9494         * libs/gst/control/dparammanager.h: same
9495
9496 2004-04-28  David Schleef  <ds@schleef.org>
9497
9498         Move a bunch of unused files to old/ with names that are
9499         not case-insensitive-unique.  These files still contain some
9500         useful information that needs to be merged into gstbin.sgml,
9501         etc., so they shouldn't be deleted yet.
9502         * docs/gst/tmpl/GstBin.sgml:
9503         * docs/gst/tmpl/GstBuffer.sgml:
9504         * docs/gst/tmpl/GstCaps.sgml:
9505         * docs/gst/tmpl/GstClock.sgml:
9506         * docs/gst/tmpl/GstCompat.sgml:
9507         * docs/gst/tmpl/GstData.sgml:
9508         * docs/gst/tmpl/GstElement.sgml:
9509         * docs/gst/tmpl/GstEvent.sgml:
9510         * docs/gst/tmpl/GstIndex.sgml:
9511         * docs/gst/tmpl/GstStructure.sgml:
9512         * docs/gst/tmpl/GstTag.sgml:
9513         * docs/gst/tmpl/old/GstBin.sgml:
9514         * docs/gst/tmpl/old/GstBuffer.sgml:
9515         * docs/gst/tmpl/old/GstCaps.sgml:
9516         * docs/gst/tmpl/old/GstClock.sgml:
9517         * docs/gst/tmpl/old/GstCompat.sgml:
9518         * docs/gst/tmpl/old/GstData.sgml:
9519         * docs/gst/tmpl/old/GstElement.sgml:
9520         * docs/gst/tmpl/old/GstEvent.sgml:
9521         * docs/gst/tmpl/old/GstIndex.sgml:
9522         * docs/gst/tmpl/old/GstStructure.sgml:
9523         * docs/gst/tmpl/old/GstTag.sgml:
9524
9525 2004-04-28  David Schleef  <ds@schleef.org>
9526
9527         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9528         (gst_caps_append), (gst_caps_append_structure),
9529         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9530         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9531         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9532         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9533         (gst_caps_intersect), (gst_caps_normalize),
9534         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9535         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9536         * gst/gstcaps.h: use GST_IS_CAPS().
9537
9538 2004-04-26  David Schleef  <ds@schleef.org>
9539
9540         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9541         assembly.  gcc doesn't handle it correctly. (bug #141083)
9542         * gst/gsttrashstack.h: same
9543
9544 2004-04-25  Benjamin Otte  <otte@gnome.org>
9545
9546         * gst/gstelement.c: (gst_element_change_state):
9547           fix assertion to do an int comparison
9548
9549 2004-04-25  Benjamin Otte  <otte@gnome.org>
9550
9551         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9552           better debugging output on error
9553
9554 2004-04-25  Benjamin Otte  <otte@gnome.org>
9555
9556         * gst/gstcaps.c: (gst_caps_subtract):
9557           fix memleak
9558
9559 2004-04-23  Benjamin Otte  <otte@gnome.org>
9560
9561         * gst/gstvalue.c: (gst_value_compare_buffer),
9562         (_gst_value_initialize):
9563           add comparison function for buffers
9564
9565 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9566
9567         * docs/pwg/pwg.xml:
9568           Just found out that this so-called "ima-wav" format is really
9569           just "dvi adpcm" (according to the MS WAV documentation). So
9570           renaming it. We didn't use it yet anyway.
9571
9572 2004-04-23  Benjamin Otte  <otte@gnome.org>
9573
9574         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9575           call gst_caps_is_subset
9576
9577 2004-04-23  Benjamin Otte  <otte@gnome.org>
9578
9579         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9580         (gst_caps_is_subset):
9581           add documentation
9582
9583 2004-04-23  Benjamin Otte  <otte@gnome.org>
9584           
9585         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9586         (gst_caps_structure_subtract), (gst_caps_subtract),
9587         (gst_caps_structure_figure_out_union),
9588         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9589           fix simplifying and subtracting not working correctly with optional
9590           properties
9591           solve assorted problems that make it now simplify ebven more
9592         * docs/gst/tmpl/gstcaps.sgml:
9593         * gst/gstcaps.h:
9594           make gst_caps_do_simplify return a bool to indicate if it simplified
9595         * testsuite/caps/simplify.c: (main):
9596           add more checks. The tests is quite a bit useless right now because
9597           the core is heavily simplifying itself.
9598         * testsuite/caps/caps.h:
9599           fix caps to contain all optional properties
9600
9601 2004-04-22  Benjamin Otte  <otte@gnome.org>
9602
9603         * docs/gst/tmpl/gstcaps.sgml:
9604         * docs/gst/tmpl/gstfilesrc.sgml:
9605         * docs/gst/tmpl/gststructure.sgml:
9606         * docs/gst/tmpl/gstvalue.sgml:
9607           update for recent API changes
9608         * gst/gstcaps.c: (gst_caps_do_simplify):
9609           fix to stop trying with a freed structure
9610         * gst/gstpad.c: (gst_pad_link_fixate):
9611           simplify caps
9612         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9613           remove C++ comment
9614         * gst/gstpad.h:
9615           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9616         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9617         (gst_structure_to_string):
9618           keep the correct type when using lists of ranges
9619         * gst/gstvalue.c: (gst_value_list_prepend_value),
9620         (gst_value_list_append_value):
9621           copy the value before adding to the list (d'oh)
9622         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9623         (gst_value_subtract_int_range_int_range):
9624           handle overflows correctly
9625         * gst/gstvalue.c: (gst_value_subtract_from_list):
9626           fix memleak
9627         * testsuite/caps/caps.h:
9628           add a caps that caused segfaults
9629
9630 2004-04-22  Benjamin Otte  <otte@gnome.org>
9631
9632         * testsuite/refcounting/pad.c: (main):
9633           fix test
9634
9635 2004-04-22  Benjamin Otte  <otte@gnome.org>
9636
9637         * gst/gstcaps.c: (gst_caps_subtract):
9638           allow subtracting ANY and EMPTY from ANY caps
9639
9640 2004-04-22  Benjamin Otte  <otte@gnome.org>
9641
9642         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9643         (gst_caps_union):
9644           only simplify in functions that create new caps. Simplifying in
9645           gst_caps_append breaks tests.
9646
9647 2004-04-22  Benjamin Otte  <otte@gnome.org>
9648
9649         * gst/gstcaps.c: (gst_caps_structure_simplify):
9650           unset GValue after use
9651         * gst/gstcaps.c: (gst_caps_append), 
9652         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9653           use gst_caps_simplify (reduces registry size by 30%)
9654         * gst/gstpad.c: (gst_pad_template_new):
9655           don't allow NULL caps
9656
9657 2004-04-22  Benjamin Otte  <otte@gnome.org>
9658
9659         * docs/gst/gstreamer-sections.txt:
9660           add gst_caps_do_simplify
9661         * gst/gstcaps.c:
9662           add documentation for gst_caps_do_simplify
9663         * gst/gstvalue.h:
9664           fix typo in gst_value_register_subtract_func declaration for gst-doc
9665
9666 2004-04-22  Benjamin Otte  <otte@gnome.org>
9667
9668         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9669           fix bug when converting from empty string.
9670         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9671         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9672           use gst_caps_new_empty to allocate a new caps. Only that function
9673           allocates memory for caps now.
9674         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9675         (gst_caps_remove_structure):
9676           add ability to remove one structure (but not to header yet)
9677         * gst/gstcaps.c: (gst_caps_compare_structures),
9678         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9679         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9680         * gst/gstcaps.h:
9681           add gst_caps_do_simplify that tries to simplify a caps in place.
9682           Deprecate old gst_caps_simplify function.
9683         * testsuite/caps/caps.h:
9684           add caps.h containing a common set of caps to test against.
9685         * testsuite/caps/sets.c: (check_caps), (main):
9686           use it.
9687         * testsuite/caps/.cvsignore:
9688         * testsuite/caps/Makefile.am:
9689         * testsuite/caps/simplify.c: (check_caps), (main):
9690           add test to check correctness and efficency of caps simplification.
9691
9692 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9693
9694         reviewed by Benjamin Otte  <otte@gnome.org>
9695
9696         * gst/gstparse.c: (_gst_parse_escape):
9697           Free the GString used in _gst_parse_escape()
9698
9699 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9700
9701         * gst/gstpad.c: (gst_pad_link_negotiate):
9702           refuse to link if the link is not possible
9703         * configure.ac:
9704         * testsuite/Makefile.am:
9705         * testsuite/negotiation/.cvsignore:
9706         * testsuite/negotiation/Makefile.am:
9707         * testsuite/negotiation/pad_link.c: (main):
9708           add test that checks the above behaviour
9709
9710 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9711
9712         * docs/gst/gstreamer-sections.txt:
9713           add newly added API
9714
9715 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9716
9717         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9718         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9719         (gst_filesrc_open_file), (gst_filesrc_close_file),
9720         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9721         * gst/elements/gstfilesrc.h:
9722           add support for non-regular files (#140734)
9723
9724 2004-04-21  Benjamin Otte  <otte@gnome.org>
9725
9726         * gst/gstpad.c: (gst_pad_link_fixate):
9727           add sophisticated error checking code to see if fixation functions
9728           did their fixation right
9729
9730 2004-04-21  Benjamin Otte  <otte@gnome.org>
9731
9732         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9733           check for ANY caps before appending/unioning
9734         * gst/gstcaps.c: (gst_caps_is_subset),
9735         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9736         (gst_caps_structure_subtract), (gst_caps_subtract):
9737         * gst/gstcaps.h:
9738           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9739           the API. deprecate gst_caps_is_equal_fixed
9740         * gst/gstpad.c: (gst_pad_try_set_caps):
9741         * gst/gstqueue.c: (gst_queue_link):
9742           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9743         * gst/gststructure.c: (gst_structure_get_name_id):
9744         * gst/gststructure.h:
9745           add function gst_structure_get_name_id
9746         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9747         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9748         (gst_value_subtract_int_range_int_range),
9749         (gst_value_subtract_double_double_range),
9750         (gst_value_subtract_double_range_double),
9751         (gst_value_subtract_double_range_double_range),
9752         (gst_value_subtract_from_list), (gst_value_subtract_list),
9753         (gst_value_can_intersect), (gst_value_subtract),
9754         (gst_value_can_subtract), (gst_value_register_subtract_func),
9755         (_gst_value_initialize):
9756         * gst/gstvalue.h:
9757           add support for subtracting values from each other. Note that
9758           subtracting means subtracting as in set theory. Required for caps
9759           stuff above.
9760         * testsuite/caps/.cvsignore:
9761         * testsuite/caps/Makefile.am:
9762         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9763         * testsuite/caps/sets.c: (check_caps), (main):
9764         * testsuite/caps/subtract.c: (check_caps), (main):
9765           add tests for subtraction and equality code.
9766
9767 2004-04-20  David Schleef  <ds@schleef.org>
9768
9769         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9770         * gst/indexers/Makefile.am:
9771         * gst/schedulers/Makefile.am:
9772         * libs/gst/bytestream/Makefile.am:
9773         * libs/gst/control/Makefile.am:
9774         * libs/gst/getbits/Makefile.am:
9775
9776 2004-04-20  David Schleef  <ds@schleef.org>
9777
9778         * common/as-libtool.mak: Fine-tune DLL building.
9779         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9780         (like gst-plugins)
9781         * examples/plugins/Makefile.am: remove plugindir
9782         * gst/autoplug/Makefile.am: DLL building fixes
9783         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9784         Windows.
9785         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9786         * gst/indexers/Makefile.am: DLL building fixes
9787         * gst/schedulers/Makefile.am: DLL building fixes.
9788         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9789         * libs/gst/control/Makefile.am: same
9790         * libs/gst/getbits/Makefile.am: same
9791         * testsuite/Makefile.am: New dlopen directory
9792         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9793         when dlopened.
9794         * testsuite/dlopen/dlopen_gst.c: (main): same
9795         * testsuite/dlopen/loadgst.c: (do_test): same
9796
9797 2004-04-20  David Schleef  <ds@schleef.org>
9798
9799         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9800         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9801
9802 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9803
9804         * gst/gstelement.c: (gst_element_wait),
9805         (gst_element_set_time_delay), (gst_element_change_state):
9806           Use GST_TIME_*
9807
9808 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9809
9810         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9811         (gst_spider_identity_plug):
9812           improve debugging messages
9813         * gst/gstbin.c: (gst_bin_remove_func):
9814           make sure the state_change function is only called with simple state
9815           transitions
9816
9817 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9818
9819         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9820         (gst_fakesink_set_property), (gst_fakesink_chain):
9821         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9822         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9823         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9824         * gst/elements/gstidentity.c: (gst_identity_chain),
9825         (gst_identity_set_property):
9826         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9827         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9828           add warnings to _set_property for unknown arguments
9829           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9830
9831 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9832
9833         * Makefile.am:
9834         * docs/manuals.mak:
9835           add .po file download snippet
9836           fix a bug in the doc makefile
9837
9838 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9839
9840         * Makefile.am:
9841         * po/LINGUAS:
9842         * po/en_GB.po:
9843           Added en_GB translation (Gareth Owen)
9844
9845 2004-04-20  Johan Dahlin  <johan@gnome.org>
9846
9847         * gst/gstpad.c (_invent_event): Clean up
9848
9849 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9850
9851         * testsuite/caps/filtercaps.c: (main):
9852           fix test to test things correctly (caps are complicated)
9853
9854 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9855
9856         * testsuite/caps/Makefile.am:
9857         * testsuite/caps/filtercaps.c: (main):
9858           add test (that doesn't work right now, but should)
9859
9860 2004-04-19  David Schleef  <ds@schleef.org>
9861
9862         * configure.ac: Add test for allowing unaligned access.  Add define
9863         to put in gstconfig.h.
9864         * docs/gst/gstreamer-sections.txt: New symbols
9865         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9866         * docs/gst/tmpl/gstfilesrc.sgml:
9867         * docs/gst/tmpl/gstparse.sgml:
9868         * docs/gst/tmpl/gsttypes.sgml:
9869         * docs/gst/tmpl/gstutils.sgml:
9870         * docs/gst/tmpl/gstvalue.sgml:
9871         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9872         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9873         on most !i386/!powerpc architectures.  From Daniel Gazard
9874         <daniel.gazard@free.fr>.  (bug #140156)
9875         * po/af.po: Check in changes made by gettext.
9876         * po/az.po:
9877         * po/fr.po:
9878         * po/nl.po:
9879         * po/sr.po:
9880         * po/sv.po:
9881
9882 2004-04-20  Benjamin Otte  <otte@gnome.org>
9883
9884         * gst/schedulers/entryscheduler.c: 
9885         (gst_entry_scheduler_yield):
9886           refuse to yield when decoupled elements insist on doing that.
9887           At least it's better than crashing
9888
9889 2004-04-19  David Schleef  <ds@schleef.org>
9890
9891         * docs/libs/Makefile.am: Change sinclude to include
9892         * docs/gst/Makefile.am: same
9893         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9894
9895 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9896
9897         * po/LINGUAS:
9898         * po/uk.po:
9899           Added Ukrainian translation (Maxim V. Dziumanenko)
9900
9901 2004-04-19  Johan Dahlin  <johan@gnome.org>
9902
9903         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9904         checking here, do it before calling the function.
9905         Clean up, use for loops instead of while loops while iterating
9906         over lists.
9907
9908         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9909         in debug message.
9910         (gst_spider_create_and_plug): Improve debug message.
9911         General: Replace while loops which iterates over GLists with for
9912         loops. Which are much cleaner, improves readability, especially
9913         for gst_spider_identity_plug
9914
9915         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9916         fixes bug 140477
9917
9918 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9919
9920         * po/LINGUAS:
9921         * po/tr.po:
9922           Added Turkish translation (Baris Cicek)
9923
9924 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9925
9926         * docs/faq/troubleshooting.xml:
9927           Mention gst-register in the FAQ (fixes 139045).
9928
9929 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9930
9931         * docs/gst/gstreamer-sections.txt:
9932
9933 2004-04-17  Benjamin Otte  <otte@gnome.org>
9934
9935         * gst/gstelement.c: (gst_element_dispose):
9936           simplify
9937         * gst/gstpad.c: (gst_pad_call_chain_function):
9938           don't create loads of events due to bad macro usage
9939
9940 2004-04-16  David Schleef  <ds@schleef.org>
9941
9942         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9943         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9944         * gst/gstvalue.c: (gst_value_serialize_buffer),
9945         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9946         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9947         to indicate types that are fixed wrt caps or not.  Switching to
9948         this function fixes (bug #140298).
9949         * gst/gstvalue.h:
9950
9951 2004-04-16  David Schleef  <ds@schleef.org>
9952
9953         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9954         for GST_UNALIGNED_ACESS, since we essentially know which archs
9955         are ok.
9956
9957 2004-04-17  Benjamin Otte  <otte@gnome.org>
9958
9959         * docs/gst/Makefile.am:
9960           ignore gst/parse directory when building docs (fixes #140205)
9961
9962 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9963
9964         * testsuite/refcounting/mem.c: (vmsize):
9965           do error checking
9966
9967 2004-04-16  Johan Dahlin  <johan@gnome.org>
9968
9969         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9970         and gst_pad_call_get_function.
9971
9972 2004-04-15  David Schleef  <ds@schleef.org>
9973
9974         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9975         checks if we can access unaligned memory.
9976         * configure.ac: Use it.
9977
9978 2004-04-16  Benjamin Otte  <otte@gnome.org>
9979
9980         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9981         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9982         * gst/elements/gstfilesrc.h:
9983           s/seek_happened/need_discont/ and require discont before sending any
9984           data
9985
9986 2004-04-15  David Schleef  <ds@schleef.org>
9987
9988         * gst/gstvalue.c: (gst_value_serialize_buffer),
9989         (gst_value_deserialize_buffer), (_gst_value_initialize):
9990         Register these types as fundamental types. (bug #140015)
9991
9992 2004-04-16  Benjamin Otte  <otte@gnome.org>
9993
9994         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9995         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9996         (gst_pad_pull):
9997           implement enforcing discont events before buffers are passed. This
9998           allows state changes of only some elements and later correctly going
9999           on where they left off (or in short: you can now set audio sinks to
10000           NULL to release the device when the pipeline is paused)
10001         * gst/gstpad.c: (gst_pad_call_chain_function),
10002         (gst_pad_call_get_function):
10003         * gst/gstpad.h:
10004           add gst_pad_call_chain_function and gst_pad_call_get_function for
10005           scheduler interaction. They are required because of the changes
10006           above.
10007         * gst/schedulers/entryscheduler.c: (get_buffer),
10008         (gst_entry_scheduler_chain_wrapper),
10009         (gst_entry_scheduler_get_wrapper),
10010         (gst_entry_scheduler_state_transition),
10011         (gst_entry_scheduler_pad_link):
10012         * gst/schedulers/gstbasicscheduler.c:
10013         (gst_basic_scheduler_chain_wrapper),
10014         (gst_basic_scheduler_src_wrapper),
10015         (gst_basic_scheduler_chainhandler_proxy),
10016         (gst_basic_scheduler_gethandler_proxy),
10017         (gst_basic_scheduler_cothreaded_chain),
10018         (gst_basic_scheduler_chain_elements):
10019         * gst/schedulers/gstoptimalscheduler.c:
10020         (get_group_schedule_function), (pad_clear_queued),
10021         (gst_opt_scheduler_pad_link):
10022           use the new functions instead of calling get/chain-functions
10023           directly.
10024
10025 2004-04-15  David Schleef  <ds@schleef.org>
10026
10027         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
10028         * docs/gst/tmpl/gstinfo.sgml: same
10029         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
10030         gtk-doc put here.
10031         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
10032         * examples/queue/queue.c: (main):  We iterate pipelines, not
10033         bins.  (bug #139996)
10034
10035 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10036
10037         * docs/pwg/advanced-types.xml:
10038           Add MS RLE support. Also document Qt RLE although I have no sample
10039           files for that yet. And document an extra property for ADPCM.
10040
10041 2004-04-15  David Schleef  <ds@schleef.org>
10042
10043         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10044         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10045         Windows.
10046
10047 2004-04-15  David Schleef  <ds@schleef.org>
10048
10049         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10050         symbol names to not conflict with new gstinfo.h symbols.
10051         * gst/gstinfo.h: Add inline functions for all those crazy
10052         compilers that don't know how to handle variadic macros (MSVC).
10053
10054 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10055
10056         * configure.ac: bump nano to 1
10057
10058 === release 0.8.1 ===
10059
10060 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10061
10062         * NEWS:
10063         * RELEASE:
10064         * configure.ac:
10065           releasing 0.8.1, "Snow Brigade"
10066
10067 2004-04-14  David Schleef  <ds@schleef.org>
10068
10069         * testsuite/Makefile.am: define tests_ignore
10070         * testsuite/Rules: Added new tests_ignore, which get compiled,
10071         but not run (generally because they're inconsistent or have
10072         heisenbugs).  Now we can ensure all the .c files compile in
10073         testsuite/.
10074         * testsuite/bins/Makefile.am: define tests_ignore
10075         * testsuite/bytestream/Makefile.am:
10076         * testsuite/caps/Makefile.am:
10077         * testsuite/clock/Makefile.am:
10078         * testsuite/debug/Makefile.am:
10079         * testsuite/debug/global.c: (gst_debug_log_one),
10080         (gst_debug_log_two): Fix compilation problem.
10081         * testsuite/dynparams/Makefile.am:
10082         * testsuite/elements/Makefile.am:
10083         * testsuite/ghostpads/Makefile.am:
10084         * testsuite/indexers/Makefile.am:
10085         * testsuite/parse/Makefile.am:
10086         * testsuite/plugin/Makefile.am:
10087         * testsuite/refcounting/Makefile.am:
10088         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10089         results, because it's not calculated correctly.
10090         * testsuite/refcounting/pad.c: (main): same
10091         * testsuite/states/Makefile.am:
10092         * testsuite/tags/Makefile.am:
10093         * testsuite/threads/Makefile.am:
10094
10095 2004-04-14  David Schleef  <ds@schleef.org>
10096
10097         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10098         generating bad code around the cpu detection asm code.
10099
10100 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10101
10102         * tools/gst-inspect.c: (print_element_info):
10103           print numeric version of rank as well, since we added some - 1
10104           rank values to elements
10105
10106 2004-04-13  David Schleef  <ds@schleef.org>
10107
10108         * configure.ac:  Disable various code when compiling for MinGW.
10109         * gst/elements/Makefile.am:
10110         * gst/elements/gstelements.c:
10111         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10112         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10113         * gst/registries/gstxmlregistry.c: (make_dir):
10114
10115 2004-04-13  David Schleef  <ds@schleef.org>
10116
10117         * gst/Makefile.am:
10118         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10119         assembly.
10120         * gst/gstcpuid_i386.s: remove
10121
10122 2004-04-13  David Schleef  <ds@schleef.org>
10123
10124         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10125         seems to think it needs to be done.
10126         * docs/gst/tmpl/gstfakesink.sgml:
10127         * docs/gst/tmpl/gstfakesrc.sgml:
10128         * docs/gst/tmpl/gstfdsink.sgml:
10129         * docs/gst/tmpl/gstfdsrc.sgml:
10130         * docs/gst/tmpl/gstfilesink.sgml:
10131         * docs/gst/tmpl/gstfilesrc.sgml:
10132         * docs/gst/tmpl/gstidentity.sgml:
10133         * docs/gst/tmpl/gstmd5sink.sgml:
10134         * docs/gst/tmpl/gstmultifilesrc.sgml:
10135         * docs/gst/tmpl/gstpipefilter.sgml:
10136         * docs/gst/tmpl/gstshaper.sgml:
10137         * docs/gst/tmpl/gstspider.sgml:
10138         * docs/gst/tmpl/gstspideridentity.sgml:
10139         * docs/gst/tmpl/gststatistics.sgml:
10140         * docs/gst/tmpl/gsttee.sgml:
10141         * docs/gst/tmpl/gsttypefind.sgml:
10142         * docs/gst/tmpl/gstutils.sgml:
10143
10144 2004-04-13  David Schleef  <ds@schleef.org>
10145
10146         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10147         and to build DLLs on Windows.
10148         * gst/Makefile.am:
10149         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10150         (gst_filesrc_open_file):
10151         * gst/schedulers/Makefile.am:
10152
10153 2004-04-13  David Schleef  <ds@schleef.org>
10154
10155         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10156         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10157         fixating lists.
10158
10159 2004-04-12  David Schleef  <ds@schleef.org>
10160
10161         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10162         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10163         to using it.
10164         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10165         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10166         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10167         * gst/gststructure.c: (gst_structure_set_valist),
10168         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10169         support for buffers.
10170         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10171         intended to be const.
10172         * gst/gsttag.h: same
10173         * gst/gstvalue.c: (gst_value_serialize_buffer),
10174         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10175         to (de)serialize buffers.
10176         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10177         * testsuite/caps/string-conversions.c: (main):
10178         * testsuite/caps/value_serialize.c: add new test
10179
10180 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10181
10182         * docs/pwg/advanced-types.xml:
10183           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10184
10185 2004-04-11  Benjamin Otte  <otte@gnome.org>
10186
10187         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10188           rename categories to basic_*
10189         * gst/schedulers/gstbasicscheduler.c: 
10190         (gst_basic_scheduler_chain_wrapper),
10191         (gst_basic_scheduler_chainhandler_proxy),
10192         (gst_basic_scheduler_gethandler_proxy),
10193         (gst_basic_scheduler_eventhandler_proxy):
10194           debugging category fixes - put common stuff in log category
10195         * gst/schedulers/gstbasicscheduler.c: 
10196         (gst_basic_scheduler_chain_elements):
10197           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10198           active and linking two active chains
10199
10200 2004-04-10  Benjamin Otte  <otte@gnome.org>
10201
10202         * docs/pwg/intro-preface.xml:
10203           fix dead links and remove reference to Wiki
10204
10205 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10206
10207         * gst/schedulers/gstbasicscheduler.c:
10208           make sure we can switch back to the main function if we're still in
10209           the main function (supposed to fix #139617)
10210         * gst/schedulers/gthread-cothreads.h:
10211           don't throw an error when switching to the same cothread
10212
10213 2004-04-09  Benjamin Otte  <otte@gnome.org>
10214
10215         * gst/gstbin.c: (gst_bin_get_type):
10216         * gst/gstclock.c: (gst_clock_get_type):
10217         * gst/gstindex.c: (gst_index_get_type):
10218         * gst/gstobject.c: (gst_object_get_type),
10219         (gst_signal_object_get_type):
10220         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10221         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10222         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10223         * gst/gstqueue.c: (gst_queue_get_type):
10224         * gst/gstregistry.c: (gst_registry_get_type):
10225         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10226         * gst/gstthread.c: (gst_thread_get_type):
10227           don't use memchunks for these objects, use malloc instead
10228
10229 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10230
10231         * docs/gst/.cvsignore:
10232         * docs/gst/Makefile.am:
10233         * docs/gst/gstreamer-sections.txt:
10234         * docs/gst/tmpl/gstaggregator.sgml:
10235         * docs/gst/tmpl/gstbuffer.sgml:
10236         * docs/gst/tmpl/gstclock.sgml:
10237         * docs/gst/tmpl/gstelement.sgml:
10238         * docs/gst/tmpl/gstfakesink.sgml:
10239         * docs/gst/tmpl/gstfakesrc.sgml:
10240         * docs/gst/tmpl/gstfdsink.sgml:
10241         * docs/gst/tmpl/gstfdsrc.sgml:
10242         * docs/gst/tmpl/gstfilesink.sgml:
10243         * docs/gst/tmpl/gstfilesrc.sgml:
10244         * docs/gst/tmpl/gstidentity.sgml:
10245         * docs/gst/tmpl/gstindex.sgml:
10246         * docs/gst/tmpl/gstinfo.sgml:
10247         * docs/gst/tmpl/gstmd5sink.sgml:
10248         * docs/gst/tmpl/gstmultifilesrc.sgml:
10249         * docs/gst/tmpl/gstpad.sgml:
10250         * docs/gst/tmpl/gstpipefilter.sgml:
10251         * docs/gst/tmpl/gstpipeline.sgml:
10252         * docs/gst/tmpl/gstpluginfeature.sgml:
10253         * docs/gst/tmpl/gstqueue.sgml:
10254         * docs/gst/tmpl/gstregistry.sgml:
10255         * docs/gst/tmpl/gstscheduler.sgml:
10256         * docs/gst/tmpl/gstshaper.sgml:
10257         * docs/gst/tmpl/gstspider.sgml:
10258         * docs/gst/tmpl/gstspideridentity.sgml:
10259         * docs/gst/tmpl/gststatistics.sgml:
10260         * docs/gst/tmpl/gstsystemclock.sgml:
10261         * docs/gst/tmpl/gsttee.sgml:
10262         * docs/gst/tmpl/gstthread.sgml:
10263         * docs/gst/tmpl/gsttypefind.sgml:
10264         * docs/gst/tmpl/gstutils.sgml:
10265           further doc build fixes
10266
10267 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10268
10269         * docs/gst/Makefile.am:
10270           make docs exit on scanning problems
10271           fix nonsrcdir build issues
10272         * docs/gst/gstreamer-sections.txt:
10273           adding stuff from -unused
10274         * gst/gstqueue.h:
10275           create GstQueueSize
10276         * gst/schedulers/cothreads_compat.h:
10277           fix cothread warnings
10278
10279 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10280
10281         * docs/gst/gstreamer-sections.txt:
10282           remove defines deprecated by Benjamin
10283
10284 2004-04-07  Benjamin Otte  <otte@gnome.org>
10285
10286         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10287           when the buffer is complete, don't check if other buffers are needed
10288         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10289           check that the offset is >0 so we don't try to read before the
10290           beginning of the file
10291         * gst/gstpad.c: (gst_pad_set_pad_template):
10292           sink the template, so we don't end up with 130k pad templates
10293
10294 2004-04-06  Benjamin Otte  <otte@gnome.org>
10295
10296         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10297           don't ref the element, adding already reffed it. And we didn't unref
10298           it later anyway... (huge memleak when you used many spider elements)
10299         * gst/gstelement.c: (gst_element_base_class_finalize):
10300         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10301         (gst_element_register):
10302         * gst/gsturi.c: (gst_element_make_from_uri):
10303           use gst_object_(un)ref instead of g_object(un)ref
10304
10305 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10306
10307         * gst/gstbuffer.h:
10308           remove macro that wouldn't work anymore because struct member has
10309           been removed.
10310         * gst/schedulers/entryscheduler.c: (schedule_forward):
10311           fix segfault for unconnected pads
10312         
10313 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10314
10315         reviewed by David Schleef <ds@schleef.org>
10316
10317         * gst/gstinfo.h:
10318           *_FORMAT modifiers should require putting a % in front of them for
10319           consistency reasons.
10320
10321 2004-04-05  Colin Walters  <walters@redhat.com>
10322
10323         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10324         space.
10325
10326 2004-04-05  Benjamin Otte  <otte@gnome.org>
10327
10328         * configure.ac:
10329         * gst/Makefile.am:
10330         * gst/gst_private.h:
10331         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10332           add support for detecting if GStreamer runs inside valgrind.
10333           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10334           print a big message in valgrind that GStreamer has detected it's
10335           running inside and might now use different code.
10336         * gst/gstmemchunk.c: (populate), (free_area),
10337         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10338         (gst_mem_chunk_free):
10339           flag memchunks for valgrind, so it can detect leaking of chunks.
10340           This allows detecting leaks of GstBuffer and GstEvent correctly
10341           inside valgrind.
10342
10343 2004-04-05  David Schleef  <ds@schleef.org>
10344
10345         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10346           jensgr@gmx.net (Jens Granseuer)
10347
10348 2004-04-05  David Schleef  <ds@schleef.org>
10349
10350         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10351         (gst_buffer_default_free), (gst_buffer_default_copy),
10352         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10353         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10354         structures in one place.
10355
10356 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10357
10358         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10359           (GST_TIME_FORMAT, GST_TIME_ARGS)
10360
10361 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10362
10363         * testsuite/elements/Makefile.am:
10364           disable test until it stops breaking make distcheck
10365
10366 2004-04-05  Johan Dahlin  <johan@gnome.org>
10367
10368         * po/sv.po: Updated translation
10369
10370 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10371
10372         * gst/gstplugin.c: (gst_plugin_load_file):
10373           fix segfault for when original plugin was loaded statically
10374
10375 2004-04-05  Benjamin Otte  <otte@gnome.org>
10376
10377         * testsuite/debug/category.c: (main):
10378         * testsuite/debug/commandline.c: (main):
10379         * testsuite/debug/output.c: (main):
10380           fix tests to work again with debugging enabled
10381
10382 2004-04-05  Benjamin Otte  <otte@gnome.org>
10383
10384         * gst/schedulers/gstbasicscheduler.c:
10385         (gst_basic_scheduler_pad_link):
10386           fix to work with recent scheduling changes
10387
10388 2004-04-05  Benjamin Otte  <otte@gnome.org>
10389
10390         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10391         prepareChangeLog doesn't work when cvs indents):
10392           don't throw an error when no element can be scheduled, there's too
10393           many weird reasons why it doesn't work. Return STOPPED instead.
10394           decoupled elemts' schedulability doesn't depend on bufpens.
10395
10396 2004-04-04  Benjamin Otte  <otte@gnome.org>
10397
10398         * gst/schedulers/gstbasicscheduler.c:
10399         (gst_basic_scheduler_pad_select):
10400           fix uninitialized variable warnings
10401
10402 2004-04-04  Benjamin Otte  <otte@gnome.org>
10403
10404         * gst/gstpad.c: (gst_pad_collect_valist):
10405           fix uninitialized variable warning
10406         * gst/schedulers/entryscheduler.c: (schedule_forward):
10407           fix shadowed variable
10408
10409 2004-04-04  Benjamin Otte  <otte@gnome.org>
10410
10411         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10412         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10413         (gst_pad_select):
10414         * gst/gstpad.h:
10415         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10416         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10417         * gst/gstscheduler.h:
10418           implement gst_pad_collect as replacement for gst_pad_select.
10419           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10420           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10421           new pad_select, lock and unlock calls.
10422         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10423         * gst/cothreads.h:
10424         * gst/schedulers/cothreads_compat.h:
10425         * gst/schedulers/gthread-cothreads.h:
10426           remove unused cothread_lock and cothread_unlock calls
10427         * gst/schedulers/entryscheduler.c:
10428         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10429         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10430         (gst_entry_scheduler_pad_select):
10431           update to new API
10432         * gst/schedulers/gstbasicscheduler.c:
10433         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10434         (gst_basic_scheduler_pad_select):
10435           remove useless lock and unlock calls, update pad_select to new API
10436           (untested)
10437         * gst/schedulers/gstoptimalscheduler.c:
10438         (gst_opt_scheduler_class_init):
10439           remove useless select, lock and unlock function calls
10440         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10441           use gst_pad_collect instead of gst_pad_select
10442
10443 2004-04-04  Benjamin Otte  <otte@gnome.org>
10444
10445         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10446         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10447         (schedule_next_element), (print_entry):
10448           add can_schedule_pad to handle element states.
10449           add schedule_forward to select the correct entry to schedule next
10450
10451 2004-04-03  Benjamin Otte  <otte@gnome.org>
10452
10453         * gst/schedulers/entryscheduler.c: 
10454           remove unused variable, fix error inside Rb, fix compile warning in
10455           unreachable code
10456
10457 2004-04-03  Benjamin Otte  <otte@gnome.org>
10458
10459         * gst/schedulers/entryscheduler.c:
10460           completely revamp the inner workings, so it's a lot easier to
10461           understand and extend
10462
10463 2004-04-03  Andy Wingo  <wingo@pobox.com>
10464
10465         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10466         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10467         This allows better introspection of pipeline topology.
10468         (add_to_chain): Don't do trickery to put loop elements first;
10469         rather, queue a chain sort by marking the chain as dirty.
10470         (remove_from_chain): Mark the chain dirty.
10471         (sort_chain): New function. Sorts the group list so that terminal
10472         sinks are first. This means elements on the sink side will be
10473         preferentially sscheduled before elements on the src side of the
10474         pipeline.
10475         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10476         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10477         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10478         (group_inc_link): Change argument and variable names to match the
10479         new link structure member names (src and sink).
10480         (group_dec_link): Add some description
10481
10482 2004-04-03  Benjamin Otte  <otte@gnome.org>
10483
10484         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10485         * gst/gstinfo.h:
10486         * testsuite/debug/category.c: (main):
10487         * testsuite/debug/commandline.c: (main):
10488         * testsuite/debug/output.c: (main):
10489         * testsuite/debug/printf_extension.c: (main):
10490           fix to successfully build and test with --disable-gst-debug
10491           configure switch (fixes #138705)
10492
10493 2004-04-03  Benjamin Otte  <otte@gnome.org>
10494
10495         * docs/pwg/building-boiler.xml:
10496           add cvs login line and s/anonymous/anoncvs/
10497
10498 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10499
10500         reviewed by Benjamin Otte  <otte@gnome.org>
10501
10502         * gst/gststructure.c: (gst_structure_free):
10503           memleak fix: free fields array (partial fix for #134839)
10504
10505 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10506
10507         * docs/random/ds/0.9-suggested-changes:
10508           Add a note to change handoff use in fakesrc to be usable in
10509           a more generic way (fakesrc should be renamed to appsrc or so).
10510         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10511           Change signal type to scope, so we can fill the buffer in the
10512           handoff handler (that's the whole use of this signal...).
10513
10514 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10515
10516         * docs/pwg/other-ntoone.xml:
10517           Document muxers and n-to-1 elements.
10518
10519 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10520
10521         * gst/registries/gstxmlregistry.c
10522         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10523         determine if a file is a G_MODULE. The old one discards paths
10524         containing "so" somewhere in the middle. My home directory is
10525         called "soto". Go figure...
10526
10527 2004-03-31  David Schleef  <ds@schleef.org>
10528
10529         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10530         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10531         * gst/gstbuffer.h:
10532
10533 2004-03-31  David Schleef  <ds@schleef.org>
10534
10535         * gst/gstvalue.c: (gst_value_union_int_int_range),
10536         (gst_value_union_int_range_int_range), (gst_value_can_union),
10537         (gst_value_union), (_gst_value_initialize):  Add some union
10538         implementations.  We didn't have any previously.
10539         * testsuite/caps/Makefile.am:
10540         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10541         (gst_audioscale_getcaps), (test_caps), (main): A little test
10542         that is the same as the caps manipulation in audioscale.
10543
10544 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10545
10546         * docs/faq/general.xml:
10547           add entry about "does gst support format X?"
10548
10549 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10550
10551         * gst/gstthread.c:
10552           fix docs
10553         * gst/gstutils.h:
10554           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10555
10556 2004-03-30  Benjamin Otte  <otte@gnome.org>
10557
10558         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10559           set the offset of the buffer to the requested offset
10560         * gst/elements/gsttypefind.c: (stop_typefinding):
10561           revert patch 1.18 (which I unfortunately don't know the reason for).
10562           This is needed to allow downstream elements to seek. Otherwise
10563           typefind might overwrite a previous seek by downstream elements.
10564           This lead to errors with id3tag and typefind on some mp3s.
10565         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10566         (gst_entry_scheduler_iterate):
10567           be more verbose when debugging
10568
10569 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10570
10571         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10572           make sure we don't get NULL strings
10573
10574 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10575
10576         * gst/gstcaps.c:
10577         * gst/gstelement.c:
10578         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10579         * gst/gstindex.c: (gst_index_resolver_get_type),
10580         (gst_index_get_type), (gst_index_factory_get_type):
10581         * gst/gstinfo.c:
10582         * gst/gstpad.c:
10583         * gst/gstplugin.c:
10584         * gst/gsturi.c: (gst_uri_handler_get_type):
10585         * gst/gstvalue.c:
10586           first batch of documentation fixes
10587
10588 2004-03-29  David Schleef  <ds@schleef.org>
10589
10590         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10591         * docs/gst/gstreamer-docs.sgml:  More hacking
10592         * docs/gst/gstreamer-sections.txt:
10593         * docs/gst/tmpl/cothreads_compat.sgml:
10594         * docs/gst/tmpl/gstcaps.sgml:
10595         * docs/gst/tmpl/gstclock.sgml:
10596         * docs/gst/tmpl/gstelement.sgml:
10597         * docs/gst/tmpl/gstevent.sgml:
10598         * docs/gst/tmpl/gstpad.sgml:
10599         * docs/gst/tmpl/gstutils.sgml:
10600         * docs/gst/tmpl/gstxml.sgml:
10601         * docs/gst/tmpl/gthread-cothreads.sgml:
10602         * docs/random/ds/0.9-suggested-changes:
10603         * gst/elements/gstfakesink.h: doc fixes
10604         * gst/elements/gstfakesrc.h: doc fixes
10605         * gst/gstcaps.c: doc fixes
10606         * gst/gstcaps.h: doc fixes
10607         * gst/gstelement.c: doc fixes
10608         * gst/gstelement.h: doc fixes
10609         * gst/gstindex.c: doc fixes
10610         * gst/gstinfo.c: doc fixes
10611         * gst/gstpad.c: doc fixes
10612         * gst/gstpad.h: doc fixes
10613         * gst/gstplugin.c: doc fixes
10614         * gst/gsttypefind.h: doc fixes
10615         * gst/gsturi.c: doc fixes
10616         * gst/gstvalue.c: doc fixes
10617
10618 2004-03-29  Colin Walters  <walters@redhat.com>
10619
10620         * gst/registries/gstxmlregistry.c (get_time)
10621         (plugin_times_older_than_recurse):
10622         Use the result of stat to determine whether a path is a file,
10623         so we don't attempt to opendir() files.
10624
10625 2004-03-29  Benjamin Otte  <otte@gnome.org>
10626
10627         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10628           print caps in debugging output when setting caps failed
10629         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10630         (schedule_next_element), (get_buffer), (run_chainhandler),
10631         (element_may_start), (gst_entry_scheduler_chain_handler),
10632         (gst_entry_scheduler_get_handler),
10633         (gst_entry_scheduler_state_transition),
10634         (gst_entry_scheduler_pad_link):
10635           make this scheduler a testcase for mandatory
10636           discont-before-first-buffer which is needed if we want to allow apps
10637           to release the sound device.
10638           add SCHED_ASSERT macro to print scheduler state before an assertion
10639           triggers.
10640
10641 2004-03-29  Benjamin Otte  <otte@gnome.org>
10642
10643         * COPYING:
10644           replace by LGPL (former COPYING.LIB). The core is completely
10645           licensed LGPL.
10646         * COPYING.LIB:
10647           remove
10648
10649 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10650
10651         * po/af.po:
10652         * po/sv.po:
10653           updated Afrikaans and Swedish
10654
10655 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10656
10657         * po/LINGUAS:
10658         * po/az.po:
10659           adding Azerbaijani (Mətin Əmirov)
10660
10661 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10662
10663         * gst/gstelement.h: 
10664         * gst/gstelement.c (gst_element_set_time_delay): New function for
10665         setting element time taking into account a hardware buffering
10666         delay.
10667         (gst_element_set_time): Now just an invocation of
10668         gst_element_set_time_delay.
10669         * gst/gstclock.h: 
10670         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10671         allowing to set event times in the future.
10672         (gst_clock_get_event_time): Now just an invocation of
10673         gst_clock_get_event_time_delay.
10674
10675 2004-03-28  Benjamin Otte  <otte@gnome.org>
10676
10677         * gst/gstbin.c: (gst_bin_set_element_sched),
10678         (gst_bin_unset_element_sched):
10679           don't add decoupled elements to schedulers - otherwise it's
10680           impossible to control if a link to a decoupled element was already
10681           removed from a scheduler or not.
10682         * gst/schedulers/cothreads_compat.h:
10683         * gst/schedulers/gthread-cothreads.h:
10684           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10685           is no "unused" warning.
10686         * gst/schedulers/Makefile.am:
10687         * gst/schedulers/entryscheduler.c:
10688           add new scheduler, based on ideas from talking to David and Martin.
10689           It's supposed to be small and correct. Currently it's also slow (but
10690           it's not noticable)
10691         * examples/retag/retag.c: (main):
10692         * testsuite/bytestream/test1.c: (main):
10693           fix missing NULLs at end of variadic functions
10694         * testsuite/elements/.cvsignore:
10695           update
10696
10697 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10698
10699         * gst/gstevent.h:
10700         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10701
10702 2004-03-25  David Schleef  <ds@schleef.org>
10703
10704         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10705         * docs/gst/tmpl/gstaggregator.sgml:
10706         * docs/gst/tmpl/gstautoplugfactory.sgml:
10707         * docs/gst/tmpl/gstbin.sgml:
10708         * docs/gst/tmpl/gstbuffer.sgml:
10709         * docs/gst/tmpl/gstbufferstore.sgml:
10710         * docs/gst/tmpl/gstfakesink.sgml:
10711         * docs/gst/tmpl/gstfakesrc.sgml:
10712         * docs/gst/tmpl/gstmd5sink.sgml:
10713         * docs/gst/tmpl/gstreamer-unused.sgml:
10714         * docs/gst/tmpl/gstsearchfuncs.sgml:
10715         * docs/gst/tmpl/gstshaper.sgml:
10716         * docs/gst/tmpl/gstspider.sgml:
10717         * docs/gst/tmpl/gsttee.sgml:
10718         * docs/gst/tmpl/gstutils.sgml:
10719         * docs/gst/tmpl/gstvalue.sgml:
10720         * docs/gst/tmpl/gstxml.sgml:
10721         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10722         and we don't support it.
10723         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10724         (gst_use_threads), (gst_has_threads): same
10725         * gst/gstthreaddummy.c: same
10726         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10727         * gst/autoplug/gstspider.h: same
10728         * gst/elements/gstaggregator.h: Remove bogus function from header
10729         * gst/elements/gstfakesink.h: same
10730         * gst/elements/gstfakesrc.h: same
10731         * gst/elements/gstmd5sink.h: same
10732         * gst/elements/gstshaper.h: same
10733         * gst/elements/gsttee.h: same
10734         * gst/gstbin.c: doc fixes
10735         * gst/gstbin.h: Remove unused definition.
10736         * gst/gstbuffer.c: doc fixes
10737         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10738         * gst/gstfilter.c: doc fixes
10739         * gst/gsttag.c: doc fixes
10740         * gst/gstvalue.c: doc fixes
10741
10742 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10743
10744         * docs/pwg/advanced-types.xml:
10745           Document typefinding.
10746         * docs/pwg/other-oneton.xml:
10747           Document one-to-n elements, demuxers and parsers.
10748
10749 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10750
10751         reviewed by: David Schleef  <ds@schleef.org>
10752
10753         * configure.ac: Check bison version (bug #127838)
10754
10755 2004-03-25  David Schleef  <ds@schleef.org>
10756
10757         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10758         * docs/gst/gstreamer-sections.txt:
10759         * docs/gst/tmpl/gstautoplug.sgml:
10760         * docs/gst/tmpl/gststaticautoplug.sgml:
10761         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10762         * docs/gst/tmpl/gstutils.sgml:
10763         * docs/gst/tmpl/gstxml.sgml:
10764
10765 2004-03-24  David Schleef  <ds@schleef.org>
10766
10767         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10768         manual being such complete crap, that I decided to do major
10769         hacking of it.  This checkin replaces any fine tuning that
10770         may have been done previously, with the benefit of actually
10771         being complete for much of the API that was changed since
10772         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10773         * docs/gst/gstreamer-sections.txt:
10774         * docs/gst/tmpl/GstBin.sgml:
10775         * docs/gst/tmpl/GstBuffer.sgml:
10776         * docs/gst/tmpl/GstCaps.sgml:
10777         * docs/gst/tmpl/GstClock.sgml:
10778         * docs/gst/tmpl/GstCompat.sgml:
10779         * docs/gst/tmpl/GstData.sgml:
10780         * docs/gst/tmpl/GstElement.sgml:
10781         * docs/gst/tmpl/GstEvent.sgml:
10782         * docs/gst/tmpl/GstIndex.sgml:
10783         * docs/gst/tmpl/GstStructure.sgml:
10784         * docs/gst/tmpl/GstTag.sgml:
10785         * docs/gst/tmpl/cothreads.sgml:
10786         * docs/gst/tmpl/cothreads_compat.sgml:
10787         * docs/gst/tmpl/gettext.sgml:
10788         * docs/gst/tmpl/grammar.tab.sgml:
10789         * docs/gst/tmpl/gst-i18n-app.sgml:
10790         * docs/gst/tmpl/gst-i18n-lib.sgml:
10791         * docs/gst/tmpl/gst.sgml:
10792         * docs/gst/tmpl/gst_private.sgml:
10793         * docs/gst/tmpl/gstaggregator.sgml:
10794         * docs/gst/tmpl/gstarch.sgml:
10795         * docs/gst/tmpl/gstatomic.sgml:
10796         * docs/gst/tmpl/gstatomic_impl.sgml:
10797         * docs/gst/tmpl/gstbin.sgml:
10798         * docs/gst/tmpl/gstbuffer.sgml:
10799         * docs/gst/tmpl/gstbufferstore.sgml:
10800         * docs/gst/tmpl/gstcaps.sgml:
10801         * docs/gst/tmpl/gstclock.sgml:
10802         * docs/gst/tmpl/gstcompat.sgml:
10803         * docs/gst/tmpl/gstconfig.sgml:
10804         * docs/gst/tmpl/gstcpu.sgml:
10805         * docs/gst/tmpl/gstdata.sgml:
10806         * docs/gst/tmpl/gstdata_private.sgml:
10807         * docs/gst/tmpl/gstelement.sgml:
10808         * docs/gst/tmpl/gstenumtypes.sgml:
10809         * docs/gst/tmpl/gsterror.sgml:
10810         * docs/gst/tmpl/gstevent.sgml:
10811         * docs/gst/tmpl/gstfakesink.sgml:
10812         * docs/gst/tmpl/gstfakesrc.sgml:
10813         * docs/gst/tmpl/gstfilesink.sgml:
10814         * docs/gst/tmpl/gstfilter.sgml:
10815         * docs/gst/tmpl/gstindex.sgml:
10816         * docs/gst/tmpl/gstinfo.sgml:
10817         * docs/gst/tmpl/gstinterface.sgml:
10818         * docs/gst/tmpl/gstlog.sgml:
10819         * docs/gst/tmpl/gstmacros.sgml:
10820         * docs/gst/tmpl/gstmarshal.sgml:
10821         * docs/gst/tmpl/gstmd5sink.sgml:
10822         * docs/gst/tmpl/gstmultifilesrc.sgml:
10823         * docs/gst/tmpl/gstobject.sgml:
10824         * docs/gst/tmpl/gstpad.sgml:
10825         * docs/gst/tmpl/gstparse.sgml:
10826         * docs/gst/tmpl/gstpipeline.sgml:
10827         * docs/gst/tmpl/gstplugin.sgml:
10828         * docs/gst/tmpl/gstpluginfeature.sgml:
10829         * docs/gst/tmpl/gstqueue.sgml:
10830         * docs/gst/tmpl/gstreamer-unused.sgml:
10831         * docs/gst/tmpl/gstregistry.sgml:
10832         * docs/gst/tmpl/gstregistrypool.sgml:
10833         * docs/gst/tmpl/gstscheduler.sgml:
10834         * docs/gst/tmpl/gstsearchfuncs.sgml:
10835         * docs/gst/tmpl/gstshaper.sgml:
10836         * docs/gst/tmpl/gstspider.sgml:
10837         * docs/gst/tmpl/gstspideridentity.sgml:
10838         * docs/gst/tmpl/gststructure.sgml:
10839         * docs/gst/tmpl/gstsystemclock.sgml:
10840         * docs/gst/tmpl/gsttag.sgml:
10841         * docs/gst/tmpl/gsttaginterface.sgml:
10842         * docs/gst/tmpl/gsttee.sgml:
10843         * docs/gst/tmpl/gstthread.sgml:
10844         * docs/gst/tmpl/gsttrace.sgml:
10845         * docs/gst/tmpl/gsttrashstack.sgml:
10846         * docs/gst/tmpl/gsttypefind.sgml:
10847         * docs/gst/tmpl/gsttypes.sgml:
10848         * docs/gst/tmpl/gsturi.sgml:
10849         * docs/gst/tmpl/gsturitype.sgml:
10850         * docs/gst/tmpl/gstutils.sgml:
10851         * docs/gst/tmpl/gstvalue.sgml:
10852         * docs/gst/tmpl/gstversion.sgml:
10853         * docs/gst/tmpl/gstxml.sgml:
10854         * docs/gst/tmpl/gstxmlregistry.sgml:
10855         * docs/gst/tmpl/gthread-cothreads.sgml:
10856         * docs/gst/tmpl/types.sgml:
10857
10858 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10859
10860         * docs/pwg/other-sink.xml:
10861         * docs/pwg/other-source.xml:
10862           Documentation on how to write source and sink elements. Other
10863           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10864           manager, autoplugger) are all still pending.
10865
10866 2004-03-25  Benjamin Otte  <otte@gnome.org>
10867
10868         * testsuite/elements/Makefile.am:
10869         * testsuite/elements/gst-compprep-check:
10870           add check to make sure gst-compprep works
10871         * testsuite/elements/gst-inspect-check.in:
10872           improve initialization output
10873         * testsuite/Makefile.am:
10874         * testsuite/gst-inspect-check:
10875           remove old file
10876
10877 2004-03-24  David Schleef  <ds@schleef.org>
10878
10879         * testsuite/elements/Makefile.am:
10880         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10881         to the testsuite.
10882
10883 2004-03-24  Benjamin Otte  <otte@gnome.org>
10884
10885         * libs/gst/control/dparam.c: (gst_dparam_attach),
10886         (gst_dparam_detach):
10887         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10888           fix lvalue casts for real
10889
10890 2004-03-24  Benjamin Otte  <otte@gnome.org>
10891
10892         * gst/schedulers/gstbasicscheduler.c:
10893         (gst_basic_scheduler_src_wrapper):
10894         * gst/schedulers/gstoptimalscheduler.c:
10895         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10896         (pad_clear_queued), (gst_opt_scheduler_add_element),
10897         (gst_opt_scheduler_remove_element):
10898           fix GStreamer to not have issues with lvalue casts anymore (fixes
10899           #136841)
10900
10901 2004-03-24  Benjamin Otte  <otte@gnome.org>
10902
10903         * gst/gstelement.c:
10904           add documentation about a gobject quirk where the object hasn't the
10905           correct class pointer set on initialization
10906         * gst/schedulers/gstbasicscheduler.c:
10907         (gst_basic_scheduler_src_wrapper):
10908           make sure to not run into an infinite loop
10909
10910 2004-03-22  Benjamin Otte  <otte@gnome.org>
10911
10912         * gst/gstutils.c: (gst_util_dump_mem):
10913         * gst/gstutils.h:
10914           first argument of gst_util_dump_mem should be const
10915
10916 2004-03-22  Johan Dahlin  <johan@gnome.org>
10917
10918         * gst/gstvalue.h: Clean up a little bit.
10919
10920 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10921
10922         reviewed by Benjamin Otte  <otte@gnome.org>
10923
10924         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10925         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10926         (gst_aggregator_class_init), (gst_aggregator_init):
10927         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10928         (gst_filesrc_dispose), (gst_filesrc_set_location):
10929         * gst/elements/gstidentity.c: (gst_identity_finalize),
10930         (gst_identity_class_init), (gst_identity_chain):
10931         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10932         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10933         (gst_statistics_class_init):
10934         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10935         (gst_tee_get_property):
10936           clean up used memory in this elements correctly on teardown (closes
10937           #137279)
10938
10939 2004-03-20  Colin Walters  <walters@redhat.com>
10940
10941         * gst/registries/gstxmlregistry.c:
10942         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10943         registry saving atomic.
10944
10945 2004-03-20  Colin Walters  <walters@redhat.com>
10946
10947         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10948         Just use
10949         access() instead of actually creating and deleting files.
10950
10951 2004-03-18  David Schleef  <ds@schleef.org>
10952
10953         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10954         (bug #137625)
10955
10956 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10957
10958         * po/sv.po: updated translation (Christian Rose)
10959
10960 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10961
10962         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10963         (gst_filesink_get_query_types), (_do_init),
10964         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10965           return FALSE silently
10966         * po/af.po: updated translation (Petri Jooste)
10967
10968 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10969
10970         * Makefile.am:
10971         * configure.ac:
10972           dist common properly
10973         * po/af.po:
10974         * po/fr.po:
10975         * po/nl.po:
10976         * po/sr.po:
10977         * po/sv.po:
10978           refreshing translations
10979
10980 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10981
10982         * po/LINGUAS:
10983         * po/sv.po:
10984         * po/af.po:
10985           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10986
10987 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10988
10989         * Makefile.am: use common/release.mak
10990
10991 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10992
10993         * docs/faq/gst-uninstalled:
10994           adding gst-monkeysaudio to the list of possible plugin dirs
10995
10996 2004-03-16  David Schleef  <ds@schleef.org>
10997
10998         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10999         (gst_init_check_with_popt_table):  Fix some gettext strings to
11000         make them easier to translate.  Required making the strings
11001         non-const.
11002
11003 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11004
11005         * configure.ac: bump nano to 1
11006
11007 === release 0.8.0 ===
11008
11009 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11010
11011         * configure.ac: release 0.8.0, "Executive Slacks"
11012
11013 2004-03-16  Johan Dahlin  <johan@gnome.org>
11014
11015         * gst/schedulers/gstoptimalscheduler.c
11016         (gst_opt_scheduler_pad_unlink): Remove double ;,
11017         spotted by Scott Wheeler
11018
11019 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11020
11021         * configure.ac: bump libtool version
11022
11023 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11024
11025         * gst/gstcaps.h:
11026         * gst/gststructure.h:
11027           add reserved padding
11028
11029 2004-03-15  Benjamin Otte  <otte@gnome.org>
11030
11031         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11032           set the first parameter for select call correctly.
11033           (fixes #137230)
11034
11035 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11036
11037         * *.c,*.h: don't mix tabs and spaces
11038
11039 2004-03-15  Johan Dahlin  <johan@gnome.org>
11040
11041         * gst/schedulers/gstoptimalscheduler.c
11042         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11043         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11044
11045         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11046         
11047 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11048
11049         * testsuite/Rules:
11050           fix gst-register rules
11051
11052 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11053
11054         * testsuite/Rules:
11055           use versioned gst-register
11056
11057 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11058
11059         * docs/libs/gstreamer-libs-sections.txt:
11060           remove </SUBSECTION>
11061         * gst/gstplugin.c:
11062         * gst/gstregistry.c: (gst_registry_add_plugin):
11063         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11064         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11065           add debugging and fix some comment blocks
11066
11067 2004-03-15  Johan Dahlin  <johan@gnome.org>
11068
11069         * *.h: Revert indent changes.
11070         
11071 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11072
11073         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11074           g_error_free the g_error
11075         * tools/gst-feedback-m.m:
11076           check for other versions of gstreamer
11077         * tools/gst-indent:
11078           use sh, not bash
11079
11080 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11081
11082         * tools/gst-register.c: do not spill paths when registries are not
11083           writable, until we fix the "user running gst-register" case.
11084
11085 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11086
11087         * *.c, *.h: commit of gst-indent run on core
11088
11089 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11090
11091         * tools/gst-indent:
11092         * tools/Makefile.am:
11093           add our indentation style as a script
11094
11095 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11096
11097         * po/sr.po:
11098         * po/LINGUAS:
11099           added Serbian translation
11100
11101 2004-03-13  Benjamin Otte  <otte@gnome.org>
11102
11103         * gst/gstelement.c:
11104           add documentation note about gst_element_found_tags_for_pad not
11105           being usable in getfunctions. (see #137042)
11106
11107 2004-03-12  David Schleef  <ds@schleef.org>
11108
11109         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11110         change API right now!  Readd gst_caps_is_simple() macro.
11111         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11112         uninitialized variable.  I'd bet this caused crashes.
11113         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11114
11115 2004-03-12  Johan Dahlin  <johan@gnome.org>
11116
11117         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11118         * gst/gstcaps.h: Clean up
11119
11120         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11121         _gst_caps_initalize()
11122
11123         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11124         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11125
11126         * gst/gststructure.c (gst_structure_get_type): Ditto
11127
11128         * gst/gststructure.h: Ditto
11129         
11130 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11131
11132         * gst/gstqueue.c: (gst_queue_init):
11133           Reset default max. values in queues. Reason is simply to avoid
11134           braindead use. If you want wider values, use the properties. The
11135           default is supposed to always work. Wider values would make this
11136           beast a memory hog by default (250 full-PAL RGB32 video frames?
11137           That's 440 MB! No thank you).
11138
11139 2004-03-10  David Schleef  <ds@schleef.org>
11140
11141         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11142         were found.  (bug #136793)
11143
11144 2004-03-10  Johan Dahlin  <johan@gnome.org>
11145
11146         * gst/schedulers/gstoptimalscheduler.c
11147         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11148         links to elements within the same group, so we can finally remove
11149         that annoying warning. Refactor the code a little bit
11150         (group_dec_links_for_element): Split out
11151
11152 2004-03-09  David Schleef  <ds@schleef.org>
11153
11154         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11155         (bug #134863)
11156
11157 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11158
11159         * configure.ac: first bug fix due to major/minor bump
11160
11161 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11162
11163         * configure.ac: bump nano to 1
11164
11165 === release 0.7.6 ===
11166
11167 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11168
11169         * NEWS:
11170         * RELEASE:
11171         * configure.ac:
11172           releasing 0.7.6, "Almost"
11173         * po/fr.po:
11174         * po/nl.po:
11175         * tools/Makefile.am:
11176         * tools/gst-feedback-m.m:
11177           unversioned source
11178
11179 2004-03-09  Johan Dahlin  <johan@gnome.org>
11180
11181         Reviewed by: Thomas Vander Stichele
11182
11183         * gst/gstelement.c (gst_element_class_init): register second
11184         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11185         language bindings can (de)marshall correctly.
11186
11187         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11188
11189         * gst/gsterror.c (gst_g_error_get_type): New function
11190
11191         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11192         with VOID:OBJECT,OBJECT,STRING 
11193
11194 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11195
11196         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11197         Free a leaked g_timer on early returns.
11198
11199 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11200
11201         * docs/pwg/advanced-types.xml:
11202           Add cinepak description.
11203
11204 2004-03-07  David Schleef  <ds@schleef.org>
11205
11206         * docs/random/mimetypes:  Added cinepak description
11207
11208 2004-03-07  Andy Wingo  <wingo@pobox.com>
11209
11210         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11211
11212         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11213         there are no links to other groups when a group is destroyed.
11214         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11215         removed from a group, make sure the link count to elements linked
11216         to other pads is appropriately decremented. This really fixes
11217         #135672.
11218
11219         The 1.60->1.61 patch has been reapplied in light of this fix.
11220
11221         * gst/gstelement.c (gst_element_dispose): Really protect against
11222         multiple invocations this time.
11223
11224 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11225
11226         * docs/gst/gstreamer-sections.txt:
11227         * docs/gst/tmpl/gsttag.sgml:
11228           remove some deprecated functions, document some existing ones
11229         * gst/gsttag.c: (gst_tag_get_flag):
11230         * gst/gsttag.h:
11231           add accessor function
11232
11233 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11234
11235         * docs/gst/gstreamer-sections.txt:
11236         * docs/gst/tmpl/gsttag.sgml:
11237         * docs/gst/tmpl/gstxml.sgml:
11238         * gst/gsttag.c: (gst_tag_get_flag):
11239         * gst/gsttag.h:
11240
11241 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11242
11243         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11244         leak
11245
11246 2004-03-05  David Schleef  <ds@schleef.org>
11247
11248         * REQUIREMENTS: Add bison and flex.
11249         * configure.ac: Fix comment about bison.
11250         * docs/random/ds/0.9-suggested-changes: yer ma
11251         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11252
11253 2004-03-05  Benjamin Otte  <otte@gnome.org>
11254
11255         * gst/gstelement.c: (gst_element_error_full):
11256           revert recent recursive state changing commit - messing with other
11257           elements' states is evil and should be done by apps only.
11258
11259 2004-03-05  Benjamin Otte  <otte@gnome.org>
11260
11261         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11262           check for empty intersection instead of NULL caps
11263         (gst_element_get_compatible_pad_filtered):
11264           remove old workaround that is only a bug nowadays
11265
11266 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11267
11268         * gst/gstelement.c: (gst_element_error_full):
11269           make elements try to recursively change state to PAUSED on all
11270           parents after an error to suppress ensuing warnings
11271         * gst/parse/grammar.y:
11272           make it check if it was able to sync the state, and throw an error
11273           if not, so stuff like
11274           oggdemux ! vorbisdec ! osssink gets caught
11275
11276 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11277
11278         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11279           it contains lib64; use AS_AC_EXPAND to handle it properly
11280
11281 2004-03-05  David Schleef  <ds@schleef.org>
11282
11283         * gst/gstcpuid_i386.s:  Remove unused code
11284         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11285         (gst_getbits_newbuf): Remove MMX code
11286         * libs/gst/getbits/getbits.h: Remove MMX code
11287
11288 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11289
11290         * debian/.cvsignore:
11291         * debian/README.Debian:
11292         * debian/changelog:
11293         * debian/control:
11294         * debian/control.in:
11295         * debian/copyright:
11296         * debian/gstreamer-core-libs-dev.files:
11297         * debian/gstreamer-core-libs.files:
11298         * debian/gstreamer-core.files:
11299         * debian/gstreamer-core.postinst:
11300         * debian/gstreamer-core.postrm:
11301         * debian/gstreamer-doc.files:
11302         * debian/gstreamer-doc.links:
11303         * debian/gstreamer-doc.lintian:
11304         * debian/gstreamer-runtime.files:
11305         * debian/gstreamer-runtime.manpages:
11306         * debian/gstreamer-runtime.postinst:
11307         * debian/gstreamer-runtime.postrm:
11308         * debian/gstreamer-tools.files:
11309         * debian/gstreamer-tools.manpages:
11310         * debian/libgstreamer-dev.files:
11311         * debian/libgstreamer0.4.1.files:
11312         * debian/libgstreamerVERSION.files:
11313         * debian/rules:
11314         Debian package info not maintained here.
11315
11316 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11317
11318         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11319         * gst/gstbin.c: (gst_bin_class_init):
11320         * gst/gstelement.c: (gst_element_class_init):
11321         * gst/gstindex.c: (gst_index_class_init):
11322         * gst/gstobject.c: (gst_object_class_init),
11323         (gst_signal_object_class_init):
11324         * gst/gstpad.c: (gst_pad_template_class_init):
11325         * gst/gstregistry.c: (gst_registry_class_init):
11326         * gst/gsturi.c: (gst_uri_handler_base_init):
11327         * gst/gstxml.c: (gst_xml_class_init):
11328         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11329         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11330           make all signal names use dashes instead of underscore
11331
11332 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11333
11334         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11335
11336 2004-03-03  Benjamin Otte  <otte@gnome.org>
11337
11338         * gst/schedulers/gstoptimalscheduler.c:
11339           revert last commit by Andy Wingo. It causes segfaults on unreffing
11340           in Rhythmbox. (see bug #135672)
11341
11342 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11343
11344         * po/fr.po: fix typo
11345
11346 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11347
11348         * tools/gst-inspect.c: (main): 
11349         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11350
11351 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11352
11353         * configure.ac:
11354           get GLIB_ONLY and POPT flags for the nonversioned binaries
11355         * tools/Makefile.am:
11356           use them
11357
11358 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11359
11360         * gst/gst.c: (init_post):
11361           change so that GST_REGISTRY now is where the global registry gets
11362           saved, since that is where plugins now get attached to first, and
11363           spilled over to the user registry.  Note that in the case of using
11364           GST_REGISTRY env var, we don't want to affect any real registries
11365           beyond the one given by this var, and thus we don't set a user
11366           registry to spill to.  So make sure GST_REGISTRY is writable.
11367
11368 2004-03-01  David Schleef  <ds@schleef.org>
11369
11370         * AUTHORS:  Added some names.  Add yourself if you're missing.
11371
11372 2004-03-01  David Schleef  <ds@schleef.org>
11373
11374         * MAINTAINERS: Add
11375
11376 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11377
11378         * configure.ac:
11379           remove whitespace
11380         * docs/gst/tmpl/gstbuffer.sgml:
11381         * docs/gst/tmpl/gstdata.sgml:
11382         * docs/gst/tmpl/gstreamer-unused.sgml:
11383         * docs/gst/tmpl/gstxml.sgml:
11384           doc update
11385         * docs/manuals.mak:
11386           add a FIXME
11387         * docs/pwg/intro-preface.xml:
11388         * docs/pwg/pwg.xml:
11389           remove GNOME
11390         * gst/gst.c: (init_post):
11391           try GST_PLUGIN_PATH paths for the _global_registry first
11392         * gst/gstelement.h:
11393           add the error message as well, otherwise (null) debug info doesn't
11394           make much sense
11395         * tools/gst-register.c: (main):
11396           spill paths to next registry if this registry is not writable
11397         * po/fr.po:
11398         * po/nl.po:
11399           translation updates
11400
11401 2004-03-01  Johan Dahlin  <johan@gnome.org>
11402
11403         * gst/gstbuffer.c (_gst_buffer_initialize): 
11404         * gst/gstdata.c (gst_data_get_type): 
11405         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11406         instead of ref, since some applications that uses GBoxed
11407         routines depends on a function that actually returns a copy.
11408
11409 2004-02-27  Benjamin Otte  <otte@gnome.org>
11410
11411         * gst/gstbuffer.h:
11412           remove gst_buffer_free, use gst_data_unref
11413         * gst/gstdata.c: (gst_data_get_type):
11414           use refcounting in GstData GBoxed registration
11415         * gst/gstdata.h:
11416           remove gst_data_free, use gst_data_unref
11417
11418 2004-02-27  Johan Dahlin  <johan@gnome.org>
11419
11420         * gst/gstdata.c (gst_data_get_type): New function, register
11421         GstData as a GBoxed type.
11422
11423         * gst/gstdata.h (GST_TYPE_DATA): New macro
11424
11425 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11426
11427         * Makefile.am:
11428         * gstreamer.spec.in:
11429           put back RELEASE
11430         * gst/Makefile.am:
11431           clean up non-disting of built files
11432         * testsuite/debug/commandline.c:
11433           test fix for option rename
11434
11435 2004-02-26  David Schleef  <ds@schleef.org>
11436
11437         * configure.ac:  We don't really need glib-2.3.  Also remove
11438         some unneeded checks for library functions.
11439         * gst/Makefile.am:  Instead, we need to not dist files created
11440         by glib-genmarshal.
11441
11442 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11443
11444         * configure.ac:
11445           bump glib required version to 2.3.0 for g_value_takes_boxed
11446
11447  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11448
11449         * common/m4/gst-docs.m4
11450         change flavour text from enable to disable as enable is our default
11451         closes bug Bug 135304
11452
11453 === release 0.7.5 ===
11454  
11455  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11456  
11457         * NEWS:
11458           instate NEWS file
11459         * Makefile.am:
11460         * gstreamer.spec.in:
11461         * RELEASE:
11462           put back release
11463         * configure.ac:
11464         * docs/random/release:
11465           more updates
11466
11467 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11468
11469         * gst/gsttag.c: (_gst_tag_initialize):
11470         * po/fr.po:
11471         * po/nl.po:
11472           remove hyphen from codec tags
11473
11474 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11475
11476         * gst/parse/Makefile.am:
11477           fix dependency so that a make from a clean build works the first
11478           time
11479
11480 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11481
11482         * docs/random/release:
11483           update release strategy
11484         * po/fr.po:
11485           auto-update po file
11486         * po/nl.po:
11487           update dutch translation
11488
11489 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11490
11491         * docs/manual/debugging.xml:
11492         fix manual for new debugging system
11493
11494 2004-02-25  Andy Wingo  <wingo@pobox.com>
11495
11496         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11497         gst_pad_link_prepare. Please email the list with specific reasons
11498         for reverting.
11499
11500 2004-02-24  Andy Wingo  <wingo@pobox.com>
11501
11502         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11503         invocations.
11504
11505         * gst/schedulers/gstoptimalscheduler.c:
11506         I added a mess of prototypes at the top of the file by way of
11507         documentation. Some of the operations on chains and groups were
11508         re-organized.
11509
11510         (create_group): Added a type argument so if the group is enabled,
11511         the setup_group_scheduler knows what to do.
11512         (group_elements): Added a type argument here, too, to be passed on
11513         to create_group.
11514         (group_element_set_enabled): If an unlinked PLAYING element is
11515         added to a bin, we have to create a new group to hold the element,
11516         and this function will be called before the group is added to the
11517         chain. Thus we have a valid case for group->chain==NULL. Instead
11518         of calling chain_group_set_enabled, just set the flag on the group
11519         (the chain's status will be set when the group is added to it).
11520         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11521         Setup the group scheduler when the group is enabled, not
11522         specifically when an element goes PAUSED->PLAYING. This means
11523         PLAYING elements can be added, linked, and scheduled into a
11524         PLAYING pipeline, as was intended.
11525         (add_to_group): Don't ref the group twice. I don't know when this
11526         double-ref got in here. Removing it has the potential to cause
11527         segfaults if other parts of the scheduler are buggy. If you find
11528         that the scheduler is segfaulting for you, put in an extra ref
11529         here and see if that hacks over the underlying issue. Of course,
11530         then find out what code is unreffing a group it doesn't own...
11531         (create_group): Make the extra refcount floating, and remove it
11532         after adding the element. This means that...
11533         (unref_group): Destroy when the refcount reaches 0, not 1, like
11534         every other refcounted object in the known universe.
11535         (remove_from_group): When a group becomes empty, set it to be not
11536         active, and remove it from its chain. Don't unref it again,
11537         there's no floating reference any more.
11538         (destroy_group): We have to remove the group from the chain in
11539         remove_from_group (rather than here) to break refcounting cycles
11540         (the chain always has a ref on the group). So assert that
11541         group->chain==NULL.
11542         (ref_group_by_count): Removed, it was commented out anyway.
11543         (merge_chains): Use the remove_from_chain and add_to_chain
11544         primitives to do the reparenting, instead of rolling our own
11545         implementation.
11546         (add_to_chain): The first non-disabled group in the chain's group
11547         list will be the entry point for the chain. Because buffers can
11548         accumulate in loop elements' peer bufpens, we preferentially
11549         schedule loop groups before get groups to avoid unnecessary
11550         execution of get-based groups when the bufpens are already full.
11551         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11552         (get_group_schedule_function): Ditto.
11553         (loop_group_schedule_function): Ditto.
11554         (gst_opt_scheduler_loop_wrapper): Ditto.
11555         (gst_opt_scheduler_iterate): Ditto.
11556
11557         I understand the opt scheduler now, yippee!
11558
11559         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11560         (gst_pad_get_name, gst_pad_set_chain_function) 
11561         (gst_pad_set_get_function, gst_pad_set_event_function) 
11562         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11563         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11564         (gst_pad_set_query_function, gst_pad_get_query_types) 
11565         (gst_pad_get_query_types_default) 
11566         (gst_pad_set_internal_link_function) 
11567         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11568         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11569         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11570         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11571         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11572         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11573         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11574         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11575         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11576         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11577         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11578         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11579         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11580         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11581         argument checks, and some doc fixes.
11582
11583         (gst_pad_custom_new_from_template): Um, does anyone
11584         use these functions? Actually make a custom pad instead of a
11585         normal one.
11586         (gst_pad_try_set_caps): Transpose some checks.
11587         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11588         the pad is in negotiation.
11589         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11590         
11591         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11592
11593         * gst/gstelement.h: 
11594         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11595         on the list.
11596
11597 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11598
11599         * gst/gstbin.c: (gst_bin_add):
11600           add error for not being able to add elements
11601
11602 2004-02-22  Julien MOUTTE <julien@moutte.net>
11603
11604         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11605         audio-codec and video-codec.
11606
11607 2004-02-22  Benjamin Otte  <otte@gnome.org>
11608
11609         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11610
11611         * autogen.sh:
11612           replace test -e with test -x for mkinstalldirs to be more portable.
11613           (fixes #134816)
11614
11615 2004-02-22  Benjamin Otte  <otte@gnome.org>
11616
11617         * gst/gstpad.c:
11618           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11619           too noisy
11620         * gst/gsttag.c: (_gst_tag_initialize):
11621         * gst/gsttag.h:
11622           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11623         * libs/gst/control/dparam.c: (gst_dparam_attach):
11624         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11625           check that types for attached dparams match
11626
11627 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11628
11629         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11630         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11631         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11632           fix errors
11633
11634 2004-02-20  Andy Wingo  <wingo@pobox.com>
11635
11636         * gst/gstbin.c:
11637         * gst/gstbuffer.c:
11638         * gst/gstplugin.c:
11639         * gst/registries/gstxmlregistry.c: 
11640         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11641
11642         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11643         (gst_element_add_pad): DEBUG->INFO, some fixes.
11644         (gst_element_get_compatible_pad_template): Just see if the
11645         templates' caps intersect, not if one is a strict subset of the
11646         other. This conforms more to what gst_pad_link_intersect() does.
11647         (gst_element_class_add_pad_template): Don't memcpy the pad
11648         template, just ref it.
11649         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11650
11651         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11652         (gst_pad_link_filtered): Debug changes.
11653         (gst_pad_link_prepare): New function, consolidated from
11654         can_link_filtered and link_filtered.
11655
11656         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11657         look more like that of the functions in gstelement.c
11658
11659         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11660         object, and return the empty string if object is NULL.
11661
11662         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11663         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11664         LOG, not DEBUG. We still get flex info on debug.
11665
11666         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11667         debug string more verbose.
11668         (plugin_times_older_than): DEBUG->LOG.
11669
11670 2004-02-20  Julien MOUTTE <julien@moutte.net>
11671
11672         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11673         will emit found_tag for each stream they demux with the codec.
11674
11675 2004-02-20  Benjamin Otte  <otte@gnome.org>
11676
11677         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11678           copy navigation event correctly. Check freeing tag lists. 
11679         * gst/gstthread.c: (gst_thread_change_state):
11680           don't abort() on state changing mess - it might happen because of
11681           bugs.
11682         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11683           use boxed functions
11684         * gst/gstvalue.h:
11685           fix GST_VALUE_HOLDS_CAPS
11686
11687 2004-02-19  David Schleef  <ds@schleef.org>
11688
11689         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11690         and use it for GST_FUNCTION.  (bug #134750)
11691
11692 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11693
11694         * po/fr.po:
11695         * po/nl.po:
11696           updating translations
11697
11698 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11699
11700         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11701
11702 2004-02-18  kost@imn.htwk-leipzig.de
11703
11704         reviewed by: David Schleef  <ds@schleef.org>
11705
11706         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11707         for libgstcontrol.
11708
11709 2004-02-18  David Schleef  <ds@schleef.org>
11710
11711         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11712         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11713         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11714         * tools/gst-inspect.c: (print_element_info): Support dumping of
11715         double dparam information.
11716
11717 2004-02-17  David Schleef  <ds@schleef.org>
11718
11719         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11720         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11721         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11722         Use GST_TYPE_CAPS in signal prototype.
11723         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11724         Convert GST_TYPE_CAPS to boxed.
11725         * gst/gstelement.c: (gst_element_class_init):
11726         Use GST_TYPE_TAG_LIST in signal prototype.
11727         * gst/gstindex.c: (gst_index_class_init):
11728         * gst/gstindex.h:
11729         Add GST_TYPE_INDEX_ENTRY type.
11730         * gst/gstmarshal.list:
11731         Add necessary marshal types.
11732         * gst/gstpad.c: (gst_real_pad_class_init),
11733         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11734         (gst_pad_recover_caps_error):
11735         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11736         * gst/gststructure.c: (_gst_structure_initialize),
11737         (gst_structure_copy), (_gst_structure_copy_conditional):
11738         * gst/gststructure.h:
11739         Convert GST_TYPE_STRUCTURE to boxed.
11740         * gst/gsttag.c: (gst_tag_list_get_type):
11741         * gst/gsttag.h:
11742         Add GST_TYPE_TAG_LIST type.
11743
11744 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11745
11746         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11747         to what we agreed with david.
11748         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11749
11750 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11751
11752         * po/nl.po: update translation
11753
11754 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11755
11756         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11757           throw an error if spider is trying to play a mime type there is
11758           no decoder for
11759         * po/POTFILES.in:
11760           add gst/autoplug/gstspider.c for translation
11761
11762 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11763
11764         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11765         silently when the pad is negotiating.
11766
11767 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11768
11769         * docs/faq/Makefile.am:
11770           add script to run gstreamer uninstalled 
11771         * docs/faq/faq.xml:
11772         * docs/faq/developing.xml:
11773         * docs/faq/gst-uninstalled:
11774           extract script to run gstreamer uninstalled
11775         * docs/manuals.mak:
11776           add EXTRA_SOURCES variable for Makefile.am's to set to
11777           use additional SOURCE files for the doc build
11778
11779 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11780
11781         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11782
11783 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11784
11785         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11786         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11787         an error was thrown by osssink. Basically a state change failure for
11788         an element in a different scheduling group was considered as
11789         successful, which means that caps nego was going on and weird stuff
11790         happened. Like I wrote in the comment there, if someone wants to
11791         revert that please drop me a mail explaining why because I really see
11792         no point in keeping that broken behaviour there.
11793         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11794         be empty, we then return NULL which will trigger a nice error when 
11795         pulling from the pad.
11796
11797 2004-02-13  David Schleef  <ds@schleef.org>
11798
11799         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11800         (gst_dparam_get_property), (gst_dparam_set_property),
11801         (gst_dparam_do_update_default):
11802         * libs/gst/control/dparam.h:
11803         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11804         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11805         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11806         (gst_dpsmooth_do_update_double):
11807         * libs/gst/control/dparam_smooth.h:
11808         * libs/gst/control/dparammanager.c:
11809         (gst_dpman_inline_direct_update):
11810         Add support for double dparams.
11811
11812 2004-02-13  David Schleef  <ds@schleef.org>
11813
11814         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11815         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11816
11817 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11818
11819         reviewed by: David Schleef  <ds@schleef.org>
11820
11821         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11822         (gst_fdsrc_init), (gst_fdsrc_set_property),
11823         (gst_fdsrc_get_property), (gst_fdsrc_get):
11824         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11825         and sends an EOS event if file descriptor reading times out.
11826
11827 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11828
11829         * configure.ac:
11830           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11831
11832 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11833
11834         * configure.ac: pass required libxml version as argument
11835         (bug reported by Christophe Fergeau)
11836
11837 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11838   
11839         * docs/gst/gstreamer-docs.sgml:
11840         * docs/gst/tmpl/gstxml.sgml:
11841         * docs/libs/gstreamer-libs-docs.sgml:
11842           version API docs
11843
11844 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11845
11846         * gst/gstinfo.c:
11847         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11848         (gst_registry_pool_feature_filter):
11849         * gst/gstthread.c: (gst_thread_class_init):
11850         * gst/gstvalue.c:
11851           add includes exposed by building without libxml
11852         * gst/indexers/Makefile.am:
11853           do not build fileindex when LOADSAVE disabled; we should have
11854           a better libxml check later since fileindex depends on xml, not
11855           LOADSAVE or REGISTRY
11856         * libs/gst/control/Makefile.am:
11857           link with m
11858         * tools/Makefile.am:
11859           fix wrong source code for gst-xmlinspect
11860
11861 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11862
11863         * configure.ac:
11864           fix gcov help output
11865           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11866         * docs/random/release:
11867           some updated releasing notes
11868         * gstreamer.spec.in:
11869           more updates
11870
11871 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11872
11873         * docs/faq/faq.xml:
11874         * docs/manual/manual.xml:
11875         * docs/pwg/pwg.xml:
11876         * docs/pwg/titlepage.xml:
11877           put version in documentation
11878
11879 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11880
11881         * tools/Makefile.am: fix man page installation
11882
11883 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11884
11885         * configure.ac:
11886           don't check for libxml when load/save and registry disabled (#105844)
11887         * gstreamer.spec.in:
11888           sync with fedora candidate spec
11889
11890 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11891
11892         * po/fr.po:
11893         * po/nl.po:
11894           replace multidisksrc with multifilesrc
11895
11896 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11897
11898         * po/POTFILES.in:
11899           update to multidisksrc => multifilesrc file renaming (#134145)
11900
11901 2004-02-11  David Schleef  <ds@schleef.org>
11902
11903         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11904         * docs/gst/tmpl/gstpadtemplate.sgml: same
11905         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11906         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11907         fixing dance.
11908         * gst/gstutils.c: Remove disabled code that uses GstProps.
11909         * gst/registries/gstxmlregistry.h: same
11910         * docs/random/ds/0.9-suggested-changes: random notes
11911
11912 2004-02-11  kost@imn.htwk-leipzig.de
11913
11914         reviewed by: David Schleef  <ds@schleef.org>
11915
11916         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11917         initialisation of clock (bug #134128)
11918
11919 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11920
11921         * configure.ac:
11922         * gst/elements/Makefile.am:
11923         * gst/elements/gstelements.c:
11924         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11925         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11926         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11927         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11928         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11929         * gst/elements/gstmultifilesrc.h:
11930           rename multidisksrc to multifilesrc (part of #122200)
11931
11932 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11933
11934         * docs/manuals.mak:
11935           fix automake complaints
11936         * gst-element-check.m4:
11937           fix unquotedness
11938
11939 2004-02-11  David Schleef  <ds@schleef.org>
11940
11941         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11942         * gst/gstatomic_impl.h: Disable sparc implementation.
11943
11944 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11945
11946         * gst-element-check.m4:
11947           fix underquoted macros as reported by automake 1.8.x (#133800)
11948         * configure.ac:
11949           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11950           by autopoint (fixes #132996)
11951
11952 2004-02-10  Andy Wingo  <wingo@pobox.com>
11953
11954         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11955         way to do inheritance.
11956         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11957         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11958         Routine docs.
11959         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11960         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11961         doc.
11962         (gst_pad_unlink, gst_pad_is_linked): Docs.
11963         (gst_pad_renegotiate): A brief description of capsnego.
11964         (gst_pad_try_set_caps): Document.
11965         (gst_pad_try_set_caps_nonfixed): Document.
11966         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11967         (gst_pad_set_parent): Deprecated (although not out of the API).
11968         (gst_pad_get_parent): Deprecated, although many plugins use this.
11969         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11970         are private and will go away in 0.9.
11971         (gst_pad_perform_negotiate): Doc.
11972         (gst_pad_link_unnegotiate): I think this is meant to be static.
11973         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11974         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11975         (gst_pad_get_peer): Doc updates.
11976         (gst_pad_caps_change_notify): Doc.
11977         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11978         (gst_ghost_pad_new): Doc fixes.
11979
11980         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11981         (gst_object_check_uniqueness): 
11982
11983         * gst/gstelement.c (gst_element_add_pad) 
11984         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11985         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11986         (gst_element_get_static_pad, gst_element_get_pad_list) 
11987         (gst_element_class_get_pad_template_list) 
11988         (gst_element_class_get_pad_template): Work on the docs.
11989         (gst_element_get_pad_template_list): Uses the class method.
11990         (gst_element_get_compatible_pad_template): Docs, and consolidate
11991         some test conditions. 
11992         (gst_element_get_pad_from_template): New static function.
11993         (gst_element_request_compatible_pad): Docs, and work with
11994         non-request compatible templates. 
11995         (gst_element_get_compatible_pad_filtered): Docs and remove
11996         redundant checks.
11997         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11998         (gst_element_link_filtered, gst_element_link_many) 
11999         (gst_element_link, gst_element_link_pads) 
12000         (gst_element_unlink_many): Docs.
12001
12002 2004-02-05  Andy Wingo  <wingo@pobox.com>
12003
12004         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
12005         s/pointer/boxed/.
12006
12007         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
12008
12009         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
12010         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
12011         with the type=GST_TYPE_CAPS. This allows language bindings to know
12012         what kind of data they're dealing with.
12013
12014         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
12015         to NULL when g_value_init is called. GstCaps, which rolls its own
12016         type implementation, now does the same instead of allocating empty
12017         caps.
12018         (_gst_caps_initialize, _gst_caps_collect_value,
12019         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
12020         table methods. This allows G_VALUE_COLLECT to work.
12021
12022 2004-02-05  Andy Wingo  <wingo@pobox.com>
12023
12024         * configure.ac:
12025         * testsuite/Makefile.am (SUBDIRS): 
12026         * testsuite/ghostpads/Makefile.am: 
12027         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
12028
12029         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
12030         These two routines are the only ones that set
12031         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
12032         pad template. They should be made static, depending on ABI needs.
12033         (gst_real_pad_dispose): Handle the case of ghost pads without a
12034         parent. Assert after dealing with ghost pads that the ghost pad
12035         list is empty.
12036         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12037         set after creation.
12038         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12039         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12040         functions. set_property will call add_ghost_pad/remove_ghost_pad
12041         as appropriate.
12042         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12043
12044         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12045         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12046         (gst_element_remove_pad): Handle ghost pads as well.
12047         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12048         depending on API-stability needs).
12049
12050 2004-02-05  Andy Wingo  <wingo@pobox.com>
12051
12052         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12053         of course they're const
12054
12055 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12056
12057         * tools/Makefile.am:
12058         * tools/gst-feedback:
12059         * tools/gst-feedback-0.7:
12060           make gst-feedback versioned too for consistency
12061
12062 2004-02-11  David Schleef  <ds@schleef.org>
12063
12064         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12065         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12066
12067 2004-02-10  Julien MOUTTE <julien@moutte.net>
12068
12069         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12070         the structure does not contain a valid tag list. Adding a safety check
12071         to remove a noisy warning in that case.
12072
12073 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12074
12075         * gst/gst.c: fix name to be in line with others
12076
12077 2004-02-09  Julien MOUTTE <julien@moutte.net>
12078
12079         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12080         not shout that loud when len is 0. Just return 0 silently.
12081
12082 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12083
12084         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12085         because data_unref has one and I prefer the debug to be symetric.
12086         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12087         were refed when added to the queue and unrefed only once when the queue
12088         was flushed. Now the flush handler unref the buffers two times : first
12089         unref for the ref added when pushing in the queue's tail and second
12090         unref to destroy the flushed buffer.
12091
12092 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12093
12094         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12095
12096 2004-02-06  David Schleef  <ds@schleef.org>
12097
12098         * docs/random/ds/0.9-suggested-changes: Random ramblings
12099         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12100         to int before printing.
12101         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12102         * gst/parse/parse.l: same.  See bug #129600
12103
12104 2004-02-06  David Schleef  <ds@schleef.org>
12105
12106         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12107         (gst_index_add_entry), (gst_index_add_associationv),
12108         (gst_index_add_association): Add gst_index_add_associationv()
12109         and clean up gst_index_add_association(). #127133
12110
12111 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12112
12113         * autogen.sh: check out common with right tag if CVS/Tag exists
12114
12115 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12116
12117         * testsuite/ghostpads/ghostpads.c: (main):
12118           fix testsuite from segfaulting
12119
12120 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12121
12122         * Makefile.am: add release target
12123         * configure.ac: bump nano to 1
12124         * docs/random/release:
12125
12126 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12127
12128         * gst/gstcaps.h:
12129         * gst/gstelement.c: (gst_element_base_class_init),
12130         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12131         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12132         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12133         (gst_real_pad_dispose):
12134         * gst/gststructure.c: (gst_structure_free),
12135         (gst_structure_from_string):
12136           put reverted patch back in
12137         * gst/gstelement.c: (gst_element_remove_pad):
12138           free explicit caps if they're set
12139         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12140           copy the structure when fixating
12141
12142 2004-02-05  David Schleef  <ds@schleef.org>
12143
12144         * gst/gstmarshal.list:
12145         * gst/gstpad.c: (gst_real_pad_class_init),
12146         (_gst_real_pad_fixate_accumulator):
12147         Revert POINTER->BOXED change in signal marshaller.
12148
12149 === release 0.7.4 ===
12150                                                                                 
12151 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12152                                                                                 
12153         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12154         * configure.ac: changed for release
12155
12156 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12157
12158         * gstreamer.spec.in:
12159           bump required version of gtk-doc
12160
12161 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12162
12163         * gst/gstcaps.h:
12164         * gst/gstelement.c: (gst_element_base_class_init),
12165         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12166         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12167         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12168         (gst_real_pad_dispose):
12169         * gst/gststructure.c: (gst_structure_free),
12170         (gst_structure_from_string):
12171           revert patch that breaks applications, reapply after release
12172           to get this fixed properly
12173
12174 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12175
12176         * gst/gsttag.c: (_gst_tag_initialize):
12177         * gst/gsttag.h:
12178           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12179
12180 2004-02-04  David Schleef  <ds@schleef.org>
12181
12182         Fix some memleaks:
12183         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12184         (gst_spider_plug_from_srcpad):
12185         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12186
12187 2004-02-04  David Schleef  <ds@schleef.org>
12188
12189         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12190         a GstRealPad before accessing its structure members.
12191
12192 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12193
12194         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12195         (gst_clock_get_speed):
12196         * gst/gstclock.h:
12197           reset padding, remove unused fields
12198
12199 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12200
12201         * gst/autoplug/gstspideridentity.c:
12202         (gst_spider_identity_sink_loop_type_finding):
12203           use get_allowed_caps, not get_caps (fixes #132519)
12204         * gst/elements/gsttypefind.c: (stop_typefinding):
12205           use correct order when sending buffers and seeking
12206
12207 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12208
12209         * configure.ac:
12210         * gst/gstelement.h:
12211         * gst/gstpad.h:
12212         * gst/gstqueue.h:
12213           upgrade libtool CURRENT, reset padding
12214
12215 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12216
12217         * configure.ac:
12218           bump to prerelease
12219           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12220
12221 2004-02-04  David Schleef  <ds@schleef.org>
12222
12223         * docs/random/ds/0.9-suggested-changes: random notes
12224         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12225         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12226         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12227         expansion.
12228         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12229         (gst_filesink_get_query_types): same
12230         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12231         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12232         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12233         to use new GST_PTR_FORMAT.
12234         * gst/gstelement.h: deprecate function factory macros
12235         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12236         These are our last variadic macros that can't be replaced with
12237         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12238         attempting to deprecate gst_element_clock_wait().
12239         * gst/gstevent.h: same
12240         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12241         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12242         * gst/gstpad.h: deprecate function factory macros similar to above.
12243
12244 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12245
12246         * configure.ac:
12247         * tools/Makefile.am:
12248         * tools/gst-run.c: (popt_callback), (hash_print_key),
12249         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12250         (get_candidates), (main):
12251           add new source file to generate non-versioned wrapper binaries
12252           for our tools.
12253
12254 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12255
12256         * gst/gstevent.c: (_gst_event_free):
12257           actually break; inside the switch statement
12258         * gst/parse/grammar.y:
12259           fix memleak where GValues weren't unset
12260
12261 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12262
12263         * gst/gststructure.c: (gst_structure_from_string):
12264           fix huge memleak
12265         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12266         (new_entry), (gst_type_find_element_chain):
12267         * gst/gstelement.c: (gst_element_base_class_init),
12268         (gst_element_class_set_details):
12269         * gst/gstpad.c: (gst_pad_can_link_filtered):
12270           fix smaller memleaks
12271         * gst/gstpad.c: (gst_real_pad_dispose):
12272           check that explicit caps are gone
12273         * gst/gststructure.c: (gst_structure_free):
12274           actually free the structure
12275         * gst/gstelement.c: (gst_element_clear_pad_caps):
12276           unset explicit caps
12277
12278 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12279
12280         * tools/Makefile.am:
12281           use AM_CFLAGS since all the CFLAGS are the same
12282           use AM_LDFAGS
12283
12284 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12285
12286         * docs/manual/gnome.xml:
12287           expand example a little
12288         * gst/gst.c: (gst_init_with_popt_table),
12289         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12290           make sure popt option displays are done with right textdomain
12291           use GstPoptOption type
12292         * gst/gst.h:
12293           create GstPoptOption type
12294
12295 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12296
12297         * gst/gsterror.c: (_gst_stream_errors_init):
12298         * gst/gsterror.h:
12299           adding error type for no codec
12300         * po/POTFILES.in:
12301           add gst-inspect
12302         * po/nl.po:
12303           update dutch translation
12304         * tools/gst-inspect.c: (print_element_list), (main):
12305           do proper internationalization
12306         * tools/gst-launch.c: (idle_func):
12307           remove commented out function call
12308
12309 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12310
12311         * docs/README:
12312           add some error fixing notes
12313         * docs/gst/gstreamer-sections.txt:
12314           remove double entries
12315         * docs/gst/tmpl/gstbin.sgml:
12316         * docs/gst/tmpl/gstclock.sgml:
12317           remove override
12318         * docs/gst/tmpl/gstelement.sgml:
12319         * docs/gst/tmpl/gstindex.sgml:
12320         * docs/gst/tmpl/gstobject.sgml:
12321         * docs/gst/tmpl/gstpadtemplate.sgml:
12322         * docs/gst/tmpl/gstreamer-unused.sgml:
12323         * docs/gst/tmpl/gsttag.sgml:
12324         * docs/gst/tmpl/gstthread.sgml:
12325         * docs/gst/tmpl/gstxml.sgml:
12326         * gst/gsttag.h:
12327           sync header prototypes with c decls
12328         * gst/gsttaginterface.c:
12329           fix doc headers
12330
12331 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12332
12333         * gst/parse/Makefile.am:
12334         * gst/gstobject.h:
12335           get rid of gstmarshal.h dependency. It's not needed.
12336         * gst/gst.h:
12337         * gst/elements/gstfakesink.c:
12338         * gst/elements/gstfakesrc.c:
12339         * gst/elements/gstidentity.c:
12340         * gst/gstbin.c:
12341         * gst/gstelement.c:
12342         * gst/gstindex.c:
12343         * gst/gstobject.c:
12344         * gst/gstpad.c:
12345         * gst/gstthread.c:
12346         * gst/gstxml.c:
12347         * libs/gst/control/dparam.c:
12348         * libs/gst/control/dparammanager.c:
12349           include gstmarshal.h.
12350         Fixes #132045
12351
12352 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12353
12354         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12355         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12356         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12357         * gst/elements/gstfilesrc.h:
12358           don't ref the filesrc when creating mmaped buffers. Don't keep a
12359           list of not-yet-destroyed buffers.
12360         * gst/gstbuffer.h:
12361           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12362
12363 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12364
12365         * gst/gst.c: (init_pre):
12366           remove textdomain
12367
12368 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12369
12370         * docs/pwg/advanced-events.xml:
12371         * docs/pwg/advanced-scheduling.xml:
12372         * docs/pwg/intro-basics.xml:
12373         * docs/pwg/other-manager.xml:
12374         * docs/pwg/other-nton.xml:
12375         * docs/pwg/other-ntoone.xml:
12376         * docs/pwg/other-oneton.xml:
12377         * docs/pwg/pwg.xml:
12378           All sort of documentation... Forgot what. Point is that I want this
12379           in before I leave. The 'other-*' will be the last section and will
12380           explain issues specific to these type of elements.
12381
12382 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12383
12384         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12385         (gst_filesrc_get_read):
12386           set all the values on buffers that we can
12387
12388 2004-02-02  David Schleef  <ds@schleef.org>
12389
12390         Change usage of isblah() to g_ascii_isblah() to be more locale
12391         independent.  (#133076)
12392         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12393         * gst/gstutils.c:
12394         * gst/parse/parse.l:
12395
12396 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12397
12398         reviewed by: David Schleef  <ds@schleef.org>
12399
12400         Fix memory leaks:
12401         * gst/gstcaps.c: (gst_caps_to_string):
12402         * gst/registries/gstxmlregistry.c:
12403         (gst_xml_registry_add_path_list_func),
12404         (gst_xml_registry_parse_padtemplate):
12405
12406 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12407
12408         * gst/gstelement.c: (gst_element_default_error):
12409           suffix error messages with period
12410
12411 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12412
12413         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12414         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12415         * gst/gsterror.c: (gst_error_get_message):
12416           Suffix with dots
12417         * po/fr.po:
12418         * po/nl.po:
12419           Update translation files
12420
12421 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12422
12423         * gst/autoplug/gstspideridentity.c:
12424         (gst_spider_identity_sink_loop_type_finding):
12425         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12426         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12427         (gst_filesink_close_file), (gst_filesink_handle_event),
12428         (gst_filesink_chain):
12429         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12430         (gst_filesrc_get_read), (gst_filesrc_open_file):
12431         * gst/elements/gstidentity.c: (gst_identity_chain):
12432         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12433         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12434         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12435         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12436         * gst/gsterror.c: (_gst_core_errors_init),
12437         (_gst_library_errors_init), (_gst_resource_errors_init),
12438         (_gst_stream_errors_init), (gst_error_get_message):
12439         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12440         (gst_pad_recover_caps_error), (gst_pad_pull):
12441         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12442         * gst/schedulers/gstbasicscheduler.c:
12443         (gst_basic_scheduler_chainhandler_proxy),
12444         (gst_basic_scheduler_gethandler_proxy),
12445         (gst_basic_scheduler_cothreaded_chain):
12446           Suffix error messages with period.
12447           Use (NULL) instead of NULL
12448
12449 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12450
12451         * docs/gst/tmpl/gstelement.sgml:
12452         * docs/gst/tmpl/gstxml.sgml:
12453         * gst/gstelement.c: (gst_element_error_full):
12454           add element path to error
12455
12456 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12457
12458         * docs/random/mimetypes:
12459           update raw int/float info
12460         * gst/gsttag.c: (_gst_tag_initialize):
12461         * gst/gsttag.h:
12462           add GST_TAG_ENCODER
12463
12464 2004-01-30  David Schleef  <ds@schleef.org>
12465
12466         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12467           missing (#132991)
12468
12469 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12470
12471         reviewed by Benjamin Otte 
12472           parts of the patch submitted in bug #113913
12473
12474         * configure.ac:
12475           use AC_C_INLINE. Use = instead of == with test
12476         * examples/plugins/example.c:
12477         * gst/autoplug/gstspideridentity.c:
12478         * gst/elements/gstfdsrc.c:
12479         * gst/elements/gstfilesrc.c:
12480         * gst/elements/gstidentity.c:
12481         * gst/elements/gstmultidisksrc.c:
12482         * gst/elements/gststatistics.c:
12483         * gst/gstelement.c:
12484         * gst/gstobject.c:
12485         * gst/gstpad.c:
12486         * gst/gstpipeline.c:
12487         * gst/gstthread.c:
12488           don't end enums with a comma
12489         * gst/gstindex.c: (gst_index_compare_func):
12490           do explicit casting to gint
12491         * gst/gsttrace.c: (gst_trace_text_flush):
12492           #define strsize as a macro
12493
12494 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12495
12496         * docs/README:
12497         * docs/gst/gstreamer-docs.sgml:
12498         * docs/gst/gstreamer-sections.txt:
12499         * docs/gst/tmpl/gstelement.sgml:
12500         * docs/gst/tmpl/gsterror.sgml:
12501         * docs/gst/tmpl/gstinterface.sgml:
12502         * docs/gst/tmpl/gstreamer-unused.sgml:
12503         * docs/gst/tmpl/gststructure.sgml:
12504         * docs/gst/tmpl/gsttag.sgml:
12505         * docs/gst/tmpl/gsttaginterface.sgml:
12506         * docs/gst/tmpl/gstvalue.sgml:
12507         make sure all API ends up in the built docs
12508         * gst/gstinterface.c:
12509         * gst/gststructure.c: (gst_structure_id_set_value),
12510         (gst_structure_set_value), (gst_structure_id_get_value):
12511         * gst/gststructure.h:
12512         * gst/gstvalue.h:
12513         sync .h with .c declarations
12514
12515 2004-01-30  Julien Moutte  <julien@moutte.net>
12516
12517         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12518         Ronald will fix riffread.
12519
12520 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12521
12522         * docs/pwg/advanced-interfaces.xml:
12523           Added tuner interface docs.
12524
12525 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12526
12527         * docs/random/mimetypes:
12528           correct Theora information
12529         * gst/gstelement.h:
12530           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12531
12532 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12533
12534         * gst/gstelement.c: (gst_element_error_full):
12535         * gst/gstelement.h:
12536           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12537
12538 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12539
12540         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12541         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12542         again and even before DISCONT.
12543         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12544         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12545         bytestream so that it's not stopping to fill the bytestream if events
12546         different than EOS or DISCONT are received. Instead it process them so
12547         that they go downstream.
12548
12549 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12550
12551         * docs/gst/tmpl/gstelement.sgml:
12552         * docs/gst/tmpl/gstreamer-unused.sgml:
12553         * docs/gst/tmpl/gstxml.sgml:
12554         * gst/autoplug/gstspideridentity.c:
12555         (gst_spider_identity_sink_loop_type_finding):
12556         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12557         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12558         (gst_filesink_close_file), (gst_filesink_handle_event),
12559         (gst_filesink_chain):
12560         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12561         (gst_filesrc_get_read), (gst_filesrc_open_file):
12562         * gst/elements/gstidentity.c: (gst_identity_chain):
12563         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12564         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12565         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12566         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12567         * gst/gstelement.h:
12568         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12569         (gst_pad_recover_caps_error), (gst_pad_pull):
12570         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12571         * gst/schedulers/gstbasicscheduler.c:
12572         (gst_basic_scheduler_chainhandler_proxy),
12573         (gst_basic_scheduler_gethandler_proxy),
12574         (gst_basic_scheduler_cothreaded_chain):
12575           gst_element_error -> GST_ELEMENT_ERROR
12576
12577 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12578
12579         * docs/Makefile.am:
12580         * docs/gst/tmpl/gstelement.sgml:
12581         * docs/gst/tmpl/gstxml.sgml:
12582         * docs/manuals.mak:
12583         * docs/pwg/advanced-request.xml:
12584         * docs/pwg/advanced-scheduling.xml:
12585         * docs/pwg/advanced-tagging.xml:
12586           fix non-validating docbook using CDATA
12587           make sure make check-local gets run first to check if it validates
12588
12589 2004-01-29  Julien MOUTTE <julien@moutte.net>
12590
12591         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12592         handling (up and downstream).
12593         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12594         my_filter thing.
12595
12596 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12597
12598         * docs/pwg/advanced-tagging.xml:
12599           Add docs about tag writing.
12600
12601 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12602
12603         * docs/pwg/advanced-tagging.xml:
12604           Add a part about tag reading and application signalling... Tag
12605           writing still needs to be documented.
12606         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12607           We can set file locations in READY, too.
12608
12609 2004-01-29  Julien MOUTTE <julien@moutte.net>
12610
12611         * docs/random/ds/element-checklist: Adding some notes about src
12612         events.
12613
12614 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12615
12616         * docs/random/mimetypes:
12617           Update docs to point to correct elements for various mimetypes, and
12618           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12619           <stephane.loeuillet@tiscali.fr>.
12620
12621 2004-01-28  David Schleef  <ds@schleef.org>
12622
12623         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12624
12625 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12626
12627         * docs/random/mimetypes:
12628           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12629           undefined"
12630         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12631           make it only work in NULL.
12632         * gst/gstcaps.c:
12633           don't posion NULL caps
12634         * gst/gstelement.c: (gst_element_set_time):
12635           add debugging statement
12636         * gst/gstelement.c: (gst_element_emit_found_tag),
12637         (gst_element_found_tag_func), (gst_element_found_tags):
12638         * gst/gstelement.h:
12639           These functions take const taglists
12640         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12641           fix memleak
12642         * gst/gstpad.c: (gst_pad_event_default):
12643           make more effort on handling discont and clocks, g_warn if everything
12644           fails
12645         * gst/gststructure.c: (gst_structure_remove_fields),
12646         (gst_structure_remove_fields_valist):
12647         * gst/gststructure.h:
12648           add gst_structure_remove_fields(_valist)
12649         * gst/gsttag.c:
12650           fix doc glitch
12651
12652 2004-01-28  David Schleef  <ds@schleef.org>
12653
12654         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12655         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12656         Fix memory leakage of gst_caps_to_string().
12657
12658         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12659         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12660         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12661         (gst_spider_identity_sink_loop_type_finding):
12662         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12663         (find_suggest):
12664         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12665         (gst_pad_set_explicit_caps):
12666         * gst/parse/grammar.y:
12667
12668 2004-01-28  David Schleef  <ds@schleef.org>
12669
12670         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12671         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12672         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12673         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12674         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12675         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12676         (gst_debug_log_default), (_gst_info_printf_extension),
12677         (_gst_info_printf_extension_arginfo):  Add printf extension.
12678         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12679         * gst/gststructure.c: (gst_structure_to_string),
12680         (_gst_structure_parse_value): Use gst_value_deserialize() and
12681         remove old code.
12682         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12683         (gst_value_deserialize_boolean), (gst_strtoi),
12684         (gst_value_deserialize_int), (gst_value_deserialize_double),
12685         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12686         a bunch of deserialize functions and gst_value_deserialize.
12687         * gst/gstvalue.h: er, _de_serialize, not unserialize
12688         * testsuite/caps/string-conversions.c: (main): We don't currently
12689         handle (float) in caps, so convert these to (double).
12690         * testsuite/debug/Makefile.am: Add new test for the printf extension
12691         * testsuite/debug/printf_extension.c: (main): same
12692
12693 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12694
12695         * docs/random/company/time:
12696           Add some docs about clocking and time
12697
12698 2004-01-28  Julien MOUTTE <julien@moutte.net>
12699
12700         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12701
12702 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12703
12704         * docs/pwg/advanced-clock.xml:
12705         * docs/pwg/advanced-dparams.xml:
12706         * docs/pwg/advanced-events.xml:
12707         * docs/pwg/advanced-interfaces.xml:
12708         * docs/pwg/advanced-midi.xml:
12709         * docs/pwg/advanced-request.xml:
12710         * docs/pwg/advanced-scheduling.xml:
12711         * docs/pwg/advanced-tagging.xml:
12712         * docs/pwg/advanced-types.xml:
12713         * docs/pwg/appendix-checklist.xml:
12714         * docs/pwg/building-boiler.xml:
12715         * docs/pwg/building-chainfn.xml:
12716         * docs/pwg/building-filterfactory.xml:
12717         * docs/pwg/building-pads.xml:
12718         * docs/pwg/building-props.xml:
12719         * docs/pwg/building-signals.xml:
12720         * docs/pwg/building-state.xml:
12721         * docs/pwg/building-testapp.xml:
12722         * docs/pwg/intro-basics.xml:
12723         * docs/pwg/intro-preface.xml:
12724         * docs/pwg/other-autoplugger.xml:
12725         * docs/pwg/other-sink.xml:
12726         * docs/pwg/other-source.xml:
12727         * docs/pwg/titlepage.xml:
12728           fix up id's
12729
12730 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12731
12732         * docs/95NonPath:
12733         * docs/HACKING:
12734         * docs/README:
12735         * docs/building-the-docs-on-debian:
12736           collect relevant bits of doc info
12737
12738 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12739
12740         * docs/pwg/advanced_tagging.xml:
12741           Half-assed commit so Thomas can re-arrange document IDs here to be
12742           consistent, too.
12743
12744 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12745
12746         * docs/manual/autoplugging.xml:
12747         * docs/manual/bins-api.xml:
12748         * docs/manual/bins.xml:
12749         * docs/manual/buffers-api.xml:
12750         * docs/manual/buffers.xml:
12751         * docs/manual/clocks.xml:
12752         * docs/manual/components.xml:
12753         * docs/manual/cothreads.xml:
12754         * docs/manual/debugging.xml:
12755         * docs/manual/dparams-app.xml:
12756         * docs/manual/dynamic.xml:
12757         * docs/manual/elements-api.xml:
12758         * docs/manual/elements.xml:
12759         * docs/manual/factories.xml:
12760         * docs/manual/gnome.xml:
12761         * docs/manual/goals.xml:
12762         * docs/manual/helloworld.xml:
12763         * docs/manual/helloworld2.xml:
12764         * docs/manual/init-api.xml:
12765         * docs/manual/intro.xml:
12766         * docs/manual/links-api.xml:
12767         * docs/manual/links.xml:
12768         * docs/manual/manual.xml:
12769         * docs/manual/motivation.xml:
12770         * docs/manual/pads-api.xml:
12771         * docs/manual/pads.xml:
12772         * docs/manual/plugins-api.xml:
12773         * docs/manual/plugins.xml:
12774         * docs/manual/programs.xml:
12775         * docs/manual/queues.xml:
12776         * docs/manual/quotes.xml:
12777         * docs/manual/schedulers.xml:
12778         * docs/manual/states-api.xml:
12779         * docs/manual/states.xml:
12780         * docs/manual/threads.xml:
12781         * docs/manual/typedetection.xml:
12782         * docs/manual/xml.xml:
12783           use chapter, part, section or misc as id starts for all bits
12784
12785 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12786
12787         * docs/gst/gstreamer-sections.txt:
12788           Fix up TITLE of the sections
12789
12790 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12791
12792         * docs/pwg/advanced_interfaces.xml:
12793           Add documentation on propertyprobing.
12794         * docs/pwg/advanced_events.xml:
12795         * docs/pwg/advanced_tagging.xml:
12796         * docs/pwg/building_boiler.xml:
12797         * docs/pwg/building_filterfactory.xml:
12798         * docs/pwg/pwg.xml:
12799           Move filterfactory and tagging into their own chapter, add a chapter
12800           on events. all these are empty placeholders that will be filled in
12801           some day.
12802
12803 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12804
12805         * docs/pwg/advanced_interfaces.xml:
12806           Docs for mixer interface. Also a check for website uploading.
12807
12808 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12809
12810         * docs/HACKING:
12811         * docs/Makefile.am:
12812         * docs/faq/Makefile.am:
12813         * docs/gst/Makefile.am:
12814         * docs/gst/tmpl/gstelement.sgml:
12815         * docs/gst/tmpl/gstplugin.sgml:
12816         * docs/gst/tmpl/gstreamer-unused.sgml:
12817         * docs/libs/Makefile.am:
12818         * docs/manual/Makefile.am:
12819         * docs/manuals.mak:
12820         * docs/pwg/Makefile.am:
12821         * docs/upload.mak:
12822           Separate out upload target and make it similar for
12823           both docbook and gtk-doc docs
12824
12825 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12826
12827         * docs/manuals.mak:
12828           Fix upload target to work with freedesktop
12829
12830 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12831
12832         * docs/pwg/advanced_types.xml:
12833           Add notes on creating your own types.
12834         * docs/pwg/building_boiler.xml:
12835         * docs/pwg/building_pads.xml:
12836         * docs/pwg/building_state.xml:
12837           Add some stuff about how to retrieve values from structures, how
12838           that relates to types and change layout slightly again to be almost
12839           perfect.
12840
12841 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12842
12843         * docs/pwg/advanced_dparams.xml:
12844         * docs/pwg/advanced_scheduling.xml:
12845           Change index layout slightly.
12846
12847 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12848
12849         * docs/pwg/advanced_clock.xml:
12850         * docs/pwg/advanced_interfaces.xml:
12851         * docs/pwg/advanced_midi.xml:
12852           General placeholders for now.
12853         * docs/pwg/advanced_request.xml:
12854           Explanation about sometimes and request pads.
12855         * docs/pwg/advanced_scheduling.xml:
12856           Concept of bytestream, loopfunctions and schedulers.
12857         * docs/pwg/building_boiler.xml:
12858           Add something about plugin-init.
12859
12860 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12861
12862         * docs/pwg/building_pads.xml:
12863           Fix broken docbook
12864
12865 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12866
12867         * docs/pwg/advanced_interfaces.xml:
12868         * docs/pwg/pwg.xml:
12869           Add as a placeholder for future filling-in.
12870         * docs/pwg/basics_autoplugging.xml:
12871         * docs/pwg/basics_buffers.xml:
12872         * docs/pwg/basics_elements.xml:
12873         * docs/pwg/basics_events.xml:
12874         * docs/pwg/basics_plugins.xml:
12875         * docs/pwg/basics_types.xml:
12876           Remove, because unused (this is all in intro_basics.xml).
12877         * docs/pwg/building_signals.xml:
12878           Short intro to signals + reference to GObject docs - we really
12879           shouldn't go into these sort of things to deply because we don't
12880           use them that extensively anyway.
12881         * docs/pwg/building_state.xml:
12882           Explanation of states. Benjamin, please check.
12883         * docs/pwg/building_testapp.xml:
12884           Put everything in one page - putting only a few lines of content
12885           per page doesn't really make sense.
12886
12887           Time to get into the advanced topics. ;).
12888
12889 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12890
12891         * docs/pwg/advanced_types.xml:
12892           Finish documenting the current state of mimetypes.
12893         * docs/pwg/building_boiler.xml:
12894         * docs/pwg/building_chainfn.xml:
12895         * docs/pwg/building_pads.xml:
12896         * docs/pwg/building_props.xml:
12897         * docs/pwg/building_testapp.xml:
12898           Start documenting the "how to build a simple audio filter" part
12899           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12900           states and (maybe?) a short introduction to capsnego in the chapter
12901           on pads (building_pads.xml). Capsnego should probably be explained
12902           fully in advanced_capsnego.xml or so.
12903
12904 2004-01-26  David Schleef  <ds@schleef.org>
12905
12906         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12907         * gst/gstpad.h: Add new function to allow element to (somewhat)
12908         specify non-fixed caps on a pad.
12909         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12910         that I added a few weeks ago.
12911
12912 2004-01-26  David Schleef  <ds@schleef.org>
12913
12914         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12915           making try_set_caps() work with non-fixed caps.
12916
12917 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12918
12919         * docs/pwg/advanced_types.xml:
12920         * docs/pwg/intro_basics.xml:
12921         * docs/pwg/intro_preface.xml:
12922         * docs/pwg/pwg.xml:
12923         * docs/pwg/titlepage.xml:
12924           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12925           in here (docs/random/mimetypes), and will from there on work on both
12926           updating outdated parts and adding missing parts.
12927           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12928
12929 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12930
12931         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12932           policy is set
12933
12934 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12935
12936         * gst/gstelement.h:
12937           remove gst_element_factory_get_version. It doesn't exist anymore.
12938         * gst/gstplugin.c:
12939         * gst/gstplugin.h:
12940           remove gst_plugin_set_name and change gst_plugin_get_longname to
12941           gst_plugin_get_description to match code.
12942         * gst/gsterror.h:
12943           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12944         * gst/gstpad.c: (gst_pad_try_set_caps):
12945           make it work with nonfixed caps.
12946           Note that even in the nonfixed case the link function of the pad
12947           that tries to set caps isn't called.
12948
12949 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12950
12951         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12952           fix bug where buffer was not assembled correctly
12953         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12954           silence by default
12955         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12956           only seek if there's no more buffers that could work without seeking
12957
12958 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12959
12960         * gst/gsttag.c: (_gst_tag_initialize):
12961         * gst/gsttag.h:
12962           Add application tag (for encoding/muxing app).
12963
12964 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12965
12966         * autogen.sh:
12967           make autopoint force, and libtoolize not copy
12968         * common/m4/as-docbook.m4:
12969           added docbook xml catalog setup check
12970         * common/m4/gst-doc.m4:
12971           use docbook check
12972
12973 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12974
12975         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12976         * gst/gsttag.h:
12977           add GstTagFlag
12978
12979 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12980
12981         * docs/gst/gstreamer-sections.txt:
12982         * docs/gst/tmpl/gst.sgml:
12983         * docs/gst/tmpl/gstbuffer.sgml:
12984         * docs/gst/tmpl/gstclock.sgml:
12985         * docs/gst/tmpl/gstelement.sgml:
12986         * docs/gst/tmpl/gstreamer-unused.sgml:
12987         * docs/gst/tmpl/gstxml.sgml:
12988           sync latest API changes to docs
12989
12990 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12991
12992         * gst/gstpluginfeature.c:
12993           fix doc snippet
12994         * tools/gst-inspect.c: (print_element_list):
12995           fix output of typefind
12996           add GPL header
12997         * tools/gst-launch.c:
12998           add GPL header
12999
13000 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13001
13002         * gst/elements/Makefile.am:
13003         * gst/elements/gstelements.c:
13004         * gst/elements/gsttypefindelement.c:
13005         * gst/elements/gsttypefindelement.h:
13006         * po/POTFILES.in:
13007         * po/fr.po:
13008         * po/nl.po:
13009           renamed gsttypefindelement to gsttypefind, conserving CVS history
13010
13011 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13012
13013         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
13014         * gst/gsttag.h:
13015           add some tags used in ogg as well
13016           fix _ in replaygain tags
13017
13018 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13019
13020         * gst/gsterror.h:
13021           fix wrong GST_LIBRARY_ERROR_ENCODE addition
13022
13023 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13024
13025         * gst/gstelement.c: (gst_element_error_full):
13026         * gst/gstelement.h:
13027           change _extended to _full
13028
13029 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13030
13031         reviewed by: <delete if not using a buddy>
13032
13033         * docs/gst/tmpl/gst.sgml:
13034         * docs/gst/tmpl/gstbuffer.sgml:
13035         * docs/gst/tmpl/gstclock.sgml:
13036         * docs/gst/tmpl/gstelement.sgml:
13037         * docs/gst/tmpl/gstreamer-unused.sgml:
13038         * docs/gst/tmpl/gstxml.sgml:
13039         * gst/gstelement.c: (gst_element_error_full):
13040         * gst/gstelement.h:
13041
13042 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13043
13044         * gst/gstelement.h: fix _gst_element_error_printf prototype
13045
13046 2004-01-20  David Schleef  <ds@schleef.org>
13047
13048         * gst/gststructure.c: (gst_structure_to_string):
13049         Convert function to use gst_value_serialize().
13050         * gst/gstvalue.c: (gst_value_serialize_list),
13051         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13052         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13053         (gst_value_serialize_int), (gst_value_serialize_double),
13054         (gst_string_wrap), (gst_value_serialize_string),
13055         (gst_value_serialize), (gst_value_deserialize):
13056         * gst/gstvalue.h:
13057         Add implementations for serialize.
13058
13059 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13060
13061         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13062         we want to keep that one in the future or change xvidenc.c to use 
13063         another error.
13064
13065 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13066
13067         * gst/gstelement.c: (_gst_element_error_printf):
13068         * gst/gstelement.h:
13069           privatise function
13070
13071 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13072
13073         * docs/random/error:
13074           doc explaining error system
13075         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13076           cleanup
13077
13078 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13079
13080         * gst/gst-i18n-app.h:
13081         * gst/gst-i18n-lib.h:
13082           remove inclusion of config.h
13083         * po/POTFILES.in:
13084         * po/nl.po:
13085           add gst/gstelement.c
13086
13087 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13088
13089         * po/nl.po: updated Dutch translation
13090
13091 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13092
13093         * gst/gsterror.c: (_gst_core_errors_init),
13094         (_gst_library_errors_init), (_gst_resource_errors_init),
13095         (_gst_stream_errors_init):
13096         remove ending punctuation dots
13097
13098 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13099
13100         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13101         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13102         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13103         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13104         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13105         use GST_ERROR_SYSTEM
13106
13107 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13108
13109         * gst/gstelement.c: (gst_element_error_printf),
13110         (gst_element_error_extended):
13111         * gst/gstelement.h:
13112           add a helper printf function so we can have NULL values passed.
13113
13114 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13115
13116         * gst/gstelement.h:
13117           add G_STMT macros to gst_element_error, which isn't strictly
13118           necessary but people tell me to anyway.
13119
13120 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13121
13122         * gst/Makefile.am:
13123         * gst/autoplug/gstspideridentity.c:
13124         (gst_spider_identity_sink_loop_type_finding):
13125         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13126         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13127         (gst_filesink_close_file), (gst_filesink_handle_event),
13128         (gst_filesink_chain):
13129         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13130         (gst_filesrc_map_region), (gst_filesrc_get_read),
13131         (gst_filesrc_open_file):
13132         * gst/elements/gstidentity.c: (gst_identity_chain):
13133         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13134         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13135         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13136         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13137         * gst/gst.h:
13138         * gst/gst_private.h:
13139         * gst/gstelement.c: (gst_element_class_init),
13140         (gst_element_default_error), (gst_element_error_func),
13141         (gst_element_error_extended):
13142         * gst/gstelement.h:
13143         * gst/gsterror.c: (_gst_core_errors_init),
13144         (_gst_library_errors_init), (_gst_resource_errors_init),
13145         (_gst_stream_errors_init), (gst_error_get_message):
13146         * gst/gsterror.h:
13147         * gst/gstinfo.c: (_gst_debug_init):
13148         * gst/gstmarshal.list:
13149         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13150         (gst_pad_recover_caps_error), (gst_pad_pull):
13151         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13152         * gst/schedulers/gstbasicscheduler.c:
13153         (gst_basic_scheduler_chainhandler_proxy),
13154         (gst_basic_scheduler_gethandler_proxy),
13155         (gst_basic_scheduler_cothreaded_chain):
13156         * po/POTFILES.in:
13157         * po/fr.po:
13158         * po/nl.po:
13159           change error signal
13160           add error categories
13161
13162 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13163
13164         * gst/gsttag.c: (_gst_tag_initialize):
13165         * gst/gsttag.h:
13166         Add replaygain tag
13167
13168 2004-01-18  Colin Walters  <walters@verbum.org>
13169
13170         * examples/retag/retag.c: Call gst_init before processing
13171         program args.  Add g_assert to _link_many call.
13172
13173 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13174
13175         * gst/gstpad.c: (gst_pad_alloc_buffer):
13176           Return a newly allocated buffer when the pad has no peer.
13177
13178 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13179
13180         * gst/gstclock.c: (gst_clock_get_time):
13181           make it compile with gcc 2.95 again.
13182           Patch by Scott Wheeler
13183
13184 2004-01-15  David Schleef  <ds@schleef.org>
13185
13186         * gst/gstcaps.h:
13187         Added gst_caps_is_simple() macro.
13188         * testsuite/caps/caps.c: (test1):
13189         * testsuite/caps/intersect2.c: (main):
13190         * testsuite/caps/intersection.c: (main):
13191         Fixes to make 'make check' work again after removing
13192         gst_caps_is_chained().
13193
13194 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13195
13196         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13197         and additions to the MIDI document.
13198
13199 2004-01-15  David Schleef  <ds@schleef.org>
13200
13201         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13202         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13203         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13204
13205 2004-01-15  David Schleef  <ds@schleef.org>
13206
13207         * gst/gstqueue.c:
13208         * gst/gstqueue.h:
13209         Fix the spelling of "treshold" and make min_threshold actually
13210         affect the queue.
13211
13212 2004-01-15  David Schleef  <ds@schleef.org>
13213
13214         * gst/gstcaps.c:
13215         Add lots of documentation.
13216         * gst/gstcaps.h:
13217         Deprecate a few functions.
13218         * gst/gstpad.c:
13219         Removed use of deprecated functions.
13220
13221 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13222
13223         * gst/gstpad.c: (gst_pad_is_linked):
13224         * gst/gstpad.h:
13225           implement gst_pad_is_linked
13226         * gst/gstelement.h:
13227           reserve space for initiate_state_change
13228
13229 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13230
13231         * gst/autoplug/gstspideridentity.c:
13232         (gst_spider_identity_sink_loop_type_finding):
13233           break infinite loop by just returning instead of looping
13234         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13235           set event time difference correctly. Set it to 1 second instead
13236           of 100ms to be more tolerant
13237         * gst/gstelement.c: (gst_element_set_time):
13238           add debugging output
13239
13240 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13241
13242         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13243           query if buffers are inside the pool, ignore events
13244
13245 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13246
13247         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13248         (gst_clock_set_speed), (gst_clock_set_active),
13249         (gst_clock_is_active), (gst_clock_reset),
13250         (gst_clock_handle_discont):
13251         * gst/gstclock.h:
13252           deprecate old interface and disable functions that aren't in use
13253           anymore.
13254         * gst/gstelement.h:
13255         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13256         (gst_element_set_time), (gst_element_adjust_time):
13257           add concept of "element time" and functions to get/set this time.
13258         * gst/gstelement.c: (gst_element_change_state):
13259           update element time correctly.
13260         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13261           This is a debug message, not a g_critical.
13262         * gst/gstpad.c: (gst_pad_event_default):
13263           handle discontinuous events right with element time.
13264         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13265           update to clocking fixes.
13266           set clocks on elements in READY=>PAUSED. The old behaviour caused
13267           a wrong element time on the first element that started playing.
13268         * gst/schedulers/gstbasicscheduler.c:
13269         (gst_basic_scheduler_class_init):
13270         * gst/schedulers/gstoptimalscheduler.c:
13271         (gst_opt_scheduler_class_init):
13272           remove code that just implements the default behaviour.
13273         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13274           update to use new clocking functions
13275         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13276         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13277           update to test new element time.
13278         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13279           use _get_allowed_caps instead of _get_caps. This catches filtered
13280           caps correctly.
13281         * testsuite/debug/commandline.c:
13282           update for new GST_DEBUG syntax.
13283         * testsuite/threads/Makefile.am:
13284           disable a test that only works sometimes.
13285
13286 2004-01-13  Julien MOUTTE <julien@moutte.net>
13287
13288         * po/LINGUAS: Adding fr.
13289         * po/fr.po: Adding french translation.
13290
13291 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13292
13293         * gst/parse/grammar.y:
13294         * po/POTFILES.in:
13295         * po/nl.po:
13296         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13297           translate parsing error messages
13298
13299 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13300
13301         * po/POTFILES.in: adding gst-launch
13302         * po/nl.po: updated translation, all 99 strings translated
13303         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13304         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13305           fix strings for translation
13306
13307 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13308
13309         * gst/gst.c:
13310           - capitalize beginnings of popt options
13311           - fix strings for translation
13312           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13313
13314 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13315
13316         * po/README: add some notes on how to update translations
13317
13318 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13319
13320         * ABOUT-NLS: removed, is autogenerated from autopoint
13321         * autogen.sh: add autopoint stuff
13322         * configure.ac: fix up gettext stuff
13323         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13324         * gst/elements/gsttypefindelement.c: add header include
13325         * gst/gettext.h: add header, copy from system-installed header
13326         * gst/gst-i18n-app.h: to be included by each app having translations
13327         * gst/gst-i18n-lib.h: to be included by each lib having translations
13328         * gst/gst.c: (init_pre): fix up gettext calls
13329         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13330         * po/LINGUAS: the new way to specify translations present
13331         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13332         * po/Makevars: the variables filled in for GStreamer
13333         * po/POTFILES.in: added new files with translations
13334         * po/de.po: has new strings
13335         * po/nl.po: readded, has new strings
13336
13337 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13338
13339         * gst/gsttag.c: fix some strings marked for translation
13340
13341 2004-01-13  Iain <iain@prettypeople.org>
13342
13343         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13344         group when we add an element to it, cos we unref it when we remove one
13345
13346 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13347
13348         * testsuite/debug/commandline.c: (debug_not_reached):
13349         * testsuite/debug/output.c: (check_message):
13350           fix testsuite
13351
13352 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13353
13354         * examples/cutter/.cvsignore:
13355         * examples/helloworld/.cvsignore:
13356         * examples/launch/.cvsignore:
13357         * examples/manual/.cvsignore:
13358         * examples/mixer/.cvsignore:
13359         * examples/pingpong/.cvsignore:
13360         * examples/plugins/.cvsignore:
13361         * examples/queue/.cvsignore:
13362         * examples/queue2/.cvsignore:
13363         * examples/queue3/.cvsignore:
13364         * examples/queue4/.cvsignore:
13365         * examples/retag/.cvsignore:
13366         * examples/thread/.cvsignore:
13367         * examples/typefind/.cvsignore:
13368         * examples/xml/.cvsignore:
13369         * gst/.cvsignore:
13370         * gst/autoplug/.cvsignore:
13371         * gst/elements/.cvsignore:
13372         * gst/indexers/.cvsignore:
13373         * gst/parse/.cvsignore:
13374         * gst/registries/.cvsignore:
13375         * gst/schedulers/.cvsignore:
13376         * libs/gst/bytestream/.cvsignore:
13377         * libs/gst/control/.cvsignore:
13378         * libs/gst/getbits/.cvsignore:
13379         * tests/.cvsignore:
13380         * tests/bufspeed/.cvsignore:
13381         * tests/instantiate/.cvsignore:
13382         * tests/memchunk/.cvsignore:
13383         * tests/muxing/.cvsignore:
13384         * tests/sched/.cvsignore:
13385         * tests/seeking/.cvsignore:
13386         * tests/threadstate/.cvsignore:
13387         * testsuite/.cvsignore:
13388         * testsuite/caps/.cvsignore:
13389         * testsuite/cleanup/.cvsignore:
13390         * testsuite/dynparams/.cvsignore:
13391         * testsuite/plugin/.cvsignore:
13392         * tools/.cvsignore:
13393           update - this is huge, because it includes *.bb, *.bbg and *.da files
13394           which are generated for gcov.
13395
13396 2004-01-11  David Schleef  <ds@schleef.org>
13397
13398         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13399         a function to parse integers in ways that strto[u]l() does not.
13400
13401 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13402
13403         * tools/gst-inspect.c: (print_caps):
13404           improve output of caps a bit
13405
13406 2004-01-11  David Schleef  <ds@schleef.org>
13407
13408         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13409         inherit correct flags (READONLY and DONTKEEP).
13410
13411 2004-01-11  David Schleef  <ds@schleef.org>
13412
13413         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13414         (gst_filesrc_map_region):
13415         * gst/gstbuffer.c: (_gst_buffer_initialize),
13416         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13417         (gst_buffer_new), (gst_buffer_create_sub),
13418         (gst_buffer_is_span_fast), (gst_buffer_span):
13419         * gst/gstbuffer.h:
13420         Change GstBuffer private structure element names. (all files)
13421         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13422         (gst_queue_link):
13423         * gst/gstqueue.h:
13424         Implement getcaps/pad_link functions that handle the case where
13425         there are data in the queue.
13426
13427 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13428
13429         * gst/elements/gstbufferstore.c:
13430           initialize debugging structure correctly
13431         * gst/elements/gsttee.c: (gst_tee_set_property):
13432           g_object_notify when property was changed
13433         * gst/elements/gsttypefindelement.c:
13434         (gst_type_find_element_change_state):
13435           clear caps correctly
13436
13437 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13438
13439         * gst/gstqueue.c: (gst_queue_init):
13440           Use better defaults for when a queue should block. This
13441           gets rid of jerky playback for quite a few files.
13442           It takes more memory.
13443
13444 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13445
13446         (gst_xml_registry_parse_padtemplate):
13447           make critical message slightly more useful
13448
13449 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13450
13451         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13452         (gst_debug_message_get), (gst_debug_log_default):
13453         * gst/gstinfo.h:
13454           Change gst_debug_log(_valist) to take a const format string.
13455           Change prototype of log function and functions using those to 
13456           take a GstDebugMessage instead of a string that requires using
13457           gst_debug_message_get.
13458
13459 2004-01-08  David Schleef  <ds@schleef.org>
13460
13461         * Makefile.am:
13462         * configure.ac:
13463         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13464         and -ftest-coverage, which allows gcov to show information about
13465         testsuite coverage.
13466
13467 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13468
13469         * gst/gstutils.h:
13470           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13471           GST_PARENT_CALL_WITH_DEFAULT
13472         * gst/elements/gstaggregator.c: 
13473         * gst/elements/gstbufferstore.c: 
13474         * gst/elements/gstfakesink.c: 
13475         * gst/elements/gstfakesrc.c: 
13476         * gst/elements/gstfdsink.c: 
13477         * gst/elements/gstfdsrc.c: 
13478         * gst/elements/gstfilesink.c: 
13479         * gst/elements/gstfilesrc.c: 
13480         * gst/elements/gstidentity.c: 
13481         * gst/elements/gstmd5sink.c: 
13482         * gst/elements/gstmultidisksrc.c:
13483         * gst/elements/gstpipefilter.c: 
13484         * gst/elements/gstshaper.c:
13485         * gst/elements/gststatistics.c:
13486         * gst/elements/gsttee.c:
13487         * gst/elements/gsttypefindelement.c:
13488           use them.
13489
13490 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13491
13492         * docs/gst/gstreamer-docs.sgml: remove props
13493         * docs/gst/gstreamer-sections.txt: remove props
13494         * docs/gst/tmpl/gst.sgml:
13495         * docs/gst/tmpl/gstbin.sgml:
13496         * docs/gst/tmpl/gstbuffer.sgml:
13497         * docs/gst/tmpl/gstcaps.sgml:
13498         * docs/gst/tmpl/gstclock.sgml:
13499         * docs/gst/tmpl/gstelement.sgml:
13500         * docs/gst/tmpl/gstindex.sgml:
13501         * docs/gst/tmpl/gstobject.sgml:
13502         * docs/gst/tmpl/gstpad.sgml:
13503         * docs/gst/tmpl/gstpadtemplate.sgml:
13504         * docs/gst/tmpl/gstreamer-unused.sgml:
13505         * docs/gst/tmpl/gstthread.sgml:
13506         * docs/gst/tmpl/gstxml.sgml:
13507           sync with code reorganization
13508
13509 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13510
13511         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13512         Make the 'Could not find compatible pad' message more informative.
13513
13514 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13515                                                                                 
13516         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13517           Fix for if we pass NULL as property to location.
13518         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13519         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13520           Fix for instantiate-test (see below).
13521         * gst/gststructure.c: (_gst_structure_parse_value):
13522           Fix compile error on gcc-2.96.
13523         * configure.ac:
13524         * tests/Makefile.am:
13525         * tests/instantiate/Makefile.am:
13526         * tests/instantiate/create.c: (create_all_elements), (main):
13527           Add a test that instantiates all elements. This makes it easy to
13528           track dead code for old API/design (like setting event functions
13529           on sink pads and so on).
13530
13531 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13532
13533         * gst/gstcaps.c: (gst_caps_append_structure):
13534           Move the poisoning to allow a NULL structure
13535         * gst/gstevent.c: (_gst_event_free):
13536           When freeing a navigation event, free the structure
13537           also
13538
13539 2004-01-04  David Schleef  <ds@schleef.org>
13540
13541         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13542         Remove usage of gst_pad_proxy_fixate.
13543         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13544         (gst_caps_split_one), (gst_caps_replace):
13545         Add poisoning code.
13546         * gst/gstmarshal.list:
13547         Add pointer__pointer for fixate signal
13548         * gst/gstpad.c: (gst_real_pad_class_init),
13549         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13550         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13551         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13552         Add poisoning code. Add fixate signal on RealPad. Change
13553         set_explicit_caps() to take const GstCaps, like try_set_caps().
13554         * gst/gstpad.h:
13555         * testsuite/caps/Makefile.am:
13556         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13557
13558 2004-01-03  David Schleef  <ds@schleef.org>
13559
13560         * gst/elements/gsttypefindelement.c:
13561         (gst_type_find_element_have_type), (gst_type_find_element_init):
13562         Use gst_pad_use_explicit_caps for src pad.
13563         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13564         before using it.
13565
13566 2004-01-03  David Schleef  <ds@schleef.org>
13567
13568         * gst/gstelement.c: (gst_element_link_pads_filtered),
13569         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13570         that linking was successful.
13571         * gst/gstpad.c: (gst_pad_link_free),
13572         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13573         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13574         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13575         GstPadLinkReturn correctly between functions, and don't fail
13576         when DELAYED is used (DELAYED is very important).  Better
13577         cleanup on unlinking and unnegotiation.  Should fix some spider
13578         bugs.
13579
13580 2004-01-02  David Schleef  <ds@schleef.org>
13581
13582         * gst/gstelement.c: (gst_element_class_init),
13583         (gst_element_base_class_init): ->padtemplates should be cleared
13584         in base_init, since we need to have a fresh list for every
13585         class.  (Alternately, we chould copy the list and share the
13586         actual pad templates (not the list), but that would require
13587         changing every plugin to move pad template registration from
13588         base_init to class_init.)
13589
13590 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13591
13592         * gst/gstelement.c: (gst_element_class_add_pad_template):
13593           Refuse registering a pad template if another pad template
13594           with the same name already exists (#114715).
13595
13596 2004-01-02  David Schleef  <ds@schleef.org>
13597
13598         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13599         (gst_caps_is_equal_fixed): Add new function.
13600         * gst/gstcaps.h: ditto.
13601         * gst/gstpad.c: (gst_real_pad_class_init),
13602         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13603         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13604         check new caps against existing caps -- if they're the same, return
13605         OK without renegotiating.  caps-nego-failed signal fixed so that
13606         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13607         to save an extra caps copy.  Don't complete negotiation if a pad
13608         link function returns DELAYED.
13609
13610 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13611
13612         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13613           Fix wrong g_return_if_fail
13614
13615 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13616
13617         * gst/gstbin.c: (gst_bin_class_init):
13618         Change the marshalling of element_added/element_removed
13619         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13620         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13621
13622 2004-01-01  David Schleef  <ds@schleef.org>
13623
13624         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13625         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13626         (gst_pad_use_explicit_caps):
13627         * gst/gstpad.h:
13628         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13629         to use an internal getcaps and link fuction so that negotiation
13630         always results in the explicitly set caps.
13631         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13632         are particularly useful for decoders.
13633
13634 2003-12-31  David Schleef  <ds@schleef.org>
13635
13636         * gst/elements/gstidentity.c: (gst_identity_class_init),
13637         (gst_identity_init), (gst_identity_chain),
13638         (gst_identity_set_property), (gst_identity_get_property):
13639         * gst/elements/gstidentity.h:
13640         * gst/gstqueue.c: (gst_queue_init):
13641           Negotiation fixes.
13642
13643 2003-12-31  David Schleef  <ds@schleef.org>
13644
13645         * gst/gstcaps.c: (gst_caps_intersect),
13646         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13647           Implement gst_caps_normalize().
13648         * testsuite/caps/normalisation.c: (main):
13649           Add an additional test
13650
13651 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13652
13653         * gst/gstqueue.c: (gst_queue_init):
13654           use gst_pad_proxy_getcaps()
13655
13656 2003-12-31  David Schleef  <ds@schleef.org>
13657
13658         * gst/elements/gstshaper.c: (gst_shaper_link):
13659         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13660         * gst/gstqueue.c: (gst_queue_link):
13661           Negotiation fixes.
13662
13663 2003-12-31  David Schleef  <ds@schleef.org>
13664
13665         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13666         * gst/gstpad.h: Add functions that are useful as default pad
13667         link and fixate functions for elements.
13668
13669 2003-12-30  David Schleef  <ds@schleef.org>
13670
13671         * gst/gstpad.c: (gst_pad_link_try):
13672           Fix segfault when attempting to return to old caps
13673
13674 2003-12-29  David Schleef  <ds@schleef.org>
13675
13676         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13677         (gst_caps_structure_simplify), (gst_caps_simplify):
13678         * gst/gstcaps.h:
13679           Add simplify function
13680         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13681         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13682         * gst/gstpad.h:
13683           Copy over srcnotify, sinknotify when calling old pad_link
13684           functions.  Add new is_negotiated() function.
13685         * gst/gststructure.c: (gst_structure_copy):
13686           Fix an incredibly stupid bug that should have been noticed
13687           weeks ago.  _copy() returned the argument, not the new copy.
13688
13689 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13690
13691         * gst/gstcaps.c: (gst_caps_append):
13692           add sanity checks
13693         * gst/gstcaps.h: (gst_caps_debug):
13694           remove, it doesn't exist anymore.
13695         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13696         (gst_element_threadsafe_properties_post_run):
13697           make debugging messages not clutter up THREAD debug category
13698         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13699         (gst_element_change_state):
13700           update to new caps API
13701         * gst/gstinterface.c: (gst_implements_interface_cast):
13702           don't put vital code in g_return_if_fail
13703         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13704         (gst_pad_link_filtered):
13705           add pst_pad_try_link and use it.
13706         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13707           implement correctly, deprecate first one.
13708         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13709           add and implement.
13710         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13711           implement.
13712         (gst_pad_get_negotiated_caps):
13713           add and implement. Make GST_PAD_CAPS call this function.
13714         (gst_pad_get_caps):
13715           remove unneeded check..
13716         (gst_pad_recover_caps_error):
13717           disable, always return FALSE.
13718         (gst_real_pad_dispose):
13719           don't free caps and appfilter anymore, they're unused.
13720         * gst/gstpad.h:
13721           Reflect changes mentioned above.
13722         * gst/gstsystemclock.c: (gst_system_clock_wait):
13723           Make 'clock is way behind' a debugging message.
13724         * gst/gstthread.c: (gst_thread_change_state):
13725           Fix debugging message
13726
13727 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13728
13729         * gst/gstinfo.h:
13730           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13731         * docs/gst/tmpl/gstreamer-unused.sgml:
13732           removed all traces of cvs conflicts
13733
13734 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13735
13736         * configure.ac:
13737         * gst/schedulers/cothreads_compat.h:
13738         * libs/Makefile.am:
13739           remove last instances of wingo cothread usage
13740
13741 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13742
13743         * gst/gstplugin.c:
13744         * gst/gstversion.h.in:
13745         * gst/parse/grammar.y:
13746           change comment block from /** to /* when not gtk-doc comments
13747
13748 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13749
13750         * gst/gst.c: whitespace and doc style fixes
13751
13752 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13753
13754         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13755
13756 2003-12-24  Colin Walters  <walters@verbum.org>
13757
13758         * gst/elements/gsttypefindelement.c:
13759           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13760           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13761           Don't double-free caps.
13762
13763 2003-12-23  David Schleef  <ds@schleef.org>
13764
13765         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13766           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13767           Many little fixes and additions of debug statements to
13768           get rhythmbox working.
13769
13770 2003-12-23  Colin Walters  <walters@verbum.org>
13771
13772         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13773         Use GST_PAD_LINK_SUCCESSFUL.
13774
13775 2003-12-23  David Schleef  <ds@schleef.org>
13776
13777         * gst/elements/gstaggregator.c:
13778         * gst/elements/gsttee.c:
13779           Use gst_pad_proxy_getcaps().
13780         * gst/gstpad.c:
13781         * gst/gstpad.h:
13782           Add gst_pad_proxy_getcaps(), which filter elements can use
13783           as a generic getcaps implementation.
13784           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13785           was advertised.
13786
13787 2003-12-23  David Schleef  <ds@schleef.org>
13788
13789         * gst/gstpad.c:
13790           Rearrange/rewrite much of the pad negotiation code, since it
13791           resembled pasta.  This actually changes the way some
13792           negotiation works, since the previous code was inconsistent
13793           depending on how it was invoked.  Add (internal) structure
13794           GstPadLink, which is used to hold some information (more in
13795           the future) about the link between two pads.  Fixes a number
13796           of bugs, including random lossage of filter caps when the
13797           initial negotiation is delayed.  A few functions are still
13798           unimplemented.
13799         * gst/gstpad.h:
13800           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13801           these when testing GstPadLinkReturn values instead of comparing
13802           directly.
13803
13804 2003-12-23  David Schleef  <ds@schleef.org>
13805
13806         * gst/gstvalue.c: 
13807         * gst/gstvalue.h:
13808           Rearrange lots of code.  Change registration of compare function
13809           into registration of compare/serialize/deserialize functions.
13810           Doesn't include implementation of gst_value_[de]serialize(),
13811           but that should be easy.
13812
13813 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13814
13815         * docs/gst/gstreamer-sections.txt:
13816         * docs/gst/tmpl/gstprops.sgml: removed
13817         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13818           David removed props and caps code, so let's remove their docs as well.
13819           Removed all no longer existing symbols from gstreamer-sections.txt
13820           
13821 2003-12-22  Colin Walters  <walters@verbum.org>
13822
13823         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13824           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13825           of tags directly.
13826
13827 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13828
13829         * gst/elements/gstelements.c:
13830           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13831         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13832           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13833           gst_caps (peer).
13834
13835 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13836
13837         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13838         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13839         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13840         (gst_spider_identity_sink_loop_type_finding):
13841         * gst/autoplug/gstspideridentity.h:
13842           Fix autoplugging in spider element, so it works with new caps.
13843           This was mainly caused by identifying empty caps incorrectly.
13844
13845 2003-12-22  David Schleef  <ds@schleef.org>
13846
13847         * gststructure.c, gstvalue.c, gstvalue.h: Add
13848           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13849           using g_value_copy()
13850
13851 2003-12-21  David Schleef  <ds@schleef.org>
13852
13853         * many, many files: Merge CAPS branch.  This includes:
13854           - implemention of GstValue and several GstValue types
13855           - implemention of GstStructure
13856           - entire rewrite of GstCaps
13857           - removal of GstProps
13858           - many changes to GstPad to compensate for new caps paradigm
13859           - removal of GstBufferpool
13860         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13861         gstvalue.h, gst/gstcaps[2]*.[ch]:
13862           - rename gstcaps2.[ch] to gstcaps.[ch]
13863
13864 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13865
13866         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13867         (gst_queue_chain), (gst_queue_handle_src_event):
13868           implement timeout for sending events. Workaround for if the
13869           pipeline on this queue is not passing any data.
13870
13871 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13872                                                                                 
13873         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13874         * moved CVS to freedesktop.org