added long/short desc for controller docs added collectpads base class docs added...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
2
3         * docs/gst/gstreamer-docs.sgml:
4         * docs/gst/gstreamer-sections.txt:
5         * docs/gst/gstreamer.types:
6         * docs/gst/tmpl/gstbasesink.sgml:
7         * docs/gst/tmpl/gstbasesrc.sgml:
8         * docs/gst/tmpl/gstbasetransform.sgml:
9         * docs/gst/tmpl/gstfakesrc.sgml:
10         * gst/base/gstcollectpads.c:
11         * gst/base/gstcollectpads.h:
12         * libs/gst/controller/gst-controller.c:
13         * libs/gst/controller/gst-controller.h:
14         * libs/gst/controller/gst-helper.c:
15         * libs/gst/controller/gst-interpolation.c:
16         * libs/gst/controller/lib.c:
17           added long/short desc for controller docs
18           added collectpads base class docs
19           added correct includes to base-class docs
20
21 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
22
23         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
24         (gst_test_mono_source_set_property),
25         (gst_test_mono_source_class_init), (GST_START_TEST),
26         (gst_controller_suite):
27         * docs/gst/gstreamer-docs.sgml:
28         * docs/gst/gstreamer-sections.txt:
29         * docs/gst/gstreamer.types:
30         * docs/libs/gstreamer-libs-docs.sgml:
31         * docs/libs/gstreamer-libs-sections.txt:
32         * gst/base/gstadapter.c:
33         * libs/gst/controller/gst-controller.c:
34         (gst_controlled_property_new), (gst_controlled_property_free),
35         (gst_controller_new_valist),
36         (gst_controller_remove_properties_valist),
37         (gst_controller_sink_values), (_gst_controller_finalize):
38         * libs/gst/controller/gst-controller.h:
39         * libs/gst/controller/gst-helper.c:
40         (gst_object_control_properties), (gst_object_uncontrol_properties),
41         (gst_object_get_controller), (gst_object_set_controller),
42         (gst_object_sink_values), (gst_object_get_value_arrays),
43         (gst_object_get_value_array):
44           more tests (and fixes) for the controller
45           more docs for the controller
46           integrated companies docs for the adapter 
47
48 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
49
50         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
51         (GST_START_TEST), (fakesrc_suite):
52           add tests for sizetype
53
54 2005-08-04  Andy Wingo  <wingo@pobox.com>
55
56         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
57         fixes buffer_alloc proxying among other things.
58
59         * gst/base/gstbasetransform.c:
60         * gst/base/gstbasetransform.h:
61         Revert patch to gstbasetransform from 7-28 removing
62         delay_configure.
63
64         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
65         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
66         Semantics changed, should return not the size of the output buffer
67         but the byte size of a buffer with a given caps.
68
69         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
70         debug object.
71         (gst_base_transform_configure_caps): Don't set out_size here: (in,
72         out) are not the pad caps until setcaps finishes.
73         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
74         not-in-place case as well. Deal with changing from in-place to
75         not-in-place within calling pad_alloc_buffer. Still a bit
76         concerned about the overhead here...
77
78 2005-08-03  Andy Wingo  <wingo@pobox.com>
79
80         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
81         fixating is an error.
82
83 2005-08-04  Edward Hervey  <edward@fluendo.com>
84
85         * gst/base/gstadapter.h: 
86         Added gst_adapter_get_type() to the header
87
88 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
89
90         * check/Makefile.am:
91         * check/gst-libs/controller.c:
92         * libs/gst/controller/gst-controller.c:
93         (gst_controller_new_valist):
94           added check test suite for the controller
95         * gst/base/gstpushsrc.c:
96           fixed a doc typo
97
98 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
99
100         * docs/gst/Makefile.am:
101         * docs/gst/gstreamer-docs.sgml:
102         * docs/gst/gstreamer-sections.txt:
103         * docs/gst/gstreamer.types:
104         * docs/gst/tmpl/gstfakesrc.sgml:
105         * gst/base/README:
106         * gst/base/gstbasesink.c:
107         * gst/base/gstbasesink.h:
108         * gst/base/gstbasesrc.c:
109         * gst/base/gstbasesrc.h:
110         * gst/base/gstbasetransform.c:
111         * gst/base/gstpushsrc.c:
112         * gst/base/gstpushsrc.h:
113           add short/long description docs to base classes
114           add pushsrc to the docs
115           remove consolidated doc fragments
116
117 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
118
119         * configure.ac:
120         * docs/libs/Makefile.am:
121         * docs/libs/gstreamer-libs-docs.sgml:
122         * docs/libs/gstreamer-libs-sections.txt:
123         * docs/libs/gstreamer-libs.types:
124         * examples/Makefile.am:
125         * examples/controller/.cvsignore:
126         * examples/controller/Makefile.am:
127         * examples/controller/audio-example.c: (main):
128         * libs/gst/Makefile.am:
129         * libs/gst/controller/.cvsignore:
130         * libs/gst/controller/Makefile.am:
131         * libs/gst/controller/gst-controller.c:
132         (on_object_controlled_property_changed), (gst_timed_value_compare),
133         (gst_timed_value_find),
134         (gst_controlled_property_set_interpolation_mode),
135         (gst_controlled_property_new), (gst_controlled_property_free),
136         (gst_controller_find_controlled_property),
137         (gst_controller_new_valist), (gst_controller_new),
138         (gst_controller_remove_properties_valist),
139         (gst_controller_remove_properties), (gst_controller_set),
140         (gst_controller_set_from_list), (gst_controller_unset),
141         (gst_controller_get), (gst_controller_get_all),
142         (gst_controller_sink_values), (gst_controller_get_value_arrays),
143         (gst_controller_get_value_array),
144         (gst_controller_set_interpolation_mode),
145         (_gst_controller_finalize), (_gst_controller_init),
146         (_gst_controller_class_init), (gst_controller_get_type):
147         * libs/gst/controller/gst-controller.h:
148         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
149         (g_object_uncontrol_properties), (g_object_get_controller),
150         (g_object_set_controller), (g_object_sink_values),
151         (g_object_get_value_arrays), (g_object_get_value_array):
152         * libs/gst/controller/gst-interpolation.c:
153         (gst_controlled_property_find_timed_value_node),
154         (interpolate_none_get), (interpolate_trigger_get),
155         (interpolate_trigger_get_value_array):
156         * libs/gst/controller/lib.c: (gst_controller_init):
157         * pkgconfig/Makefile.am:
158         * pkgconfig/gstreamer-control-uninstalled.pc.in:
159         * pkgconfig/gstreamer-control.pc.in:
160         * testsuite/Makefile.am:
161         * testsuite/controller/.cvsignore:
162         * testsuite/controller/Makefile.am:
163         * testsuite/controller/interpolator.c: (main):
164           added controller code
165           removed dparam pc files
166
167 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
168         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
169         (gst_collectpads_stop):
170           Broadcast the condition when shutting down, to make sure we wake all
171           threads up. Shut down pads on finalize, for safety.
172
173 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
174         * gst/base/gstbasetransform.c: (gst_base_transform_init),
175         (gst_base_transform_handle_buffer),
176         (gst_base_transform_change_state):
177           Handle PAUSED->READY->PAUSED transition after negotiation
178           occurred already.
179         * gst/gstmessage.c: (gst_message_init):
180           Extra piece of debug for new messages.
181
182 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
183
184         * configure.ac:
185         * docs/gst/tmpl/gstbasesrc.sgml:
186         * docs/gst/tmpl/gstelement.sgml:
187         * docs/gst/tmpl/gstevent.sgml:
188         * docs/gst/tmpl/gstfakesrc.sgml:
189         * docs/gst/tmpl/gstformat.sgml:
190         * docs/gst/tmpl/gstghostpad.sgml:
191         * docs/gst/tmpl/gstpad.sgml:
192         * docs/gst/tmpl/gstquery.sgml:
193         * docs/gst/tmpl/gststructure.sgml:
194         * docs/gst/tmpl/gsttaglist.sgml:
195         * docs/gst/tmpl/gstvalue.sgml:
196         * docs/libs/gstreamer-libs-docs.sgml:
197         * docs/libs/gstreamer-libs-sections.txt:
198         * docs/libs/gstreamer-libs.types:
199         * libs/gst/Makefile.am:
200         * libs/gst/control/.cvsignore:
201         * libs/gst/control/Makefile.am:
202         * libs/gst/control/control.c:
203         * libs/gst/control/control.h:
204         * libs/gst/control/dparam.c:
205         * libs/gst/control/dparam.h:
206         * libs/gst/control/dparam_smooth.c:
207         * libs/gst/control/dparam_smooth.h:
208         * libs/gst/control/dparamcommon.h:
209         * libs/gst/control/dparammanager.c:
210         * libs/gst/control/dparammanager.h:
211         * libs/gst/control/dplinearinterp.c:
212         * libs/gst/control/dplinearinterp.h:
213         * libs/gst/control/unitconvert.c:
214         * libs/gst/control/unitconvert.h:
215         * testsuite/Makefile.am:
216         * testsuite/dynparams/.cvsignore:
217         * testsuite/dynparams/Makefile.am:
218         * testsuite/dynparams/dparamstest.c:
219         * tools/Makefile.am:
220         * tools/gst-inspect.c: (print_element_info), (main):
221         * tools/gst-xmlinspect.c: (print_element_info), (main):
222           deactivate and remove dparams (libgstcontrol)
223
224 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
225
226         * gst/elements/gsttypefindelement.c:
227         (gst_type_find_element_have_type), (gst_type_find_element_init),
228         (stop_typefinding), (gst_type_find_element_handle_event),
229         (gst_type_find_element_chain), (gst_type_find_element_getrange):
230         * gst/elements/gsttypefindelement.h:
231           Set caps on all outgoing buffers, not just the first one.
232
233 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
234
235         * gst/elements/gsttypefindelement.c:
236         (gst_type_find_element_have_type),
237         (gst_type_find_element_check_set_buffer_caps),
238         (gst_type_find_element_init), (stop_typefinding),
239         (gst_type_find_element_handle_event),
240         (gst_type_find_element_chain), (gst_type_find_element_getrange):
241         * gst/elements/gsttypefindelement.h:
242           Set caps on first outgoing buffer when we've found the type.
243
244 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
245
246         * docs/gst/gstreamer-docs.sgml:
247         * docs/gst/gstreamer-sections.txt:
248         * docs/gst/tmpl/gstscheduler.sgml:
249         * docs/gst/tmpl/gstschedulerfactory.sgml:
250           Remove some old cruft from docs.
251
252 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
253
254         * gst/gstpad.h:
255           Fix inline docs for GstPadLinkReturn.
256           
257         * gst/gststructure.c: (gst_structure_has_name):
258         * gst/gststructure.h:
259         * docs/gst/gstreamer-sections.txt:
260           New API: gst_structure_has_name().
261
262 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
263
264         * configure.ac:
265           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
266           and _LARGEFILE_SOURCE in config.h as required. Do not 
267           export those flags in our .pc files any longer (#142209).
268
269           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
270
271         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
272         (gst_file_sink_do_seek), (gst_file_sink_event),
273         (gst_file_sink_get_current_offset), (gst_file_sink_render):
274           Redo seek/tell calls with large file support in mind; add some
275           debugging messages; add log message that tells us when large
276           file support is unavailable or not enabled for some reason.
277
278         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
279           Add log message that tells us when large file support 
280           is unavailable or not enabled for some reason.
281
282 2005-07-29  Wim Taymans  <wim@fluendo.com>
283
284         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
285         Added test for removing an element with ghostpad from a bin.
286         Fixed test as current implementation does the right thing.
287
288         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
289         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
290         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
291         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
292         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
293         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
294         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
295         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
296         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
297         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
298         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
299         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
300         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
301         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
302         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
303         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
304         * gst/gstghostpad.h:
305         Clean up ghostpads, remove properties for internal stuff.
306         Make threadsafe.
307         Fix refcounting.
308         Prepare for switching targets, not all use cases work yet.
309
310 2005-07-29  Wim Taymans  <wim@fluendo.com>
311
312         * docs/design/part-gstghostpad.txt:
313         Small update.
314
315         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
316         (gst_bin_remove_func):
317         Unlinking pads while holding the bin LOCK is not a good
318         idea.
319
320         * gst/gstpad.c: (gst_pad_class_init),
321         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
322         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
323         No prob setting template after creating the pad.
324
325 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
326
327         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
328         (gst_bus_peek), (gst_bus_source_dispatch),
329         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
330         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
331           gst_bus_poll may be called from other threads. Handle
332           this nicely by not making poll_data disappear off the
333           stack once gst_bus_poll returns.
334           gst_bus_peek now increments the refcount on the returned
335           message.
336
337 2005-07-29  Wim Taymans  <wim@fluendo.com>
338
339         * docs/design/part-gstghostpad.txt:
340         Overview of current GhostPad datastructures and use
341         cases for changing the target.
342
343 2005-07-28  Wim Taymans  <wim@fluendo.com>
344
345         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
346         Added checks for hierarchy consistency whan adding linked
347         elements to bins.
348
349         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
350         Added check to test element scheduling without bin/pipeline.
351
352         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
353         First add elements to bin, then link.
354         
355         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
356         (gst_bin_remove_func):
357         Unlink pads from elements added/removed from bin to maintain
358         hierarchy consistency.
359
360 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
361
362         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
363         (gst_base_transform_handle_buffer):
364         * gst/base/gstbasetransform.h:
365           Remove broken delay_configure (fixes renegotiation of software
366           scaling pipelines); remove some leftover printf()s.
367
368 2005-07-28  Wim Taymans  <wim@fluendo.com>
369
370         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
371         Added some more tests for wrong hierarchy
372
373         * docs/design/part-overview.txt:
374         Some updates.
375
376         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
377         Cleanups.
378
379         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
380         (gst_element_dispose):
381         Some more cleanups.
382
383         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
384         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
385         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
386         (gst_pad_set_caps), (gst_pad_send_event):
387         Check for correct hierarchy when linking pads. Moving to
388         strict requirement for ghostpads when linking elements in
389         different bins.
390
391         * gst/gstpad.h:
392         Clean ups. Added WRONG_HIERARCHY return value.
393
394 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
395
396         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
397           Better debug if no transform is possible.
398
399 2005-07-27  Wim Taymans  <wim@fluendo.com>
400
401         * docs/random/wtay/network-transp:
402         Some old doc I had.
403
404 2005-07-27  Wim Taymans  <wim@fluendo.com>
405
406         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
407         (gst_dp_event_from_packet):
408         Fix serialization of seek events.
409
410 2005-07-27  Wim Taymans  <wim@fluendo.com>
411
412         * check/gst-libs/gdp.c: (GST_START_TEST):
413         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
414         Fix compilation and fix event serialization.
415
416 2005-07-27  Wim Taymans  <wim@fluendo.com>
417
418         * CHANGES-0.9:
419         * docs/design/part-TODO.txt:
420         * docs/design/part-events.txt:
421         Some docs updates
422
423         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
424         (gst_base_sink_event), (gst_base_sink_do_sync),
425         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
426         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
427         (gst_base_src_do_seek), (gst_base_src_event_handler),
428         (gst_base_src_loop):
429         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
430         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
431         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
432         (gst_base_transform_event), (gst_base_transform_handle_buffer),
433         (gst_base_transform_set_passthrough),
434         (gst_base_transform_is_passthrough):
435         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
436         * gst/elements/gstfilesink.c: (gst_file_sink_event):
437         Event updates.
438
439         * gst/gstbuffer.h:
440         Use faster casts.
441
442         * gst/gstelement.c: (gst_element_seek):
443         * gst/gstelement.h:
444         Update gst_element_seek.
445
446         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
447         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
448         (gst_event_new_flush_start), (gst_event_new_flush_stop),
449         (gst_event_new_eos), (gst_event_new_newsegment),
450         (gst_event_parse_newsegment), (gst_event_new_tag),
451         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
452         (gst_event_parse_qos), (gst_event_new_seek),
453         (gst_event_parse_seek), (gst_event_new_navigation):
454         * gst/gstevent.h:
455         Make GstEvent use GstStructure. Add parsing code, make sure the
456         API is sufficiently generic.
457         Mark possible directions of events and serialization.
458
459         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
460         (_gst_message_copy), (gst_message_new_segment_start),
461         (gst_message_new_segment_done), (gst_message_new_custom),
462         (gst_message_parse_segment_start),
463         (gst_message_parse_segment_done):
464         Small cleanups.
465
466         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
467         (gst_pad_set_caps), (gst_pad_send_event):
468         Update for new events. 
469         Catch events sent in wrong directions.
470
471         * gst/gstqueue.c: (gst_queue_link_src),
472         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
473         (gst_queue_handle_src_query):
474         Event updates.
475
476         * gst/gsttag.c:
477         * gst/gsttag.h:
478         Remove event code from this file.
479
480         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
481         (gst_dp_event_from_packet):
482         Event updates.
483
484 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
485
486         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
487         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
488         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
489           Make debugging actually useful.
490
491 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
492
493         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
494         (gst_pad_fixate_caps):
495           Implement default fixation once again, so that gst_pad_fixate()
496           actually does anything at all. This probably needs to be some
497           sort of a last resort, and use profile-based fixation first, but
498           since that doesn't exist yet, this is the best we have. Fixes
499           visualization in Totem.
500
501 2005-07-22  Wim Taymans  <wim@fluendo.com>
502
503         * docs/design/part-events.txt:
504         Small update.
505
506         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
507         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
508         (gst_base_sink_activate_pull):
509         Some more comments.
510
511         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
512         (gst_fake_src_create):
513         Fix handoff marshall.
514
515         * gst/elements/gstidentity.c: (gst_identity_class_init),
516         (gst_identity_transform_ip):
517         We're a real inplace element.
518
519         * gst/gstbus.c: (gst_bus_post):
520         Added some comments.
521
522         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
523         * tests/muxing/case1.c: (main):
524         * tests/sched/dynamic-pipeline.c: (main):
525         * tests/sched/interrupt1.c: (main):
526         * tests/sched/interrupt2.c: (main):
527         * tests/sched/interrupt3.c: (main):
528         * tests/sched/runxml.c: (main):
529         * tests/sched/sched-stress.c: (main):
530         * tests/seeking/seeking1.c: (event_received), (main):
531         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
532         (main):
533         * tests/threadstate/threadstate3.c: (main):
534         * tests/threadstate/threadstate4.c: (main):
535         * tests/threadstate/threadstate5.c: (main):
536         Fix the tests.
537
538 2005-07-21  Wim Taymans  <wim@fluendo.com>
539
540         * docs/design/part-seeking.txt:
541         Some small additions.
542
543         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
544         (gst_base_sink_get_times), (gst_base_sink_do_sync),
545         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
546         * gst/base/gstbasesink.h:
547         discont values are gint64, handle the math correctly.
548
549         * gst/base/gstbasesrc.c: (gst_base_src_loop):
550         Make the basesrc report error if the source pad is not linked.
551
552         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
553         (gst_queue_loop), (gst_queue_handle_src_query),
554         (gst_queue_src_activate_push):
555         Make queue collect data even if the srcpad is not linked.
556         Start pushing out data as soon as it is linked.
557
558         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
559         * gst/gstutils.h:
560         Added gst_flow_get_name() to ease error reporting.
561
562 2005-07-20  Wim Taymans  <wim@fluendo.com>
563
564         * gst/gstmessage.c: (gst_message_new_segment_start),
565         (gst_message_new_segment_done), (gst_message_parse_segment_start),
566         (gst_message_parse_segment_done):
567         * gst/gstmessage.h:
568         Added a bunch of messages for advanced seeking.
569
570         * gst/parse/grammar.y:
571         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
572         (gst_dpman_state_changed):
573         Fix some new-pad -> pad-added signals
574
575 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
576
577         * docs/manual/appendix-porting.xml:
578         * docs/pwg/appendix-porting.xml:
579           Document new-pad/state-change signal renames and the FixedList
580           type rename.
581
582 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
583
584         * docs/manual/advanced-autoplugging.xml:
585         * docs/manual/basics-helloworld.xml:
586         * docs/manual/basics-pads.xml:
587         * docs/random/ds/0.9-suggested-changes:
588         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
589         * gst/gstelement.h:
590         * gst/gstevent.h:
591         * gst/gstformat.h:
592         * gst/gstquery.h:
593         * gst/gststructure.c: (gst_structure_value_get_generic_type),
594         (gst_structure_parse_array), (gst_structure_parse_value):
595         * gst/gstvalue.c: (gst_type_is_fixed),
596         (gst_value_list_prepend_value), (gst_value_list_append_value),
597         (gst_value_list_get_size), (gst_value_list_get_value),
598         (gst_value_transform_array_string), (gst_value_serialize_array),
599         (gst_value_deserialize_array), (gst_value_intersect_array),
600         (gst_value_is_fixed), (_gst_value_initialize):
601         * gst/gstvalue.h:
602           GstElement::new-pad -> pad-added, GstElement::state-change ->
603           state-changed, GstValueFixedList -> GstValueArray, add format and
604           flags as their own arguments in gst_element_seek() (should improve
605           "bindeability"), remove function generators since they don't work
606           under a whole bunch of compilers (they were deprecated already
607           anyway).
608
609 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
610
611         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
612         (_gst_debug_register_funcptr):
613         * gst/gstinfo.h:
614           Fix illegal cast on some platforms (#309253).
615
616 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
617
618         * gst/gstmessage.c: (gst_message_new_custom):
619         * gst/gstmessage.h:
620           Add _new_custom, make _new_application a macro to _new_custom.
621
622 2005-07-20  Wim Taymans  <wim@fluendo.com>
623
624         * gst/base/gstbasesrc.c: (gst_base_src_init),
625         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
626         * gst/base/gstbasesrc.h:
627         Add a gboolean to decide when to push out a discont.
628
629         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
630         (gst_queue_loop), (gst_queue_handle_src_query),
631         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
632         (gst_queue_set_property), (gst_queue_get_property):
633         Some cleanups.
634
635         * tests/threadstate/threadstate1.c: (main):
636         Make a thread test compile and run... very silly..
637
638
639 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
640
641         * docs/manual/appendix-porting.xml:
642           Mention removal of libgstgconf-0.9.la and existence of gconf
643           elements.
644
645 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
646
647         * docs/pwg/advanced-clock.xml:
648         * docs/pwg/appendix-porting.xml:
649         * docs/pwg/intro-preface.xml:
650         * docs/pwg/other-base.xml:
651         * docs/pwg/other-manager.xml:
652         * docs/pwg/other-nton.xml:
653         * docs/pwg/other-ntoone.xml:
654         * docs/pwg/other-oneton.xml:
655         * docs/pwg/pwg.xml:
656           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
657           demuxer), remove n-to-n (was never written), fix some code examples
658           and links and update the porting section to include all this.
659
660 2005-07-19  Wim Taymans  <wim@fluendo.com>
661
662         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
663         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
664         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
665         (gst_queue_src_activate_push), (gst_queue_change_state),
666         (gst_queue_get_property):
667         * gst/gstqueue.h:
668         Propagate GstFlowReturn more intelligently upstream and output
669         an ERROR/EOS when streaming stopped due to fatal error.
670
671 2005-07-19  Wim Taymans  <wim@fluendo.com>
672
673         * tools/gst-launch.c: (check_intr), (event_loop), (main):
674         Don't block forever for the state change to complete, the
675         pipeline already did with a sensible timeout.
676
677 2005-07-19  Wim Taymans  <wim@fluendo.com>
678
679         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
680         Make sure we never call the create function is we
681         got deactivated.
682
683 2005-07-19  Andy Wingo  <wingo@pobox.com>
684
685         * gst/parse/parse.l: Attempt to solve bug #172815.
686
687 2005-07-19  Wim Taymans  <wim@fluendo.com>
688
689         * docs/design/part-clocks.txt:
690         * docs/design/part-events.txt:
691         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
692         Small docs updates.
693         Only update the seeking values when we are not
694         busy streaming.
695
696 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
697
698         * gst/base/gstbasesrc.c: (gst_base_src_loop):
699           Oops, ignore the result of gst_pad_push_event here.
700
701 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
702
703         * gst/base/gstbasesrc.c: (gst_base_src_loop),
704         (gst_base_src_activate_push):
705           Send discont event from the loop function, as pads
706           aren't activated yet in the activate_push handler.
707
708         * gst/gstbin.c: (bin_bus_handler):
709           Don't leak element name.
710
711 2005-07-18  Andy Wingo  <wingo@pobox.com>
712
713         * configure.ac: Use AS_LIBTOOL_TAGS.
714
715 2005-07-18  Wim Taymans  <wim@fluendo.com>
716
717         * docs/gst/gstreamer.types:
718         Remove deleted types.
719
720 2005-07-18  Wim Taymans  <wim@fluendo.com>
721
722         * check/elements/gstfakesrc.c: (GST_START_TEST):
723         * configure.ac:
724         * gst/Makefile.am:
725         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
726         (init_popt_callback):
727         * gst/gst.h:
728         * gst/gst_private.h:
729         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
730         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
731         * gst/gstbin.h:
732         * gst/gstbus.h:
733         * gst/gstconfig.h.in:
734         * gst/gstelement.c: (gst_element_class_init),
735         (gst_element_set_base_time), (gst_element_get_base_time),
736         (iterator_fold_with_resync), (gst_element_change_state),
737         (gst_element_dispose), (gst_element_get_bus):
738         * gst/gstelement.h:
739         * gst/gstelementfactory.h:
740         * gst/gsterror.c: (_gst_core_errors_init):
741         * gst/gsterror.h:
742         * gst/gstevent.h:
743         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
744         * gst/gstindex.c:
745         * gst/gstinfo.c: (_gst_debug_init):
746         * gst/gstmessage.c: (_gst_message_copy):
747         * gst/gstmessage.h:
748         * gst/gstminiobject.h:
749         * gst/gstobject.c:
750         * gst/gstobject.h:
751         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
752         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
753         * gst/gstpad.h:
754         * gst/gstparse.h:
755         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
756         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
757         (gst_pipeline_get_last_stream_time):
758         * gst/gstpipeline.h:
759         * gst/gstpluginfeature.h:
760         * gst/gstquery.h:
761         * gst/gstscheduler.c:
762         * gst/gstscheduler.h:
763         * gst/gststructure.h:
764         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
765         (gst_task_finalize), (gst_task_func), (gst_task_create),
766         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
767         (gst_task_stop), (gst_task_pause):
768         * gst/gsttask.h:
769         * gst/gsttypefind.h:
770         * gst/gsttypes.h:
771         * gst/registries/gstlibxmlregistry.c: (load_feature),
772         (gst_xml_registry_load), (gst_xml_registry_save_feature):
773         * gst/registries/gstxmlregistry.c:
774         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
775         * gst/schedulers/threadscheduler.c:
776         * libs/gst/control/dparammanager.h:
777         * tools/gst-inspect.c: (print_element_list),
778         (print_plugin_features), (print_element_features):
779         * tools/gst-xmlinspect.c: (print_element_list),
780         (print_plugin_info), (main):
781         Removed plugable schedulers.
782         Removed Scheduler/Manager from elements.
783         Removed gsttypes.h, rearranged includes.
784         Removed dependency pad<->element, element<>pipeline, and
785         various others,  fix includes.
786         implement gst_pad_get_parent() with gst_object_get_parent()
787         Make GstTask sefcontained.
788         Fix _get_state() on GstBin, it did not return ASYNC with a 0
789         timeout.
790         Fix endless loop in iterator_fold_with_resync.
791
792
793 2005-07-18  Wim Taymans  <wim@fluendo.com>
794
795         * gst/Makefile.am:
796         * gst/gstarch.h:
797         Remove old file.
798
799 2005-07-18  Wim Taymans  <wim@fluendo.com>
800
801         * gst/Makefile.am:
802         No more cothreads.h
803
804 2005-07-18  Wim Taymans  <wim@fluendo.com>
805
806         * gst/cothreads.c:
807         * gst/cothreads.h:
808         Let's remove these.
809
810 2005-07-18  Wim Taymans  <wim@fluendo.com>
811
812         * docs/design/part-dynamic.txt:
813         * docs/design/part-events.txt:
814         * docs/design/part-seeking.txt:
815         Some more docs in the works.
816
817         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
818         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
819         (gst_base_transform_setcaps), (gst_base_transform_get_size),
820         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
821         (gst_base_transform_handle_buffer),
822         (gst_base_transform_sink_activate_push),
823         (gst_base_transform_src_activate_pull),
824         (gst_base_transform_set_passthrough),
825         (gst_base_transform_is_passthrough):
826         Refcounting fixes.
827
828         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
829         Cleanups.
830
831         * gst/gstevent.c: (gst_event_finalize):
832         Set SRC to NULL.
833
834         * gst/gstutils.c: (gst_element_unlink),
835         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
836         (gst_pad_proxy_setcaps):
837         * gst/gstutils.h:
838         Add _get_parent_element() to get a pads parent as an element.
839
840 2005-07-18  Wim Taymans  <wim@fluendo.com>
841
842         * check/gst/gstbin.c: (GST_START_TEST):
843         Remove bogus test.
844
845 2005-07-18  Wim Taymans  <wim@fluendo.com>
846
847         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
848         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
849         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
850         (gst_base_sink_event), (gst_base_sink_do_sync),
851         (gst_base_sink_chain), (gst_base_sink_loop),
852         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
853         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
854         Refcounting fixes.
855         Fix logic for returning ASYNC when not prerolled.
856
857 2005-07-18  Wim Taymans  <wim@fluendo.com>
858
859         * gst/gstqueue.c: (gst_queue_handle_sink_event):
860         Fix nasty refcount bug.
861
862 2005-07-16 Philippe Khalaf <burger@speedy.org>
863         * gst/elements/gstfdsrc.c:
864         * gst/elements/gstfdsrc.h:
865         * gst/elements/gstelements.c:
866         * gst/elements/Makefile.am:
867         Ported fdsrc to 0.9.
868
869 2005-07-16  Wim Taymans  <wim@fluendo.com>
870
871         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
872         (gst_base_sink_do_sync):
873         Fix compile error.
874
875 2005-07-16  Wim Taymans  <wim@fluendo.com>
876
877         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
878         (gst_base_sink_event), (gst_base_sink_get_times),
879         (gst_base_sink_do_sync), (gst_base_sink_change_state):
880         * gst/base/gstbasesink.h:
881         Store and use discont values when syncing buffers as described
882         in design docs.
883         
884         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
885         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
886         (gst_base_src_activate_push):
887         Push discont event when starting.
888
889         * gst/elements/gstidentity.c: (gst_identity_transform):
890         Small cleanups.
891
892         * gst/gstbin.c: (gst_bin_change_state):
893         Small cleanups in base_time  distribution.
894
895         * gst/gstelement.c: (gst_element_set_base_time),
896         (gst_element_get_base_time), (gst_element_change_state):
897         * gst/gstelement.h:
898         Added methods for the base_time of the element.
899         Some MT fixes.
900
901         * gst/gstpipeline.c: (gst_pipeline_send_event),
902         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
903         (gst_pipeline_get_last_stream_time):
904         * gst/gstpipeline.h:
905         MT fixes.
906         Handle seeking as described in design doc, remove stream_time
907         hack.
908         Cleanups clock and stream_time selection code. Added accessors
909         for the stream_time.
910         
911
912 2005-07-16  Andy Wingo  <wingo@pobox.com>
913
914         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
915         (#305291).
916
917 2005-07-16  Wim Taymans  <wim@fluendo.com>
918
919         * check/gst/gstbin.c: (GST_START_TEST):
920         Make elements silent as the deep_notify refs the
921         parent, which might make the test fail.
922
923         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
924         Don't hold the lock for too long.
925
926 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
927
928         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
929           Don't unref the caps we passed to gst_caps_make_writable() after
930           passing them. gst_caps_make_writable() will do that for us.
931
932 2005-07-15  Andy Wingo  <wingo@pobox.com>
933
934         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
935         (#157311).
936
937         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
938         own marshalling function for the handoff signal. Properly type the
939         buffer as a buffer. Fixes some warnings. Should do a more general
940         solution.
941         (gst_identity_class_init): Plug into the right marshaller.
942
943 2005-07-15  Wim Taymans  <wim@fluendo.com>
944
945         * docs/design/part-TODO.txt:
946         * docs/design/part-clocks.txt:
947         * docs/design/part-element-sink.txt:
948         * docs/design/part-events.txt:
949         * docs/design/part-gstpipeline.txt:
950         Updated docs, mostly DISCONT related.
951
952 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
953
954         * docs/pwg/building-pads.xml:
955           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
956
957 2005-07-15  Andy Wingo  <wingo@pobox.com>
958
959         * tools/gst-typefind.c: Update, add copyright block.
960
961         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
962         Normalize and truncate caps before fixation.
963
964         * gst/gstcaps.h:
965         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
966         discards all but the first structure from its argument.
967
968 2005-07-15  Wim Taymans  <wim@fluendo.com>
969
970         * gst/base/gstbasetransform.c: (gst_base_transform_init),
971         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
972         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
973         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
974         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
975         (gst_base_transform_chain), (gst_base_transform_change_state),
976         (gst_base_transform_set_passthrough),
977         (gst_base_transform_is_passthrough):
978         * gst/base/gstbasetransform.h:
979         Make passthrough work using the bufferpools.
980         Changed API a bit, subclasses have to write into a buffer
981         provided by the base class.
982         More debug info in nego functions.
983         
984         * gst/elements/gstidentity.c: (gst_identity_init),
985         (gst_identity_transform):
986         Port to new base class.
987
988 2005-07-15  Wim Taymans  <wim@fluendo.com>
989
990         * gst/gstmessage.c: (gst_message_new_state_changed):
991         * tools/gst-launch.c: (event_loop), (main):
992         Totally dump messages in -launch with the -m option.
993         Fix message name for State messages,
994
995 2005-07-14  Wim Taymans  <wim@fluendo.com>
996
997         * gst/base/gstbasesrc.c: (gst_base_src_loop):
998         Post error messages on errors.
999
1000 2005-07-14  Wim Taymans  <wim@fluendo.com>
1001
1002         * gst/gstcaps.c: (gst_caps_do_simplify):
1003         Remove debug info.
1004
1005         * gst/gsterror.h:
1006         Define error for stream stopped.
1007
1008         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1009         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1010         Do proper return values.
1011
1012         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1013         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1014         (gst_pad_get_range):
1015         Better return values.
1016
1017         * gst/gstpad.h:
1018         Reorganise return values, add macro to check for fatal errors.
1019
1020         * gst/gstqueue.c: (gst_queue_chain):
1021         Return proper GstFlowReturn values,
1022
1023 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1024
1025         * docs/gst/gstreamer-sections.txt:
1026         * docs/gst/gstreamer.types:
1027         * docs/gst/tmpl/gst.sgml:
1028         * docs/gst/tmpl/gstbasesink.sgml:
1029         * docs/gst/tmpl/gstbasesrc.sgml:
1030         * docs/gst/tmpl/gstbasetransform.sgml:
1031         * docs/gst/tmpl/gstbin.sgml:
1032         * docs/gst/tmpl/gstbuffer.sgml:
1033         * docs/gst/tmpl/gstcaps.sgml:
1034         * docs/gst/tmpl/gstclock.sgml:
1035         * docs/gst/tmpl/gstcompat.sgml:
1036         * docs/gst/tmpl/gstconfig.sgml:
1037         * docs/gst/tmpl/gstelement.sgml:
1038         * docs/gst/tmpl/gstelementdetails.sgml:
1039         * docs/gst/tmpl/gstelementfactory.sgml:
1040         * docs/gst/tmpl/gstenumtypes.sgml:
1041         * docs/gst/tmpl/gsterror.sgml:
1042         * docs/gst/tmpl/gstevent.sgml:
1043         * docs/gst/tmpl/gstfakesink.sgml:
1044         * docs/gst/tmpl/gstfakesrc.sgml:
1045         * docs/gst/tmpl/gstfilesink.sgml:
1046         * docs/gst/tmpl/gstfilesrc.sgml:
1047         * docs/gst/tmpl/gstfilter.sgml:
1048         * docs/gst/tmpl/gstformat.sgml:
1049         * docs/gst/tmpl/gstghostpad.sgml:
1050         * docs/gst/tmpl/gstimplementsinterface.sgml:
1051         * docs/gst/tmpl/gstindex.sgml:
1052         * docs/gst/tmpl/gstindexfactory.sgml:
1053         * docs/gst/tmpl/gstinfo.sgml:
1054         * docs/gst/tmpl/gstiterator.sgml:
1055         * docs/gst/tmpl/gstmacros.sgml:
1056         * docs/gst/tmpl/gstmemchunk.sgml:
1057         * docs/gst/tmpl/gstminiobject.sgml:
1058         * docs/gst/tmpl/gstobject.sgml:
1059         * docs/gst/tmpl/gstpad.sgml:
1060         * docs/gst/tmpl/gstpadtemplate.sgml:
1061         * docs/gst/tmpl/gstparse.sgml:
1062         * docs/gst/tmpl/gstpipeline.sgml:
1063         * docs/gst/tmpl/gstplugin.sgml:
1064         * docs/gst/tmpl/gstpluginfeature.sgml:
1065         * docs/gst/tmpl/gstquery.sgml:
1066         * docs/gst/tmpl/gstqueue.sgml:
1067         * docs/gst/tmpl/gstregistry.sgml:
1068         * docs/gst/tmpl/gstregistrypool.sgml:
1069         * docs/gst/tmpl/gstscheduler.sgml:
1070         * docs/gst/tmpl/gstschedulerfactory.sgml:
1071         * docs/gst/tmpl/gststructure.sgml:
1072         * docs/gst/tmpl/gstsystemclock.sgml:
1073         * docs/gst/tmpl/gsttaglist.sgml:
1074         * docs/gst/tmpl/gsttagsetter.sgml:
1075         * docs/gst/tmpl/gsttrace.sgml:
1076         * docs/gst/tmpl/gsttrashstack.sgml:
1077         * docs/gst/tmpl/gsttypefind.sgml:
1078         * docs/gst/tmpl/gsttypefindfactory.sgml:
1079         * docs/gst/tmpl/gsttypes.sgml:
1080         * docs/gst/tmpl/gsturihandler.sgml:
1081         * docs/gst/tmpl/gsturitype.sgml:
1082         * docs/gst/tmpl/gstutils.sgml:
1083         * docs/gst/tmpl/gstvalue.sgml:
1084         * docs/gst/tmpl/gstversion.sgml:
1085         * docs/gst/tmpl/gstxml.sgml:
1086         * docs/libs/tmpl/gstcontrol.sgml:
1087         * docs/libs/tmpl/gstdataprotocol.sgml:
1088         * docs/libs/tmpl/gstdparam.sgml:
1089         * docs/libs/tmpl/gstdplinint.sgml:
1090         * docs/libs/tmpl/gstdpman.sgml:
1091         * docs/libs/tmpl/gstdpsmooth.sgml:
1092         * docs/libs/tmpl/gstgetbits.sgml:
1093         * docs/libs/tmpl/gstunitconvert.sgml:
1094         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1095         (gst_push_src_base_init), (gst_push_src_class_init),
1096         (gst_push_src_init), (gst_push_src_create):
1097         * gst/base/gstpushsrc.h:
1098         * gst/elements/gstelements.c:
1099         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1100         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1101         (gst_fake_sink_init), (gst_fake_sink_set_property),
1102         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1103         (gst_fake_sink_event), (gst_fake_sink_preroll),
1104         (gst_fake_sink_render), (gst_fake_sink_change_state):
1105         * gst/elements/gstfakesink.h:
1106         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1107         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1108         (gst_fake_src_base_init), (gst_fake_src_class_init),
1109         (gst_fake_src_init), (gst_fake_src_event_handler),
1110         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1111         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1112         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1113         (gst_fake_src_create_buffer), (gst_fake_src_create),
1114         (gst_fake_src_start), (gst_fake_src_stop):
1115         * gst/elements/gstfakesrc.h:
1116         * gst/elements/gstfilesink.c: (_do_init),
1117         (gst_file_sink_base_init), (gst_file_sink_class_init),
1118         (gst_file_sink_init), (gst_file_sink_dispose),
1119         (gst_file_sink_set_location), (gst_file_sink_set_property),
1120         (gst_file_sink_get_property), (gst_file_sink_open_file),
1121         (gst_file_sink_close_file), (gst_file_sink_query),
1122         (gst_file_sink_event), (gst_file_sink_render),
1123         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1124         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1125         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1126         * gst/elements/gstfilesink.h:
1127         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1128         (gst_file_src_class_init), (gst_file_src_init),
1129         (gst_file_src_finalize), (gst_file_src_set_location),
1130         (gst_file_src_set_property), (gst_file_src_get_property),
1131         (gst_file_src_map_region), (gst_file_src_map_small_region),
1132         (gst_file_src_create_mmap), (gst_file_src_create_read),
1133         (gst_file_src_create), (gst_file_src_is_seekable),
1134         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1135         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1136         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1137         (gst_file_src_uri_handler_init):
1138         * gst/elements/gstfilesrc.h:
1139           more autistic cleanliness in functions/names/defines
1140
1141 2005-07-13  Andy Wingo  <wingo@pobox.com>
1142
1143         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1144         source couldn't negotiate.
1145
1146         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1147         connections again.
1148
1149         * gst/gstutils.h:
1150         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1151         function. I am channeling Hades. Put your boots on suckers!!!
1152
1153 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1154
1155         * testsuite/caps/Makefile.am:
1156         * testsuite/caps/value_compare.c:
1157         * testsuite/caps/value_intersect.c:
1158         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1159           move two testsuite apps over to the check dir
1160
1161 2005-07-12  Wim Taymans  <wim@fluendo.com>
1162
1163         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1164         Added more debug info in the negotiate process.
1165
1166         * gst/gstmessage.h:
1167         Prepare for segment playback.
1168
1169         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1170         Better debugging.
1171
1172         * gst/gstutils.c:
1173         Some more docs.
1174
1175         * tools/gst-launch.c: (main):
1176         NULL pipeline on errors.
1177
1178 2005-07-12  Andy Wingo  <wingo@pobox.com>
1179
1180         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1181         not it comes from a malloc region. Make sure our copy gets freed.
1182
1183 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1184
1185         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1186         * check/gst/gstmessage.c: (GST_START_TEST):
1187         * check/gst/gststructure.c: (GST_START_TEST),
1188         (gst_structure_suite), (main):
1189           more testing
1190         * gst/gstelement.c: (gst_element_message_full):
1191           clean up GError and debug string now that they get copied
1192         * gst/gstmessage.c: (gst_message_new_error),
1193         (gst_message_new_warning), (gst_message_parse_error),
1194         (gst_message_parse_warning):
1195           use GST_TYPE_G_ERROR for structure_new, and take copies of
1196           arguments, so that we don't mess up refcounting
1197
1198 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1199
1200         * check/Makefile.am:
1201           add per-test valgrind targets
1202         * check/gst-libs/gdp.c: (GST_START_TEST),
1203         (gst_data_protocol_suite), (main):
1204           clean up
1205
1206 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1207
1208         * check/Makefile.am:
1209           instate more valgrindable tests
1210         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1211         (GST_START_TEST), (fakesrc_suite):
1212         * check/gst/gstpad.c: (GST_START_TEST):
1213         * check/gst/gststructure.c: (GST_START_TEST):
1214           fix test leaks
1215         * docs/gst/tmpl/gstminiobject.sgml:
1216         * gst/gstpad.c: (gst_pad_finalize):
1217           fix the static mutex leak
1218
1219 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1220
1221         * check/Makefile.am:
1222           add two more tests for valgrinding
1223         * check/gst/gstvalue.c: (GST_START_TEST):
1224           test refcount of deserialized buffer, found a leak
1225         * docs/gst/gstreamer-docs.sgml:
1226         * docs/gst/gstreamer-sections.txt:
1227         * docs/gst/gstreamer.types:
1228         * docs/gst/tmpl/gstminiobject.sgml:
1229           add miniobject to docs
1230         * gst/gstminiobject.c:
1231           add some docs
1232         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1233         (gst_string_unwrap):
1234           fix a hard-to-find invalid write for one of the tests
1235           fix a leak for deserialized buffers
1236
1237 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1238
1239         * docs/pwg/advanced-events.xml:
1240         * docs/pwg/advanced-request.xml:
1241         * docs/pwg/advanced-scheduling.xml:
1242         * docs/pwg/appendix-porting.xml:
1243         * docs/pwg/building-boiler.xml:
1244         * docs/pwg/intro-preface.xml:
1245         * docs/pwg/other-ntoone.xml:
1246           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1247           of example code and explanation for pad activation, loop() and
1248           getrange() functions and a bit more. Remove old comments pointing
1249           to loop-functions.
1250         * examples/pwg/Makefile.am:
1251           Add loop/getrange examples.
1252
1253 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1254
1255         * configure.ac:
1256           check for valgrind binary + some fixes
1257         * check/gst.supp:
1258           valgrind suppressions for the tests
1259         * check/Makefile.am:
1260           add a valgrind: target that valgrinds the unit tests
1261         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1262         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1263         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1264         * check/gst/gstghostpad.c:
1265           added some cleanup
1266         * check/gst/gstdata.c:
1267           removed
1268         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1269         (thread_unref), (gst_mini_object_suite), (main):
1270           added
1271         * gst/gst.c: (gst_deinit):
1272         * gst/gst.h:
1273           add a method to clean up.
1274         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1275         (gst_system_clock_obtain):
1276           allow for disposing the system clock.
1277         * tools/gst-launch.c: (main):
1278           deinit
1279
1280 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1281
1282         * docs/gst/tmpl/gstbasesrc.sgml:
1283         * docs/gst/tmpl/gstfakesrc.sgml:
1284         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1285         (gst_base_src_init), (gst_base_src_set_property),
1286         (gst_base_src_get_property), (gst_base_src_get_range),
1287         (gst_base_src_start):
1288         * gst/base/gstbasesrc.h:
1289           add num-buffers property
1290         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1291         (gst_fakesrc_init), (gst_fakesrc_set_property),
1292         (gst_fakesrc_get_property), (gst_fakesrc_create),
1293         (gst_fakesrc_start):
1294           remove num-buffers property
1295
1296 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1297
1298         * docs/gst/gstreamer-sections.txt:
1299         * docs/gst/tmpl/gstbasesink.sgml:
1300         * docs/gst/tmpl/gstbasesrc.sgml:
1301         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1302         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1303         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1304         (gst_base_sink_set_property), (gst_base_sink_get_property),
1305         (gst_base_sink_handle_object), (gst_base_sink_event),
1306         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1307         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1308         (gst_base_sink_loop), (gst_base_sink_deactivate),
1309         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1310         (gst_base_sink_change_state):
1311         * gst/base/gstbasesink.h:
1312         * gst/base/gstbasesrc.h:
1313         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1314         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1315         (gst_filesink_init):
1316           more macro splitting
1317
1318 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1319
1320         * gst/gstelement.c: (gst_element_get_bus):
1321           add debug
1322         * tools/gst-launch.c: (check_intr), (event_loop):
1323           fix bus leaks
1324
1325 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1326
1327         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1328           fix a caps leak
1329
1330 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1331
1332         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1333         (gst_base_src_finalize):
1334           add finalize method and clean up properly
1335         * gst/gstpipeline.c: (gst_pipeline_dispose):
1336           add debug
1337
1338 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1339
1340         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1341         (gst_bin_suite):
1342           add more things to check
1343         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1344         * gst/gstelement.c:
1345           more debug
1346
1347 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1348
1349         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1350         (GST_START_TEST), (fakesrc_suite):
1351         * check/gst-libs/gdp.c: (GST_START_TEST):
1352         * check/gst/gst.c: (GST_START_TEST):
1353         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1354         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1355         * check/gst/gstbus.c: (GST_START_TEST):
1356         * check/gst/gstcaps.c: (GST_START_TEST):
1357         * check/gst/gstdata.c: (GST_START_TEST):
1358         * check/gst/gstelement.c: (GST_START_TEST):
1359         * check/gst/gstghostpad.c: (GST_START_TEST):
1360         * check/gst/gstiterator.c: (GST_START_TEST):
1361         * check/gst/gstmessage.c: (GST_START_TEST):
1362         * check/gst/gstobject.c: (GST_START_TEST):
1363         * check/gst/gstpad.c: (GST_START_TEST):
1364         * check/gst/gststructure.c: (GST_START_TEST):
1365         * check/gst/gstsystemclock.c: (GST_START_TEST),
1366         (gst_systemclock_suite):
1367         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1368         * check/gst/gstvalue.c: (GST_START_TEST):
1369         * check/pipelines/cleanup.c: (GST_START_TEST):
1370         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1371         * check/states/sinks.c: (GST_START_TEST):
1372         * check/gstcheck.c: (gst_check_init):
1373         * check/gstcheck.h:
1374           add debugging category
1375           use GST_START_TEST now, so we add a debug line
1376
1377 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1378
1379         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1380           add test for state change message on a bin
1381         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1382           add another test
1383         * gst/gstbin.c: (gst_bin_init):
1384         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1385         * gst/gstelement.c: (gst_element_post_message),
1386         (gst_element_set_state):
1387         * gst/gstelementfactory.c: (gst_element_factory_create):
1388         * gst/gstmessage.c: (gst_message_new):
1389         * gst/gstscheduler.c:
1390           various debugging additions and cleanups
1391
1392 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1393
1394         * check/Makefile.am:
1395         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1396         (main):
1397           adding tests for elements
1398         * gst/gstelement.c: (gst_element_dispose):
1399
1400 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1401
1402         * gst/registries/gstlibxmlregistry.c: (load_feature):
1403           plug more leaks.  A simple gst_init() now is leakfree, yay.
1404
1405 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1406
1407         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1408         (gst_xml_registry_load):
1409           plug another memleak
1410
1411 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1412
1413         * configure.ac:
1414           use GST_SET_ERROR_CFLAGS
1415         * docs/faq/cvs.xml:
1416           change to ERROR_CFLAGS
1417
1418 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1419
1420         * configure.ac:
1421           make GST_ERROR_CFLAGS overridable and re-enable Werror
1422         * docs/faq/cvs.xml:
1423           add a note about error CFLAGS
1424         * docs/gst/tmpl/gstfakesrc.sgml:
1425         * gst/elements/gstfakesrc.c:
1426           comment out some unused code
1427         * gst/gst.c: (split_and_iterate):
1428         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1429         (load_feature):
1430           plug some memleaks
1431
1432 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1433
1434         * common/Makefile.am:
1435         * common/gtk-doc.mak:
1436         * docs/gst/Makefile.am:
1437           factor out gtk-doc.mak
1438
1439 2005-07-07  Wim Taymans  <wim@fluendo.com>
1440
1441         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1442         (gst_thread_scheduler_dispose):
1443         Unlock the STREAM_LOCK completely.
1444
1445 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1446
1447         * check/Makefile.am:
1448         * check/elements/.cvsignore:
1449         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1450         (START_TEST), (fakesrc_suite), (main):
1451         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1452         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1453         (gst_fakesrc_create), (gst_fakesrc_start):
1454         * gst/elements/gstfakesrc.h:
1455           adding a first element test
1456
1457 2005-07-07  Andy Wingo  <wingo@pobox.com>
1458
1459         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1460         debug message.
1461
1462 2005-07-07  Wim Taymans  <wim@fluendo.com>
1463
1464         * gst/gstquery.c:
1465         * gst/gstquery.h:
1466         Remove old types
1467
1468 2005-07-07  Wim Taymans  <wim@fluendo.com>
1469
1470         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1471         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1472         Allow subclasses to implement their own negotiation.
1473
1474 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1475
1476         * docs/design/part-gstbin.txt:
1477         * docs/design/part-gstpipeline.txt:
1478           Update design notes to reflect the movement of
1479           responsibility for bus handling from GstPipeline to
1480           GstBin
1481
1482 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1483
1484         * configure.ac:
1485           Remove unnecessary queue2/3/4 examples.
1486
1487 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1488
1489         * examples/Makefile.am:
1490         * examples/helloworld/helloworld.c: (event_loop), (main):
1491         * examples/queue/queue.c: (event_loop), (main):
1492         * examples/queue2/queue2.c: (main):
1493           Update a couple of the examples to work again.
1494
1495         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1496         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1497          Spelling corrections and extra debug.
1498         
1499         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1500         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1501         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1502         * gst/gstbin.h:
1503         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1504         (gst_pipeline_change_state):
1505         * gst/gstpipeline.h:
1506           Move the bus handler for children to the GstBin, and create a
1507           separate bus for receiving messages from children to the one the
1508           bus sends 'upwards' on.
1509
1510 2005-07-06  Wim Taymans  <wim@fluendo.com>
1511
1512         * gst/base/README:
1513         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1514         (gst_base_sink_handle_object), (gst_base_sink_loop),
1515         (gst_base_sink_change_state):
1516         * gst/base/gstbasesink.h:
1517         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1518         (gst_base_src_init), (gst_base_src_setcaps),
1519         (gst_base_src_getcaps), (gst_base_src_loop),
1520         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1521         (gst_base_src_start), (gst_base_src_change_state):
1522         * gst/base/gstbasesrc.h:
1523         Make basesrc negotiate.
1524         Handle the case where preroll fails in basesink.
1525         Update README.
1526
1527 2005-07-06  Wim Taymans  <wim@fluendo.com>
1528
1529         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1530         Implement the fixate function.
1531         Clean up acceptcaps.
1532
1533 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1534
1535         * docs/pwg/building-filterfactory.xml:
1536         * docs/pwg/pwg.xml:
1537           Remove never-written filter-factory chapter; I'll add the various
1538           base classes to part 4 ("other element types") later on.
1539
1540 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1541
1542         * docs/pwg/advanced-negotiation.xml:
1543         * docs/pwg/building-boiler.xml:
1544         * docs/pwg/building-pads.xml:
1545         * docs/pwg/pwg.xml:
1546         * examples/pwg/Makefile.am:
1547           Add a chapter on caps negotiation, simplify the original code
1548           samples a bit w.r.t. caps negotiation, add link to the advanced
1549           section. Add a bunch of examples showing different use cases of
1550           different types of caps negotiation. Upstream renegotiation isn't
1551           fully documented yet since nobody knows how that works.
1552
1553 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1554
1555         * check/gst/gstpad.c:
1556         * check/gstcheck.c:
1557         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1558           if pad has no parent, return NULL as list of internal links
1559
1560 2005-07-05  Andy Wingo  <wingo@pobox.com>
1561
1562         * gst/elements/gstfilesrc.c:
1563         * gst/elements/gstfakesrc.c: 
1564         * gst/base/gstpushsrc.c:
1565         * gst/base/gstbasesrc.h: 
1566         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1567         
1568 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1569
1570         * Makefile.am:
1571           better report generation target (lcov needs a patch)
1572
1573 2005-07-05  Andy Wingo  <wingo@pobox.com>
1574
1575         * gst/elements, testsuite: Null if we got it...
1576
1577 2005-07-05  Wim Taymans  <wim@fluendo.com>
1578
1579         * configure.ac:
1580         * libs/gst/dataprotocol/Makefile.am:
1581         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1582         * libs/gst/dataprotocol/dataprotocol.h:
1583         * pkgconfig/Makefile.am:
1584         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1585         * pkgconfig/gstreamer-dataprotocol.pc.in:
1586         Ported dataprotol to 0.9. 
1587         Added pkgconfig files.
1588
1589 2005-07-05  Andy Wingo  <wingo@pobox.com>
1590
1591         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1592         Default to returning TRUE for the case when tranform_caps returns
1593         a fixed caps, like for identity or volume.
1594
1595         * check/gst/gstbus.c (pound_bus_with_messages): 
1596         * check/gst/gstmessage.c (START_TEST): 
1597         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1598         message API change.
1599
1600         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1601         logic weaks here: always run transform_caps, trying passthrough
1602         operation only if the original caps intersects with the transform.
1603
1604         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1605         source and sink caps.
1606
1607         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1608         Intersect the peer caps with the pad template before going into
1609         transform_caps.
1610         (gst_base_transform_transform_caps): More debugging.
1611
1612         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1613         src argument.
1614
1615 2005-07-04  Edward Hervey  <edward@fluendo.com>
1616
1617         * gst/gstutils.c:
1618         * gst/gstutils.h:
1619         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1620         in bindings.
1621
1622 2005-07-04  Andy Wingo  <wingo@pobox.com>
1623
1624         * check/gst/gstpad.c: Only set explicit caps on pads.
1625
1626 2005-07-01  Andy Wingo  <wingo@pobox.com>
1627
1628         * tests/network-clock.scm: Commentary update.
1629
1630         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1631         Didn't really make sense, not implementable with basetransform,
1632         etc.
1633         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1634         attempt at implementing the sync property, needs an unlock method.
1635
1636         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1637         New func, by default returns the same caps (the identity
1638         transformation).
1639         (gst_base_transform_getcaps): Uses transform_caps to return
1640         something sensible.
1641         (gst_base_transform_setcaps): Complicated logic to get caps on
1642         both pads, even if they are different, and to call set_caps once
1643         for every time both pads get their caps set.
1644         (gst_base_transform_handle_buffer): Give the ref to the transform
1645         function. Allows in-place modification of the buffer.
1646
1647         * gst/base/gstbasetransform.h (transform_caps): New class method.
1648         Given caps on one side, what can I do on the other.
1649         (set_caps): Take two caps, one for each side of the element.
1650
1651         * gst/gstpad.h:
1652         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1653         caps in place. This is safe because we can check the mutability of
1654         the caps, and a good idea because fixate functions are just called
1655         as a matter of last resort. (Not actually implemented.)
1656         (gst_pad_set_caps): If the caps we're setting is actually the same
1657         as the existing pad caps, just update the pointer without calling
1658         setcaps. Assert that caps is either NULL or fixed, as per the
1659         docs.
1660
1661         * gst/gstghostpad.c: Update for fixate changes.
1662
1663 2005-07-02  Andy Wingo  <wingo@pobox.com>
1664
1665         * gst/gstcaps.c:
1666         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1667         two refcounts makes it immutable, which is enough. Doc more.
1668
1669 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1670
1671         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1672           Put the mini_object into GValue as a mini_object,
1673           not a gpointer, since that's how we declared
1674           the signal.
1675
1676 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1677
1678         * examples/pwg/Makefile.am:
1679           Fix buildbot again.
1680
1681 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1682
1683         * docs/pwg/building-testapp.xml:
1684           Add extra check.
1685         * examples/pwg/Makefile.am:
1686           Fix buildbot.
1687
1688 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1689
1690         * configure.ac:
1691         * examples/Makefile.am:
1692         * examples/pwg/Makefile.am:
1693         * examples/pwg/extract.pl:
1694           Enable building the PWG examples.
1695         * docs/pwg/advanced-interfaces.xml:
1696           Add URI interface stub.
1697         * docs/pwg/advanced-types.xml:
1698         * docs/pwg/other-autoplugger.xml:
1699         * docs/pwg/appendix-porting.xml:
1700         * docs/pwg/pwg.xml:
1701           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1702         * docs/pwg/building-boiler.xml:
1703         * docs/pwg/building-chainfn.xml:
1704         * docs/pwg/building-pads.xml:
1705         * docs/pwg/building-props.xml:
1706         * docs/pwg/building-state.xml:
1707         * docs/pwg/building-testapp.xml:
1708           Update the building-*.xml parts for 0.9 changes. All examples
1709           code blocks compile in examples/pwg/*.
1710
1711 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1712
1713         * docs/manual/advanced-autoplugging.xml:
1714         * docs/manual/appendix-checklist.xml:
1715         * docs/manual/appendix-integration.xml:
1716         * docs/manual/highlevel-components.xml:
1717           Fix playbin/decodebin examples, update docs a bit, mention bus
1718           instead of signals in various places, mention kmplayer and
1719           kaffeine since they have a working GStreamer backend in the KDE
1720           section.
1721
1722 2005-06-30  Wim Taymans  <wim@fluendo.com>
1723
1724         * CHANGES-0.9:
1725         * docs/design/draft-ghostpads.txt:
1726         * docs/design/draft-push-pull.txt:
1727         * docs/design/draft-query.txt:
1728         * docs/design/part-TODO.txt:
1729         * docs/design/part-query.txt:
1730         Added CHANGES-0.9 doc, updated status of other docs.
1731         
1732         * gst/gstquery.h:
1733         Remove "hmm" macro
1734
1735 2005-06-30  Wim Taymans  <wim@fluendo.com>
1736
1737         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1738         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1739         (gst_base_sink_change_state):
1740         * gst/base/gstbasesink.h:
1741         Some tweaks, only EOS and a buffer complete a preroll.
1742
1743 2005-06-30  Andy Wingo  <wingo@pobox.com>
1744
1745         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1746         activate_push down to the internal pad as well.
1747
1748 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1749
1750         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1751
1752         * gst/gsttaginterface.c:
1753           Some documentation fixes (#307394 and #307397).
1754
1755 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1756
1757         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1758
1759         * gst/gstvalue.c: (gst_value_intersect_list):
1760           Fix memleak (#309125).
1761
1762 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1763
1764         * docs/manual/advanced-dataaccess.xml:
1765           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1766         * docs/manual/basics-pads.xml:
1767           Add reference for filtered caps to above chapter.
1768
1769 2005-06-30  Wim Taymans  <wim@fluendo.com>
1770
1771         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1772         (gst_bin_change_state):
1773         Probes are gone.
1774         Lame attempt at making the state change function a bit
1775         more readable.
1776
1777 2005-06-30  Wim Taymans  <wim@fluendo.com>
1778
1779         * docs/design/part-clocks.txt:
1780         * docs/design/part-element-sink.txt:
1781         * docs/design/part-events.txt:
1782         * docs/design/part-preroll.txt:
1783         * docs/design/part-states.txt:
1784         Some more tweeks and additions to the docs.
1785
1786 2005-06-30  Wim Taymans  <wim@fluendo.com>
1787
1788         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1789         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1790         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1791         (gst_pad_check_pull_range), (gst_pad_get_range),
1792         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1793         * gst/gstpad.h:
1794         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1795         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1796         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1797         (gst_pad_remove_buffer_probe):
1798         Removed atomic operations, use existing LOCK.
1799         Move exception handling out of main code path.
1800
1801 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1802
1803         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1804         (silly_return_true_function), (gst_pad_class_init),
1805         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1806         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1807         (gst_pad_send_event):
1808           Fix accumulator, add default value by using _emitv() instead
1809           of _emit() for signal emission.
1810
1811 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1812
1813         * docs/manual/advanced-dataaccess.xml:
1814         * examples/manual/Makefile.am:
1815           Add probe example.
1816         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1817           Make work (??).
1818
1819 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1820
1821         * gst/elements/gstfilesink.c: (gst_filesink_render):
1822           Simplify code so that we don't have to handle short
1823           writes and return GST_FLOW_ERROR if an error occured.
1824
1825 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1826
1827         * docs/gst/gstreamer-docs.sgml:
1828           Remove probes more.
1829
1830 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1831
1832         * docs/gst/gstreamer-sections.txt:
1833         * docs/gst/tmpl/gstpad.sgml:
1834         * docs/gst/tmpl/gstprobe.sgml:
1835         * gst/Makefile.am:
1836         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1837         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1838         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1839         (gst_pad_push_event), (gst_pad_send_event):
1840         * gst/gstpad.h:
1841         * gst/gstutils.c: (gst_pad_add_data_probe),
1842         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1843         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1844         (gst_pad_remove_buffer_probe):
1845         * gst/gstutils.h:
1846           Remove old probes, add new g-signal-based probes and some utility
1847           functions.
1848
1849 2005-06-29  Edward Hervey  <edward@fluendo.com>
1850
1851         * gst/gstelementfactory.c:
1852         * gst/gstutils.h:
1853         * gst/gstutils.c:
1854         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1855         the definition to the header file.
1856
1857 2005-06-29  Andy Wingo  <wingo@pobox.com>
1858
1859         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1860         plugins from the source directory.
1861
1862 2005-06-29  Wim Taymans  <wim@fluendo.com>
1863
1864         * docs/gst/tmpl/gstbuffer.sgml:
1865         * docs/gst/tmpl/gstclock.sgml:
1866         Some fixings for blantently wrong text.
1867
1868 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1869
1870         * check/Makefile.am:
1871         * gst/gst.c: (add_path_func), (init_pre):
1872         * gst/gstregistry.c: (gst_registry_add_path):
1873           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1874           only scan the GST_PLUGIN_PATH locations, and not add
1875           system locations
1876
1877 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1878
1879         * docs/gst/gstreamer-sections.txt:
1880         * docs/gst/tmpl/gstbasesrc.sgml:
1881         * gst/gstelement.c:
1882         * gst/gstelement.h:
1883         * gst/gstevent.c:
1884         * gst/gstutils.c:
1885           doc fixes
1886
1887 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1888
1889         * docs/manual/advanced-autoplugging.xml:
1890           Fix autoplugging example.
1891
1892 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1893
1894         * docs/manual/advanced-autoplugging.xml:
1895         * docs/manual/mime-world.fig:
1896           Try to get autoplugging working, fix type detection. Fix text
1897           in hello-world image.
1898
1899 2005-06-29  Wim Taymans  <wim@fluendo.com>
1900
1901         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1902         (gst_base_sink_change_state):
1903         Small debug line.
1904
1905         * gst/gstclock.h:
1906         map SIGNAL and BROADCAST to the right function.
1907
1908         * gst/gstobject.h:
1909         Remove redundant braces.
1910
1911         * gst/gstpad.c: (gst_pad_set_caps):
1912         Don't call setcaps function when reseting caps to NULL.
1913
1914         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1915         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1916         (gst_system_clock_id_unschedule):
1917         Use BROADCAST as this is what we do.
1918
1919 2005-06-29  Wim Taymans  <wim@fluendo.com>
1920
1921         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1922         We are actually prerolling before commiting the state
1923         change. 
1924
1925 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1926
1927         * docs/manual/advanced-clocks.xml:
1928         * docs/manual/advanced-interfaces.xml:
1929         * docs/manual/advanced-metadata.xml:
1930         * docs/manual/advanced-position.xml:
1931         * docs/manual/advanced-schedulers.xml:
1932         * docs/manual/advanced-threads.xml:
1933         * docs/manual/appendix-porting.xml:
1934         * docs/manual/basics-bins.xml:
1935         * docs/manual/basics-bus.xml:
1936         * docs/manual/basics-elements.xml:
1937         * docs/manual/basics-helloworld.xml:
1938         * docs/manual/basics-pads.xml:
1939         * docs/manual/highlevel-components.xml:
1940         * docs/manual/manual.xml:
1941         * docs/manual/thread.fig:
1942           Update (until threads/scheduling) Application Development Manual;
1943           remove GstThread, add GstBus, add simple porting checklist, add
1944           documentation for tag writing, clocks, make all examples until this
1945           part compile and run.
1946         * examples/manual/Makefile.am:
1947           Update from changes to Application Development Manual; add bus
1948           example, remove thread example.
1949
1950 2005-06-28  Wim Taymans  <wim@fluendo.com>
1951
1952         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1953         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1954         (gst_bus_source_dispatch):
1955         Add debugging messages.
1956         Make internal methods static.
1957         Handle the case where the bus is flushed in the handler.
1958         
1959         * gst/gstelement.c: (gst_element_get_bus):
1960         Fix refcount in _get_bus();
1961
1962         * gst/gstpipeline.c: (gst_pipeline_change_state),
1963         (gst_pipeline_get_clock_func):
1964         Clock refcounting fixes.
1965         Handle the case where preroll timed out more gracefully.
1966         
1967         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1968         Clean up the internal thread in dispose. This is needed
1969         for subclasses that actually get disposed.
1970         
1971         * gst/schedulers/threadscheduler.c:
1972         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1973         (gst_thread_scheduler_dispose):
1974         Free thread pool in dispose.
1975
1976 2005-06-28  Andy Wingo  <wingo@pobox.com>
1977
1978         * tests/network-clock-utils.scm (debug, print-event): New utils.
1979
1980         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1981         (*packet-loss*): Unified loss probability.
1982         (network-time): Report out-of-band events.
1983
1984         * tests/plot-data: Add support for out-of-band events. Hack it
1985         into this script instead of passing it down the pipe; should fix
1986         this later.
1987
1988 2005-06-28  Wim Taymans  <wim@fluendo.com>
1989
1990         * docs/gst/gstreamer.types:
1991         * docs/gst/tmpl/gstbasesrc.sgml:
1992         * docs/gst/tmpl/gstpad.sgml:
1993         Docs fixes.
1994
1995 2005-06-28  Wim Taymans  <wim@fluendo.com>
1996
1997         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1998         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1999         (gst_proxy_pad_do_fixatecaps):
2000         Correctly proxy the check_pull_range function.
2001
2002 2005-06-28  Andy Wingo  <wingo@pobox.com>
2003
2004         * tests/network-clock.scm: Removed need for slib.
2005         
2006 2005-06-28  Wim Taymans  <wim@fluendo.com>
2007
2008         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2009         (gst_basesink_preroll_queue_flush):
2010         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2011         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2012         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2013         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2014         (gst_proxy_pad_set_property):
2015         * gst/gstpad.c:
2016         * gst/gstpad.h:
2017         * gst/gstqueue.c: (gst_queue_init):
2018         The deprecated pad loop function is removed now.
2019
2020 2005-06-28  Andy Wingo  <wingo@pobox.com>
2021
2022         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2023         New parameters, simulate network packet loss.
2024
2025         * tests/network-clock-utils.scm: Initialize the RNG.
2026
2027 2005-06-28  Wim Taymans  <wim@fluendo.com>
2028
2029         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2030         (gst_basesink_event), (gst_basesink_deactivate):
2031         Flushing the preroll queue always needs to unlock the waiters.
2032
2033 2005-06-28  Edward Hervey  <edward@fluendo.com>
2034
2035         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2036         Wheen a seek was successful on a pipeline, set the stream_time to the
2037         seek offset in order to have a synchronized stream_time.
2038
2039 2005-06-28  Wim Taymans  <wim@fluendo.com>
2040
2041         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2042         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2043         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2044         (gst_proxy_pad_do_fixatecaps):
2045         Call wrapper function instead of just calling the function
2046         pointers. This takes care of any locking and whatmore.
2047
2048 2005-06-28  Wim Taymans  <wim@fluendo.com>
2049
2050         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2051         (gst_pad_pull_range):
2052         * gst/gstpad.h:
2053         CONNECTED -> LINKED.
2054
2055 2005-06-28  Andy Wingo  <wingo@pobox.com>
2056
2057         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2058         source-munging commit!!!
2059
2060         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2061         (gst_object_sink): Take gpointer arguments, not GstObject --
2062         avoids casts. Like GLib.
2063
2064         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2065         activate.
2066
2067 2005-06-27  Andy Wingo  <wingo@pobox.com>
2068
2069         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2070         remaining buffer.
2071
2072         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2073         returns a sorted copy of the trace list.
2074         (gst_alloc_trace_print_live): New API, only prints traces with
2075         live objects. Sort the list.
2076         (gst_alloc_trace_print_all): Sort the list.
2077         (gst_alloc_trace_print): Align columns.
2078
2079         * gst/elements/gstttypefindelement.c:
2080         * gst/elements/gsttee.c:
2081         * gst/base/gstbasesrc.c:
2082         * gst/base/gstbasesink.c:
2083         * gst/base/gstbasetransform.c:
2084         * gst/gstqueue.c: Adapt for pad activation changes.
2085
2086         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2087         sched.
2088         (gst_pipeline_dispose): Drop ref on sched.
2089
2090         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2091         (gst_pad_activate_default): Push mode by default.
2092         (pre_activate_switch, post_activate_switch): New stubs, things to
2093         do before and after switching activation modes on pads.
2094         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2095         the pad's activate function to choose which mode to activate.
2096         Shortcut on deactivation and call the right function directly.
2097         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2098         mode.
2099         (gst_pad_activate_push): New API, same for push mode.
2100         (gst_pad_set_activate_function) 
2101         (gst_pad_set_activatepull_function) 
2102         (gst_pad_set_activatepush_function): Setters for new API.
2103
2104         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2105         Trace all miniobjects.
2106         (gst_mini_object_make_writable): Unref the arg if we copy, like
2107         gst_caps_make_writable.
2108
2109         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2110
2111         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2112         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2113         Adapt for new pad API.
2114
2115         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2116
2117         * gst/gstelement.h:
2118         * gst/gstelement.c (gst_element_iterate_src_pads) 
2119         (gst_element_iterate_sink_pads): New API functions.
2120         
2121         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2122         should fold into gstiterator.c in some form.
2123         (gst_element_pads_activate): Simplified via use of fold and
2124         delegation of decisions to gstpad->activate.
2125
2126         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2127         help in debugging.
2128
2129         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2130         class once in init, like gstmessage. Didn't run into this issue
2131         but it seems correct. Don't initialize a trace, gstminiobject does
2132         that.
2133
2134         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2135         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2136         to the bus.
2137         (assert_live_count): New util function, uses alloc traces to check
2138         cleanup.
2139
2140         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2141         To be modified when unlink drops the internal pad.
2142
2143 2005-06-27  Wim Taymans  <wim@fluendo.com>
2144
2145         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2146         (gst_bin_change_state):
2147         Cleanup the get_state() function a little, make sure it
2148         iterates the same set of elements.
2149         Added stub iterate_state_order().
2150
2151 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2152
2153         * docs/gst/gstreamer-docs.sgml:
2154         * docs/gst/gstreamer-sections.txt:
2155         * docs/gst/gstreamer.types:
2156         * docs/gst/tmpl/gstbasesink.sgml:
2157         * docs/gst/tmpl/gstbasesrc.sgml:
2158         * docs/gst/tmpl/gstbasetransform.sgml:
2159         * docs/gst/tmpl/gstelement.sgml:
2160         * docs/gst/tmpl/gstiterator.sgml:
2161         * gst/base/gstbasesrc.c:
2162         * gst/base/gstbasesrc.h:
2163         * gst/base/gstbasetransform.h:
2164         * gst/gstelement.c:
2165         * gst/gstiterator.h:
2166           adding basetransform and iterator docs
2167
2168 2005-06-27  Andy Wingo  <wingo@pobox.com>
2169
2170         * docs/design/part-activation.txt: Notes on how activation should
2171         work -- not quite implemented yet.
2172
2173 2005-06-25  Wim Taymans  <wim@fluendo.com>
2174
2175         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2176         At least get the chain function correct, needs more
2177         fixing.
2178
2179 2005-06-25  Wim Taymans  <wim@fluendo.com>
2180
2181         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2182         (gst_basesink_handle_object), (gst_basesink_event),
2183         (gst_basesink_do_sync), (gst_basesink_handle_event),
2184         (gst_basesink_change_state):
2185         * gst/gsttask.h:
2186         Right, two problems here: ghostpads don't take locks and
2187         glib _rec_mutex_lock_full() with depth==0 still locks.
2188         Catch illegal locking and g_warn them.
2189
2190 2005-06-25  Wim Taymans  <wim@fluendo.com>
2191
2192         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2193         Have to check for completion now...
2194
2195 2005-06-25  Wim Taymans  <wim@fluendo.com>
2196
2197         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2198         (gst_basesink_handle_object), (gst_basesink_event),
2199         (gst_basesink_do_sync), (gst_basesink_handle_event),
2200         (gst_basesink_change_state):
2201         * gst/gstpad.h:
2202         Unlock STREAM_LOCK whatever the recursion was.
2203
2204 2005-06-25  Wim Taymans  <wim@fluendo.com>
2205
2206         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2207         (gst_basesink_preroll_queue_empty),
2208         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2209         (gst_basesink_event), (gst_basesink_do_sync),
2210         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2211         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2212         (gst_basesink_change_state):
2213         Reworked the base sink, handle event and buffer serialisation
2214         correctly and removed possible deadlock.
2215         Handle EOS correctly.
2216
2217 2005-06-25  Wim Taymans  <wim@fluendo.com>
2218
2219         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2220         (gst_pipeline_change_state):
2221         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2222         Allow elements to post EOS in the state change function.
2223         Fix up -launch, make it exit the poll loop when the
2224         pipeline actually changed state.
2225         Fix up warning parsing in -launch.
2226
2227 2005-06-25  Wim Taymans  <wim@fluendo.com>
2228
2229         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2230         (gst_tee_sink_activate):
2231         Core takes STREAM_LOCK for us now.
2232
2233 2005-06-25  Wim Taymans  <wim@fluendo.com>
2234
2235         * gst/gstelement.c: (gst_element_get_state_func),
2236         (gst_element_set_state):
2237         * gst/gstelement.h:
2238         * gst/gstmessage.c: (gst_message_parse_error),
2239         (gst_message_parse_warning):
2240         Keep track of current target state while performing a state
2241         change so that subclasses can do something interesting.
2242         Fix parsing of warning/error messages when GError is NULL.
2243
2244 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2245
2246         * docs/gst/Makefile.am:
2247         * docs/gst/gstreamer-docs.sgml:
2248         * docs/gst/gstreamer-sections.txt:
2249         * docs/gst/gstreamer.types:
2250         * docs/gst/tmpl/gstbasesink.sgml:
2251         * docs/gst/tmpl/gstbasesrc.sgml:
2252         * docs/gst/tmpl/gstbin.sgml:
2253         * docs/gst/tmpl/gstcompat.sgml:
2254         * docs/gst/tmpl/gstfakesink.sgml:
2255         * docs/gst/tmpl/gstfakesrc.sgml:
2256         * docs/gst/tmpl/gstfilesink.sgml:
2257         * docs/gst/tmpl/gstfilesrc.sgml:
2258         * docs/gst/tmpl/gstindex.sgml:
2259         * docs/manual/appendix-quotes.xml:
2260         * gst/base/gstbasesrc.h:
2261         * gst/elements/gstfakesrc.h:
2262         * gst/gstmessage.h:
2263           start pulling in base classes and elements in our docs
2264
2265 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2266
2267         * docs/gst/Makefile.am:
2268         * docs/libs/Makefile.am:
2269           fixed make distcheck with gtk-doc 1.3
2270
2271 2005-06-23  Wim Taymans  <wim@fluendo.com>
2272
2273         * gst/gstelement.c: (gst_element_get_state_func),
2274         (gst_element_set_state), (gst_element_change_state):
2275         When the state did not change, also report NO_PREROLL
2276         when it matters.
2277
2278 2005-06-23  Wim Taymans  <wim@fluendo.com>
2279
2280         * gst/gstpad.c: (gst_pad_event_default):
2281         * gst/gstqueue.c: (gst_queue_loop):
2282         No unsafe task pausing please.
2283
2284 2005-06-23  Wim Taymans  <wim@fluendo.com>
2285
2286         * gst/schedulers/threadscheduler.c:
2287         (gst_thread_scheduler_task_start),
2288         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2289         Ref the task before pushing it on the threadpool. This
2290         makes sure that we have a ref when the threadfunction is
2291         actually called.
2292
2293 2005-06-23  Andy Wingo  <wingo@pobox.com>
2294
2295         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2296         offset is greater than the file's size.
2297
2298         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2299         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2300         * gst/gstobject.c (gst_object_class_init): Make the class lock
2301         recursive. Wim won't let me drop deep_notify. Decodebin works
2302         again, whoopdy doo.
2303
2304         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2305         internal pad, and hacks accordingly. Doesn't do it on the target
2306         pad because we change its caps. Probably catches all cases of
2307         interest tho.
2308         (gst_ghost_pad_set_property): Connect to notify::caps as
2309         appropritate.
2310
2311         * tests/network-clock.scm (plot-simulation): Pipe data to the
2312         elite python skript.
2313
2314         * tests/network-clock-utils.scm (define-parameter): New macro,
2315         defines a parameter that can be set via the command line.
2316         (set-parameter!, parse-parameter-arguments): Command line args
2317         parser.
2318
2319         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2320         stdin.
2321
2322 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2323
2324         * gst/elements/gsttypefindelement.c:
2325         (gst_type_find_element_handle_event):
2326           Don't restart typefinding on a discont.
2327         * gst/gstelement.c: (gst_element_set_state):
2328           Debug spelling fix.
2329         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2330           Allow changing mode of an active pad.
2331           Debug output fixes.
2332         * gst/registries/gstlibxmlregistry.c: (load_feature):
2333           Don't cast a static pad template to a normal pad template.
2334
2335 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2336
2337         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2338         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2339           remove gst_strtoll completely, since it didn't actually do
2340           anything more than what g_ascii_strtoull already does.
2341           check for range errors when deserializing
2342           do a cast for the unsigned cases; but further fixing needs
2343           a decision on what the interpretation of "(int)" and
2344           deserialization should be for values that fall outside the
2345           type's boundaries (ie, refuse, or interpret as casting)
2346
2347 2005-06-23  Wim Taymans  <wim@fluendo.com>
2348
2349         * check/Makefile.am:
2350         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2351         * docs/design/part-live-source.txt:
2352         * docs/design/part-states.txt:
2353         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2354         (gst_basesrc_set_live), (gst_basesrc_is_live),
2355         (gst_basesrc_get_range), (gst_basesrc_activate),
2356         (gst_basesrc_change_state):
2357         * gst/base/gstbasesrc.h:
2358         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2359         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2360         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2361         * gst/gstelement.c: (gst_element_get_state_func),
2362         (gst_element_set_state):
2363         * gst/gstelement.h:
2364         * gst/gsttypes.h:
2365         * tools/gst-launch.c: (event_loop), (main):
2366         Added support for live sources and other elements that
2367         cannot do preroll.
2368         Updated design docs, added live-source design doc.
2369         Implemented live source functionality in basesrc
2370         Fix error condition in _bin_get_state()
2371         Implement live source handling in -launch.
2372         Added check for live sources.
2373         Fixed case in GstBin where elements were changed state
2374         multiple times.
2375
2376
2377 2005-06-23  Andy Wingo  <wingo@pobox.com>
2378
2379         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2380         borken refcounting.
2381
2382         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2383         gst_caps_replace takes care of this for us.
2384
2385         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2386         gst_pad_set_caps on the target, not just its setcaps() function.
2387
2388         * tests/network-clock.scm: 
2389         * tests/network-clock-utils.scm: A network clock simulator.
2390         Something of an algorithmic testbed before doing something in C.
2391
2392 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2393
2394         * check/Makefile.am:
2395         * check/gst/capslist.h:
2396           copy over from 0.8, and add two with bitmasks specified with
2397           (int) 0xFF...
2398         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2399           add test to parse everything from capslist.h
2400         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2401         (main):
2402           add test for structure deserialization
2403         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2404           add tests for deserialization of strings to int types
2405         * gst/gststructure.c: (gst_structure_nth_field_name):
2406         * gst/gststructure.h:
2407           add a way to get the name of a field referenced by index
2408         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2409           instead of checking if the resulting long long lies between
2410           min and max, we check if the long long would fit into
2411           a number of bytes for the final type.
2412           This fixes cases where a string represents 2^32 - 1, which
2413           when cast to int would be the (valid) -1, but is bigger than
2414           G_MAXINT
2415
2416 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2417
2418         * gst/parse/grammar.y:
2419           add a log line for type deserialization
2420
2421 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2422
2423         * check/gst/gstvalue.c: (START_TEST):
2424         * gst/gstvalue.c: (gst_value_deserialize):
2425           return long long, not int, so gint64 deserialization actually
2426           works.  Is there any flag that makes the compiler check this ?
2427           Fixes #308559
2428
2429 2005-06-22  Wim Taymans  <wim@fluendo.com>
2430
2431         * gst/gstbuffer.h:
2432         Added convenience macros for setting buffers in GValue.
2433
2434 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2435
2436         * check/gst/.cvsignore:
2437         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2438           add a test deserializing int64, and comment part out because
2439           it fails, yay !
2440
2441 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2442
2443         * check/Makefile.am:
2444         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2445         * testsuite/Makefile.am:
2446         * testsuite/caps/Makefile.am:
2447         * testsuite/caps/value_serialize.c:
2448         * testsuite/test_gst_init.c:
2449           move a value_serialize test over
2450
2451 2005-06-20  Wim Taymans  <wim@fluendo.com>
2452
2453         * gst/gstpad.c:
2454         Small doc updates.
2455         
2456         * gst/gstvalue.c: (gst_value_compare_buffer),
2457         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2458         (gst_value_compare_flags), (gst_value_serialize_flags),
2459         (gst_value_deserialize_flags), (_gst_value_initialize):
2460         Fix serialisation of buffers, they are not boxed types anymore
2461
2462 2005-06-20  Wim Taymans  <wim@fluendo.com>
2463
2464         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2465         Testcase to show error in buffer-on-caps serialisation.
2466
2467 2005-06-20  Andy Wingo  <wingo@pobox.com>
2468
2469         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2470         will be adding to later.
2471
2472         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2473         if its socks fill with rocks.
2474         (gst_system_clock_obtain): Set the name on object construction.
2475         Avoid double-checked locking.
2476
2477 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2478
2479         * gst/gsturi.c: (gst_element_make_from_uri):
2480           Fix potential endless loop.
2481
2482 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2483
2484         * check/Makefile.am:
2485           add gsttag
2486         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2487         (main):
2488           move over from testsuite dir and clean up
2489         * configure.ac:
2490         * gst/gsttag.c:
2491         * testsuite/Makefile.am:
2492         * testsuite/tags/.cvsignore:
2493         * testsuite/tags/Makefile.am:
2494         * testsuite/tags/merge.c:
2495           remove testsuite/tags
2496
2497 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2498
2499         * docs/gst/gstreamer-sections.txt:
2500         * docs/gst/tmpl/gstenumtypes.sgml:
2501         * win32/gstenumtypes.c:
2502           clean up documentation build a little
2503
2504 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2505
2506         * check/gstcheck.h:
2507           add macros for checking refcounts on objects and caps
2508         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2509           add some more unit tests
2510         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2511         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2512           fix leaked refcounts (I hope :)) so unittest works
2513         * gst/gstpad.h:
2514           whitespace removal
2515
2516 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2517
2518         * configure.ac: back to HEAD
2519
2520 === release 0.9.1 ===
2521
2522 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2523
2524         * NEWS:
2525         * RELEASE:
2526           updated
2527
2528 2005-06-17  Andy Wingo  <wingo@pobox.com>
2529
2530         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2531         assert; it's always possible that the pad gets deactivated in
2532         between the checks in gstpad.c and the implementation. Rely on
2533         finish_preroll() to return a FLUSHING or similar instead of on the
2534         assert.
2535         
2536         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2537         clock and post an EOS message if we come out of finish_preroll in
2538         the playing state.
2539
2540 2005-06-16  David Schleef  <ds@schleef.org>
2541
2542         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2543         (gst_capsfilter_set_property): Allow NULL as possible value
2544         for filter_caps property, indicating GST_CAPS_ANY.
2545
2546 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2547
2548         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2549           fix debug output
2550         * gst/schedulers/Makefile.am:
2551           use libgst prefix
2552         * gstreamer.spec.in:
2553           fix spec for it
2554
2555 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2556
2557         * gstreamer.spec.in:
2558           clean up
2559
2560 2005-06-08  Andy Wingo  <wingo@pobox.com>
2561
2562         * gst/gstutils.c: RPAD fixes all around.
2563         (gst_element_link_pads): Refcounting fixes.
2564
2565         * tools/gst-inspect.c:
2566         * tools/gst-xmlinspect.c:
2567         * parse/grammar.y:
2568         * gst/base/gsttypefindhelper.c:
2569         * gst/base/gstbasesink.c:
2570         * gst/gstqueue.c: RPAD fixes.
2571
2572         * gst/gstghostpad.h:
2573         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2574         pads. The tricky thing is they provide both source and sink
2575         interfaces, since they proxy the internal pad for the external
2576         pad, and vice versa. Implement with lower-level ProxyPad objects,
2577         with the interior proxy pad as a child of the exterior ghost pad.
2578         Should write a doc on this.
2579         
2580         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2581         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2582         gst_object API.
2583         
2584         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2585         pads are real pads. No ghost pads in this file. Not documenting
2586         the myriad s/RPAD/PAD/ and REALIZE fixes.
2587         (gst_pad_class_init): Add properties for "direction" and
2588         "template". Both are construct-only, so they can't change during
2589         the life of the pad. Fixes properly deriving from GstPad.
2590         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2591         derived objects, just set properties when creating the objects via
2592         g_object_new.
2593         (gst_pad_get_parent): Implement as a function, return NULL if the
2594         parent is not an element.
2595         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2596         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2597         
2598         * gst/gstobject.c (gst_object_class_init): Make name a construct
2599         property. Don't set it in the object init.
2600
2601         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2602         with UNKNOWN direction.
2603         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2604         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2605         (gst_element_remove_pad): Remove ghost-pad special cases.
2606         (gst_element_pads_activate): Remove rpad cruft.
2607
2608         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2609         catch the pad's-parent-not-an-element case.
2610
2611         * gst/gst.h: Include gstghostpad.h.
2612
2613         * gst/gst.c (init_post): No more real, ghost pads.
2614
2615         * gst/Makefile.am: Add gstghostpad.[ch].
2616
2617         * check/Makefile.am:
2618         * check/gst/gstbin.c:
2619         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2620         into a bin creates ghost pads, and that the refcounts are right.
2621         Partly moved from gstbin.c.
2622
2623 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2624
2625         * check/gst-libs/.cvsignore:
2626         * check/gst/.cvsignore:
2627         * check/pipelines/.cvsignore:
2628           ignore more
2629         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2630         (START_TEST), (cleanup_suite), (main):
2631           add some tests related to cleanup after running pipelines
2632
2633 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2634
2635         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2636           add a testsuite for GstBuffer
2637
2638 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2639
2640         * gst/gstminiobject.h:
2641           add defines for accessing the refcount
2642
2643 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2644
2645         * Makefile.am: added support for html unit test coverage reports
2646
2647 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2648
2649         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2650           Free existing caps if the capsfilter changes. Add a FIXME about
2651           setting those caps on the pads.
2652
2653         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2654           Before adding a ghost pad to a parent bin, check that there isn't
2655           already one for the element on the bin. Prevents infinite recursion
2656           when using decodebin in parse pipelines. Andy says he'll rewrite the
2657           way this works anyway, so ignore the hack.
2658
2659 2005-06-02  Andy Wingo  <wingo@pobox.com>
2660
2661         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2662         file size, pass it on to the type find helper.
2663
2664         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2665         segment_start and segment_end properly according to the seek
2666         method. Segment_end is still a bit flaky because offset can be
2667         negative for CUR and END cases, but it takes -1 as an "unset"
2668         value.
2669
2670 2005-06-02  Wim Taymans  <wim@fluendo.com>
2671
2672         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2673         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2674         (gst_basesink_activate):
2675         * gst/base/gstbasesink.h:
2676         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2677         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2678         (gst_pad_query), (gst_pad_start_task):
2679         * gst/gstpad.h:
2680         * gst/gstqueue.c: (gst_queue_bufferalloc),
2681         (gst_queue_handle_sink_event), (gst_queue_chain):
2682         Bufferalloc: return GstFlowReturn to more accuratly report
2683         why allocation failed.
2684
2685 2005-06-02  Wim Taymans  <wim@fluendo.com>
2686
2687         * gst/gstpipeline.c: (gst_pipeline_send_event):
2688         Take snapshot of state without blocking.
2689
2690 2005-06-02  Wim Taymans  <wim@fluendo.com>
2691
2692         * docs/design/part-TODO.txt:
2693         * docs/design/part-caps.txt:
2694         * docs/design/part-clocks.txt:
2695         * docs/design/part-negotiation.txt:
2696         * docs/design/part-preroll.txt:
2697         Small doc updates 
2698
2699 2005-05-30  Wim Taymans  <wim@fluendo.com>
2700
2701         * gst/elements/gstidentity.c: (gst_identity_event),
2702         (gst_identity_transform), (gst_identity_get_property):
2703         Protect last_message property as it is accessed from
2704         multiple threads.
2705
2706 2005-05-30  Wim Taymans  <wim@fluendo.com>
2707
2708         * gst/gstelement.c: (gst_element_init),
2709         (gst_element_pads_activate), (gst_element_change_state):
2710         Slicker pad activation code.
2711
2712 2005-05-30  Wim Taymans  <wim@fluendo.com>
2713
2714         * gst/Makefile.am:
2715         * gst/gstelement.h:
2716         * gst/gstelementfactory.h:
2717         * gst/gsttypes.h:
2718         Move elementfactory methods to separate .h file.
2719
2720 2005-05-30  Wim Taymans  <wim@fluendo.com>
2721
2722         * docs/design/part-overview.txt:
2723         * gst/gstsystemclock.h:
2724         Small typo fixes, doc updates.
2725
2726 2005-05-30  Wim Taymans  <wim@fluendo.com>
2727
2728         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2729         (init_popt_callback):
2730         Remove cpu-opt flag.
2731
2732 2005-05-30  Wim Taymans  <wim@fluendo.com>
2733
2734         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2735         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2736         * gst/gstbuffer.h:
2737         Avoid typechecking in places where not needed.
2738         Added accessor for malloc_data.
2739
2740 2005-05-30  Wim Taymans  <wim@fluendo.com>
2741
2742         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2743         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2744         (gst_pad_configure_sink), (gst_pad_configure_src),
2745         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2746         (gst_pad_start_task):
2747         Propagate errors from _set_caps() in configure_src/sink
2748         functions instead of returning TRUE.
2749         FLUSH events can travel up and downstream
2750
2751
2752 2005-05-30  Wim Taymans  <wim@fluendo.com>
2753
2754         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2755         (gst_basesink_activate):
2756         Handle EOS in preroll.
2757
2758 2005-05-30  Wim Taymans  <wim@fluendo.com>
2759
2760         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2761         (gst_queue_loop), (gst_queue_handle_src_event):
2762         Remove old pieces of code
2763         Flushing the queue in an upstream event is a very bad idea.
2764
2765 2005-05-26  Andy Wingo  <wingo@pobox.com>
2766
2767         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2768         gst_value_set_mini_object so as to add a ref on the object (which
2769         will be removed when the value is unset).
2770
2771         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2772         arg type in ::handoff.
2773
2774         * gst/gstelement.c (gst_element_change_state): Also deactivate
2775         pads in READY->NULL, just in case the element didn't make it to
2776         PAUSED. Wingo tested, Wim approved.
2777
2778 2005-05-26  Wim Taymans  <wim@fluendo.com>
2779
2780         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2781         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2782         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2783         A flushing pad cannot be used to alloc_buffer from.
2784
2785 2005-05-26  Wim Taymans  <wim@fluendo.com>
2786
2787         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2788         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2789         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2790         (gst_bus_create_watch), (gst_bus_add_watch_full):
2791         * gst/gstbus.h:
2792         Implement a real GSource and use g_main_context_wakeup() to
2793         signal new messages instead of the socketpair.
2794
2795 2005-05-25  Wim Taymans  <wim@fluendo.com>
2796
2797         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2798         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2799         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2800         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2801         (gst_pad_send_event), (gst_pad_start_task):
2802         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2803         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2804         (gst_queue_sink_activate), (gst_queue_src_activate),
2805         (gst_queue_change_state):
2806         * gst/gstqueue.h:
2807         Fix state changes for non sinks. We now change sinks, then elements
2808         with unconnected srcpads, then the rest.
2809         More efficient queue unlocking in flush and state changes.
2810         Set the pad activate mode even if it does not have an activate
2811         function.
2812
2813 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2814
2815         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2816           Don't go in pull mode for non-seekable sources.
2817         * gst/elements/gsttypefindelement.h:
2818         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2819         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2820         (free_entry), (stop_typefinding),
2821         (gst_type_find_element_handle_event), (find_peek),
2822         (gst_type_find_element_chain), (do_pull_typefind),
2823         (gst_type_find_element_change_state):
2824           Allow typefinding (w/o seeking) in push-mode, simplified version
2825           of what was in 0.8.
2826         * gst/gstutils.c: (gst_buffer_join):
2827         * gst/gstutils.h:
2828           gst_buffer_join() from 0.8.
2829
2830 2005-05-25  Wim Taymans  <wim@fluendo.com>
2831
2832         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2833         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2834         (gst_pad_send_event), (gst_pad_start_task):
2835         Disable attempt at mode switching until it is figured out.
2836
2837 2005-05-25  Wim Taymans  <wim@fluendo.com>
2838
2839         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2840         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2841         (gst_basesink_finish_preroll), (gst_basesink_chain),
2842         (gst_basesink_loop), (gst_basesink_activate),
2843         (gst_basesink_change_state):
2844         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2845         (gst_basesrc_get_range), (gst_basesrc_loop),
2846         (gst_basesrc_activate):
2847         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2848         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2849         (gst_real_pad_init), (gst_real_pad_set_property),
2850         (gst_real_pad_get_property), (gst_pad_set_active),
2851         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2852         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2853         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2854         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2855         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2856         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2857         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2858         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2859         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2860         (gst_pad_stop_task):
2861         * gst/gstpad.h:
2862         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2863         (gst_queue_loop), (gst_queue_src_activate):
2864         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2865         (gst_task_get_state):
2866         * gst/gsttask.h:
2867         * gst/schedulers/threadscheduler.c:
2868         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2869         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2870         in task function.
2871         Remove ACTIVE pad flag, use FLUSHING everywhere
2872         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2873         functions.
2874         Add locks around IS_FLUSHING when reading.
2875         Take STREAM lock in chain(), get_range() functions so plugins
2876         don't need to take it anymore.
2877         
2878
2879
2880 2005-05-25  Wim Taymans  <wim@fluendo.com>
2881
2882         * tools/gst-launch.c: (event_loop):
2883         Unref message after using its contents instead of
2884         before.
2885
2886 2005-05-24  Wim Taymans  <wim@fluendo.com>
2887
2888         * docs/design/draft-ghostpads.txt:
2889         * docs/design/draft-push-pull.txt:
2890         * docs/design/draft-query.txt:
2891         * docs/design/part-overview.txt:
2892         Docs updates, added general overview doc.
2893
2894 2005-05-21  David Schleef  <ds@schleef.org>
2895
2896         * docs/gst/tmpl/old/GstBin.sgml:
2897         * docs/gst/tmpl/old/GstBuffer.sgml:
2898         * docs/gst/tmpl/old/GstCaps.sgml:
2899         * docs/gst/tmpl/old/GstClock.sgml:
2900         * docs/gst/tmpl/old/GstCompat.sgml:
2901         * docs/gst/tmpl/old/GstData.sgml:
2902         * docs/gst/tmpl/old/GstElement.sgml:
2903         * docs/gst/tmpl/old/GstEvent.sgml:
2904         * docs/gst/tmpl/old/GstIndex.sgml:
2905         * docs/gst/tmpl/old/GstStructure.sgml:
2906         * docs/gst/tmpl/old/GstTag.sgml:
2907         * docs/gst/tmpl/old/cothreads.sgml:
2908         * docs/gst/tmpl/old/cothreads_compat.sgml:
2909         * docs/gst/tmpl/old/gettext.sgml:
2910         * docs/gst/tmpl/old/gobject2gtk.sgml:
2911         * docs/gst/tmpl/old/grammar.tab.sgml:
2912         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2913         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2914         * docs/gst/tmpl/old/gst_private.sgml:
2915         * docs/gst/tmpl/old/gstaggregator.sgml:
2916         * docs/gst/tmpl/old/gstarch.sgml:
2917         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2918         * docs/gst/tmpl/old/gstbufferstore.sgml:
2919         * docs/gst/tmpl/old/gstdata_private.sgml:
2920         * docs/gst/tmpl/old/gstdisksink.sgml:
2921         * docs/gst/tmpl/old/gstdisksrc.sgml:
2922         * docs/gst/tmpl/old/gstelementfactory.sgml:
2923         * docs/gst/tmpl/old/gstextratypes.sgml:
2924         * docs/gst/tmpl/old/gstfakesink.sgml:
2925         * docs/gst/tmpl/old/gstfakesrc.sgml:
2926         * docs/gst/tmpl/old/gstfdsink.sgml:
2927         * docs/gst/tmpl/old/gstfdsrc.sgml:
2928         * docs/gst/tmpl/old/gstfilesink.sgml:
2929         * docs/gst/tmpl/old/gstfilesrc.sgml:
2930         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2931         * docs/gst/tmpl/old/gstidentity.sgml:
2932         * docs/gst/tmpl/old/gstindexfactory.sgml:
2933         * docs/gst/tmpl/old/gstmarshal.sgml:
2934         * docs/gst/tmpl/old/gstmd5sink.sgml:
2935         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2936         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2937         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2938         * docs/gst/tmpl/old/gstpipefilter.sgml:
2939         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2940         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2941         * docs/gst/tmpl/old/gstshaper.sgml:
2942         * docs/gst/tmpl/old/gstspider.sgml:
2943         * docs/gst/tmpl/old/gstspideridentity.sgml:
2944         * docs/gst/tmpl/old/gststatistics.sgml:
2945         * docs/gst/tmpl/old/gsttee.sgml:
2946         * docs/gst/tmpl/old/gsttimecache.sgml:
2947         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2948         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2949         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2950         * docs/gst/tmpl/old/types.sgml:
2951           I didn't intend to add these or check them in.
2952
2953 2005-05-19  David Schleef  <ds@schleef.org>
2954
2955         * configure.ac: Use -no-common everywhere.  In a sane world, it
2956           would be the default in libtool, because without it, you can't
2957           build DLLs on Windows.
2958         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2959         * docs/gst/gstreamer-sections.txt:
2960         * docs/gst/tmpl/gstcpu.sgml:
2961         * docs/gst/tmpl/gstdata.sgml:
2962         * docs/gst/tmpl/gstthread.sgml:
2963
2964 2005-05-19  David Schleef  <ds@schleef.org>
2965
2966         * gst/gstminiobject.c: (gst_value_set_mini_object),
2967         (gst_value_take_mini_object), (gst_value_get_mini_object):
2968         * gst/gstminiobject.h: Add GValue set/get functions.
2969
2970 2005-05-19  Wim Taymans  <wim@fluendo.com>
2971
2972         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2973         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2974         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2975         * gst/gstbuffer.h:
2976         * gst/gstbus.c: (gst_bus_post):
2977         * gst/gstelement.c: (gst_element_get_random_pad):
2978         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2979         Make subbufer unref the parent in finalize.
2980         some more debugging info.
2981
2982
2983 2005-05-19  Wim Taymans  <wim@fluendo.com>
2984
2985         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2986         (gst_basesink_init), (gst_basesink_finalize),
2987         (gst_basesink_activate), (gst_basesink_change_state):
2988         Don't free preroll queue too early.
2989
2990 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2991
2992         * gst/Makefile.am:
2993         * gst/ROADMAP:
2994           Hi, I'm outdated. Please shoot me.
2995
2996 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2997
2998         * gst/gstpipeline.c: (gst_pipeline_send_event):
2999           Do not access variables after they have been deleted.
3000
3001 2005-05-19  Wim Taymans  <wim@fluendo.com>
3002
3003         * tools/gst-inspect.c: (print_plugin_features):
3004         A plugin feature does unfortunatly not use the
3005         object name yet...
3006
3007 2005-05-18  Wim Taymans  <wim@fluendo.com>
3008
3009         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3010         Port _span() functions to new subbuffers.
3011
3012 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3013
3014         * gst/gstbin.c: (gst_bin_add_func):
3015           Fix clock settery in bins when adding kids after the clock has
3016           been selected.
3017
3018 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3019
3020         * gst/elements/gstidentity.c: (gst_identity_class_init):
3021           Workaround until signals support GstMiniObject.
3022
3023 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3024
3025         * gst/gstbuffer.c:
3026         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3027
3028 2005-05-18  Wim Taymans  <wim@fluendo.com>
3029
3030         * gst/base/Makefile.am:
3031         * gst/base/gstadapter.c: (gst_adapter_base_init),
3032         (gst_adapter_class_init), (gst_adapter_init),
3033         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3034         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3035         (gst_adapter_flush), (gst_adapter_available),
3036         (gst_adapter_available_fast):
3037         * gst/base/gstadapter.h:
3038         Ported and added adapter to the base classes.
3039
3040 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3041
3042         * gst/gst.c:
3043         * gst/gstmessage.c:
3044           Make sure the class is reffed/unreffed once before threads can be
3045           used.  Fixes #304551.
3046
3047 2005-05-17  Wim Taymans  <wim@fluendo.com>
3048
3049         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3050         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3051         * gst/gstminiobject.c: (gst_mini_object_get_type),
3052         (gst_mini_object_free):
3053         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3054         (gst_pad_push), (gst_pad_push_event):
3055         * gst/gstqueue.c: (gst_queue_change_state):
3056         Don't queue buffers in basesink when we are flushing.
3057         Unref buffer when flushing in basesink.
3058         Flush queue when going to READY
3059         Unref buffer when _push() returns an error.
3060         Don't free MiniObject instance when refcount is incremented
3061         in _finalize() so that we can recover objects.
3062
3063 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3064
3065         * docs/manual/advanced-schedulers.xml:
3066         * docs/manual/appendix-checklist.xml:
3067         * docs/pwg/advanced-clock.xml:
3068         * docs/pwg/advanced-interfaces.xml:
3069         * docs/pwg/advanced-request.xml:
3070         * docs/pwg/advanced-types.xml:
3071         * docs/pwg/intro-preface.xml:
3072         * examples/plugins/example.c: (gst_example_get_type),
3073         (gst_example_class_init), (gst_example_chain),
3074         (gst_example_set_property), (gst_example_get_property),
3075         (gst_example_change_state), (plugin_init):
3076         * examples/plugins/example.h:
3077           small doc fixes
3078
3079 2005-05-17  Wim Taymans  <wim@fluendo.com>
3080
3081         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3082         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3083         * gst/gstqueue.c: (gst_queue_change_state):
3084         Clear queue when going to READY.
3085         Remove IN_SETCAPS flag too.
3086
3087 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3088
3089         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3090           Remove implicit cast from gboolean to GstElementStateReturn;
3091           make sure we still return failure in paused => ready case if
3092           the parent class fails to change state and our own stop 
3093           vfunc succeeds.
3094
3095 2005-05-17  Wim Taymans  <wim@fluendo.com>
3096
3097         * tools/gst-launch.c: (event_loop):
3098         Message was unreffed too soon.
3099
3100 2005-05-16  Andy Wingo  <wingo@pobox.com>
3101
3102         * gst/gstbin.c (sink_iterator_filter): Err... um...
3103
3104         * check/gst/gstbin.c (test_ghost_pads): New test for the
3105         ghosting-if-elements-not-in-same-bin behavior.
3106
3107 2005-05-16  David Schleef  <ds@schleef.org>
3108
3109         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3110         accessing refcount directly.
3111
3112 2005-05-15  David Schleef  <ds@schleef.org>
3113
3114         * check/Makefile.am: remove GstData checks
3115         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3116         * gst/Makefile.am: add miniobject, remove data
3117         * gst/gst.h: add miniobject, remove data
3118         * gst/gstdata.c: remove
3119         * gst/gstdata.h: remove
3120         * gst/gstdata_private.h: remove
3121         * gst/gsttypes.h: remove GstEvent and GstMessage
3122         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3123         * gst/gstmarshal.list: change BOXED -> OBJECT
3124
3125         Implement GstMiniObject.
3126         * gst/gstminiobject.c:
3127         * gst/gstminiobject.h:
3128
3129         Modify to be subclasses of GstMiniObject.
3130         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3131         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3132         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3133         (gst_subbuffer_get_type), (gst_subbuffer_init),
3134         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3135         (gst_buffer_span):
3136         * gst/gstbuffer.h:
3137         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3138         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3139         (_gst_event_copy), (gst_event_new):
3140         * gst/gstevent.h:
3141         * gst/gstmessage.c: (_gst_message_initialize),
3142         (gst_message_get_type), (gst_message_class_init),
3143         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3144         (gst_message_new), (gst_message_new_error),
3145         (gst_message_new_warning), (gst_message_new_tag),
3146         (gst_message_new_state_changed), (gst_message_new_application):
3147         * gst/gstmessage.h:
3148         * gst/gstprobe.c: (gst_probe_perform),
3149         (gst_probe_dispatcher_dispatch):
3150         * gst/gstprobe.h:
3151         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3152         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3153         (_gst_query_copy), (gst_query_new):
3154
3155         Update elements for GstData -> GstMiniObject changes
3156         * gst/gstquery.h:
3157         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3158         (gst_queue_chain), (gst_queue_loop):
3159         * gst/elements/gstbufferstore.c:
3160         (gst_buffer_store_add_buffer_func),
3161         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3162         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3163         (gst_fakesink_render):
3164         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3165         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3166         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3167         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3168         (gst_filesrc_create_read):
3169         * gst/elements/gstidentity.c: (gst_identity_class_init):
3170         * gst/elements/gsttypefindelement.c:
3171         (gst_type_find_element_src_event), (free_entry_buffers),
3172         (gst_type_find_element_handle_event):
3173         * libs/gst/dataprotocol/dataprotocol.c:
3174         (gst_dp_header_from_buffer):
3175         * libs/gst/dataprotocol/dataprotocol.h:
3176         * libs/gst/dataprotocol/dp-private.h:
3177
3178 2005-05-15  David Schleef  <ds@schleef.org>
3179
3180         * gst/elements/gstelements.c: Don't include headers that were
3181         just removed.
3182
3183 2005-05-15  David Schleef  <ds@schleef.org>
3184
3185         * gst/elements/Makefile.am: Remove some elements that don't
3186         need to be in the core (or even exist at all).
3187         * gst/elements/gstaggregator.c:
3188         * gst/elements/gstaggregator.h:
3189         * gst/elements/gstmd5sink.c:
3190         * gst/elements/gstmd5sink.h:
3191         * gst/elements/gstmultifilesrc.c:
3192         * gst/elements/gstmultifilesrc.h:
3193         * gst/elements/gstpipefilter.c:
3194         * gst/elements/gstpipefilter.h:
3195         * gst/elements/gstshaper.c:
3196         * gst/elements/gstshaper.h:
3197         * gst/elements/gststatistics.c:
3198         * gst/elements/gststatistics.h:
3199         * po/POTFILES.in: Remove above files.
3200
3201 2005-05-14  Andy Wingo  <wingo@pobox.com>
3202
3203         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3204         so as to get the refs right.
3205         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3206         unreffing objects that don't pass the filter.
3207
3208         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3209         gst_element_set_bus.
3210         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3211         normal cases, this will destroy the bus.
3212
3213         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3214         object.
3215
3216         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3217         has no sinks.
3218
3219 2005-05-13  Andy Wingo  <wingo@pobox.com>
3220
3221         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3222         gst_pad_link, call pad_link_maybe_ghosting,
3223         (pad_link_maybe_ghosting): Links pads, making sure that the
3224         elements being linked are in the same bin.
3225         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3226         Helpers for pad_link_maybe_ghosting.
3227
3228 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3229
3230         * configure.ac:
3231           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3232
3233 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3234
3235         * docs/design/part-element-source.txt:
3236           Mention GstPushSrc
3237
3238 2005-05-12  Wim Taymans  <wim@fluendo.com>
3239
3240         * gst/base/gstbasesink.c: (gst_basesink_init),
3241         (gst_basesink_activate):
3242         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3243         (gst_basesrc_is_seekable):
3244         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3245         (bin_element_is_sink), (gst_bin_change_state):
3246         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3247         * gst/gstelement.h:
3248         Identify sinks by their flag to avoid overly complicated
3249         checks (fow now).
3250         Do state changes even for elements not reachable from the
3251         sinks.
3252         BaseSink is a sink now :)
3253         Some more debugging info in the basesrc.
3254
3255
3256 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3257
3258         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3259           Implement _query on a bin, similar to _send_event.
3260
3261 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3262
3263         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3264           Discont event offset format should be GST_FORMAT_BYTES,
3265           not GST_FORMAT_TIME.
3266
3267 2005-05-12  Wim Taymans  <wim@fluendo.com>
3268
3269         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3270         Same fix as Ronald's but without the signal. 
3271
3272 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3273
3274         * gst/gstutils.c: (gst_element_query_position):
3275           No, an element is not a pad.
3276
3277 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3278
3279         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3280         (gst_bin_get_state):
3281           If a child is removed from a bin while we remove the child from
3282           the bin and while we're retrieving its state, signal this to the
3283           get_state function so we abort the wait (instead of waiting for
3284           a timeout) and can immediately re-iterate over all other elements.
3285
3286 2005-05-12  Wim Taymans  <wim@fluendo.com>
3287
3288         * gst/base/Makefile.am:
3289         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3290         (gst_basesrc_start):
3291         * gst/base/gstbasesrc.h:
3292         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3293         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3294         (gst_pushsrc_init), (gst_pushsrc_create):
3295         * gst/base/gstpushsrc.h:
3296         Added is_seekable to BaseSrc
3297         Added simple PushSrc.
3298
3299 2005-05-11  Wim Taymans  <wim@fluendo.com>
3300
3301         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3302         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3303         (gst_element_link_pads), (gst_element_query_position),
3304         (gst_element_query_convert), (intersect_caps_func),
3305         (gst_pad_query_position), (gst_pad_query_convert):
3306         Fix refcounting in utils function.
3307         No point in trying to activate a pad when it's added, it could
3308         be added from the state change function and then we deadlock, the
3309         element has to decide what to do.
3310
3311 2005-05-10  Andy Wingo  <wingo@pobox.com>
3312
3313         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3314         *all* the arguments.
3315
3316         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3317         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3318         lock (according to the docs -- if this is wrong change the docs).
3319
3320         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3321         flush messages in the NULL state.
3322
3323         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3324         message immediately and return.
3325         (gst_bus_set_flushing): New function. If a bus is flushing, it
3326         flushes out any queued messages and immediately unrefs new
3327         messages. This is so when an element goes to NULL, all of the
3328         unhandled messages coming from it can be freed, and their
3329         references to the element dropped. In other words: message source
3330         ref considered harmful :P
3331
3332         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3333         we're finished with it.
3334
3335         * gst/gstmessage.c (gst_message_new_state_changed): 
3336
3337 2005-05-10  Wim Taymans  <wim@fluendo.com>
3338
3339         * gst/gstvalue.c: (gst_value_compare_flags),
3340         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3341         (_gst_value_initialize):
3342         Added flags serialize/deserialize/compare code.
3343
3344 2005-05-09  Andy Wingo  <wingo@pobox.com>
3345
3346         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3347         Intersect the peer's caps with our caps.
3348
3349 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3350
3351         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3352         * gst/elements/gsttypefindelement.c: (find_peek):
3353           Handle negative offsets better. Fixes decodebin.
3354
3355 2005-05-09  Wim Taymans  <wim@fluendo.com>
3356
3357         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3358         (gst_base_transform_event):
3359         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3360         Implement accept_caps.
3361         Fix silly lock/unlock mismatch in base class.
3362
3363 2005-05-09  Wim Taymans  <wim@fluendo.com>
3364
3365         * docs/design/draft-push-pull.txt:
3366         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3367         * gst/elements/gstfilesink.c: (gst_filesink_init),
3368         (gst_filesink_query):
3369         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3370         (gst_type_find_handle_src_query), (find_element_get_length):
3371         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3372         * gst/gstelement.h:
3373         * gst/gstmessage.c:
3374         * gst/gstmessage.h:
3375         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3376         (gst_real_pad_get_caps_unlocked),
3377         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3378         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3379         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3380         (gst_real_pad_dispose), (gst_real_pad_finalize),
3381         (gst_pad_load_and_link), (gst_pad_save_thyself),
3382         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3383         (gst_pad_check_pull_range), (gst_pad_pull_range),
3384         (gst_pad_template_get_type), (gst_pad_template_class_init),
3385         (gst_pad_template_init), (gst_pad_template_dispose),
3386         (name_is_valid), (gst_static_pad_template_get),
3387         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3388         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3389         (gst_pad_get_element_private), (gst_pad_start_task),
3390         (gst_pad_pause_task), (gst_pad_stop_task),
3391         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3392         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3393         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3394         (gst_ghost_pad_new):
3395         * gst/gstpad.h:
3396         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3397         (gst_query_new_position), (gst_query_set_position),
3398         (gst_query_parse_position), (gst_query_new_convert),
3399         (gst_query_set_convert), (gst_query_parse_convert):
3400         * gst/gstquery.h:
3401         * gst/gstqueryutils.c:
3402         * gst/gstqueryutils.h:
3403         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3404         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3405         (gst_queue_handle_src_query):
3406         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3407         (gst_element_query_position), (gst_element_query_convert),
3408         (intersect_caps_func), (gst_pad_query_position),
3409         (gst_pad_query_convert):
3410         * gst/gstutils.h:
3411         * tools/gst-inspect.c: (print_pad_info):
3412         * tools/gst-xmlinspect.c: (print_element_info):
3413         Remove old query functions. Ported old code.
3414         Added position/convert helper functions to gstutils.
3415         Reordered gstpad.c code, grouping relevant things.
3416         Remove gst_message_new(), always need to speficy a specific
3417         message.
3418
3419
3420 2005-05-09  Andy Wingo  <wingo@pobox.com>
3421
3422         * gst/gstiterator.h: Add some includes.
3423
3424         * gst/gstqueryutils.h: Include more headers.
3425
3426         * gst/gstpad.h:
3427         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3428         some uses of gst_pad_query.
3429
3430         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3431         NULL out parameters.
3432         (gst_query_new_position): New proc, allocates a new position
3433         query.
3434
3435         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3436         gstqueryutils.c to the build.
3437
3438         * gst/gststructure.c (gst_structure_set_valist): Implement with
3439         the generic G_VALUE_COLLECT.
3440         
3441 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3442
3443         * gst/Makefile.am: (gst_headers):
3444         Added gstqueryutils.h to the list of headers to install, that was
3445         a 'nachty' move wingo :)
3446
3447 2005-05-06  Andy Wingo  <wingo@pobox.com>
3448
3449         * gst/gstquery.h
3450         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3451         GstData, init a memchunk.
3452         (standard_definitions): Add a few query types, deprecate a few.
3453         (gst_query_get_type): New proc.
3454         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3455         implementation.
3456         (gst_query_new_application, gst_query_get_structure): New public
3457         procs.
3458
3459         * docs/design/draft-query.txt: Removed LINKS from the query types,
3460         because all the rest can be dispatched to other pads -- seemed
3461         ugly to have a query that couldn't be dispatched. internal_links
3462         is fine as a pad method.
3463
3464         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3465         in gstpad.c, but maintain binary compatibility for the moment.
3466         Will fix before 0.9 is out.
3467
3468         * gst/gstqueryutils.c: 
3469         * gst/gstqueryutils.h: New files, implement 3 methods for each
3470         query type: parse_query, parse_response, and set. Probably need an
3471         allocator as well.
3472
3473         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3474
3475         * gst/elements/gstfilesink.c (gst_filesink_query2):
3476         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3477         query_types, and formats methods.
3478
3479         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3480         (gst_pad_set_query2_function): New functions.
3481         (gst_real_pad_init): Set query2_default as the default query2
3482         function. Basically just dispatches to internally linked pads.
3483
3484         Needs review!
3485         
3486         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3487         without using the atomic operations. Only one thread can possibly
3488         be accessing the data at this point. Changed so as to avoid
3489         gst_atomic operations.
3490
3491 2005-05-06  Wim Taymans  <wim@fluendo.com>
3492
3493         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3494         Also set caps if we use the fallback buffer alloc.
3495
3496 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3497
3498         * docs/gst/Makefile.am:
3499         * docs/gst/gstreamer-docs.sgml:
3500         * docs/gst/gstreamer-sections.txt:
3501         * docs/gst/tmpl/gstatomic.sgml:
3502         * docs/gst/tmpl/gstmemchunk.sgml:
3503         * testsuite/elements/struct_i386.h:
3504         * win32/GStreamer.vcproj:
3505         * win32/Makefile:
3506           Purge GstAtomic stuff from docs and win32 makefiles as well
3507
3508 2005-05-06  Wim Taymans  <wim@fluendo.com>
3509
3510         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3511         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3512         * gst/gstpad.c: (gst_pad_peer_get_caps):
3513         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3514         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3515         (gst_queue_src_activate), (gst_queue_change_state):
3516         * gst/gstqueue.h:
3517         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3518         (intersect_caps_func):
3519         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3520         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3521         Some fixes for the peer_get_caps() change.
3522
3523 2005-05-06  Wim Taymans  <wim@fluendo.com>
3524
3525         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3526         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3527         (gst_basesink_activate):
3528         Actually do something with error codes returned from the push
3529         functions.
3530
3531 2005-05-06  Wim Taymans  <wim@fluendo.com>
3532
3533         * docs/design/part-element-sink.txt:
3534         * docs/design/part-element-source.txt:
3535         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3536         (gst_basesink_event), (gst_basesink_activate):
3537         * gst/base/gstbasesink.h:
3538         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3539         (gst_basesrc_activate):
3540         * gst/base/gstbasesrc.h:
3541         * gst/gstelement.c: (gst_element_pads_activate):
3542         Some more documentation.
3543         Fixed scheduling decision in _pads_activate().
3544
3545 2005-05-05  Andy Wingo  <wingo@pobox.com>
3546
3547         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3548         the test suite.
3549
3550 2005-05-05  Wim Taymans  <wim@fluendo.com>
3551
3552         * gst/base/Makefile.am:
3553         * gst/base/gstbasesink.h:
3554         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3555         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3556         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3557         (gst_collectpads_class_init), (gst_collectpads_init),
3558         (gst_collectpads_finalize), (gst_collectpads_new),
3559         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3560         (find_pad), (gst_collectpads_remove_pad),
3561         (gst_collectpads_is_active), (gst_collectpads_collect),
3562         (gst_collectpads_collect_range), (gst_collectpads_start),
3563         (gst_collectpads_stop), (gst_collectpads_peek),
3564         (gst_collectpads_pop), (gst_collectpads_available),
3565         (gst_collectpads_read), (gst_collectpads_flush),
3566         (gst_collectpads_chain):
3567         * gst/base/gstcollectpads.h:
3568         * gst/elements/Makefile.am:
3569         * gst/elements/gstelements.c:
3570         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3571         (gst_fakesink_get_times), (gst_fakesink_event),
3572         (gst_fakesink_preroll), (gst_fakesink_render):
3573         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3574         (gst_filesink_init), (gst_filesink_set_location),
3575         (gst_filesink_open_file), (gst_filesink_close_file),
3576         (gst_filesink_pad_query), (gst_filesink_event),
3577         (gst_filesink_render), (gst_filesink_change_state):
3578         * gst/elements/gstfilesink.h:
3579         Added object to help in making collect pad based elements.
3580         Ported filesink.
3581         Make event function in sink baseclass return gboolean.
3582
3583 2005-05-05  Wim Taymans  <wim@fluendo.com>
3584
3585         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3586         (gst_bin_get_by_name):
3587         * gst/gstbuffer.h:
3588         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3589         (gst_clock_finalize):
3590         * gst/gstdata.c: (gst_data_replace):
3591         * gst/gstdata.h:
3592         * gst/gstelement.c: (gst_element_request_pad),
3593         (gst_element_pads_activate):
3594         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3595         (gst_object_unref):
3596         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3597         (gst_pad_set_checkgetrange_function),
3598         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3599         (gst_pad_check_pull_range), (gst_pad_pull_range),
3600         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3601         (gst_pad_pause_task), (gst_pad_stop_task):
3602         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3603         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3604         Fix name lookup in GstBin.
3605         Added _data_replace() function and _buffer_replace()
3606         Use finalize method to clean up clock.
3607         Fix refcounting on request pads.
3608         Fix pad schedule mode error.
3609         Some more object refcounting debug info,
3610
3611
3612 2005-05-04  Andy Wingo <wingo@pobox.com>
3613
3614         * check/Makefile.am:
3615         * docs/gst/tmpl/gstatomic.sgml:
3616         * docs/gst/tmpl/gstplugin.sgml:
3617         * gst/base/gstbasesink.c: (gst_basesink_activate):
3618         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3619         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3620         (gst_basesrc_query), (gst_basesrc_set_property),
3621         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3622         (gst_basesrc_activate):
3623         * gst/base/gstbasesrc.h:
3624         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3625         (gst_base_transform_src_activate):
3626         * gst/elements/gstelements.c:
3627         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3628         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3629         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3630         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3631         (gst_type_find_element_checkgetrange),
3632         (gst_type_find_element_activate):
3633         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3634         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3635         (gst_caps_load_thyself):
3636         * gst/gstelement.c: (gst_element_pads_activate),
3637         (gst_element_save_thyself), (gst_element_restore_thyself):
3638         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3639         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3640         * gst/gstpad.h:
3641         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3642         (gst_xml_parse_file), (gst_xml_parse_memory),
3643         (gst_xml_get_element), (gst_xml_make_element):
3644         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3645         (_file_index_id_save_xml), (gst_file_index_commit):
3646         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3647         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3648         (load_paths):
3649         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3650         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3651         * tools/gst-complete.c: (main):
3652         * tools/gst-compprep.c: (main):
3653         * tools/gst-inspect.c: (print_element_properties_info):
3654         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3655         * tools/gst-xmlinspect.c: (print_element_properties):
3656         GCC 4 fixen.
3657         
3658 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3659
3660         * gst/gstplugin.c: (gst_plugin_check_module),
3661         (gst_plugin_check_file), (gst_plugin_load_file):
3662             apply patch from #172526 to make register work on MacOSX
3663
3664 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3665
3666         * docs/gst/tmpl/gstconfig.sgml:
3667         * gst/gstconfig.h.in:
3668           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3669         * testsuite/debug/printf_extension.c: (main):
3670           Do not use GST_PTR_FORMAT on pointers to types with
3671           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3672         * testsuite/elements/property.h:
3673           use correct printf format
3674
3675 2005-05-02  Wim Taymans  <wim@fluendo.com>
3676
3677         * docs/design/draft-push-pull.txt:
3678         * docs/design/draft-query.txt:
3679         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3680         (gst_basesrc_start):
3681         Added draft for new query API.
3682         Added draft for better selecting scheduling methods.
3683         Make basesrc ignore length if the subclass does not support
3684         it.
3685
3686 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3687
3688         * gst/Makefile.am:
3689           possible fixes for automake-1.5 - _LIBADD is reserved
3690
3691 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3692
3693         * docs/faq/Makefile.am:
3694         * docs/manual/Makefile.am:
3695         * docs/manuals.mak:
3696         * docs/pwg/Makefile.am:
3697         * gst/Makefile.am:
3698           possible fixes for automake-1.5
3699
3700 2005-04-28  Wim Taymans  <wim@fluendo.com>
3701
3702         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3703         (gst_basesink_pad_getcaps), (gst_basesink_init),
3704         (gst_basesink_do_sync):
3705         * gst/gstclock.c: (gst_clock_entry_new):
3706         * gst/gstevent.c: (gst_event_discont_get_value):
3707         * gst/gstpipeline.c: (pipeline_bus_handler),
3708         (gst_pipeline_change_state):
3709         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3710         Better debugging of clocking info.
3711         Allow NULL values when getting discont values.
3712
3713 2005-04-27  Wim Taymans  <wim@fluendo.com>
3714
3715         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3716         * check/gst/gstpad.c: (gst_pad_suite):
3717         Increase timeout for checks.
3718
3719 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3720
3721         * check/Makefile.am:
3722           fix the broken rule for cleanup.  Apparently this rule is
3723           only needed on FC2, so maybe this warrants further autotool
3724           inspection.
3725
3726 2005-04-26  Wim Taymans  <wim@fluendo.com>
3727
3728         * gst/gsttrashstack.h:
3729         Ooohh. a nasty one! After having a failed pop() from the stack,
3730         it's possible that the stack is empty. In that case, don't
3731         follow the NULL pointer.
3732
3733 2005-04-25  Wim Taymans  <wim@fluendo.com>
3734
3735         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3736         (gst_pad_set_checkgetrange_function),
3737         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3738         (gst_pad_check_pull_range), (gst_pad_pull_range),
3739         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3740         (gst_pad_pause_task), (gst_pad_stop_task):
3741         * gst/gstplugin.c: (gst_plugin_load):
3742         * gst/gstplugin.h:
3743         Remove gst_library_load as it does more harm than good with
3744         the new g_module flags.
3745         Revert bogus caps template check in pad linking, pad caps
3746         are important when linking not the template, which is more
3747         general than the current caps.
3748
3749 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3750
3751         * gst/autoplug/.cvsignore:
3752         * gst/autoplug/Makefile.am:
3753         * gst/autoplug/gstsearchfuncs.c:
3754         * gst/autoplug/gstsearchfuncs.h:
3755         * gst/autoplug/gstspider.c:
3756         * gst/autoplug/gstspider.h:
3757         * gst/autoplug/gstspideridentity.c:
3758         * gst/autoplug/gstspideridentity.h:
3759         * gst/autoplug/spidertest.c:
3760           Die, spider, die.
3761
3762 2005-04-25  Wim Taymans  <wim@fluendo.com>
3763
3764         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3765         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3766         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3767         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3768         * gst/gstpad.h:
3769         Added stubs for unimplemented functions. 
3770
3771 2005-04-24  David Schleef  <ds@schleef.org>
3772
3773         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3774         please fix.
3775
3776 2005-04-24  David Schleef  <ds@schleef.org>
3777
3778         Convert everything from GstAtomicInt to g_atomic_int_*, and
3779         remove gstatomic.
3780         * gst/Makefile.am:
3781         * gst/gstatomic.c:
3782         * gst/gstatomic.h:
3783         * gst/gstatomic_impl.h:
3784         * gst/gstbuffer.c:
3785         * gst/gstcaps.c:
3786         * gst/gstcaps.h:
3787         * gst/gstclock.c:
3788         * gst/gstclock.h:
3789         * gst/gstdata.c:
3790         * gst/gstdata.h:
3791         * gst/gstdata_private.h:
3792         * gst/gstevent.c:
3793         * gst/gstinfo.c:
3794         * gst/gstinfo.h:
3795         * gst/gstmessage.c:
3796         * gst/gstobject.c:
3797         * gst/gstobject.h:
3798         * gst/gststructure.c:
3799         * gst/gststructure.h:
3800         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3801         * gst/gstutils.h:
3802
3803 2005-04-24  David Schleef  <ds@schleef.org>
3804
3805         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3806         make the regressions tests work.  Remove some code that is no
3807         longer true.
3808         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3809         Disable warning for pads without templates.
3810
3811 2005-04-24  David Schleef  <ds@schleef.org>
3812
3813         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3814         functions that handle filtered links.
3815         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3816         removed functions.
3817         * gst/gstutils.c: Fix/remove utility functions that handle
3818         filtered caps.
3819         * gst/gstutils.h:
3820         * gst/gstvalue.c: Add serialization/deserialization of caps
3821         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3822         requires fixing so that the filter caps notation creates
3823         a capsfilter element and sets the filter_caps property.  I
3824         think everyone probably wants to keep the shorthand notation.
3825         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3826         * docs/gst/tmpl/gstpad.sgml:
3827
3828         * gst/elements/gstelements.c: Register capsfilter element.
3829         * gst/Makefile.am: fix spacing
3830         * docs/random/ds/0.9-suggested-changes: random
3831
3832 2005-04-23  David Schleef  <ds@schleef.org>
3833
3834         * gst/elements/Makefile.am:
3835         * gst/elements/gstcapsfilter.c: New element that acts like an
3836         identity, but filters caps.  Will eventually replace filtered
3837         caps in pad linking.
3838         * gst/gstutils.c: (gst_element_create_all_pads): New function
3839         to create all the ALWAYS pads that are registered with an
3840         element class.  This functionality should eventually be
3841         merged in with GstElement initialization.
3842         * gst/gstutils.h:
3843         * testsuite/trigger/README: part of trigger test code that should
3844         have been checked in a long time ago.
3845
3846 2005-04-23  David Schleef  <ds@schleef.org>
3847
3848         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3849         needed with new versions of libtool (nobody will confirm this),
3850         and hard to carry around.
3851         * gst/autoplug/Makefile.am:
3852         * gst/base/Makefile.am:
3853         * gst/elements/Makefile.am:
3854         * gst/indexers/Makefile.am:
3855         * gst/schedulers/Makefile.am:
3856         * libs/gst/bytestream/Makefile.am:
3857         * libs/gst/control/Makefile.am:
3858         * libs/gst/dataprotocol/Makefile.am:
3859         * libs/gst/getbits/Makefile.am:
3860
3861 2005-04-21  Wim Taymans  <wim@fluendo.com>
3862
3863         * docs/design/draft-push-pull.txt:
3864         * docs/design/part-MT-refcounting.txt:
3865         * docs/design/part-TODO.txt:
3866         * docs/design/part-caps.txt:
3867         * docs/design/part-events.txt:
3868         * docs/design/part-gstbus.txt:
3869         * docs/design/part-gstpipeline.txt:
3870         * docs/design/part-messages.txt:
3871         * docs/design/part-push-pull.txt:
3872         * docs/design/part-query.txt:
3873         Some more docs.
3874
3875 2005-04-21  Wim Taymans  <wim@fluendo.com>
3876
3877         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3878         (gst_message_new), (gst_message_new_error),
3879         (gst_message_new_warning), (gst_message_new_tag),
3880         (gst_message_new_state_changed), (gst_message_new_application),
3881         (gst_message_get_structure):
3882         * gst/gstmessage.h:
3883         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3884         (gst_structure_copy_conditional):
3885         Use parent refcount in GstMessage to ensure GstStructure
3886         consistency.
3887         Cleaned up headers a bit.
3888         
3889
3890 2005-04-20  Wim Taymans  <wim@fluendo.com>
3891
3892         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3893         (gst_basesink_pad_getcaps), (gst_basesink_init),
3894         (gst_basesink_chain_unlocked):
3895         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3896         (gst_type_find_helper):
3897         * gst/elements/gsttypefindelement.c:
3898         (gst_type_find_element_have_type), (gst_type_find_element_init),
3899         (stop_typefinding), (gst_type_find_element_handle_event),
3900         (find_suggest), (gst_type_find_element_chain),
3901         (gst_type_find_element_checkgetrange),
3902         (gst_type_find_element_getrange), (do_typefind),
3903         (gst_type_find_element_activate):
3904         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3905         (gst_buffer_default_free), (gst_buffer_default_copy),
3906         (gst_buffer_set_caps):
3907         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3908         (gst_caps_replace):
3909         * gst/gstmessage.c: (gst_message_new),
3910         (gst_message_new_state_changed):
3911         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3912         (gst_pad_set_checkgetrange_function),
3913         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3914         (gst_pad_set_caps), (gst_pad_check_pull_range),
3915         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3916         * gst/gstpad.h:
3917         * gst/gsttypefind.c: (gst_type_find_register):
3918         Make gst_caps_replace() work like other _replace() functions.
3919         Use _caps_replace() where possible.
3920         Make sure _message_new() initialises its field.
3921         Add gst_static_pad_template_get_caps()
3922
3923
3924 2005-04-18  Andy Wingo  <wingo@pobox.com>
3925
3926         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3927         on the peer, not the pad. I think that was a typo. Pass an extra
3928         arg to see if random access is possible. Activate the pads as
3929         PULL_RANGE if possible.
3930
3931         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3932
3933         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3934         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3935         to PROP_....
3936
3937 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3938
3939         * docs/faq/using.xml:
3940           Add note on gstreamer-properties (#154996).
3941
3942 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3943
3944         * docs/random/bbb/optional-properties:
3945           Some analysis on optional properties.
3946
3947 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3948
3949         * docs/gst/tmpl/gstelementfactory.sgml:
3950         * gst/gstelement.h:
3951         * gst/gstelementfactory.c: (gst_element_factory_init),
3952         (gst_element_factory_cleanup), (gst_element_register),
3953         (__gst_element_factory_add_static_pad_template),
3954         (gst_element_factory_get_static_pad_templates),
3955         (gst_element_factory_can_src_caps),
3956         (gst_element_factory_can_sink_caps):
3957         * gst/registries/Makefile.am:
3958         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3959         (gst_xml_registry_class_init), (gst_xml_registry_init),
3960         (gst_xml_registry_new), (gst_xml_registry_set_property),
3961         (gst_xml_registry_get_property), (get_time), (make_dir),
3962         (gst_xml_registry_get_perms_func),
3963         (plugin_times_older_than_recurse), (plugin_times_older_than),
3964         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3965         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3966         (add_to_char_array), (read_string), (read_uint), (read_enum),
3967         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3968         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3969         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3970         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3971         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3972         (gst_xml_registry_rebuild):
3973         * gst/registries/gstlibxmlregistry.h:
3974         * tools/gst-compprep.c: (main):
3975         * tools/gst-inspect.c: (print_pad_templates_info):
3976         * tools/gst-xmlinspect.c: (print_element_info):
3977           Use libxml2 for registry parsing, use staticpadtemplates in
3978           elementfactories. Makes gst_init() +/- 10x faster.
3979
3980 2005-04-12  Wim Taymans  <wim@fluendo.com>
3981
3982         * gst/base/Makefile.am:
3983         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3984         (gst_basesink_pad_getcaps), (gst_basesink_init),
3985         (gst_basesink_event), (gst_basesink_change_state):
3986         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3987         (gst_basesrc_init), (gst_basesrc_query),
3988         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3989         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3990         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3991         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3992         (gst_basesrc_stop), (gst_basesrc_activate),
3993         (gst_basesrc_change_state):
3994         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3995         (helper_find_suggest), (gst_type_find_helper):
3996         * gst/base/gsttypefindhelper.h:
3997         * gst/elements/Makefile.am:
3998         * gst/elements/gstelements.c:
3999         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4000         (gst_fakesink_get_times), (gst_fakesink_event),
4001         (gst_fakesink_preroll), (gst_fakesink_render):
4002         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4003         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4004         (gst_fakesrc_get_property), (gst_fakesrc_create),
4005         (gst_fakesrc_start), (gst_fakesrc_stop):
4006         * gst/elements/gstfakesrc.h:
4007         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4008         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4009         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4010         (gst_filesrc_create_read), (gst_filesrc_create),
4011         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4012         (gst_filesrc_start):
4013         * gst/elements/gsttypefindelement.c:
4014         (gst_type_find_element_have_type), (gst_type_find_element_init),
4015         (start_typefinding), (stop_typefinding), (push_buffer_store),
4016         (gst_type_find_element_handle_event),
4017         (gst_type_find_element_chain),
4018         (gst_type_find_element_checkgetrange),
4019         (gst_type_find_element_getrange), (do_typefind),
4020         (gst_type_find_element_activate),
4021         (gst_type_find_element_change_state):
4022         * gst/elements/gsttypefindelement.h:
4023         * gst/gstpipeline.c: (pipeline_bus_handler):
4024         Added typefind helper.
4025         Small preroll fix in the base sink.
4026         Disable typefind code in basesrc.
4027         Crude port of typefindelement.
4028         Fakesrc cleanups.
4029
4030
4031 2005-04-11  Wim Taymans  <wim@fluendo.com>
4032
4033         * check/gst/gstbus.c: (gstbus_suite):
4034         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4035         * check/gstcheck.h:
4036           Fix up the timeout so that the test does not fail.
4037
4038 2005-04-06  Wim Taymans  <wim@fluendo.com>
4039
4040         * gst/base/README:
4041         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4042         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4043         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4044         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4045         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4046         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4047         (gst_basesrc_stop), (gst_basesrc_activate),
4048         (gst_basesrc_change_state), (basesrc_find_peek),
4049         (basesrc_find_suggest), (gst_basesrc_type_find):
4050         * gst/base/gstbasesrc.h:
4051         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4052         (gst_filesrc_class_init), (gst_filesrc_init),
4053         (gst_filesrc_finalize), (gst_filesrc_set_location),
4054         (gst_filesrc_set_property), (gst_filesrc_get_property),
4055         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4056         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4057         (gst_filesrc_create_read), (gst_filesrc_create),
4058         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4059         * gst/elements/gstfilesrc.h:
4060         * gst/gstelement.c: (gst_element_get_state_func),
4061         (gst_element_lost_state), (gst_element_pads_activate):
4062         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4063         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4064         (gst_pad_pull_range):
4065         * gst/gstpad.h:
4066         More work on the generic source base class, implement seeking,
4067         query.
4068         Make filesrc extend the base source class.
4069         Added gst_pad_set_checkgetrange_function to GstPad.
4070
4071 2005-04-06  Andy Wingo  <wingo@pobox.com>
4072
4073         * pkgconfig/gstreamer-base.pc.in:
4074         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4075
4076         * pkgconfig/Makefile.am:
4077         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4078
4079 2005-04-04  Wim Taymans  <wim@fluendo.com>
4080
4081         * gst/base/Makefile.am:
4082         * gst/base/README:
4083         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4084         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4085         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4086         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4087         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4088         (gst_basesrc_base_init), (gst_basesrc_class_init),
4089         (gst_basesrc_init), (gst_basesrc_get_formats),
4090         (gst_basesrc_get_query_types), (gst_basesrc_query),
4091         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4092         (gst_basesrc_set_property), (gst_basesrc_get_property),
4093         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4094         (gst_basesrc_loop), (gst_basesrc_activate),
4095         (gst_basesrc_change_state):
4096         * gst/base/gstbasesrc.h:
4097         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4098         (gst_fakesrc_class_init), (gst_fakesrc_init),
4099         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4100         (gst_fakesrc_get_property), (gst_fakesrc_create):
4101         * gst/elements/gstfakesrc.h:
4102         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4103         (gst_filesrc_open_file), (gst_filesrc_loop),
4104         (gst_filesrc_activate), (filesrc_find_peek),
4105         (gst_filesrc_type_find):
4106         Made base source class, make fakesrc extend it.
4107         Add comments to basesink class.
4108         Some filesrc cleanup.
4109
4110 2005-03-31  David Schleef  <ds@schleef.org>
4111
4112         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4113         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4114         expected to link against libgstreamer.
4115         * gst/base/Makefile.am: link against libgstreamer
4116         * gst/elements/Makefile.am: same
4117
4118 2005-03-31  Andy Wingo  <wingo@pobox.com>
4119
4120         * tests/instantiate/Makefile.am:
4121         * tests/instantiate/caps.c: Add test to test speed of caps copy
4122         and free.
4123
4124         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4125         GMemChunk to be fair.
4126
4127         * gst/gsttrashstack.h: Remove warning about using the fallback
4128         trash stack implementation, it's still faster than malloc.
4129
4130 2005-03-30  Andy Wingo  <wingo@pobox.com>
4131
4132         * tests/complexity.c: Add a copyright.
4133
4134 2005-03-31  Wim Taymans  <wim@fluendo.com>
4135
4136         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4137         (gst_base_transform_class_init), (gst_base_transform_init),
4138         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4139         (gst_base_transform_get_property),
4140         (gst_base_transform_sink_activate),
4141         (gst_base_transform_src_activate),
4142         (gst_base_transform_change_state):
4143         * gst/base/gstbasetransform.h:
4144         * gst/elements/gstidentity.c: (gst_identity_class_init),
4145         (gst_identity_event), (gst_identity_check_perfect),
4146         (gst_identity_transform), (gst_identity_start),
4147         (gst_identity_stop):
4148         Added start/stop methods to transform base class so subclasses 
4149         don't need to deal with state changes even.
4150
4151 2005-03-31  Wim Taymans  <wim@fluendo.com>
4152
4153         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4154         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4155         * gst/gstevent.h:
4156         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4157         (gst_pad_pull_range):
4158         Added rate to the discont event to prepare for variable speed
4159         and reverse playback.
4160
4161 2005-03-29  David Schleef  <ds@schleef.org>
4162
4163         * configure.ac:
4164         * testsuite/trigger/Makefile.am:
4165         * testsuite/trigger/trigger.c: A little example program to show
4166         how trigger-based elements can work.
4167
4168 2005-03-29  Wim Taymans  <wim@fluendo.com>
4169
4170         * gst/base/Makefile.am:
4171         * gst/base/README:
4172         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4173         (gst_basesink_base_init), (gst_basesink_class_init),
4174         (gst_basesink_pad_getcaps), (gst_basesink_init),
4175         (gst_basesink_activate), (gst_basesink_change_state):
4176         * gst/base/gstbasesink.h:
4177         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4178         (gst_base_transform_base_init), (gst_base_transform_finalize),
4179         (gst_base_transform_class_init), (gst_base_transform_init),
4180         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4181         (gst_base_transform_event), (gst_base_transform_getrange),
4182         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4183         (gst_base_transform_set_property),
4184         (gst_base_transform_get_property),
4185         (gst_base_transform_sink_activate),
4186         (gst_base_transform_src_activate),
4187         (gst_base_transform_change_state):
4188         * gst/base/gstbasetransform.h:
4189         * gst/elements/gstidentity.c: (gst_identity_finalize),
4190         (gst_identity_class_init), (gst_identity_init),
4191         (gst_identity_event), (gst_identity_check_perfect),
4192         (gst_identity_transform), (gst_identity_set_property),
4193         (gst_identity_get_property), (gst_identity_change_state):
4194         * gst/elements/gstidentity.h:
4195         * gst/gstelement.c: (gst_element_get_state_func),
4196         (gst_element_lost_state), (gst_element_pads_activate):
4197         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4198         (gst_pad_check_pull_range), (gst_pad_pull_range):
4199         * gst/gstpad.h:
4200         Simplify pad activation.
4201         Added function to check if pull_range can be performed.
4202         Error out when pulling inactive or flushing pads.
4203         Removed const from refcounted types as it does not make sense.
4204         Simplify pad templates in basesink
4205         Added base class for simple 1-to-1 transforms.
4206         Make identity subclass the base transform.
4207
4208 2005-03-29  Andy Wingo  <wingo@pobox.com>
4209
4210         * docs/libs/gstreamer-libs-overrides.txt: 
4211         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4212         really don't understand what's going on, but like whatever. I want
4213         green buildbot!
4214
4215         * docs/gst/Makefile.am:
4216         * docs/libs/Makefile.am: Dist the overrides files.
4217
4218         * check/Makefile.am (clean-local): Remove .libs directories.
4219
4220         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4221         elements to EXTRA_DIST, so po/ files are happy.
4222
4223         * po/POTFILES.in: Er, remove it here.
4224
4225         * po/POTFILES: Remove gstspider.c.
4226
4227         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4228
4229         * docs/libs/gstreamer-libs-docs.sgml: 
4230         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4231         bytestream.
4232
4233         * tests/complexity.c (main): Set the length of the preroll queue
4234         on the sinks to prevent a lockup.
4235
4236         * libs/gst/dataprotocol/Makefile.am: 
4237         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4238         the same as the one in check/gst-libs/gdp.c.
4239
4240         * po/, docs/gst/: Commit automatic changes to docs and po files.
4241
4242         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4243         the versioned libgstbase.
4244
4245         * check/Makefile.am: Depend on an unversioned gst-register, seems
4246         to make autoconf happier.
4247
4248         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4249
4250 2005-03-28  Wim Taymans  <wim@fluendo.com>
4251
4252         * configure.ac:
4253         * docs/design/part-gstelement.txt:
4254         * docs/design/part-negotiation.txt:
4255         * docs/design/part-preroll.txt:
4256         * docs/design/part-scheduling.txt:
4257         * docs/design/part-states.txt:
4258         * gst/Makefile.am:
4259         * gst/base/Makefile.am:
4260         * gst/base/README:
4261         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4262         (gst_basesink_base_init), (gst_basesink_class_init),
4263         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4264         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4265         (gst_basesink_set_pad_functions),
4266         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4267         (gst_basesink_set_property), (gst_basesink_get_property),
4268         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4269         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4270         (gst_basesink_preroll_queue_push),
4271         (gst_basesink_preroll_queue_empty),
4272         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4273         (gst_basesink_event), (gst_basesink_get_times),
4274         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4275         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4276         (gst_basesink_loop), (gst_basesink_activate),
4277         (gst_basesink_change_state):
4278         * gst/base/gstbasesink.h:
4279         * gst/elements/Makefile.am:
4280         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4281         (gst_fakesink_class_init), (gst_fakesink_init),
4282         (gst_fakesink_set_property), (gst_fakesink_get_property),
4283         (gst_fakesink_get_times), (gst_fakesink_event),
4284         (gst_fakesink_preroll), (gst_fakesink_render),
4285         (gst_fakesink_change_state):
4286         * gst/elements/gstfakesink.h:
4287         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4288         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4289         * gst/gstelement.c: (gst_element_add_pad),
4290         (gst_element_get_state_func), (gst_element_abort_state),
4291         (gst_element_commit_state), (gst_element_lost_state),
4292         (gst_element_set_state), (gst_element_pads_activate):
4293         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4294         * gst/gstpipeline.c: (gst_pipeline_send_event),
4295         (gst_pipeline_change_state):
4296         Added state change code.
4297         Added/updated docs.
4298         Added sink base class, make fakesink extend the base class.
4299         Small cleanups in GstPipeline.
4300
4301 2005-03-26  David Schleef  <ds@schleef.org>
4302
4303         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4304         is broken and should be implemented in a different library.
4305         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4306         * gst/gst.h: remove gstcpu.h
4307         * gst/gstcpu.c: remove
4308         * gst/gstcpu.h: remove
4309         * gst/Makefile.am.future: Remove this file.  It's ancient.
4310
4311 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4312
4313         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4314         (gst_bin_send_event):
4315           Add default event/set_manager handlers. The set_manager handler
4316           takes care that the manager is distributed over kids that were
4317           already in the bin before the manager was set. The event handler
4318           is a utility virtual function that sends the event over all sinks,
4319           so that gst_element_send_event (bin, event); has the expected
4320           behaviour.
4321         * gst/gstpad.c: (gst_pad_event_default):
4322           Re-install default event handling for discontinuities, so that
4323           seeking works without requiring hacks in applications or extra
4324           code in sinks.
4325         * gst/gstpipeline.c: (gst_pipeline_class_init),
4326         (gst_pipeline_send_event):
4327           Half hack, half utility: set a pipeline to PAUSED for seek events,
4328           since that is the only way we can guarantee a/v sync. Means that
4329           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4330           and it "just works".
4331
4332 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4333
4334         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4335           Lock/unlock mismatch.
4336
4337 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4338
4339         * docs/faq/gst-uninstalled:
4340           add gst-plugins-base
4341         * docs/gst/Makefile.am:
4342           don't error out until docs are fixed
4343         * docs/gst/gstreamer.types:
4344           remove thread
4345
4346 2005-03-22  Wim Taymans  <wim@fluendo.com>
4347
4348         * check/Makefile.am:
4349         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4350         * gst/gststructure.c: (gst_structure_set_valist),
4351         (gst_structure_copy_conditional):
4352         Activated more tests.
4353         Added message test.
4354         Added G_TYPE_POINTER to GstStructure.
4355         
4356
4357 2005-03-22  Wim Taymans  <wim@fluendo.com>
4358
4359         * docs/design/part-TODO.txt:
4360         * docs/design/part-events.txt:
4361         * docs/design/part-gstbin.txt:
4362         * docs/design/part-gstbus.txt:
4363         * docs/design/part-gstpipeline.txt:
4364         * docs/design/part-messages.txt:
4365         * gst/gstbus.c:
4366         * gst/gstmessage.c:
4367         Docs updates
4368
4369 2005-03-21  Wim Taymans  <wim@fluendo.com>
4370
4371         * gst/gstbus.c: (gst_bus_post):
4372         Fix copy-and-paste error.
4373
4374 2005-03-21  Wim Taymans  <wim@fluendo.com>
4375
4376         * check/Makefile.am:
4377         * gst/Makefile.am:
4378         * gst/elements/Makefile.am:
4379         * gst/elements/gstelements.c:
4380         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4381         (gst_fakesink_event), (gst_fakesink_chain):
4382         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4383         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4384         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4385         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4386         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4387         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4388         (gst_fakesrc_loop), (gst_fakesrc_activate),
4389         (gst_fakesrc_change_state):
4390         * gst/elements/gstfakesrc.h:
4391         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4392         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4393         (gst_filesrc_open_file), (gst_filesrc_loop),
4394         (gst_filesrc_activate), (gst_filesrc_change_state),
4395         (filesrc_find_peek), (filesrc_find_suggest),
4396         (gst_filesrc_type_find):
4397         * gst/elements/gstidentity.c: (gst_identity_finalize),
4398         (gst_identity_class_init), (gst_identity_init),
4399         (gst_identity_proxy_getcaps), (identity_queue_push),
4400         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4401         (gst_identity_getrange), (gst_identity_chain),
4402         (gst_identity_sink_loop), (gst_identity_src_loop),
4403         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4404         (gst_identity_set_property), (gst_identity_get_property),
4405         (gst_identity_change_state):
4406         * gst/elements/gstidentity.h:
4407         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4408         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4409         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4410         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4411         (gst_tee_sink_activate):
4412         * gst/elements/gsttee.h:
4413         * gst/gst.c: (gst_register_core_elements), (init_post):
4414         * gst/gst.h:
4415         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4416         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4417         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4418         (gst_bin_change_state):
4419         * gst/gstbin.h:
4420         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4421         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4422         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4423         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4424         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4425         (bus_watch_callback), (bus_watch_destroy),
4426         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4427         (poll_timeout), (gst_bus_poll):
4428         * gst/gstbus.h:
4429         * gst/gstcaps.h:
4430         * gst/gstdata.h:
4431         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4432         (gst_element_post_message), (gst_element_message_full),
4433         (gst_element_get_state_func), (gst_element_get_state),
4434         (gst_element_abort_state), (gst_element_commit_state),
4435         (gst_element_lost_state), (gst_element_set_state),
4436         (gst_element_pads_activate), (gst_element_change_state),
4437         (gst_element_dispose), (gst_element_set_manager_func),
4438         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4439         (gst_element_set_manager), (gst_element_get_manager),
4440         (gst_element_set_bus), (gst_element_get_bus),
4441         (gst_element_set_scheduler), (gst_element_get_scheduler):
4442         * gst/gstelement.h:
4443         * gst/gstevent.c: (gst_event_new_segment_seek),
4444         (gst_event_new_flush):
4445         * gst/gstevent.h:
4446         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4447         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4448         (gst_message_new_eos), (gst_message_new_error),
4449         (gst_message_new_warning), (gst_message_new_tag),
4450         (gst_message_new_state_changed), (gst_message_new_application),
4451         (gst_message_get_structure), (gst_message_parse_tag),
4452         (gst_message_parse_state_changed), (gst_message_parse_error),
4453         (gst_message_parse_warning):
4454         * gst/gstmessage.h:
4455         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4456         (gst_real_pad_set_property), (gst_pad_set_active),
4457         (gst_pad_is_active), (gst_pad_set_blocked_async),
4458         (gst_pad_set_blocked), (gst_pad_is_blocked),
4459         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4460         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4461         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4462         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4463         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4464         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4465         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4466         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4467         (gst_pad_set_caps), (gst_pad_configure_sink),
4468         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4469         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4470         (gst_real_pad_dispose), (gst_real_pad_finalize),
4471         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4472         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4473         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4474         * gst/gstpad.h:
4475         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4476         (pipeline_bus_handler), (gst_pipeline_change_state),
4477         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4478         * gst/gstpipeline.h:
4479         * gst/gstprobe.h:
4480         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4481         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4482         (gst_queue_link_src), (gst_queue_bufferalloc),
4483         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4484         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4485         (gst_queue_loop), (gst_queue_handle_src_event),
4486         (gst_queue_handle_src_query), (gst_queue_src_activate),
4487         (gst_queue_change_state):
4488         * gst/gstqueue.h:
4489         * gst/gstscheduler.c: (gst_scheduler_init),
4490         (gst_scheduler_dispose), (gst_scheduler_create_task),
4491         (gst_scheduler_factory_create):
4492         * gst/gstscheduler.h:
4493         * gst/gststructure.c: (gst_structure_get_type),
4494         (gst_structure_copy_conditional):
4495         * gst/gststructure.h:
4496         * gst/gsttaginterface.h:
4497         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4498         (gst_task_init), (gst_task_dispose), (gst_task_create),
4499         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4500         (gst_task_pause):
4501         * gst/gsttask.h:
4502         * gst/gstthread.c:
4503         * gst/gstthread.h:
4504         * gst/gsttypes.h:
4505         * gst/schedulers/Makefile.am:
4506         * gst/schedulers/cothreads_compat.h:
4507         * gst/schedulers/entryscheduler.c:
4508         * gst/schedulers/faircothreads.c:
4509         * gst/schedulers/faircothreads.h:
4510         * gst/schedulers/fairscheduler.c:
4511         * gst/schedulers/gstbasicscheduler.c:
4512         * gst/schedulers/gstoptimalscheduler.c:
4513         * gst/schedulers/gthread-cothreads.h:
4514         * gst/schedulers/threadscheduler.c:
4515         (gst_thread_scheduler_task_get_type),
4516         (gst_thread_scheduler_task_class_init),
4517         (gst_thread_scheduler_task_init),
4518         (gst_thread_scheduler_task_start),
4519         (gst_thread_scheduler_task_stop),
4520         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4521         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4522         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4523         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4524         (plugin_init):
4525         * libs/gst/Makefile.am:
4526         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4527         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4528         (gst_file_pad_parent_set):
4529         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4530         (gst_dp_event_from_packet):
4531         * tests/complexity.c: (main):
4532         * tests/mass_elements.c: (main):
4533         * testsuite/states/locked.c: (message_received), (main):
4534         * testsuite/states/parent.c: (main):
4535         * tools/gst-inspect.c: (print_element_flag_info),
4536         (print_implementation_info), (print_pad_info):
4537         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4538         (main):
4539         * tools/gst-md5sum.c: (event_loop), (main):
4540         * tools/gst-typefind.c: (main):
4541         * tools/gst-xmlinspect.c: (print_element_info):
4542         Next big merge.
4543         Added GstBus for mainloop integration.
4544         Added GstMessage for sending notifications on the bus.
4545         Added GstTask as an abstraction for pipeline entry points.
4546         Removed GstThread.
4547         Removed Schedulers.
4548         Simplified GstQueue for multithreaded core.
4549         Made _link threadsafe, removed old capsnego.
4550         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4551         Added pad blocking functions.
4552         Reworked scheduling functions in GstPad to prepare for
4553         scheduling updates soon.
4554         Moved events out of data stream.
4555         Simplified GstEvent types.
4556         Added return values to push/pull.
4557         Removed clocking from GstElement.
4558         Added prototypes for state change function for next merge.
4559         Removed iterate from bins and state change management.
4560         Fixed some elements, disabled others for now.
4561         Fixed -inspect and -launch.
4562         Added check for GstBus.
4563
4564 2005-03-10  Wim Taymans  <wim@fluendo.com>
4565
4566         * docs/design/part-MT-refcounting.txt:
4567         * docs/design/part-clocks.txt:
4568         * docs/design/part-gstelement.txt:
4569         * docs/design/part-gstobject.txt:
4570         * docs/design/part-standards.txt:
4571         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4572         (gst_bin_remove_func), (gst_bin_remove):
4573         * gst/gstbin.h:
4574         * gst/gstbuffer.c:
4575         * gst/gstcaps.h:
4576         * testsuite/clock/clock1.c: (main):
4577         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4578         (main):
4579         * testsuite/dlopen/loadgst.c: (do_test):
4580         * testsuite/refcounting/bin.c: (add_remove_test1),
4581         (add_remove_test2), (main):
4582         * testsuite/refcounting/element.c: (main):
4583         * testsuite/refcounting/element_pad.c: (main):
4584         * testsuite/refcounting/pad.c: (main):
4585         * tools/gst-launch.c: (sigint_handler_sighandler):
4586         * tools/gst-typefind.c: (main):
4587         Doc updates.
4588         Added doc about clock.
4589         removed gst_bin_iterate_recurse_up(), marked methods
4590         for removal.
4591         Fix more testsuites.
4592
4593 2005-03-09  Wim Taymans  <wim@fluendo.com>
4594
4595         * gst/gstpad.c: (gst_pad_get_direction),
4596         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4597         (gst_pad_collect_valist):
4598         * testsuite/bins/interface.c: (main):
4599         * testsuite/caps/audioscale.c: (test_caps):
4600         * testsuite/caps/caps.c: (test1), (test2), (test3):
4601         * testsuite/caps/deserialize.c: (main):
4602         * testsuite/caps/enumcaps.c: (main):
4603         * testsuite/caps/filtercaps.c: (main):
4604         * testsuite/caps/intersect2.c: (main):
4605         * testsuite/caps/random.c: (main):
4606         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4607         * testsuite/caps/sets.c: (check_caps):
4608         * testsuite/caps/simplify.c: (check_caps), (main):
4609         * testsuite/caps/subtract.c: (check_caps):
4610         Fix _pad_get_direction wrt ghostpads.
4611         Fix caps testsuite.
4612
4613 2005-03-09  Wim Taymans  <wim@fluendo.com>
4614
4615         * check/Makefile.am:
4616         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4617         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4618         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4619         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4620         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4621         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4622         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4623         (bin_element_is_sink), (gst_bin_iterate_sinks),
4624         (gst_bin_iterate_all_by_interface):
4625         * gst/gstbin.h:
4626         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4627         (gst_element_change_state), (gst_element_dispose),
4628         (gst_element_finalize), (gst_element_set_loop_function):
4629         * gst/gstelement.h:
4630         * gst/gstiterator.c: (find_custom_fold_func):
4631         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4632         (gst_pad_collectv), (gst_pad_collect_valist),
4633         (gst_pad_template_new):
4634         * gst/gstpipeline.c: (gst_pipeline_class_init),
4635         (gst_pipeline_dispose), (gst_pipeline_set_property),
4636         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4637         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4638         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4639         * gst/gstutils.h:
4640         * gst/schedulers/entryscheduler.c:
4641         * gst/schedulers/gstbasicscheduler.c:
4642         (gst_basic_scheduler_cothreaded_chain),
4643         (gst_basic_scheduler_chain_add_element):
4644         * testsuite/bins/interface.c: (main):
4645         Added GstBin test.
4646         Added GstSystemClock test.
4647         Implemented clock distribution code in GstBin.
4648         Implemented iterate sinks method for future use.
4649         Rearranged gstelement.h
4650         Fix GstIterator comparison bug.
4651         Moved some code to GstPipeline, mostly clocking related.
4652
4653 2005-03-09  Wim Taymans  <wim@fluendo.com>
4654
4655         * configure.ac:
4656         * gst/gst_private.h:
4657         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4658         (gst_bin_remove_func), (gst_bin_remove),
4659         (gst_bin_get_by_name_recurse_up):
4660         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4661         (gst_clock_id_compare_func), (gst_clock_id_wait),
4662         (gst_clock_id_wait_async), (gst_clock_init),
4663         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4664         * gst/gstelement.h:
4665         * gst/gstinfo.c: (_gst_debug_init):
4666         * gst/gstobject.h:
4667         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4668         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4669         * gst/gstpad.h:
4670         Bump version number, we're now 0.9.0
4671         Add future debugging category.
4672         Fix NULL _unref() in _get_by_name_recurse_up
4673         Rearrange gstpad.h.
4674         Update some docs.
4675
4676 2005-03-08  Wim Taymans  <wim@fluendo.com>
4677
4678         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4679         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4680         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4681         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4682         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4683         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4684         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4685         * gst/elements/gstidentity.c: (gst_identity_class_init):
4686         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4687         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4688         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4689         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4690         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4691         (gst_tee_link):
4692         * gst/gstelement.c: (gst_element_class_init),
4693         (gst_element_base_class_init), (gst_element_init),
4694         (gst_element_get_random_pad), (gst_element_wait_state_change),
4695         (gst_element_change_state), (gst_element_dispose),
4696         (gst_element_finalize), (gst_element_set_loop_function):
4697         * gst/gstelement.h:
4698         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4699         * gst/gstthread.c: (gst_thread_class_init),
4700         (gst_thread_release_children_locks), (gst_thread_change_state):
4701         * gst/schedulers/gstbasicscheduler.c:
4702         (gst_basic_scheduler_loopfunc_wrapper),
4703         (gst_basic_scheduler_chain_wrapper),
4704         (gst_basic_scheduler_src_wrapper),
4705         (gst_basic_scheduler_remove_element):
4706         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4707         Remove threadsafe properties. Fix elements because GObject
4708         complains when installing a property before declaring a
4709         set/get_property handler.
4710         Rearrange gstelement.h file, use STATE macros for state locks.
4711         Free mutexes in the finalize method instead of dispose.
4712
4713 2005-03-08  Wim Taymans  <wim@fluendo.com>
4714
4715         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4716         * gst/gstthread.c: (gst_thread_release_children_locks):
4717         Added parentage check.
4718         Fix build og GstThread again.
4719
4720 2005-03-08  Wim Taymans  <wim@fluendo.com>
4721
4722         * docs/design/part-MT-refcounting.txt:
4723         * docs/design/part-conventions.txt:
4724         * docs/design/part-gstobject.txt:
4725         * docs/design/part-relations.txt:
4726         * docs/design/part-standards.txt:
4727         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4728         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4729         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4730         (gst_bin_iterate_all_by_interface):
4731         * gst/gstbuffer.h:
4732         * gst/gstclock.h:
4733         * gst/gstelement.c: (gst_element_class_init),
4734         (gst_element_change_state), (gst_element_set_loop_function):
4735         * gst/gstelement.h:
4736         * gst/gstiterator.c:
4737         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4738         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4739         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4740         (gst_object_set_parent), (gst_object_unparent),
4741         (gst_object_check_uniqueness):
4742         * gst/gstobject.h:
4743         Docs updates, clean up some headers.
4744
4745 2005-03-07  Wim Taymans  <wim@fluendo.com>
4746
4747         * check/.cvsignore:
4748         * check/Makefile.am:
4749         * check/gst-libs/.cvsignore:
4750         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4751         * check/gst/.cvsignore:
4752         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4753         (START_TEST), (gstbus_suite), (main):
4754         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4755         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4756         (gst_data_suite), (main):
4757         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4758         (add_fold_func), (gstiterator_suite), (main):
4759         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4760         (thread_name_object), (thread_name_object_default),
4761         (gst_object_name_compare), (gst_object_suite), (main):
4762         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4763         (gst_pad_suite), (main):
4764         * check/gstcheck.c: (gst_check_log_message_func),
4765         (gst_check_log_critical_func), (gst_check_init):
4766         * check/gstcheck.h:
4767         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4768         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4769         Added checks.
4770
4771 2005-03-07  Wim Taymans  <wim@fluendo.com>
4772
4773         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4774         (gst_list_iterator_next), (gst_list_iterator_resync),
4775         (gst_list_iterator_free), (gst_iterator_new_list),
4776         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4777         (gst_iterator_free), (gst_iterator_push), (filter_next),
4778         (filter_resync), (filter_uninit), (filter_free),
4779         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4780         (gst_iterator_foreach), (find_custom_fold_func),
4781         (gst_iterator_find_custom):
4782         * gst/gstiterator.h:
4783         Added missing files.
4784
4785 2005-03-07  Wim Taymans  <wim@fluendo.com>
4786
4787         * Makefile.am:
4788         * configure.ac:
4789         * docs/design/part-MT-refcounting.txt:
4790         * docs/design/part-conventions.txt:
4791         * docs/design/part-gstobject.txt:
4792         * docs/design/part-relations.txt:
4793         * examples/mixer/mixer.c: (main):
4794         * examples/thread/thread.c: (eos), (main):
4795         * gst/Makefile.am:
4796         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4797         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4798         (gst_spider_plug_from_srcpad):
4799         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4800         (gst_spider_identity_change_state),
4801         (gst_spider_identity_sink_loop_type_finding):
4802         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4803         * gst/elements/gstidentity.c: (gst_identity_init):
4804         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4805         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4806         * gst/elements/gsttypefindelement.c: (free_entry):
4807         * gst/gst.c:
4808         * gst/gst.h:
4809         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4810         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4811         (gst_bin_set_index), (gst_bin_set_element_sched),
4812         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4813         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4814         (gst_bin_iterate_elements), (iterate_child_recurse),
4815         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4816         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4817         (compare_interface), (gst_bin_get_by_interface),
4818         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4819         * gst/gstbin.h:
4820         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4821         (gst_buffer_default_free), (gst_buffer_default_copy),
4822         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4823         (gst_buffer_create_sub):
4824         * gst/gstbuffer.h:
4825         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4826         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4827         (gst_caps_unref), (gst_static_caps_get),
4828         (gst_caps_remove_and_get_structure), (gst_caps_append),
4829         (gst_caps_append_structure), (gst_caps_remove_structure),
4830         (gst_caps_copy_nth), (gst_caps_set_simple),
4831         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4832         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4833         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4834         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4835         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4836         (gst_caps_structure_figure_out_union),
4837         (gst_caps_switch_structures), (gst_caps_do_simplify),
4838         (gst_caps_replace), (gst_caps_from_string),
4839         (gst_caps_copy_conditional):
4840         * gst/gstcaps.h:
4841         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4842         (_gst_clock_id_free), (gst_clock_id_unref),
4843         (gst_clock_id_compare_func), (gst_clock_id_wait),
4844         (gst_clock_id_wait_async), (gst_clock_class_init),
4845         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4846         (gst_clock_get_time), (gst_clock_set_time_adjust),
4847         (gst_clock_set_property), (gst_clock_get_property):
4848         * gst/gstclock.h:
4849         * gst/gstcompat.h:
4850         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4851         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4852         * gst/gstdata.h:
4853         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4854         (gst_element_requires_clock), (gst_element_provides_clock),
4855         (gst_element_set_clock), (gst_element_clock_wait),
4856         (gst_element_wait), (gst_element_set_time_delay),
4857         (gst_element_is_indexable), (gst_element_add_pad),
4858         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4859         (pad_compare_name), (gst_element_get_static_pad),
4860         (gst_element_request_pad), (gst_element_get_request_pad),
4861         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4862         (gst_element_class_get_pad_template_list),
4863         (gst_element_class_get_pad_template), (gst_element_error_func),
4864         (gst_element_get_random_pad), (gst_element_get_event_masks),
4865         (gst_element_send_event), (gst_element_seek),
4866         (gst_element_get_query_types), (gst_element_query),
4867         (gst_element_get_formats), (gst_element_convert),
4868         (gst_element_is_locked_state), (gst_element_set_locked_state),
4869         (gst_element_sync_state_with_parent), (gst_element_change_state),
4870         (gst_element_finalize), (gst_element_yield),
4871         (gst_element_interrupt), (gst_element_set_scheduler),
4872         (gst_element_get_scheduler), (gst_element_set_loop_function):
4873         * gst/gstelement.h:
4874         * gst/gstevent.h:
4875         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4876         (gst_format_get_by_nick), (gst_format_get_details),
4877         (gst_format_iterate_definitions):
4878         * gst/gstformat.h:
4879         * gst/gstindex.c: (gst_index_gtype_resolver):
4880         * gst/gstinfo.c:
4881         * gst/gstinfo.h:
4882         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4883         (gst_mem_chunk_free):
4884         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4885         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4886         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4887         (gst_object_dispatch_properties_changed),
4888         (gst_object_set_name_default), (gst_object_set_name),
4889         (gst_object_get_name), (gst_object_set_name_prefix),
4890         (gst_object_get_name_prefix), (gst_object_set_parent),
4891         (gst_object_get_parent), (gst_object_unparent),
4892         (gst_object_check_uniqueness), (gst_object_save_thyself),
4893         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4894         (gst_object_set_property), (gst_object_get_property),
4895         (gst_object_get_path_string):
4896         * gst/gstobject.h:
4897         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4898         (gst_real_pad_init), (gst_real_pad_get_property),
4899         (gst_pad_custom_new), (gst_pad_get_direction),
4900         (gst_pad_set_active), (gst_pad_is_active),
4901         (gst_pad_set_event_function), (gst_pad_is_linked),
4902         (gst_pad_link_free), (gst_pad_link_intersect),
4903         (gst_pad_link_fixate), (gst_pad_set_caps),
4904         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4905         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4906         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4907         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4908         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4909         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4910         (gst_pad_realize), (gst_pad_get_allowed_caps),
4911         (gst_real_pad_dispose), (gst_real_pad_finalize),
4912         (gst_pad_collectv), (gst_pad_collect_valist),
4913         (gst_pad_template_dispose), (gst_pad_template_new),
4914         (gst_pad_get_internal_links):
4915         * gst/gstpad.h:
4916         * gst/gstpipeline.c: (gst_pipeline_dispose),
4917         (gst_pipeline_change_state):
4918         * gst/gstpipeline.h:
4919         * gst/gstplugin.c:
4920         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4921         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4922         * gst/gstpluginfeature.h:
4923         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4924         * gst/gstquery.c: (_gst_query_type_initialize),
4925         (gst_query_type_register), (gst_query_type_get_by_nick),
4926         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4927         * gst/gstquery.h:
4928         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4929         * gst/gstscheduler.c: (gst_scheduler_add_element),
4930         (gst_scheduler_factory_create):
4931         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4932         (gst_structure_free), (gst_structure_set_name),
4933         (gst_structure_id_set_value), (gst_structure_set_value),
4934         (gst_structure_set_valist), (gst_structure_remove_field),
4935         (gst_structure_remove_fields),
4936         (gst_structure_remove_fields_valist),
4937         (gst_structure_remove_all_fields), (gst_structure_foreach),
4938         (gst_structure_map_in_place),
4939         (gst_caps_structure_fixate_field_nearest_int),
4940         (gst_caps_structure_fixate_field_nearest_double):
4941         * gst/gststructure.h:
4942         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4943         (gst_system_clock_init), (gst_system_clock_dispose),
4944         (gst_system_clock_async_thread),
4945         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4946         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4947         * gst/gstsystemclock.h:
4948         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4949         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4950         * gst/gsttaginterface.c:
4951         * gst/gstthread.c: (gst_thread_dispose),
4952         (gst_thread_release_children_locks), (gst_thread_change_state),
4953         (gst_thread_main_loop):
4954         * gst/gsttrashstack.h:
4955         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4956         * gst/gsttypes.h:
4957         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4958         (gst_element_request_pad), (gst_element_get_pad_from_template),
4959         (gst_element_request_compatible_pad),
4960         (gst_element_get_compatible_pad_filtered),
4961         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4962         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4963         (gst_element_link_many), (gst_element_link),
4964         (gst_element_link_pads), (gst_element_unlink_pads),
4965         (gst_element_unlink_many), (gst_element_unlink),
4966         (gst_pad_can_link_filtered), (gst_pad_can_link),
4967         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4968         (gst_object_default_error), (gst_bin_add_many),
4969         (gst_bin_remove_many), (gst_element_populate_std_props),
4970         (gst_element_class_install_std_props), (gst_buffer_merge),
4971         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4972         (link_fold_func), (gst_pad_proxy_setcaps):
4973         * gst/gstutils.h:
4974         * gst/gstvalue.c: (gst_value_deserialize_string):
4975         * gst/parse/grammar.y:
4976         * gst/schedulers/gstbasicscheduler.c:
4977         (gst_basic_scheduler_cothreaded_chain),
4978         (gst_basic_scheduler_chain_recursive_add),
4979         (gst_basic_scheduler_pad_link):
4980         * gst/schedulers/gstoptimalscheduler.c:
4981         (get_group_schedule_function),
4982         (gst_opt_scheduler_state_transition),
4983         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4984         * libs/gst/bytestream/bytestream.c:
4985         * libs/gst/dataprotocol/dataprotocol.c:
4986         (gst_dp_header_from_buffer):
4987         * po/nb.po:
4988         * po/ru.po:
4989         * tests/threadstate/threadstate2.c: (eos):
4990         * tools/gst-compprep.c: (main):
4991         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4992         (print_pad_info), (print_children_info):
4993         * tools/gst-launch.c: (idle_func), (main):
4994         * tools/gst-md5sum.c: (idle_func), (main):
4995         * tools/gst-xmlinspect.c: (print_element_info):
4996         First THREADED backport attempt, focusing on adding locks and
4997         making sure the API is threadsafe. Needs more work. More docs
4998         follow this week.
4999
5000 2005-02-24  Andy Wingo  <wingo@pobox.com>
5001
5002         * tests/bench-complexity.scm:
5003         * tests/complexity.gnuplot: New files, good for running complexity
5004         benchmarks.
5005
5006         * tests/Makefile.am:
5007         * tests/complexity.c: New test, sets up N elements, at each level
5008         teeing into M streams per element. Eeeenteresting.
5009
5010         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5011         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5012         running bench-mass_elements.scm.
5013
5014         * tests/bench-mass_elements.scm: New script, runs mass_elements
5015         for various numbers of identities, outputting the results to a
5016         file. Requires guile 1.6. Just for testing.
5017
5018 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5019
5020         * gst/schedulers/fairscheduler.c:
5021           compile with debug disabled
5022
5023 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5024
5025         * configure.ac:
5026           hunting season on 0.9 is now OPEN
5027
5028 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5029
5030         * docs/libs/tmpl/gstcontrol.sgml:
5031         * docs/libs/tmpl/gstdparam.sgml:
5032         * docs/libs/tmpl/gstdplinint.sgml:
5033         * docs/libs/tmpl/gstdpman.sgml:
5034         * docs/libs/tmpl/gstdpsmooth.sgml:
5035         * docs/libs/tmpl/gstunitconvert.sgml:
5036           more docs for the state of dparams
5037
5038 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5039
5040         * gst/gstelementfactory.c: (gst_element_factory_create):
5041         * gst/gstobject.c: (gst_object_init),
5042         (gst_object_set_name_default), (gst_object_set_name):
5043           name objects by default, not in gst_element_factory_create. Allows
5044           using elements created with g_object_new. (fixes #167283)
5045
5046 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5047
5048         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5049           make the time that debugging functions print relative to when
5050           gst_init was called
5051
5052 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5053
5054         * gst/gsttaginterface.c:
5055           Fix inline docs: tag setter vararg functions are NULL-terminated,
5056           GST_TAG_INVALID doesn't exist any more.
5057
5058 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5059
5060         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5061         Allocate the 1 byte more memory that was forgotten!!!!!
5062         fixes memory corruption on 64bit platforms
5063
5064 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5065
5066         * docs/pwg/building-pads.xml:
5067         * docs/pwg/intro-basics.xml:
5068           fixed a few typos, relabeled introductionary list of types
5069         * docs/random/ensonic/dparams.txt:
5070           more notes abut dparam changes
5071         * libs/gst/control/dparam.c: (gst_dparam_attach):
5072         * libs/gst/control/dparammanager.c:
5073         * libs/gst/control/dparammanager.h:
5074           - many comments and notes on dparam implementation
5075           - new dparams are were not initialized to the default value
5076             from param spec
5077
5078 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5079
5080         submitted by: Peter Astakhov
5081
5082         * po/LINGUAS:
5083         * po/ru.po:
5084           adding Russian translation
5085
5086 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5087
5088         * configure.ac:
5089         * docs/gst/Makefile.am:
5090         * docs/libs/Makefile.am:
5091           make sure popt is added to gtk-doc flags.  Fixes #147782.
5092
5093 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5094
5095         * docs/faq/using.xml:
5096           Fix typo in FAQ (artssink => artsdsink)
5097
5098 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5099
5100         * tools/gst-launch.1.in:
5101           Fix typo (#166699).
5102
5103 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5104
5105         * docs/faq/using.xml:
5106           Add -v argument to fakesrc/fakesink gst-launch line,
5107           so that the promised output will actually show up.
5108
5109 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5110
5111         * gst/gstthread.c: (gst_thread_change_state):
5112           Implement state-change error handling (#166073).
5113
5114 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5115
5116         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5117           Release interrupt after handling (#166250).
5118
5119 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5120
5121         * configure.ac:
5122           back to HEAD
5123
5124 === release 0.8.9 ===
5125
5126 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5127
5128         * NEWS:
5129         * RELEASE:
5130         * configure.ac:
5131           releasing 0.8.9, "Like Eating Glass"
5132
5133 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5134
5135         submitted by: Clytie Siddall
5136
5137         * po/vi.po: Added Vietnamese translation
5138
5139 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5140
5141         patch by: Tim Philipp-Müller
5142
5143         * configure.ac:
5144         * gst/gstpad.c:
5145           unref data when probe function returns FALSE.  Fixes #166362
5146
5147 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5148
5149         * gst/gst.c: (gst_init_get_popt_table):
5150           Fix typo (#166269).
5151
5152 2005-02-04  Andy Wingo  <wingo@pobox.com>
5153
5154         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5155         the debugging on whether the caps are compatible.
5156
5157 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5158
5159         * docs/manual/basics-elements.xml:
5160           Fix two typos.
5161
5162 2005-02-02  Wim Taymans  <wim@fluendo.com>
5163
5164         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5165         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5166         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5167         Remove some FIXMEs after analysing and commenting why they
5168         are not issues.
5169
5170 2005-02-02  Wim Taymans  <wim@fluendo.com>
5171
5172         * gst/schedulers/gstoptimalscheduler.c:
5173         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5174         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5175         (get_invalid_call), (chain_invalid_call),
5176         (get_group_schedule_function), (loop_group_schedule_function),
5177         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5178         (gst_opt_scheduler_state_transition),
5179         (gst_opt_scheduler_add_element),
5180         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5181         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5182         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5183         (gst_opt_scheduler_show):
5184         Added lock to protect scheduler data structures.
5185
5186 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5187
5188         * testsuite/threads/threadi.c: (cb_data):
5189           Fix buglet in test.
5190
5191 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5192
5193         * testsuite/threads/Makefile.am:
5194         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5195           On Wim's request, split the test in three separately-compiled
5196           tests that each test a very specific bug. Two of them still fail,
5197           will create bugs for those. threadi.c indicates why they fail.
5198
5199 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5200
5201         * gst/schedulers/gstoptimalscheduler.c:
5202         (get_group_schedule_function):
5203           Try to work with the threading mess that queue_link is.
5204
5205 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5206
5207         * gst/gstbin.c: (gst_bin_remove_func):
5208           Explicitely make an element release locks in a group when being
5209           remove from a bin.
5210         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5211           If there's no scheduler, always return immediately (similar to
5212           gst_element_interrupt).
5213
5214 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5215
5216         * gst/gstbin.c: (gst_bin_child_state_change_func):
5217           Remove a piece of code that could never be reached.
5218         * docs/gst/gstreamer-sections.txt:
5219         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5220         (gst_pad_call_get_function):
5221         * gst/gstpad.h:
5222         * testsuite/pad/Makefile.am:
5223           Fix #150546, enable tests.
5224
5225 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5226
5227         * docs/pwg/advanced-types.xml:
5228           Fix description for buffer-frames=0.
5229         * docs/gst/tmpl/gstbin.sgml:
5230         * gst/gstbin.c: (gst_bin_child_state_change_func),
5231         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5232         * gst/gstbin.h:
5233         * testsuite/threads/Makefile.am:
5234         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5235         (cb_state), (cb_play), (main):
5236           Fix non-recursive state changes to *really* change the state
5237           of the object, and not just call parent_class->state_change.
5238           Fix a lot of lockups caused by this. Fixes #132775. Add test
5239           for the problem. Also enable test to show #142588 (fixed).
5240         * gst/gstthread.c: (gst_thread_change_state),
5241         (gst_thread_child_state_change):
5242           Don't exit the thread if we go to NULL and are inside thread
5243           context. Instead, return control to the main thread context
5244           and exit from there.
5245         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5246           Don't unset virtual functions, since those may still be used.
5247           That's not necessarily correct, but suffices for now.
5248         * configure.ac:
5249         * testsuite/Makefile.am:
5250         * testsuite/pad/Makefile.am:
5251         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5252         (gst_test_sink_base_init), (gst_test_sink_chain),
5253         (gst_test_sink_init), (main):
5254         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5255         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5256         (main):
5257         * testsuite/pad/link.c: (gst_test_element_class_init),
5258         (gst_test_element_base_init), (gst_test_src_get),
5259         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5260         (gst_test_filter_loop), (gst_test_filter_init),
5261         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5262         (cb_error), (main):
5263           Add tests to show #150546. Pass, but should fail (currently
5264           disabled from the testsuite).
5265         * gst/gstscheduler.c: (gst_scheduler_dispose):
5266           Dereference child schedulers on dispose (#94464).
5267         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5268           Fix typo.
5269         * testsuite/threads/thread.c: (main):
5270           Add more debug.
5271
5272 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5273
5274         * gst/gstpad.c: (gst_pad_push):
5275           Oops, revert previous commit, broke testsuite...
5276
5277 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5278
5279         * gst/gstpad.c: (gst_pad_push):
5280           Add check that the pad on which the push is performed is not a
5281           get-based pad (#150546).
5282
5283 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5284
5285         * gst/elements/gsttypefindelement.c:
5286         (gst_type_find_element_handle_event):
5287           Fix buffer pushing if stream EOSes during typefinding.
5288
5289 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5290
5291         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5292
5293         * gst/gstvalue.c: (gst_string_wrap):
5294           Allow NULL-strings as argument (#165365).
5295
5296 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5297
5298         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5299
5300         * gst/schedulers/faircothreads.c:
5301         (gst_fair_scheduler_cothread_queue_show):
5302           Fix build without debug enabled.
5303
5304 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5305
5306         * docs/gst/gstreamer-sections.txt:
5307         * docs/libs/gstreamer-libs-docs.sgml:
5308         * docs/libs/gstreamer-libs-sections.txt:
5309         * docs/libs/tmpl/gstcontrol.sgml:
5310         * docs/libs/tmpl/gstdparam.sgml:
5311         * docs/libs/tmpl/gstdplinint.sgml:
5312         * docs/libs/tmpl/gstdpman.sgml:
5313         * docs/libs/tmpl/gstdpsmooth.sgml:
5314         * docs/libs/tmpl/gstputbits.sgml:
5315         * docs/libs/tmpl/gstunitconvert.sgml:
5316         * libs/gst/control/dparam.c:
5317         * libs/gst/control/dparam.h:
5318         * libs/gst/control/dparammanager.c:
5319         (gst_dpman_add_required_dparam_callback),
5320         (gst_dpman_add_required_dparam_direct),
5321         (gst_dpman_add_required_dparam_array),
5322         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5323         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5324         (gst_dpman_get_manager)
5325           restructured DParam docs
5326
5327 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5328
5329         * gst-element-check.m4:
5330           Only check for gst-inspect if we haven't already
5331           found it in previous element check runs
5332
5333 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5334
5335         * docs/gst/Makefile.am:
5336         * docs/libs/Makefile.am:
5337           fixed install rules to treat style.css as optional
5338
5339 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5340
5341         * docs/gst/Makefile.am:
5342         * docs/libs/Makefile.am:
5343           install style.css along with docs
5344         * docs/gst/tmpl/gstbin.sgml:
5345         * docs/gst/tmpl/gstclock.sgml:
5346         * docs/gst/tmpl/gstdata.sgml:
5347         * docs/gst/tmpl/gstelement.sgml:
5348         * gst/gstbin.h:
5349         * gst/gstelement.c: (gst_element_class_init):
5350         * gst/gstelement.h:
5351           fixing incomplete docs
5352
5353 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5354
5355         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5356           Don't unref seek event twice when fflush() fails
5357           
5358 2005-01-22  David Schleef  <ds@schleef.org>
5359
5360         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5361
5362 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5363
5364         * docs/gst/Makefile.am:
5365         * docs/libs/Makefile.am:
5366           added params for deprecation guards
5367         * gst/gst.c:
5368         * gst/gst.h:
5369         * gst/gsterror.c: (_gst_resource_errors_init),
5370         (_gst_stream_errors_init):
5371         * gst/gsterror.h:
5372           documented some more enums
5373
5374 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5375         * gst/autoplug/gstspideridentity.c:
5376         Cosmetic fix - spider_find_peek should be static
5377         * gst/parse/parse.l:
5378         Applying fix for #164261
5379
5380 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5381
5382         * docs/gst/gstreamer-sections.txt:
5383         * docs/gst/tmpl/gstplugin.sgml:
5384         * docs/libs/gstreamer-libs-sections.txt:
5385         * docs/libs/tmpl/gstcontrol.sgml:
5386         * gst/gstbuffer.h:
5387         * gst/gsttag.h:
5388         * gst/gstvalue.c:
5389           added docs for the TAG defines
5390
5391 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5392
5393         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5394           Only unref entry if there is an entry.
5395
5396 2005-01-17  Wim Taymans  <wim@fluendo.com>
5397
5398         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5399         (remove_from_group), (schedule_group), (normalize_group),
5400         (gst_opt_scheduler_iterate):
5401         Also ref/unref decoupled elements before iterating the
5402         group since they are not added to the list of elements.
5403
5404 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5405
5406         * docs/manual/highlevel-components.xml:
5407           Add subtitle/streamselection as new features to playbin.
5408
5409 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5410
5411         * docs/manual/manual.xml:
5412           Re-enable dataaccess docs (oops).
5413
5414 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5415
5416         * docs/pwg/advanced-types.xml:
5417         * docs/random/mimetypes:
5418           Add documentation on libsndfile types (#163309), by Steve Baker
5419           <steve@stevebaker.org>.
5420         * gst/gstelement.c: (gst_element_release_request_pad):
5421           If an element has no explicit function, just remove the pad.
5422
5423 2005-01-17  Luca Ognibene  <luogni@tin.it>
5424
5425         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5426
5427         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5428           Fix memleak (#163801).
5429
5430 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5431
5432         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5433           I think this is actually more correct...
5434
5435 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5436
5437         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5438           Another workaround for memory access while destroyed in callback.
5439           Please, someone with refcount knowledge, have a look at this.
5440
5441 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5442
5443         * docs/faq/faq.xml:
5444         * docs/faq/legal.xml:
5445           move the legal Q&A here
5446
5447 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5448
5449         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5450         (gst_tee_request_new_pad):
5451           Fix negotiation.
5452
5453 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5454
5455         * docs/random/omega/caps2:
5456         * testsuite/caps/caps_strings:
5457           replace framerate aproximations by their real value
5458           (24000/1001, 30000/1001, 60000/1001)
5459           Partially fixes bug #164049
5460
5461 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5462
5463         * docs/gst/Makefile.am:
5464           don't fail on the stupid GstPoptOption
5465
5466 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5467
5468         * gst/gstpad.h:
5469         * gst/gstprobe.c:
5470           allow probes to work on ghost pads by realizing the pad
5471           probe debugging
5472
5473 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5474
5475         * docs/gst/gstreamer-sections.txt:
5476         * docs/gst/tmpl/gstpad.sgml:
5477         * gst/gstpad.c: (gst_pad_set_active_recursive):
5478         * gst/gstpad.h:
5479           Add gst_pad_set_active_recursive().
5480
5481 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5482
5483         * docs/random/release:
5484           updates
5485         * gst/gst_private.h:
5486         * gst/gstinfo.c:
5487         * gst/gstobject.c:
5488           move deep_notify logging to a new category
5489         * gst/gstprobe.c:
5490         * gst/gstprobe.h:
5491           add stuff so bindings can wrap probes
5492
5493 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5494
5495         * gst/gstplugin.c: (gst_plugin_load):
5496           Fix plugin loading if plugin/lib was already loaded. Fixes
5497           #163383
5498
5499 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5500
5501         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5502
5503         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5504           Protect plugin loading by a mutex so it's threadsafe. Fixes
5505           #163234.
5506
5507 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5508
5509         * gst/gstevent.c: (_gst_event_copy):
5510           Reference source object when copying events, since it'll be
5511           dereferenced on event dereferencing as well.
5512
5513 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5514
5515         * docs/gst/gstreamer-sections.txt:
5516         * docs/gst/tmpl/gstevent.sgml:
5517         * gst/gstevent.c: (gst_event_new_filler_stamped),
5518         (gst_event_filler_get_duration):
5519         * gst/gstevent.h:
5520           Add two new functions for filler events (which are used to
5521           synchronize streams if one of them is not having any data
5522           for a while) without interrupting the actual data-stream.
5523           Basically a no-op.
5524         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5525         (gst_queue_link_sink), (gst_queue_link_src),
5526         (gst_queue_change_state):
5527           Allow for renegotiation while filled. Required for stream
5528           switching while playing.
5529
5530 2005-01-08  Benjamin Otte  <otte@gnome.org>
5531
5532         * gst/gstelement.c: (gst_element_link_many):
5533           fix up g_return_if_fail's
5534         * po/LINGUAS:
5535         * po/de.po:
5536           add German translation, that was somehow not included
5537
5538 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5539
5540         * docs/random/mimetypes:
5541           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5542           do not add them to riff-lib as they are not common
5543
5544 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5545
5546         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5547           Check for existence of probe after performing the probe before
5548           re-accessing it to prevent segfaults caused by removal of the
5549           probe in the callback.
5550
5551 2005-01-05  David Schleef  <ds@schleef.org>
5552
5553         * testsuite/registry/Makefile.am:
5554         * testsuite/registry/gst-print-formats.c:
5555         (print_pad_templates_info), (print_element_list),
5556         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5557         (g_list_uniqify), (get_pad_templates_info),
5558         (get_element_mime_list), (print_mime_list), (main): A little
5559         program that looks through the registry to find elements of
5560         a given type.  Not particularly interesting as a test, except
5561         that there's no other test covering the same area.
5562
5563 2005-01-05  David Schleef  <ds@schleef.org>
5564
5565         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5566         (fault_handler_sigaction), (fault_spin),
5567         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5568         in signal.h-type signal handlers by not calling forbidden functions,
5569         including gst_element_set_state().
5570
5571 2005-01-05  David Schleef  <ds@schleef.org>
5572
5573         * gst/gstvalue.h: Mark _gst_reserved[] as private
5574
5575 2005-01-05  David Schleef  <ds@schleef.org>
5576
5577         * gst/gstvalue.c: Fix doc build problem.
5578
5579 2005-01-05  David Schleef  <ds@schleef.org>
5580
5581         * gst/gstvalue.c: Add some documentation
5582
5583 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5584
5585         * docs/README:
5586           another shell oneliner for empty return value docs
5587         * gst/gstcaps.c:
5588         * gst/gstvalue.c:
5589         * libs/gst/control/dparam.c:
5590           more doc fixes (parameters and return values)
5591
5592 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5593
5594         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5595
5596         * gst/gstregistry.h:
5597         * gst/registries/gstxmlregistry.c:
5598           Fix macro's for Mingw (fixes #162276).
5599
5600 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5601
5602         * docs/README:
5603           quick shell oneliner to find undocumented members
5604         * docs/gst/tmpl/gstplugin.sgml:
5605         * docs/gst/tmpl/gstscheduler.sgml:
5606         * docs/gst/tmpl/gstthread.sgml:
5607           more enumtypes cleanup
5608         * gst/gsterror.h:
5609           activated documentation comments, now someone needs to document
5610           the enums :(
5611
5612 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5613
5614         * docs/manual/manual.xml:
5615           Add dataaccess part (doh!).
5616
5617 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5618
5619         * docs/manual/advanced-autoplugging.xml:
5620           Fix typo (intiate -> initiate).
5621
5622 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5623
5624         * docs/random/bbb/streamselection:
5625           Add some notes on how to handle multi-subtitle/-audio streams.
5626
5627 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5628
5629         * docs/gst/gstreamer-docs.sgml:
5630         * docs/gst/gstreamer-sections.txt:
5631         * docs/gst/tmpl/gstenumtypes.sgml:
5632         * docs/gst/tmpl/gsterror.sgml:
5633         * docs/gst/tmpl/gstevent.sgml:
5634         * docs/gst/tmpl/gstpad.sgml:
5635         * docs/gst/tmpl/gstpadtemplate.sgml:
5636         * docs/gst/tmpl/gstthread.sgml:
5637           removed gstenumtypes section from docs and put all the enums into
5638           their sections
5639
5640 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5641
5642         * gst/gstplugin.c:
5643           document gst_library_load a bit more (riff special case + return
5644           value if already loaded)
5645         * testsuite/bytestream/filepadsink.c:
5646           plugin name is 'gstbytestream', not 'bytestream'
5647
5648 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5649
5650         * docs/random/bbb/subtitles:
5651           Add some first mind rumblings on proper subtitle support.
5652
5653 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5654
5655         * po/ca.po:
5656         * po/sv.po:
5657           updated translations
5658
5659 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5660
5661         * docs/manual/advanced-dataaccess.xml:
5662           Add section on how to use fakesrc/fakesink/identity in your
5663           application, plus section on how to embed plugins. Also mention
5664           probes.
5665         * docs/manual/appendix-checklist.xml:
5666         * docs/manual/appendix-debugging.xml:
5667         * docs/manual/appendix-gnome.xml:
5668         * docs/manual/appendix-integration.xml:
5669           Debug -> checklist, GNOME -> integration, add sections on Linux,
5670           KDE integration and add other things useful for application
5671           development.
5672         * docs/manual/manual.xml:
5673           Remove some fixmes, update some file pointers.
5674         * docs/pwg/appendix-checklist.xml:
5675           Fix typo.
5676         * docs/pwg/building-boiler.xml:
5677           Remove ugly header and add commented fixme.
5678         * docs/pwg/pwg.xml:
5679           Add fixme.
5680         * examples/manual/Makefile.am:
5681           Add example for added docs.
5682
5683 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5684
5685         * configure.ac:
5686           back to HEAD
5687
5688 === release 0.8.8 ===
5689
5690 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5691
5692         * NEWS:
5693         * RELEASE:
5694         * configure.ac:
5695           Releasing 0.8.8, "I'll Take Care Of You"
5696
5697 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5698
5699         * configure.ac:
5700           second prerelease
5701
5702 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5703
5704         patch by: Wim Taymans
5705
5706         * gst/gstbin.c:
5707           Fix for #159852 - make iterate emission threadsafe
5708
5709 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5710
5711         * docs/faq/cvs.xml:
5712           notes about new fdo account request
5713
5714 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5715
5716         * docs/gst/gstreamer-docs.sgml:
5717         * docs/gst/tmpl/gstenumtypes.sgml:
5718         * docs/gst/tmpl/gstplugin.sgml:
5719         * docs/libs/gstreamer-libs-docs.sgml:
5720           Added missing short docs. Added ids for navigation.
5721
5722 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5723
5724         * docs/manual/advanced-autoplugging.xml:
5725         * docs/manual/advanced-schedulers.xml:
5726         * docs/manual/advanced-threads.xml:
5727           Rewrites. Remove cothreads, go a bit into opt specifically,
5728           document threads and their gotchas, and do some technical stuff
5729           on autoplugging plus add some working examples. Fixes #157395.
5730         * examples/manual/Makefile.am:
5731           Add typefind/autoplugger example (one that actually works).
5732           Remove queue example since it's a duplicate of the thread one.
5733
5734 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5735
5736         * gst/gstvalue.c: (gst_value_deserialize_string):
5737           use deprecated g_value_set_string_take_ownership to keep compatible
5738           with glib 2.2
5739
5740 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5741
5742         * gst/gstvalue.c: (gst_value_deserialize_string):
5743           revert last patch, only dom a g_utf8_validate now before accepting
5744           the string - caps parsing strips " from strings so we can't rely on
5745           them
5746         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5747           disable a test that tested the above and comment it
5748
5749 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5750
5751         Patch reviewed by David Schleef  <ds@schleef.org>
5752
5753         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5754         bug #153882)
5755         * win32/gstenumtypes.h: same
5756
5757 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5758
5759         * gst/gstpad.c: (gst_pad_query):
5760           Do query on realized pad, similar to how convert/send_event handle
5761           this. Also makes sense, since this pad belongs to the function to
5762           which this query will be sent. Fixes #158163.
5763
5764 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5765
5766         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5767
5768 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5769
5770         * docs/faq/general.xml: fix pipeline to actually work
5771
5772 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5773
5774         * gst/gstvalue.c: (gst_value_deserialize_string):
5775           check that a simple string that gets deserialized does not contain
5776           invalid characters
5777         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5778           remove a test that tested a wring behaviour
5779
5780 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5781
5782         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5783
5784         * docs/manual/intro-motivation.xml:
5785           Fix typos.
5786
5787 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5788
5789         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5790
5791         * docs/gst/tmpl/gstprobe.sgml:
5792           Fix documentation of probe callback - it is supposed to return
5793           FALSE, not TRUE, to remove data from the stream (#159087).
5794
5795 2004-12-16  Daniel Gazard  <dany42@free.fr>
5796
5797         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5798
5799         * gst/gstelementfactory.c: (gst_element_factory_create):
5800           Fix compile failure if compiling without libxml2 support (#149936).
5801
5802 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5803
5804         * docs/manual/advanced-autoplugging.xml:
5805         * docs/manual/highlevel-components.xml:
5806           Move spider from autoplugging to components. Autoplugging is for
5807           internals, not for solutions. ;-).
5808
5809 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5810
5811         * docs/random/ds/0.9-suggested-changes:
5812           Make note on device/location/uri property names.
5813
5814 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5815
5816         * docs/manual/advanced-autoplugging.xml:
5817         * docs/manual/advanced-clocks.xml:
5818         * docs/manual/advanced-interfaces.xml:
5819         * docs/manual/advanced-metadata.xml:
5820         * docs/manual/advanced-position.xml:
5821         * docs/manual/advanced-schedulers.xml:
5822         * docs/manual/advanced-threads.xml:
5823         * docs/manual/appendix-gnome.xml:
5824         * docs/manual/appendix-programs.xml:
5825         * docs/manual/appendix-quotes.xml:
5826         * docs/manual/autoplugging.xml:
5827         * docs/manual/basics-bins.xml:
5828         * docs/manual/basics-data.xml:
5829         * docs/manual/basics-elements.xml:
5830         * docs/manual/basics-helloworld.xml:
5831         * docs/manual/basics-init.xml:
5832         * docs/manual/basics-pads.xml:
5833         * docs/manual/basics-plugins.xml:
5834         * docs/manual/bins-api.xml:
5835         * docs/manual/bins.xml:
5836         * docs/manual/buffers-api.xml:
5837         * docs/manual/buffers.xml:
5838         * docs/manual/clocks.xml:
5839         * docs/manual/components.xml:
5840         * docs/manual/cothreads.xml:
5841         * docs/manual/debugging.xml:
5842         * docs/manual/dparams-app.xml:
5843         * docs/manual/dynamic.xml:
5844         * docs/manual/elements-api.xml:
5845         * docs/manual/elements.xml:
5846         * docs/manual/factories.xml:
5847         * docs/manual/gnome.xml:
5848         * docs/manual/goals.xml:
5849         * docs/manual/helloworld.xml:
5850         * docs/manual/helloworld2.xml:
5851         * docs/manual/highlevel-components.xml:
5852         * docs/manual/highlevel-xml.xml:
5853         * docs/manual/init-api.xml:
5854         * docs/manual/intro-basics.xml:
5855         * docs/manual/intro-motivation.xml:
5856         * docs/manual/intro-preface.xml:
5857         * docs/manual/intro.xml:
5858         * docs/manual/links-api.xml:
5859         * docs/manual/links.xml:
5860         * docs/manual/manual.xml:
5861         * docs/manual/motivation.xml:
5862         * docs/manual/pads-api.xml:
5863         * docs/manual/pads.xml:
5864         * docs/manual/plugins-api.xml:
5865         * docs/manual/plugins.xml:
5866         * docs/manual/programs.xml:
5867         * docs/manual/queues.xml:
5868         * docs/manual/quotes.xml:
5869         * docs/manual/schedulers.xml:
5870         * docs/manual/states-api.xml:
5871         * docs/manual/states.xml:
5872         * docs/manual/threads.xml:
5873         * docs/manual/typedetection.xml:
5874         * docs/manual/win32.xml:
5875         * docs/manual/xml.xml:
5876           Try 2. This time, include a short preface as a "general
5877           introduction", also add code blocks around all code samples
5878           so they get compiled. We still need a way to tell readers
5879           the filename of the code sample. In some cases, don't show
5880           all code in the documentation, but do include it in the generated
5881           code. This allows for focussing on specific bits in the docs,
5882           while still having a full test application available.
5883         * examples/manual/Makefile.am:
5884           Fix up examples for new ADM. Add several of the new examples that
5885           were either added or were missing from the build system.
5886         * examples/manual/extract.pl:
5887           Allow nameless blocks.
5888
5889 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5890
5891         * docs/manual/elements-api.xml:
5892         * docs/manual/helloworld.xml:
5893         * examples/manual/extract.pl:
5894           fix last example.  Add example of adding code blocks that are not
5895           shown in docbook output.
5896
5897 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5898
5899         * docs/manual/dynamic.xml:
5900         * docs/manual/elements-api.xml:
5901         * docs/manual/gnome.xml:
5902         * docs/manual/helloworld2.xml:
5903         * docs/manual/init-api.xml:
5904         * docs/manual/queues.xml:
5905         * docs/manual/threads.xml:
5906         * docs/manual/xml.xml:
5907         * examples/manual/extract.pl:
5908           Make it possible to extract example code from separate blocks.
5909           Should make Ronald happy.
5910
5911 2004-12-15  Wim Taymans  <wim@fluendo.com>
5912
5913         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5914         (remove_from_group), (group_elements_set_visited),
5915         (normalize_group), (gst_opt_scheduler_iterate):
5916         Fix bug where a flag was not updated on a decoupled entry point 
5917         because we were just checking the group element list and decoupled
5918         elements are not in that list..
5919
5920 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5921
5922         * docs/manual/advanced-autoplugging.xml:
5923         * docs/manual/advanced-clocks.xml:
5924         * docs/manual/advanced-dparams.xml:
5925         * docs/manual/advanced-interfaces.xml:
5926         * docs/manual/advanced-metadata.xml:
5927         * docs/manual/advanced-position.xml:
5928         * docs/manual/advanced-schedulers.xml:
5929         * docs/manual/advanced-threads.xml:
5930         * docs/manual/appendix-debugging.xml:
5931         * docs/manual/appendix-gnome.xml:
5932         * docs/manual/appendix-programs.xml:
5933         * docs/manual/appendix-quotes.xml:
5934         * docs/manual/appendix-win32.xml:
5935         * docs/manual/autoplugging.xml:
5936         * docs/manual/basics-bins.xml:
5937         * docs/manual/basics-data.xml:
5938         * docs/manual/basics-elements.xml:
5939         * docs/manual/basics-helloworld.xml:
5940         * docs/manual/basics-init.xml:
5941         * docs/manual/basics-pads.xml:
5942         * docs/manual/basics-plugins.xml:
5943         * docs/manual/bins-api.xml:
5944         * docs/manual/bins.xml:
5945         * docs/manual/buffers-api.xml:
5946         * docs/manual/buffers.xml:
5947         * docs/manual/clocks.xml:
5948         * docs/manual/components.xml:
5949         * docs/manual/cothreads.xml:
5950         * docs/manual/debugging.xml:
5951         * docs/manual/dparams-app.xml:
5952         * docs/manual/dynamic.xml:
5953         * docs/manual/elements-api.xml:
5954         * docs/manual/elements.xml:
5955         * docs/manual/factories.xml:
5956         * docs/manual/gnome.xml:
5957         * docs/manual/goals.xml:
5958         * docs/manual/helloworld.xml:
5959         * docs/manual/helloworld2.xml:
5960         * docs/manual/highlevel-components.xml:
5961         * docs/manual/highlevel-xml.xml:
5962         * docs/manual/init-api.xml:
5963         * docs/manual/intro-motivation.xml:
5964         * docs/manual/intro-preface.xml:
5965         * docs/manual/intro.xml:
5966         * docs/manual/links-api.xml:
5967         * docs/manual/links.xml:
5968         * docs/manual/manual.xml:
5969         * docs/manual/motivation.xml:
5970         * docs/manual/pads-api.xml:
5971         * docs/manual/pads.xml:
5972         * docs/manual/plugins-api.xml:
5973         * docs/manual/plugins.xml:
5974         * docs/manual/programs.xml:
5975         * docs/manual/queues.xml:
5976         * docs/manual/quotes.xml:
5977         * docs/manual/schedulers.xml:
5978         * docs/manual/states-api.xml:
5979         * docs/manual/states.xml:
5980         * docs/manual/threads.xml:
5981         * docs/manual/typedetection.xml:
5982         * docs/manual/win32.xml:
5983         * docs/manual/xml.xml:
5984           First try at rewriting the ADM. Needs lotsamore work, but some
5985           parts might already be somewhat useful.
5986         * docs/pwg/advanced-interfaces.xml:
5987           Remove properties interface, it never actually existed (except for
5988           on my HD...).
5989
5990 2004-12-13  David Schleef  <ds@schleef.org>
5991
5992         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5993         be NULL (bug #160220).
5994
5995 2004-12-13  David Schleef  <ds@schleef.org>
5996
5997         * configure.ac: remove all mmx stuff, because it's not used.
5998         * docs/random/ds/0.9-suggested-changes: additional notes
5999         * include/Makefile.am: we don't use these anymore
6000         * include/mmx.h: remove
6001         * include/sse.h: remove
6002
6003 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6004
6005         * docs/random/mimetypes:
6006           Add FOURCC code for h264 codec (VSSH)
6007           Add alternate FOURCC codes for h263 related codecs
6008
6009 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6010
6011         * docs/manual/programs.xml:
6012           Added more gst-launch examples.
6013
6014 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6015
6016         * gst/gstqueue.c: (gst_queue_handle_src_query):
6017           Check for availability again.
6018
6019 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6020
6021         * gst/gstcaps.c: (gst_caps_compare_structures):
6022           Simple caps go first. This has the nice side-effect of fixing an
6023           obscure warning.
6024
6025 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6026
6027         * gst/gstversion.h.in:
6028           Protect header.
6029
6030 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6031
6032         * gst/schedulers/gstoptimalscheduler.c:
6033         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6034         (gst_opt_scheduler_get_wrapper):
6035           When we're recursing into a chain run, only run the directly
6036           related group, not all queued ones. This will fix a possible
6037           deadlock in chains with more than two groups.
6038
6039 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6040
6041         * autogen.sh:
6042           remove patch if autopoint fails
6043
6044 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6045
6046         * docs/gst/gstreamer-sections.txt:
6047           Document Thomas' addition, fix build, make Luis the sheriff happy.
6048
6049 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6050
6051         * gst/gstplugin.c:
6052         * gst/gstplugin.h:
6053           add accessor for version field
6054
6055 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6056
6057         submitted by: Luca Ferretti <elle.uca@infinito.it>
6058
6059         * po/LINGUAS:
6060         * po/it.po:
6061           New tranlation added: Italian
6062
6063 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6064
6065         * gst/gstpad.c: (gst_pad_is_negotiated),
6066         (gst_pad_get_negotiated_caps):
6067           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6068           it doesn't actually check the contents), so be sure to hand it
6069           a RealPad else we'll crash.
6070
6071 2004-12-03  Wim Taymans  <wim@fluendo.com>
6072
6073         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6074         (gst_queue_link), (gst_queue_handle_src_query):
6075         Reverted to 1.110 until this makes the testsuite and various
6076         apps work.
6077
6078 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6079
6080         * docs/upload.mak: fix included CVS conflict strings
6081
6082 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6083
6084         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6085
6086         * gst/gstelement.c: (gst_element_error_full):
6087           Use g_error_new_literal because error text may have
6088           percentage signs in it. Fixes #160019.
6089
6090 2004-12-01  Benjamin Otte  <otte@gnome.org>
6091
6092         * gst/elements/gstbufferstore.c:
6093         (gst_buffer_store_add_buffer_func):
6094           don't try to make subbuffers bigger than they can be. (fixes
6095           #159970)
6096
6097 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6098
6099         * docs/gst/gstreamer-sections.txt:
6100         * docs/gst/tmpl/gstvalue.sgml:
6101           Add new function to docs to fix build.
6102
6103 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6104
6105         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6106         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6107         (_gst_pad_default_fixate_foreach):
6108         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6109         * gst/gstvalue.h:
6110           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6111           in some cases (arrays), the fixedness depends on the content.
6112         * gst/gstqueue.c: (gst_queue_handle_src_query):
6113           Check for availability before doing something.
6114
6115 2004-11-29  Wim Taymans  <wim@fluendo.com>
6116
6117         * testsuite/threads/Makefile.am:
6118         * testsuite/threads/signals.c: (gst_test_get_type),
6119         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6120         (gst_test_set_property), (gst_test_get_property),
6121         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6122         (gst_test_do_prop), (run_thread), (main):
6123         Added a bunch of testcases that show threadsafety bugs in glib.
6124
6125 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6126
6127         * docs/manual/programs.xml:
6128           Added a first batch of gst-launch examples, as provided by Ronald
6129           and others from the devel-mlist
6130
6131 2004-11-28  Benjamin Otte  <otte@gnome.org>
6132
6133         * gst/gstelement.c: (gst_element_negotiate_pads):
6134           simplify
6135         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6136         (gst_value_serialize_string), (gst_value_deserialize_string):
6137           add unwrapping of previously wrapped strings. Fix bug in wrapping
6138           while at it.
6139         * testsuite/caps/value_serialize.c: (test1),
6140         (test_string_serialization), (test_string_deserialization), (main):
6141           add tests for string (de)serialization
6142
6143 2004-11-26  Wim Taymans  <wim@fluendo.com>
6144
6145         * testsuite/threads/159566.c: (object_deep_notify), (main):
6146         * testsuite/threads/Makefile.am:
6147         Added testsuite to show bug #159566
6148
6149 2004-11-25  Wim Taymans  <wim@fluendo.com>
6150
6151         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6152         (gst_thread_child_state_change), (gst_thread_main_loop):
6153         Ref the thread object in the GThread mainloop. Break out of the
6154         thread mainloop if it holds the last ref. This properly exits
6155         the threads when disposing the thread from its own context. It
6156         also avoids possible deadlocks in the dispose function.
6157
6158 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6159
6160         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6161         it is necessary to wait.
6162
6163 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6164
6165         * docs/pwg/building-boiler.xml:
6166           Make description somewhat clearer.
6167
6168 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6169
6170         * docs/upload.mak:
6171           Apparently docs changed location on FDO's server.
6172
6173 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6174
6175         * docs/pwg/appendix-checklist.xml:
6176           Add some random notes on things to check when writing an element.
6177           This list can be extended as people see fit.
6178
6179 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6180
6181         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6182         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6183         pad. The queue will now wait until it is empty and forward the new
6184         caps to the source.
6185         * gst/gstbin.c (gst_bin_set_element_sched)
6186         (gst_bin_unset_element_sched): Make sure that all elements and
6187         links are registered and unregistered with the scheduler exactly
6188         once. This elaborates on a fix by Benjamin Otte, but
6189         guarantees that decoupled elements are also registered.
6190
6191 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6192
6193         * docs/manual/quotes.xml:
6194           add a quote
6195         * configure.ac:
6196         * gst/gst.c:
6197         * gst/gstinfo.c:
6198           add LIBDIR and move init message higher up so it's at the start
6199
6200 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6201
6202         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6203         * gstreamer.spec.in: add fair
6204
6205 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6206
6207         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6208         * gst/elements/gstidentity.c: (gst_identity_class_init):
6209           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6210           <teuf@gnome.org> (#157263).
6211         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6212         (gst_type_find_handle_src_query):
6213           Subtract size of internally stored data from position queries.
6214
6215 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6216
6217         * gst/schedulers/fairscheduler.c:
6218         * gst/schedulers/faircothreads.c:
6219         * gst/schedulers/faircothreads.h:
6220         New cothread based scheduler: Fair scheduler.
6221         * gst/schedulers/gthread-cothreads.h: 
6222         Add the standard #if around the whole file.
6223         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6224         compilation of the functions defined in this file. This is
6225         necessary to be able to use this file as a normal header.
6226         * gst/schedulers/Makefile.am: Add compiling support for fair
6227         scheduler.
6228         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6229         scheduler cothreads layer from documentation generation.
6230
6231 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6232
6233         * gst/autoplug/gstspideridentity.c:
6234         (gst_spider_identity_sink_loop_type_finding):
6235           Don't crash if that function is not implemented.
6236
6237 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6238
6239         * docs/pwg/advanced-types.xml:
6240           Another typo.
6241
6242 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6243
6244         * docs/pwg/intro-preface.xml:
6245           Hm, ok, so the brackets weren't really useful...
6246         * docs/pwg/other-ntoone.xml:
6247           Fix embarassing typo.
6248
6249 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6250
6251         * docs/pwg/intro-preface.xml:
6252           Rewrite preface.
6253
6254 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6255
6256         * docs/pwg/advanced-scheduling.xml:
6257         * docs/pwg/advanced-tagging.xml:
6258         * docs/pwg/advanced-types.xml:
6259         * docs/pwg/building-boiler.xml:
6260         * docs/pwg/building-chainfn.xml:
6261         * docs/pwg/building-signals.xml:
6262         * docs/pwg/building-state.xml:
6263         * docs/pwg/building-testapp.xml:
6264         * docs/pwg/intro-basics.xml:
6265         * docs/pwg/other-manager.xml:
6266         * docs/pwg/other-source.xml:
6267           Typo fixes.
6268         * docs/pwg/other-manager.xml:
6269           Add some first content. No example code yet.
6270         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6271           Remove double newlines.
6272
6273 2004-11-04  Wim Taymans  <wim@fluendo.com>
6274
6275         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6276         (remove_from_group), (normalize_group), (group_migrate_connected),
6277         (gst_opt_scheduler_iterate):
6278         * testsuite/schedulers/.cvsignore:
6279         * testsuite/schedulers/Makefile.am:
6280         * testsuite/schedulers/queue_link.c: (main):
6281         Added testcase for scheduler segfault.
6282         Fix scheduler segfault when removing a decoupled
6283         entry point as the last element from a group.
6284
6285 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6286
6287         * gst/gstmarshal.list: add missing marshaller, fixes build
6288
6289 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6290
6291         * docs/random/signal: added notes about using BOXED for GstBuffer
6292         signal marshallers, not POINTER
6293
6294 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6295
6296         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6297         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6298         POINTER=>BOXED changes to marshal GstBuffers
6299
6300 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6301
6302         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6303         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6304
6305 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6306
6307         * docs/gst/gstreamer-sections.txt:
6308         * docs/gst/tmpl/gstcaps.sgml:
6309         * docs/gst/tmpl/gsterror.sgml:
6310         * docs/gst/tmpl/gstinfo.sgml:
6311         * docs/gst/tmpl/gstmacros.sgml:
6312         * docs/gst/tmpl/gstutils.sgml:
6313         * docs/random/ensonic/interfaces.txt:
6314         * gst/gstinfo.h:
6315           added some more docs, removed two obsolete defines
6316
6317 2004-11-02  Kjartan Maraas <as at gnome.org>
6318
6319         reviewed by: Wim Taymans, Ronald Bultje.
6320
6321         * gst/cothreads.c: (cothread_create):
6322         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6323         (gst_bin_child_state_change_func):
6324         * gst/gstbuffer.c: (gst_buffer_span):
6325         * gst/gstelement.c: (gst_element_get_index),
6326         (gst_element_get_event_masks), (gst_element_get_query_types),
6327         (gst_element_get_formats):
6328         * gst/gsterror.c: (_gst_core_errors_init),
6329         (_gst_library_errors_init), (_gst_resource_errors_init),
6330         (_gst_stream_errors_init):
6331         * gst/gstobject.c: (gst_object_default_deep_notify):
6332         * gst/gstpad.c: (gst_pad_get_event_masks),
6333         (gst_pad_get_internal_links_default):
6334         * gst/gstplugin.c: (gst_plugin_register_func),
6335         (gst_plugin_get_module):
6336         * gst/gststructure.c: (gst_structure_get_string),
6337         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6338         (gst_structure_to_abbr):
6339         * gst/gstutils.c: (gst_print_element_args):
6340         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6341         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6342         Aplied part of patch #157127: Cleanup of issues reported by 
6343         sparse.
6344         Also do not try to use cothreads when there is no cothread
6345         context yet.
6346
6347 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6348
6349         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6350         (gst_opt_scheduler_iterate):
6351         Applied patch #154061. Running a pipeline in which an element 
6352         calls GST_ELEMENT_ERROR in the chain function, the opt 
6353         scheduler doesn't unref the chain so it never gets freed.
6354
6355 2004-11-02  Wim Taymans  <wim@fluendo.com>
6356
6357         * gst/gststructure.c: (gst_structure_get_abbrs),
6358         (gst_structure_from_abbr), (gst_structure_to_abbr):
6359         Remove that ugly if-then thing in the code that converts
6360         between strings and types.
6361
6362 2004-11-02  Wim Taymans  <wim@fluendo.com>
6363
6364         * gst/gstscheduler.c: (gst_scheduler_add_element),
6365         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6366         Aplied clock distribution patch, this should fix bug
6367         #148787.
6368
6369 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6370
6371         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6372
6373         * po/LINGUAS:
6374         * po/nb.po:
6375           Added Norwegian Bokmaal translation
6376
6377 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6378
6379         * tools/gst-inspect.c: (print_signal_info):
6380           print signal arguments as pointers if they are
6381
6382 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6383
6384         * docs/pwg/building-boiler.xml:
6385           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6386
6387 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6388
6389         * gst/parse/parse.l:
6390         * testsuite/parse/parse1.c: (main):
6391         Since parse can do 'element name=a:b' make 'a:b.' work as
6392         well. 
6393         Added testcase to verify fix.
6394
6395 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6396
6397         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6398         Use the realpad when printing the direction.
6399         Add extra \n when printing extensions of typefind factories.
6400
6401 2004-10-13  David Schleef  <ds@schleef.org>
6402
6403         * examples/manual/Makefile.am: $< isn't portable in Makefile
6404         rules.
6405
6406 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6407
6408         * docs/gst/tmpl/gstobject.sgml:
6409         * docs/gst/tmpl/gstplugin.sgml:
6410         * docs/gst/tmpl/gstpluginfeature.sgml:
6411         * docs/gst/tmpl/gstregistry.sgml:
6412         * docs/gst/tmpl/gstversion.sgml:
6413         * gst/gstbin.c:
6414           more api documentation
6415         * gst/gstplugin.c: (gst_plugin_register_func),
6416         (gst_plugin_check_file), (gst_plugin_load_file):
6417           better error signaling and logging
6418
6419 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6420
6421         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6422           Subtract current queue contents from position queries.
6423
6424 2004-10-11  Johan Dahlin  <johan@gnome.org>
6425
6426         * gst/gsturi.c (gst_uri_get_location): unescape string
6427         (gst_uri_construct): escape string.
6428
6429 2004-10-11  Benjamin Otte  <otte@gnome.org>
6430
6431         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6432         (gst_pad_try_set_caps_nonfixed):
6433           allow renegotiation of unconnected pads (as inside spider). Simply
6434           return OK if unconnected - mimic try_set_caps there.
6435
6436 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6437
6438         * gst/gstbin.c: (gst_bin_sync_children_state):
6439           Add missing break.
6440
6441 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6442
6443         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6444         Set element to EOS before sending EOS event
6445
6446 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6447
6448         * gst/elements/gsttypefindelement.c:
6449         (gst_type_find_element_handle_event):
6450         Handle EOS events when doing the transition from
6451         typefind to data passing. This should fix the
6452         infinite loops in short files.
6453
6454 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6455
6456         * gst/gstthread.c: (gst_thread_change_state),
6457         (gst_thread_child_state_change):
6458         Make sure no iteration happens while performing
6459         the state change as it could mess up the internal
6460         consistency of the thread state.
6461
6462 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6463
6464         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6465         (gst_thread_change_state), (gst_thread_child_state_change):
6466         Do not try to grab the iterate lock in the state change method
6467         when we are in the same thread as the iterate or else we
6468         could deadlock. Some other cleanups.
6469
6470 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6471
6472         * configure.ac:
6473           bump nano to cvs
6474
6475 === release 0.8.7 ===
6476
6477 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6478
6479         * configure.ac:
6480         * NEWS:
6481         * RELEASE:
6482         * configure.ac:
6483           releasing 0.8.7, "A Cruise"
6484
6485 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6486
6487         * docs/random/mimetypes:
6488         Add an entry for Sony ATRAC3 audio format with mime-type
6489         used by rmdemux et riff-read
6490
6491 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6492
6493         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6494         Push the buffer store instead of clearing it in case that
6495         the stream is not seekable.
6496
6497 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6498
6499         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6500         (gst_thread_main_loop):
6501         Lock the iteration and the state change so that automatic
6502         negotiation and fixation does not happen at the same time
6503         as the in stream negotiation.
6504
6505 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6506
6507         * configure.ac:
6508           bump nano to cvs
6509
6510 === release 0.8.6 ===
6511
6512 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6513
6514         * configure.ac:
6515         * NEWS:
6516         * RELEASE:
6517         * configure.ac:
6518           releasing 0.8.6, "Narc"
6519
6520 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6521
6522         * configure.ac:
6523           prerel bump
6524
6525 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6526
6527         patch by: Steve Lhomme
6528
6529         * gst/elements/gstfakesrc.c:
6530         * gst/elements/gstidentity.c:
6531         * gst/gstthread.c:
6532           Fix for #153881
6533
6534 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6535
6536         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6537         Fix threadsafety of the crc checking function.
6538
6539 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6540
6541         patch by: Ronald Bultje
6542
6543         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6544         (gst_type_find_element_handle_event),
6545         (gst_type_find_element_chain):
6546         * gst/elements/gsttypefindelement.h:
6547          #153657.
6548          Filter out discont event from seekable sources when typefind
6549          asks them to seek.  Fixes typefind with demuxers for
6550          avi, asf and matroska.
6551
6552 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6553
6554         * docs/gst/gstreamer-sections.txt:
6555         * gst/gstcaps.c:
6556         * gst/gstcaps.h:
6557         * gst/gstpad.c:
6558           Revert preferred caps: (#147789)
6559
6560 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6561
6562         * win32/dirent.c:
6563           fix a memory leak
6564
6565 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6566
6567         * configure.ac:
6568           bump for prerelease
6569
6570 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6571
6572         * docs/Makefile.am:
6573         * docs/manual/elements-api.xml:
6574           restructure so that common stuff is shown first
6575         * docs/manual/init-api.xml:
6576           convert to examples
6577         * docs/manual/manual.xml:
6578         * docs/manuals.mak:
6579         * docs/url.entities:
6580           link to API on the website, possibly override later in build
6581         * examples/manual/.cvsignore:
6582           ignore more
6583         * examples/manual/Makefile.am:
6584           add more examples
6585         * examples/manual/extract.pl:
6586           error out on failure
6587
6588 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6589
6590         * docs/gst/tmpl/gstthread.sgml:
6591         * docs/manual/init-api.xml:
6592         * examples/manual/Makefile.am:
6593           convert two code bits to examples
6594
6595 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6596
6597         * gst/gstelement.c: (gst_element_change_state):
6598           Well, actually, I was about to remove this insane assert when
6599           I noticed Wim already did that. A warning is nice so we can
6600           fix actual ugs (using --g-fatal-warnings and backtraces), so
6601           I added that instead.
6602
6603 2004-09-06  Wim Taymans  <wim@fluendo.com>
6604
6605         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6606         (gst_element_threadsafe_properties_post_run),
6607         (gst_element_set_state), (gst_element_change_state):
6608         Added extra refcounting around various places. 
6609
6610 2004-09-06  Wim Taymans  <wim@fluendo.com>
6611
6612         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6613         Fix debug info.
6614
6615 2004-09-06  Wim Taymans  <wim@fluendo.com>
6616
6617         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6618         (remove_from_group):
6619         Some more debug info.
6620
6621 2004-09-03  Wim Taymans  <wim@fluendo.com>
6622
6623         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6624         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6625         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6626         (gst_fakesrc_get), (gst_fakesrc_change_state):
6627         * gst/elements/gstfakesrc.h:
6628         * gst/elements/gstidentity.c: (gst_identity_class_init),
6629         (gst_identity_init), (gst_identity_chain),
6630         (gst_identity_set_property), (gst_identity_get_property),
6631         (gst_identity_change_state):
6632         * gst/elements/gstidentity.h:
6633         Added datarate properties to limit the datarate.
6634
6635 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6636
6637         * gst/autoplug/gstspider.c: (plugin_init):
6638           don't set a rank. We don't want to autoplug by inserting spiders.
6639
6640 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6641
6642         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6643         (gst_spider_identity_plug):
6644           add a template for spider's sink
6645         * gst/gst.c: (gst_register_core_elements):
6646           queue's rank should be NULL, we don't want spider to add it.
6647
6648 2004-08-18  David Schleef  <ds@schleef.org>
6649
6650         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6651         * docs/libs/Makefile.am: same
6652         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6653         * docs/random/ds/0.9-planning: random additions
6654         * docs/random/ds/0.9-suggested-changes: same
6655         * gst/gstxml.h: remove vestigal GstXMLNs definition
6656
6657         Preferred caps: (#147789)
6658         * docs/gst/gstreamer-sections.txt: Add symbols
6659         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6660         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6661         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6662         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6663         (gst_caps_get_preferred), (gst_caps_set_preferred),
6664         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6665         (gst_caps_use_preferred): Handle caps preferences
6666         * gst/gstcaps.h: Add caps preferences
6667         * gst/gstpad.c: (gst_pad_link_get_preferred),
6668         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6669         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6670         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6671         negotiation.
6672
6673 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6674
6675         * gst/autoplug/gstspideridentity.c:
6676         (gst_spider_identity_request_new_pad):
6677         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6678         (gst_aggregator_init):
6679         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6680         (gst_fakesink_init):
6681         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6682         (gst_fakesrc_init):
6683         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6684         (gst_fdsink_init):
6685         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6686         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6687         (gst_filesink_init):
6688         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6689         (gst_filesrc_init):
6690         * gst/elements/gstidentity.c: (gst_identity_base_init),
6691         (gst_identity_init):
6692         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6693         (gst_multifilesrc_init):
6694         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6695         (gst_pipefilter_init):
6696         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6697         (gst_statistics_init):
6698         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6699         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6700           s/gst_pad_new/&_from_template/
6701           register pad templates in the base_init function
6702           add static pad template definitions
6703
6704 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6705
6706         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6707         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6708         * testsuite/refcounting/pad.c: (main):
6709         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6710           s/gst_pad_new/&_from_template/
6711           prepare deprecation of gst_pad_new
6712
6713 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6714
6715         patch by: Luca Ognibene <skaboy81@virgilio.it>
6716
6717         * gst/gstcaps.c:
6718         * gst/gstelement.c:
6719         * gst/gstpad.c:
6720         * gst/gstxml.c:
6721           fix memleaks.  Fixes #150001
6722
6723 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6724
6725         * docs/random/ds/0.9-suggested-changes:
6726           add notes - mostly about pad templates
6727
6728 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6729
6730         * win32/GStreamer.vcproj:
6731           temporary locale files are .gmo not .mo
6732
6733 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6734
6735         * configure.ac: bump nano to cvs
6736
6737 === release 0.8.5 ===
6738
6739 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6740
6741         * configure.ac:
6742           releasing 0.8.5, "Stuttgart"
6743         * NEWS:
6744         * RELEASE:
6745         * configure.ac:
6746         * docs/random/release:
6747           updates for release
6748
6749 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6750
6751         patch by: Wim Taymans (wim@fluendo.com)
6752
6753         * gst/gstbuffer.c:
6754         * gst/gstindex.h:
6755         * libs/gst/dataprotocol/dataprotocol.c:
6756           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6757
6758 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6759
6760         * Makefile.am:
6761         * win32/MANIFEST:
6762           add win32 dir to the build.  Fixes #149981.
6763
6764 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6765
6766         * configure.ac:
6767           bump libtool versioning
6768         * gst/gststructure.c:
6769           mark function as static
6770         * po/af.po:
6771         * po/az.po:
6772         * po/ca.po:
6773         * po/cs.po:
6774         * po/en_GB.po:
6775         * po/fr.po:
6776         * po/nl.po:
6777         * po/sq.po:
6778         * po/sr.po:
6779         * po/sv.po:
6780         * po/tr.po:
6781         * po/uk.po:
6782           translations update
6783         * win32/README.txt:
6784           trademark protection
6785
6786 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6787
6788         * configure.ac:
6789           fix GST_ORIGIN
6790           set GST_PACKAGE to source, and distinguish between release and other
6791         * tools/gst-inspect.c:
6792           print out plugin an element factory is part of so we see this info
6793
6794 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6795
6796         * docs/gst/gstreamer-sections.txt:
6797         * docs/gst/tmpl/gstbuffer.sgml:
6798         * docs/gst/tmpl/gstschedulerfactory.sgml:
6799           reorder docs a little, make GstBuffer's more sensible.
6800         * gst/gstbuffer.h:
6801           API: added GST_BUFFER_FLAG_DELTA_UNIT
6802         * gst/gstscheduler.c:
6803           comment API addition
6804
6805 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6806
6807         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6808           work with non-regular files that can be mmapped (like /dev/zero)
6809         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6810           get rid of typefinds that require a seek when we can't seek instead
6811           of trying them over and over again
6812         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6813           return non-zero failure value when the pipeline was interrupted or
6814           an error occurred
6815
6816 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6817
6818         * win32/config.h:
6819         * win32/GStreamer.vcproj:
6820           compile and install the locales
6821
6822 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6823
6824         * gst/gstvalue.c:
6825           fix a possible memory leak under Windows
6826
6827 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6828
6829         * win32/GStreamer.vcproj:
6830           fix a memory leak that occured under Windows
6831         * win32/gstreamer.def:
6832           add gst_scheduler_register
6833
6834 2004-08-11  Benjamin Otte  <otte@gnome.org>
6835
6836         * docs/gst/gstreamer-sections.txt:
6837         * gst/gstscheduler.c: (gst_scheduler_register):
6838         * gst/gstscheduler.h:
6839           API:
6840           add gst_scheduler_register shortcut similar to gst_element_register
6841         * gst/schedulers/entryscheduler.c: (plugin_init):
6842         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6843         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6844           use it
6845
6846 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6847
6848         * gst/gstvalue.h:
6849           fix a memory leak that occured under Windows
6850
6851 2004-08-10  Colin Walters  <walters@redhat.com>
6852
6853         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6854         Don't use O_EXCL to open temporary registry.  It will prevent
6855         registry creation if a temporary one already exists, which
6856         is unnecessary.
6857
6858 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6859
6860         * docs/gst/gstreamer-sections.txt:
6861         * docs/gst/tmpl/gstvalue.sgml:
6862           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6863
6864 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6865
6866         * win32/gstbytestream.vcproj:
6867         * win32/gstelements.vcproj:
6868         * win32/gstgetbits.vcproj:
6869         * win32/gst-inspect.vcproj:
6870         * win32/gst-launch.vcproj:
6871         * win32/gstoptimalscheduler.vcproj:
6872         * win32/GStreamer.vcproj:
6873         * win32/gst-register.vcproj:
6874         * win32/gstspider.vcproj:
6875           update the include and lib dirs to fit standard libraries as
6876           described in the Win32 manual
6877
6878 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6879
6880         * win32/config.h:
6881         * win32/gstversion.h:
6882           enable NLS again, push the version number for the coming 0.8.5 release
6883
6884 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6885
6886         * gst/gstvalue.h:
6887           export gst_type_XXX for windows DLLs
6888
6889 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6890
6891         * docs/faq/gst-uninstalled:
6892           fix PKG_CONFIG_PATH and PYTHONPATH
6893         * gst/schedulers/Makefile.am:
6894           cleanup
6895         * libs/gst/bytestream/bytestream.c:
6896           remove newline
6897         * po/LINGUAS:
6898         * po/sq.po:
6899           adding Albanian translation (Laurent Dhima)
6900         * po/cs.po:
6901           updated
6902
6903 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6904
6905         * po/ca.po:
6906         * po/sv.po:
6907           updated translations
6908
6909 2004-08-04  Benjamin Otte  <otte@gnome.org>
6910
6911         * tests/mass_elements.c: (main):
6912           allow specifying src and sink element explicitly, so I can test
6913           videotestsrc instead of fakesrc
6914
6915 2004-08-04  Benjamin Otte  <otte@gnome.org>
6916
6917         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6918         (gst_structure_id_empty_new), (gst_structure_empty_new),
6919         (gst_structure_copy):
6920           add gst_structure_id_empty_new_with_size to allow preallocating
6921           value array sizes. Use this in gst_structure_copy to get rid of
6922           reallocs.
6923           don't do quark=>string=>quark when copying structures
6924
6925 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6926
6927         * docs/manual/win32.xml:
6928         * win32/README.txt:
6929           update documentation with the clean version of dependencies
6930
6931 2004-08-03  Benjamin Otte  <otte@gnome.org>
6932
6933         * gst/schedulers/entryscheduler.c:
6934         (gst_entry_scheduler_remove_element):
6935           fix for GST_DISABLE_DEBUG
6936         * tools/gst-launch.c: (print_tag):
6937           fixes for G_DISABLE_ASSERT
6938
6939 2004-08-03  Benjamin Otte  <otte@gnome.org>
6940
6941         * gst/gst.c: (gst_register_core_elements):
6942           fix for G_DISABLE_ASSERT
6943         * gst/gstinfo.c: (__gst_in_valgrind):
6944           add for GST_DISABLE_DEBUG
6945
6946 2004-08-03  Benjamin Otte  <otte@gnome.org>
6947
6948         * gst/parse/parse.l:
6949           fix for G_DISABLE_ASSERT
6950
6951 2004-08-03  Wim Taymans  <wim@fluendo.com>
6952
6953         * gst/gstbin.c: (gst_bin_get_type),
6954         (gst_bin_child_state_change_func):
6955         * gst/gstthread.c: (gst_thread_change_state):
6956         Backported some debug logging from a reverted patch
6957         Don't try to destroy the thread twice. Added some more
6958         debugging in GstThread. Unlock and signal even if we
6959         are in the thread context.
6960
6961 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6962
6963         * po/uk.po:
6964           updated translation
6965
6966 2004-07-30  David Schleef  <ds@schleef.org>
6967
6968         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6969
6970 2004-07-29  David Schleef  <ds@schleef.org>
6971
6972         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6973         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6974
6975 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6976
6977         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6978         (gst_bin_add_func), (gst_bin_remove_func),
6979         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6980         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6981         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6982         (gst_bin_sync_children_state):
6983         * gst/gstbin.h:
6984         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6985         (gst_thread_change_state):
6986         * testsuite/states/Makefile.am:
6987           revert state change patches as agreed so we can rework them
6988           gradually
6989
6990 2004-07-29  Benjamin Otte  <otte@gnome.org>
6991
6992         * libs/gst/control/Makefile.am:
6993           link to libgstreamer (fixes Debian bug 262019, see
6994           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6995
6996 2004-07-29  Wim Taymans  <wim@fluendo.com>
6997
6998         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6999         (check_from_fraction_convert), (transform_test), (main):
7000         Make the test less pedantic about float roundoff errors.
7001
7002 2004-07-29  Benjamin Otte  <otte@gnome.org>
7003
7004         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7005         (gst_filesrc_srcpad_event):
7006           make seek events to before start/after end of file not fail, but
7007           seek to start/end instead
7008         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7009           add more output
7010
7011 2004-07-29  Benjamin Otte  <otte@gnome.org>
7012
7013         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7014           check that caps are fixed
7015         * gst/gstpad.c: (gst_pad_template_new):
7016           don't try to simplify caps, costs too much time on gst_init
7017         * gst/gstplugin.c: (gst_plugin_add_feature):
7018           G_ERROR if features are added twice
7019         * gst/gsttypefind.c: (gst_type_find_register):
7020         * gst/gstelementfactory.c: (gst_element_register):
7021           don't add features twice
7022         * docs/random/ds/0.9-suggested-changes:
7023           add note about possible gst_init optimization
7024
7025 2004-07-28  David Schleef  <ds@schleef.org>
7026
7027         * testsuite/elements/Makefile.am:
7028         * testsuite/elements/struct_i386.h:
7029         * testsuite/elements/struct_size.c: (main):  A little test
7030         to keep distcheck from working if someone changes a structure
7031         size accidentally.
7032
7033 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7034
7035         * docs/libs/Makefile.am:
7036         * docs/libs/gstreamer-libs-docs.sgml:
7037         * docs/libs/gstreamer-libs-sections.txt:
7038         * docs/libs/tmpl/gstbytestream.sgml:
7039         * docs/libs/tmpl/gstcontrol.sgml:
7040         * docs/libs/tmpl/gstdataprotocol.sgml:
7041         * docs/libs/tmpl/gstgetbits.sgml:
7042         * libs/gst/bytestream/Makefile.am:
7043         * libs/gst/bytestream/bytestream.c:
7044         * libs/gst/bytestream/bytestream.h:
7045         * libs/gst/control/Makefile.am:
7046         * libs/gst/dataprotocol/Makefile.am:
7047         * libs/gst/getbits/Makefile.am:
7048         * libs/gst/getbits/getbits.h:
7049           various doc and style fixes, adding bytestream to libs docs.
7050
7051 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7052
7053         * docs/gst/gstreamer-docs.sgml:
7054         * docs/libs/Makefile.am:
7055         * docs/libs/gstreamer-libs-docs.sgml:
7056         * docs/libs/gstreamer-libs-sections.txt:
7057         * libs/gst/control/dparam.c:
7058           more doc fixes.  gst-libs docs now build the same way as gst.
7059
7060 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7061
7062         * configure.ac:
7063         * testsuite/Makefile.am:
7064         * testsuite/bins/Makefile.am:
7065         * testsuite/caps/Makefile.am:
7066         * testsuite/cleanup/Makefile.am:
7067         * testsuite/clock/Makefile.am:
7068         * testsuite/debug/Makefile.am:
7069         * testsuite/dlopen/Makefile.am:
7070         * testsuite/dynparams/Makefile.am:
7071         * testsuite/elements/.cvsignore:
7072         * testsuite/elements/Makefile.am:
7073         * testsuite/enumcaps/Makefile.am:
7074         * testsuite/enumcaps/enumcaps.c:
7075         * testsuite/ghostpads/Makefile.am:
7076         * testsuite/indexers/Makefile.am:
7077         * testsuite/negotiation/Makefile.am:
7078         * testsuite/parse/Makefile.am:
7079         * testsuite/plugin/Makefile.am:
7080         * testsuite/refcounting/Makefile.am:
7081         * testsuite/schedulers/.cvsignore:
7082         * testsuite/states/Makefile.am:
7083         * testsuite/tags/Makefile.am:
7084         * testsuite/threads/Makefile.am:
7085           fold enumcaps into caps dir
7086           clean up Makefile.am's for testsuite
7087
7088 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7089
7090         * docs/gst/Makefile.am:
7091         * docs/libs/Makefile.am:
7092           clean up docs build.  Fixes needless rebuilding of template files.
7093
7094 2004-07-28  Wim Taymans  <wim@fluendo.com>
7095
7096         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7097         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7098         Make sure that a bin state change tries to keep the children
7099         in sync. 
7100         Added debug logging to the thread.
7101
7102 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7103
7104         * win32/GStreamer.vcproj:
7105         * win32/gstreamer.def:
7106           more exports for the plugins
7107
7108 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7109
7110         * win32/gstgetbits.vcproj:
7111         * win32/gstgetbits.def:
7112         * win32/msvc71.sln:
7113           add support for the getbits plugin
7114
7115 2004-07-27  Wim Taymans  <wim@fluendo.com>
7116
7117         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7118         (gst_value_transform_fraction_double), (_gst_value_initialize):
7119         * testsuite/caps/Makefile.am:
7120         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7121         (check_from_fraction_convert), (transform_test), (main):
7122         Added transform functions between double and fraction.
7123         Added testcase to verify transforms
7124
7125 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7126
7127         * win32/GStreamer.vcproj:
7128           rename GStreamer-0.8.lib to libgstreamer.lib
7129
7130 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7131
7132         * win32/gstelements.vcproj:
7133         * win32/gstoptimalscheduler.vcproj:
7134           fixes for the Release build
7135
7136 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7137
7138         * win32/config.h:
7139           update the version number
7140
7141 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7142
7143         * win32/GStreamer.vcproj:
7144           add gstinterface to the build
7145
7146 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7147
7148         * win32/gstreamer.def:
7149           add many definitions needed by plugins,
7150           GST_CAT_DEFAULT only available in the Debug build ?
7151
7152 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7153
7154         * gst/gstelement.c: (gst_element_set_eos_recursive):
7155           various whitespace fixes.
7156           doc fix, fixes #148497
7157
7158 2004-07-25  Benjamin Otte  <otte@gnome.org>
7159
7160         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7161           don't delay links on the sink elements, it causes unnegotiated
7162           links.
7163         * gst/elements/gsttypefindelement.c:
7164         (gst_type_find_element_base_init):
7165           add our padtemplates, we indeed do have some.
7166         * gst/elements/gsttypefindelement.c:
7167         (gst_type_find_element_handle_event),
7168         (gst_type_find_element_chain):
7169           don't push data when typefinding failed.
7170         * gst/gstpad.c: (gst_pad_link_fixate):
7171           check that no fixate function returns empty caps.
7172         * gst/gstpad.c: (gst_pad_push):
7173           check that the link is negotiated before data gets pushed.
7174         * tools/gst-register.c: (main):
7175           don't assert (fixes #148283)
7176
7177 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7178
7179         * docs/gst/gstreamer-sections.txt:
7180         * docs/gst/tmpl/gstconfig.sgml:
7181           add GST_PLUGIN_EXPORT definition
7182
7183 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7184
7185         * gst/gstplugin.h:
7186         * gst/gstconfig.h.in:
7187         * win32/gstconfig.h:
7188         * win32/gstelements.def:
7189         * win32/gstelements.vcproj:
7190         * win32/gstoptimalscheduler.def:
7191         * win32/gstoptimalscheduler.vcproj:
7192         * win32/gstspider.def:
7193         * win32/gstspider.vcproj:
7194           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7195
7196 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7197
7198         * docs/gst/gstreamer-sections.txt:
7199           remove GST_CAT_DEFAULT because the type has changed
7200
7201 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7202
7203         * win32/gstbytestream.vcproj:
7204         * win32/gstelements.vcproj:
7205         * win32/gst-inspect.vcproj:
7206         * win32/gst-launch.vcproj:
7207         * win32/gstoptimalscheduler.vcproj:
7208         * win32/GStreamer.vcproj:
7209         * win32/gst-register.vcproj:
7210         * win32/gstspider.vcproj:
7211         * win32/msvc71.sln:
7212           Copy the files where needed after building, The testsuite will be
7213           built separately
7214
7215 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7216
7217         * win32/config.h:
7218         * win32/README.txt:
7219         * docs/manual/win32.xml:
7220         Fixed the plugin and GStreamer location
7221
7222 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7223
7224         * win32/gstreamer.def:
7225         More exports for the plugins
7226
7227 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7228
7229         * gst/gstinfo.h:
7230         Marc was right, we need to export literally GST_CAT_DEFAULT
7231
7232 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7233
7234         * win32/config.h:
7235         NLS crashes in gettext, disabled until this is solved
7236
7237 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7238
7239         * win32/gst-inspect.vcproj:
7240         * win32/gst-launch.vcproj:
7241         Should use NLS when available
7242
7243 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7244
7245         * gst/registries/gstxmlregistry.c:
7246         removing the file doesn't seem to be a good idea on Linux
7247
7248 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7249
7250         * gst/registries/gstxmlregistry.c:
7251         Remove the registry before renaming the tempfile (needed for Windows)
7252
7253 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7254
7255         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7256         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7257         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7258         * gst/elements/gstmultifilesrc.h:
7259         Added newmedia property so it generates newmedia events between each
7260         file when property is set, as well as fixed eos handling
7261
7262 2004-07-22  David Schleef  <ds@schleef.org>
7263
7264         * gst/gststructure.c: (gst_structure_id_empty_new),
7265         (gst_structure_empty_new):  Set type field correctly.
7266         * gst/gststructure.h: Check type field correctly.
7267         * testsuite/caps/Makefile.am:
7268         * testsuite/caps/structure.c: (test1), (main): Add a very small
7269         test for structures.
7270
7271 2004-07-22  David Schleef  <ds@schleef.org>
7272
7273         * docs/random/ds/0.9-suggested-changes: more comments
7274         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7275
7276 2004-07-22  Benjamin Otte  <otte@gnome.org>
7277
7278         * gst/gstelementfactory.c: (gst_element_register):
7279           set the factory in the class struct, so gst_element_get_factory
7280           actually works
7281         * gst/parse/grammar.y:
7282           set element to playing when it gets unlocked as we can't rely on the
7283           bin state - all elements in the bin state might still be locked in
7284           NULL)
7285
7286 2004-07-22  Benjamin Otte  <otte@gnome.org>
7287
7288         * gst/gstelement.c: (gst_element_set_state_func):
7289           make this a static function
7290
7291 2004-07-22  Wim Taymans  <wim@fluendo.com>
7292
7293         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7294         (gst_opt_scheduler_pad_link):
7295         fix 147894-2 and the group_link problem.
7296
7297 2004-07-22  Wim Taymans  <wim@fluendo.com>
7298
7299         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7300         (handoff_identity), (main):
7301         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7302         (handoff_identity), (main):
7303         * testsuite/schedulers/Makefile.am:
7304         * testsuite/schedulers/group_link.c: (main):
7305         Show bug in scheduler when linking chain and loop based element 
7306         where the chain based element was not yet in a group.
7307
7308 2004-07-21  Benjamin Otte  <otte@gnome.org>
7309
7310         * gst/.cvsignore:
7311         * gst/autoplug/.cvsignore:
7312         * gst/elements/.cvsignore:
7313         * gst/indexers/.cvsignore:
7314         * libs/gst/bytestream/.cvsignore:
7315         * libs/gst/control/.cvsignore:
7316         * libs/gst/getbits/.cvsignore:
7317         * testsuite/states/.cvsignore:
7318         * testsuite/threads/.cvsignore:
7319           keep this up to date, since I seem to be the only one who cares
7320           about not missing files on commits (editor's note: no you don't,
7321           but feel free to change them at the time you add stuff instead
7322           of later on)
7323
7324 2004-07-21  Benjamin Otte  <otte@gnome.org>
7325
7326         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7327         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7328         (gst_bin_child_state_change_func), (set_kid_state_func),
7329         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7330           make state changes work correctly and reentrant (so removing
7331           elements from bins during state changes of bins doesn't cause
7332           segfaults or even wrong states)
7333           add debugging category and debugging output to print children states
7334         * gst/gstbin.c: (gst_bin_dispose): 
7335           add some assertion checks
7336         * gst/gstbin.h:
7337         * gst/gstbin.c: (gst_bin_sync_children_state):
7338           deprecate this function - it just does gst_bin_set_state (bin,
7339           GST_STATE (bin)) 
7340         * testsuite/threads/queue.c: (main):
7341           don't use gst_bin_sync_children_state anymore
7342         * testsuite/states/Makefile.am:
7343         * testsuite/states/bin.c:
7344           test that the state changes of bins work as expected
7345         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7346           some adjustments to change states correctly, too
7347         * gst/gstthread.c: (gst_thread_change_state):
7348           don't enable/disable "threadsafe" properties, they're unused and
7349           cause random segfaults
7350         * testsuite/threads/Makefile.am:
7351           the queue check randomly passes now, ignore it
7352
7353 2004-07-21  Benjamin Otte  <otte@gnome.org>
7354
7355         * gst/gstpad.c:
7356           check if data is NULL before outputting debug info. (fixes #145100)
7357
7358 2004-07-21  Benjamin Otte  <otte@gnome.org>
7359
7360         * gst/schedulers/entryscheduler.c:
7361         (gst_entry_scheduler_loop_wrapper),
7362         (gst_entry_scheduler_chain_wrapper),
7363         (gst_entry_scheduler_get_wrapper):
7364           reset the state when the cothread starts, so we don't get assertion
7365           failures on restarting of cothreads
7366
7367 2004-07-20  Benjamin Otte  <otte@gnome.org>
7368
7369         * gst/gstelement.c: (gst_element_link_pads_filtered):
7370           use correct sinkpad, if only sinkpad is specified, but not srcpad
7371           (fixes #147889)
7372         * gst/gstelement.c: (gst_element_set_state_func),
7373         (gst_element_change_state): ref/unref the element, signal handlers
7374         could get rid of the element otherwise
7375
7376 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7377
7378         * docs/random/ds/0.9-suggested-changes:
7379           Make note about renaming fixed-list to array.
7380         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7381         (_gst_value_initialize):
7382           Add array intersections.
7383         * testsuite/caps/intersect2.c: (main):
7384           Add test for array intersections.
7385
7386 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7387
7388         * configure.ac: back to cvs
7389
7390 === release 0.8.4 ===
7391
7392 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7393
7394         * configure.ac:
7395           releasing 0.8.4, "Paella"
7396           bump libtool versioning
7397
7398 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7399
7400         * po/LINGUAS:
7401         * po/ca.po:
7402           adding Catalan translation (Jordi Mallach)
7403
7404 2004-07-20  Wim Taymans  <wim@fluendo.com>
7405
7406         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7407         (handoff_identity), (main):
7408         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7409         (handoff_identity), (main):
7410         * testsuite/schedulers/Makefile.am:
7411         Added failing testcase for variant of #147894
7412
7413 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7414
7415         patch by: David Moore
7416
7417         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7418         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7419         (group_migrate_connected):
7420         * testsuite/schedulers/Makefile.am:
7421           fix for #142813 (Deadlock in optimal scheduler)
7422
7423 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7424
7425         patch by: Wim Taymans
7426
7427         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7428         (gst_opt_scheduler_schedule_run_queue),
7429         (gst_opt_scheduler_get_wrapper), (get_group),
7430         (group_migrate_connected):
7431         * testsuite/schedulers/Makefile.am:
7432           fix for #147819 (Add some checks in the opt scheduler)
7433
7434 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7435
7436         patch by: Benjamin Otte
7437
7438         * gst/gstelementfactory.c: (__gst_element_details_set):
7439           fix for #147929: running gst-register in non-utf8 locale can cause
7440           invalid registry
7441
7442 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7443
7444         patch by: Wim Taymans
7445
7446         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7447         (group_has_element), (element_get_reachables_func),
7448         (group_migrate_connected):
7449           fix for #147894 (opt scheduler decoupled elements mismanagement)
7450         * testsuite/schedulers/Makefile.am:
7451           testsuite app now passes
7452
7453 2004-07-19  Wim Taymans  <wim@fluendo.com>
7454
7455         * testsuite/schedulers/147819.c: (handoff_identity1),
7456         (handoff_identity2), (main):
7457         * testsuite/schedulers/Makefile.am:
7458         Added testcase for bug 147819
7459
7460 2004-07-19  Wim Taymans  <wim@fluendo.com>
7461
7462         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7463         (handoff_identity), (main):
7464         * testsuite/schedulers/Makefile.am:
7465         Added testcase for bug 147894
7466
7467 2004-07-16  Wim Taymans  <wim@fluendo.com>
7468
7469         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7470         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7471         * testsuite/schedulers/Makefile.am:
7472         Added testsuite for bug 142183 in its two incarnations. Refcount
7473         is not increased for scheduled elements and threadsafe properties
7474         mutexes are not properly unlocked.
7475
7476 2004-07-16  Wim Taymans  <wim@fluendo.com>
7477
7478         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7479         (create_chain), (destroy_chain), (create_group), (destroy_group),
7480         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7481         (group_dec_link), (gst_opt_scheduler_pad_link),
7482         (group_inc_links_for_element), (group_migrate_connected):
7483         Call group_inc_link with the proper src->sink ordering -- 
7484         break this, and we break sort_chain. patch from wingo for bug
7485         147713.
7486         Partially revert patch 1.89. When adding a loop based element to 
7487         the scheduler, the links to other groups are automatically followed
7488         and incremented. This should not happen because the bin will call
7489         pad_link explicitly for those connection, resulting in them counted 
7490         twice. Results in assertion failure on pipeline cleanup.
7491
7492 2004-07-16  Wim Taymans  <wim@fluendo.com>
7493
7494         * testsuite/schedulers/143777-2.c: (main):
7495         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7496         (main):
7497         * testsuite/schedulers/Makefile.am:
7498         Added cleanup code to testcase 143777-2.
7499         Added testcase to show bug 147713, does not really show the
7500         deadlock as I can't figure out how to trigger it, but it does
7501         demonstrate bad ordering in the scheduler.
7502
7503 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7504
7505         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7506           change strndup to g_strndup.  Fixes #147707
7507
7508 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7509
7510         * po/af.po:
7511         * po/az.po:
7512         * po/cs.po:
7513         * po/en_GB.po:
7514         * po/fr.po:
7515         * po/nl.po:
7516         * po/sr.po:
7517         * po/sv.po:
7518         * po/tr.po:
7519         * po/uk.po:
7520           updated translations
7521
7522 2004-07-16  Benjamin Otte  <otte@gnome.org>
7523
7524         * gst/gstvalue.c: (gst_greatest_common_divisor):
7525           use ints and return ints, fractions only use ints, too, so this
7526           avoids accidently casting multiplications to unsigned
7527         (gst_value_lcopy_fraction): it's ints, not uint32
7528         (gst_value_set_fraction): disallow minint, multiplying and negation
7529           are broken with it
7530         (gst_value_fraction_multiply): fix to make large numbers work and get
7531         rid of the assumption that the multiplication of two ints fits an
7532         int64 - dunno if that's true for all systems
7533         * testsuite/caps/Makefile.am:
7534         * testsuite/caps/fraction-multiply-and-zero.c:
7535         (check_multiplication), (check_equal), (zero_test), (main):
7536           add tests for all the stuff above
7537         * testsuite/caps/value_compare.c: (test1):
7538           fix comment
7539         * tests/.cvsignore:
7540         * testsuite/caps/.cvsignore:
7541         * testsuite/debug/.cvsignore:
7542         * testsuite/dlopen/.cvsignore:
7543         * testsuite/states/.cvsignore:
7544           get up to date
7545
7546 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7547
7548         * docs/manual/bins-api.xml:
7549         * docs/manual/factories.xml:
7550         * docs/manual/helloworld.xml:
7551         * docs/manual/links-api.xml: 
7552           fixes for out of date info, incorrect info and grammar
7553
7554 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7555
7556         * docs/manual/pads.xml:
7557         * docs/manual/pads-api.xml: grammar fix
7558
7559 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7560
7561         * docs/manual/pads-api.xml: typo + grammar fix
7562
7563 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7564
7565         * docs/gst/gstreamer-sections.txt:
7566           add new symbols
7567         * docs/gst/tmpl/gstelement.sgml:
7568         * docs/gst/tmpl/gstpad.sgml:
7569         * docs/gst/tmpl/gsttypes.sgml:
7570         * docs/gst/tmpl/gstvalue.sgml:
7571           update docs
7572         * gst/gststructure.c: (gst_structure_set_valist),
7573         (gst_structure_from_abbr), (gst_structure_to_abbr):
7574         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7575         (gst_greatest_common_divisor), (gst_value_init_fraction),
7576         (gst_value_copy_fraction), (gst_value_collect_fraction),
7577         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7578         (gst_value_get_fraction_numerator),
7579         (gst_value_get_fraction_denominator),
7580         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7581         (gst_value_deserialize_fraction),
7582         (gst_value_transform_fraction_string),
7583         (gst_value_transform_string_fraction),
7584         (gst_value_compare_fraction), (_gst_value_initialize):
7585         * gst/gstvalue.h:
7586           adding GstFraction GValue type, get/set, and multiply
7587         * testsuite/caps/Makefile.am:
7588         * testsuite/caps/fraction.c: (test), (main):
7589         * testsuite/caps/string-conversions.c: (main):
7590         * testsuite/caps/value_compare.c: (test1), (main):
7591           add regression tests for GstFraction
7592
7593 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7594         
7595         * docs/manual/init-api.xml: Grammar fix
7596
7597 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7598
7599         * docs/manual/states.xml: Fix inconsistent information
7600
7601 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7602
7603         * gst/gstelement.c: (gst_element_set_state):
7604         * gst/gstpad.c: (gst_pad_try_set_caps):
7605         * gst/gststructure.c:
7606         * gst/gstthread.c: (gst_thread_child_state_change):
7607         * gst/gstvalue.c: (gst_value_compare_double):
7608         * gst/gstvalue.h:
7609         * testsuite/parse/parse1.c: (main):
7610           debugging additions and style cleanups
7611
7612 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7613
7614         * docs/manual/states.xml: Grammar fix
7615
7616 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7617
7618         * docs/manual/pads.xml: Grammar fix
7619
7620 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7621
7622         * docs/manual/elements.xml: Fixed image reference
7623
7624 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7625
7626         * docs/manual/goals.xml: Grammar fix
7627
7628 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7629
7630         * docs/manual/motivation.xml:
7631         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7632
7633 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7634
7635         * docs/manual/motivation.xml: Fix spelling
7636
7637 2004-07-15  Benjamin Otte  <otte@gnome.org>
7638
7639         * gst/gstelement.h: 
7640           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7641           strings.
7642         * gst/gstelement.c (gst_element_class_init):
7643           GError's are boxed, not objects
7644         * gst/gstmarshal.list:
7645           update list for the fixed error signal
7646
7647 2004-07-14  Andy Wingo  <wingo@pobox.com>
7648
7649         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7650         there all along, but the function wasn't. (guile-gstreamer's build
7651         system uses the address of the function -- I wasn't actually
7652         trying to use this.)
7653
7654 2004-07-14  Andy Wingo  <wingo@pobox.com>
7655
7656         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7657         as gst_pad_proxy_pad_link) just link to every other pad when they
7658         are called. In the case where the graph has cycles, this will mean
7659         that a call to try_set_caps will recurse. Allow this recursion
7660         and return OK, while we wait for the first try_set_caps to give a
7661         proper return value.
7662         (gst_pad_link_call_link_functions): Since this function is the
7663         only one to set the NEGOTIATING flag on a pad, if the flag is set
7664         it means that the link functions have indirectly recursed. If this
7665         happens, error out to avoid infinite recursion and an eventual
7666         SEGV.
7667         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7668         (gst_pad_proxy_getcaps): Intersect the result with the template
7669         caps to ensure that the return value is valid.
7670
7671 2004-07-14  Andy Wingo  <wingo@pobox.com>
7672
7673         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7674         one refcount, the calling function is the owner of the buffer.
7675
7676 2004-07-14  Wim Taymans  <wim@fluendo.com>
7677
7678         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7679         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7680         Fix stupid warning when an element is to be migrated but
7681         is already migrated.
7682
7683 2004-07-14  Wim Taymans  <wim@fluendo.com>
7684
7685         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7686         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7687         Make sure that a single non-loop-based element does not 
7688         end up in a group. This fixes the testsuite again.
7689
7690 2004-07-14  Wim Taymans  <wim@fluendo.com>
7691
7692         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7693         (add_to_group), (merge_groups), (schedule_group),
7694         (gst_opt_scheduler_get_wrapper), (group_elements),
7695         (group_dec_link), (gst_opt_scheduler_pad_link),
7696         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7697         (gst_opt_scheduler_iterate):
7698         move isolated groups to a new chain.
7699         Emit a warning instead of segfaulting in some error cases.
7700         Fix a bug where the link count between groups was not calculated 
7701         correctly. Fixes #144510.
7702
7703 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7704         * gst/elements/gstfilesrc.c:
7705           Binary files support under Windows now OK
7706       
7707 2004-07-13  Benjamin Otte  <otte@gnome.org>
7708
7709           compatibility fixes for Solaris 8/gcc 2.95
7710         * configure.ac:
7711           include libintl libs in LDFLAGS
7712         * gstvalue.c (gst_value_deserialize_buffer):
7713           cast isxdigit stuff to int to silence compiler warning
7714
7715 2004-07-12  Benjamin Otte  <otte@gnome.org>
7716
7717         * gst/gsttypes.h:
7718           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7719           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7720           just causes support madness
7721         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7722           make it work without this
7723         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7724         (gst_file_index_commit):
7725           glib IO channels don't want binary mode
7726         * testsuite/bytestream/filepadsink.c: (main):
7727         * testsuite/bytestream/test1.c: (read_param_file):
7728           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7729
7730 2004-07-12  Benjamin Otte  <otte@gnome.org>
7731
7732         * gst/gstelement.c: (gst_element_class_init),
7733         (gst_element_set_state), (gst_element_set_state_func):
7734           virutalize gst_element_set_state, use set_state member in class
7735           struct that was already added in 0.7 for this.
7736         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7737         (gst_bin_change_state):
7738           make gst_bin_foreach works similar to other foreach functions, plug
7739           memleaks in it. Make functions using it work with the new approach.
7740           Document gst_bin_foreach, so it can be exported if we want to
7741         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7742           use virtualized set_state to make set_state on bins set the state of
7743           all its children.
7744
7745 2004-07-12  Benjamin Otte  <otte@gnome.org>
7746
7747         * configure.ac:
7748           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7749           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7750         * gst/gstpad.c: (gst_pad_alloc_buffer):
7751           allow buffer_alloc functions to return NULL and allocate a normal
7752           buffer in that case
7753
7754 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7755         * gst/elements/gstfilesink.c:
7756         * gst/elements/gstfilesrc.c:
7757         * gst/indexers/gstfileindex.c:
7758         * gst/gsttypes.h:
7759         * testsuite/bytestream/filepadsink.c:
7760         * testsuite/bytestream/test1.c:
7761           Handle binary files under Windows
7762
7763 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7764         * docs/manual/win32.xml:
7765         * win32/config.h:
7766         * win32/gst-register.vcproj:
7767         * win32/gstreamer.def:
7768           Update to another gettext public build
7769
7770 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7771         * gst/gstplugin.c:
7772           Fix an impossible C syntax
7773         * win32/config.h:
7774           Disable i18n under Windows for the moment
7775         * win32/gst-register.vcproj:
7776           Use this configuration
7777
7778 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7779         * docs/manual/quotes.xml:
7780           Keep the quotes file alive
7781         * docs/random/ds/0.9-suggested-changes:
7782           Add the suggestion of including a 'rowstride' as part of video
7783           format caps
7784
7785 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7786
7787         * gst/gstelement.c: (gst_element_set_state),
7788         (gst_element_change_state):
7789           d'oh.  Set PENDING state correctly before forcing bin to change.
7790         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7791         (gst_structure_parse_fixed_list):
7792         * gst/schedulers/gstoptimalscheduler.c:
7793         (gst_opt_scheduler_state_transition):
7794         * testsuite/states/parent.c: (main):
7795           remove comment now that it's fixed.
7796
7797 2004-07-11  Benjamin Otte  <otte@gnome.org>
7798
7799         * gst/gstclock.h:
7800           GST_SECOND shouldn't cause a conversion to unsigned.
7801         * testsuite/clock/.cvsignore:
7802         * testsuite/clock/Makefile.am:
7803         * testsuite/clock/signedness.c: (main):
7804           make sure it never will again
7805
7806 2004-07-11  Andy Wingo  <wingo@pobox.com>
7807
7808         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7809         whose state is higher than the bin state, raise the bin state to
7810         ensure that bin state := highest child state.
7811         
7812 2004-07-11  Andy Wingo  <wingo@pobox.com>
7813
7814         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7815         procedure on the children of a bin. Assumes that the procedure can
7816         change the set of children.
7817         (set_kid_state_func): New static function.
7818         (gst_bin_change_state): Use gst_bin_foreach to call
7819         set_kid_state_func. Fixes a bug: if a child had a state-change
7820         handler that removes it from the bin, there would be a segfault.
7821         Hopefully it should also work in the case where the state-change
7822         handler on one child adds or removes other children. In any case,
7823         fixes should go to gst_bin_foreach.
7824
7825 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7826
7827         * gst/gstelement.c: (gst_element_set_state):
7828           compatibility fix for latest plugins release.  Change loop back
7829           to while {}
7830
7831 2004-07-09  Wim Taymans  <wim@fluendo.com>
7832
7833         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7834         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7835         (gst_thread_main_loop):
7836         Since remove is virtual in GstBin we must not assume the 
7837         elements GList to have anothing useful.
7838         Add some more logging to GstThread and be a bit more paranoid
7839         when resetting the scheduler.
7840         Set the state of the bin to NULL before removing the children.
7841
7842 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7843
7844         * testsuite/threads/Makefile.am:
7845         * testsuite/threads/threadg.c:
7846           added test to check if problem when removing all elements from a
7847           GstThread before setting GstThread state to NULL
7848
7849 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7850
7851         * docs/gst/tmpl/gstelement.sgml:
7852         * docs/gst/tmpl/gsttypes.sgml:
7853         * gst/gstbin.c: (gst_bin_change_state):
7854         * gst/gstelement.c: (gst_element_set_state),
7855         (gst_element_change_state):
7856           rework so that for bins we try to set the state on all children
7857           as well even if the bin is in the correct state already.
7858           change while to do so at least one iteration is done.
7859           For regular elements, we fall back to the previous behaviour for
7860           now since we first need a new plugins release.
7861         * testsuite/states/parent.c: (main):
7862           test for this case
7863           Fixes #123774
7864
7865 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7866
7867         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7868         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7869         (gst_queue_release_locks), (gst_queue_change_state),
7870         (gst_queue_set_property):
7871           add proper lock debugging.  Change dispose to finalize, since
7872           we're freeing mutexes and other stuff which should happen only once.
7873
7874 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7875
7876         * docs/gst/tmpl/gstelement.sgml:
7877         * docs/gst/tmpl/gstplugin.sgml:
7878         * docs/gst/tmpl/gsttypes.sgml:
7879         * docs/pwg/building-state.xml:
7880         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7881         * gst/gstelement.c: (gst_element_change_state):
7882         * gst/gstthread.c: (gst_thread_change_state):
7883           catch wrong state changes in element base class.
7884
7885 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7886
7887         * gst/gstinfo.h:
7888           clean up layout a little.
7889
7890 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7891
7892         * configure.ac:
7893         * testsuite/Makefile.am:
7894         * testsuite/states/Makefile.am:
7895         * testsuite/states/parent.c: (main):
7896           re-enable states testsuite dir.  Add test for state changes and
7897           parent behaviour
7898
7899 2004-07-09  Wim Taymans  <wim@fluendo.com>
7900
7901         * gst/schedulers/gstoptimalscheduler.c:
7902         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7903         (element_get_reachables_func), (element_get_reachables),
7904         (debug_element), (rechain_group), (group_migrate_connected),
7905         (gst_opt_scheduler_pad_unlink):
7906         Do not try to migrate decoupled elements to a new group since
7907         they are not added to groups.
7908
7909 2004-07-08  Benjamin Otte  <otte@gnome.org>
7910
7911         * gst/gstelement.c: (gst_element_error_func):
7912           make reentrant (= allow removing elements in error handler)
7913
7914 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7915
7916         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7917         (gst_pad_send_event), (gst_pad_call_chain_function):
7918           events sent to elements below PAUSED cannot be handled, so
7919           don't try to
7920
7921 2004-07-08  Wim Taymans  <wim@fluendo.com>
7922
7923         * gst/schedulers/gstoptimalscheduler.c:
7924         (chain_recursively_migrate_group), (create_group),
7925         (schedule_group), (gst_opt_scheduler_pad_link),
7926         (group_elements_set_visited), (element_get_reachables_func),
7927         (element_get_reachables), (group_can_reach_group), (debug_element),
7928         (rechain_group), (group_migrate_connected),
7929         (gst_opt_scheduler_pad_unlink):
7930         * testsuite/schedulers/Makefile.am:
7931         Implemented group splitting and rechaining.
7932         Fixes 143777 and 143777-2 in the testsuite.
7933
7934 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7935
7936         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7937           extra debugging
7938         * gst/gstevent.h:
7939         * gst/gstinfo.c: (gst_debug_log_default):
7940           print time nicely.  add thread pointer until someone figures out
7941           a completely portable way of getting at thread id's.
7942         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7943         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7944         (gst_pad_call_chain_function):
7945           extra debugging
7946         * gst/schedulers/gstoptimalscheduler.c:
7947         (get_group_schedule_function), (loop_group_schedule_function),
7948         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7949         (pad_clear_queued), (gst_opt_scheduler_iterate):
7950           rename BUFPEN and friends to DATAPEN since that's what they are.
7951
7952 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7953
7954         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7955         * gst/gstbuffer.h:
7956         * gst/gstpad.c:
7957           cleanups and debugging
7958
7959 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7960
7961         * configure.ac:
7962         * gst/gstvalue.c: (gst_value_compare_enum),
7963         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7964         (gst_value_can_compare), (gst_value_compare):
7965         * testsuite/Makefile.am:
7966         * testsuite/enumcaps/Makefile.am:
7967         * testsuite/enumcaps/enumcaps.c:
7968           Fix enum serialization, deserialization, comparison in caps, add
7969           a test to ensure that this continues working in the future.
7970
7971 2004-07-06  David Schleef  <ds@schleef.org>
7972
7973         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7974         Fix memleak.
7975
7976 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7977
7978         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7979         * gst/gstplugin.h:
7980         * gst/registries/gstxmlregistry.c:
7981         (plugin_times_older_than_recurse), (plugin_times_older_than),
7982         (gst_xml_registry_parse_padtemplate):
7983           only rebuild registry when actual plugins have a newer time than
7984           the registry.  Fixes #145520
7985
7986 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7987
7988         * docs/manual/manual.xml:
7989         * docs/manual/win32.xml:
7990           add chapter on win32 building.  fixes #142422
7991
7992 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7993
7994         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7995
7996         * gst/autoplug/gstspider.c: (gst_spider_init),
7997         (gst_spider_dispose):
7998           fix spider memleaks.  fixes #137863
7999
8000 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8001
8002         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8003
8004         * gst/schedulers/gstoptimalscheduler.c:
8005         (gst_opt_scheduler_pad_unlink):
8006           fix SIGBUS error, fixes #145338
8007
8008 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8009
8010         * gst/gstobject.c: (gst_object_replace):
8011         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8012         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8013           clean up clock lifecycle.  Fixes #109831
8014
8015 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8016
8017         * po/LINGUAS:
8018         * po/cs.po:
8019           added Czech translation (Miloslav Trmac)
8020
8021 2004-07-04  David Schleef  <ds@schleef.org>
8022
8023         * tools/Makefile.am:
8024         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8025
8026 2004-07-04  David Schleef  <ds@schleef.org>
8027
8028         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8029
8030 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8031
8032         * gst/gstbin.c: (gst_bin_restore_thyself):
8033           chain to parent restore so the bins get restored correctly
8034           in the editor
8035
8036 2004-07-03  David Schleef  <ds@schleef.org>
8037
8038         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8039         Actually do something in these functions, like before the big
8040         caps change.  (bug #145137)
8041
8042 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8043
8044         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8045         (gst_element_get_compatible_pad_filtered):
8046         * gst/gstthread.c: (gst_thread_main_loop):
8047           more debugging
8048
8049 2004-07-02  David Schleef  <ds@schleef.org>
8050
8051         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8052         * gst/gstobject.h:
8053         * gst/gstparse.h:
8054         * gst/gsttrace.h:
8055         * gst/gstxml.h:
8056
8057 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8058
8059         * gst/gstpad.c: (gst_pad_check_schedulers),
8060         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8061         (gst_pad_link_prepare):
8062           revert until testsuite is fixed
8063
8064 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8065
8066         * testsuite/Makefile.am:
8067         * testsuite/caps/filtercaps.c: (main):
8068         * testsuite/clock/clock1.c: (main):
8069         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8070           fix some more tests
8071
8072 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8073
8074         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8075         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8076         * testsuite/cleanup/cleanup4.c: (main):
8077           fix testsuite
8078
8079 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8080
8081         * libs/gst/control/control.c:
8082         * libs/gst/control/dparam.c:
8083         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8084         * libs/gst/control/dparammanager.c:
8085         * libs/gst/control/dparammanager.h:
8086         * testsuite/dynparams/Makefile.am:
8087         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8088         (gst_dptest_change_state), (gst_dptest_chain), (main):
8089           fix testcase for dparams
8090           add debugging category
8091
8092 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8093
8094         * testsuite/Rules:
8095           change path
8096
8097 2004-07-02  Benjamin Otte  <otte@gnome.org>
8098
8099         * tests/.cvsignore:
8100         * tests/Makefile.am:
8101         * tests/mass_elements.c: (gst_get_current_time), (main):
8102           add simple benchmark to test various speeds of fakesrc ! identity !
8103           identity ! ... ! fakesink.
8104           Usage: mass_elements [num_identities] [num_buffers]
8105           If not specified they default to 1000.
8106
8107 2004-07-02  Benjamin Otte  <otte@gnome.org>
8108
8109         * gst/gstpad.c: (gst_pad_check_schedulers),
8110         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8111         (gst_pad_link_prepare):
8112           check that pads that get linked belong to the same manager. The old
8113           code allowed linking elements before putting them into bins, so it
8114           worked to link them and then put them in different threads, which
8115           lead to weird behaviour.
8116           Since this effectively disallows linking elements before putting
8117           them in a bin, some applications might not work after this and error
8118           out. If these applications are too critical, we might need to revert
8119           that patch. Please test this before the next release...
8120
8121 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8122
8123         * gst/gstpad.c: (gst_pad_get_caps):
8124           throw an error if the getcaps function does not return a subset of
8125           the template caps.
8126         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8127           make disconts without position info an error in debugging
8128         * tests/spidey_bench.c: (handoff), (main):
8129           don't count first try when averaging
8130
8131 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8132
8133         * gst/gstplugin.c: (gst_plugin_load_file):
8134           figure out problem with dynamic test
8135
8136 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8137
8138         * docs/gst/Makefile.am:
8139           fix docs build
8140
8141 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8142
8143         * po/POTFILES.in:
8144         * po/af.po:
8145         * po/az.po:
8146         * po/en_GB.po:
8147         * po/fr.po:
8148         * po/nl.po:
8149         * po/sr.po:
8150         * po/sv.po:
8151         * po/tr.po:
8152         * po/uk.po:
8153         * tools/gst-register.c: (plugin_added_func), (main):
8154           i18n-ize -register, fix plural
8155
8156 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8157
8158         * gst/elements/gstidentity.c: (gst_identity_class_init),
8159         (gst_identity_init), (gst_identity_chain),
8160         (gst_identity_set_property), (gst_identity_get_property):
8161         * gst/elements/gstidentity.h:
8162           check for perfect stream
8163
8164 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8165
8166         * gst/elements/gstidentity.c: (gst_identity_chain):
8167           print offset_end
8168
8169 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8170
8171         * docs/gst/Makefile.am:
8172         * docs/gst/gstreamer-docs.sgml:
8173           doc fixes
8174
8175 2004-06-24  David Schleef  <ds@schleef.org>
8176
8177         * autogen.sh:  Remove call to env, since the buildbot isn't
8178         broken anymore.
8179
8180 2004-06-24  Wim Taymans  <wim@fluendo.com>
8181
8182         * gst/elements/Makefile.am:
8183         * gst/elements/gstelements.c:
8184         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8185         (gst_multifdsink_class_init), (gst_multifdsink_init),
8186         (gst_multifdsink_add), (gst_multifdsink_remove),
8187         (gst_multifdsink_clear), (gst_multifdsink_chain),
8188         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8189         * gst/elements/gstmultifdsink.h:
8190         Added an element that writes to multiple filedescriptors at once.
8191
8192 2004-06-24  Benjamin Otte  <otte@gnome.org>
8193
8194         * gst/parse/grammar.y:
8195           don't try to link elements before they have been added to bins
8196
8197 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8198
8199         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8200         (gst_file_pad_get_length):
8201         * libs/gst/bytestream/filepad.h:
8202           add 2 new functions
8203
8204 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8205
8206         * docs/gst/gstreamer-sections.txt:
8207         remove from docs, the define that Benjamin removed from gstelement.h
8208
8209 2004-06-22  Benjamin Otte  <otte@gnome.org>
8210
8211         * gst/gstelement.h:
8212           remove define that referenced a nonexisting GstElement struct member
8213
8214 2004-06-20  Benjamin Otte  <otte@gnome.org>
8215
8216         * gst/gstdata.c: (gst_data_is_writable):
8217           whoops, return values were wrong, so writable data was marked as
8218           non-writable and vice versa. (fixes #143953, spotted by Francis
8219           Labonte)
8220           Shows how rarely we need to copy data ;)
8221
8222 2004-06-20  Benjamin Otte  <otte@gnome.org>
8223
8224         * testsuite/schedulers/.cvsignore:
8225         * testsuite/schedulers/Makefile.am:
8226         * testsuite/schedulers/143777-2.c: (main):
8227           add test for opt breakage in bug #143777
8228
8229 2004-06-20  Benjamin Otte  <otte@gnome.org>
8230
8231         * gst/gstpad.c: (gst_pad_call_chain_function):
8232           check for if we were unlinked while inside the chainfunction (fixes
8233           entrygthread having issues with #143777)
8234         * testsuite/schedulers/143777.c: (main):
8235         * testsuite/schedulers/Makefile.am:
8236           add a test for that fix
8237
8238 2004-06-20  Benjamin Otte  <otte@gnome.org>
8239
8240         * gst/gstvalue.c: (gst_value_set_int_range):
8241           test that start is smaller then end
8242         * libs/gst/bytestream/Makefile.am:
8243         * libs/gst/bytestream/filepad.c: 
8244         * libs/gst/bytestream/filepad.h:
8245           add GstFilePad - a pad that behaves like a FILE*
8246         * testsuite/bytestream/.cvsignore:
8247         * testsuite/bytestream/Makefile.am:
8248         * testsuite/bytestream/filepadsink.c: 
8249           test for the GstFilePad
8250
8251 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8252
8253         * gst/elements/gstidentity.c: (gst_identity_class_init),
8254         (gst_identity_init), (gst_identity_set_clock),
8255         (gst_identity_chain), (gst_identity_set_property),
8256         (gst_identity_get_property):
8257         * gst/elements/gstidentity.h:
8258         * gst/gstclock.c: (gst_clock_id_wait):
8259           add a "sync" property to sync to the clock
8260
8261 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8262
8263         * gst/gstelementfactory.c: (gst_element_factory_create):
8264           make the freakin "elementfactory bla has no type" message more
8265           useful. So we actually can do something when someone shows up
8266           complaining about it.
8267
8268 2004-06-15  Johan Dahlin  <johan@gnome.org>
8269
8270         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8271         found. This matches the old behavior better. Thanks to Thomas for
8272         pointing out.
8273
8274 2004-06-14  David Schleef  <ds@schleef.org>
8275
8276         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8277         -fomit-frame-pointer.  Appears to generate correct code in
8278         other cases as well.
8279
8280 2004-06-14  Johan Dahlin  <johan@gnome.org>
8281
8282         * tools/gst-inspect.c (main): Add two new command line options: -a
8283         to print all elements and -n to print the name on each line. Also
8284         fix some error reporting.
8285         (main): Simplify, remove -n and always print names if -a is specified
8286
8287 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8288
8289         * win32/gstconfig.h:
8290         * win32/GSTreamer.vcproj:
8291         * win32/Makefile:
8292         * gst/gstconfig.h.in:
8293         * gst/gst.h:
8294         * gst/gstbin.h:
8295         * gst/gstelement.h:
8296         * gst/gstevent.h:
8297         * gst/gstobject.h:
8298         * gst/gstpad.h:
8299         * docs/gst/gstreamer-sections.txt:
8300         * docs/gst/tmpl/gstconfig.sgml:
8301           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8302
8303 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8304         * docs/gst/gstreamer-sections.txt:
8305         * docs/gst/tmpl/gstconfig.sgml:
8306         Add the GSTREAMER_EXPORT macro to the docs
8307
8308 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8309
8310         * tools/gst-compprep.c: (handle_xmlerror), (main):
8311         Add a check for the version that introduced SetStructuredError to fix
8312         the build on FC1
8313
8314 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8315
8316         * win32/msvc71.sln:
8317         * win32/testsuite/:
8318           prepare to compile the testsuite with MSVC
8319
8320 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8321
8322         * docs/manual/win32.xml:
8323           attempt to transform the Win32 README into an XML doc
8324
8325 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8326
8327         * gst/gst.c:
8328         * gst/gstbin.*:
8329         * gst/config.h.in:
8330         * gst/gstelement.*:
8331         * gst/gstevent.h:
8332         * gst/gstobject.*:
8333         * gst/gstpad.h:
8334         * tools/gst-register.c:
8335         * win32/gstreamer.def:
8336           extern symbols are now exported for the Windows DLL
8337
8338 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8339
8340         * gst/gstinfo.h:
8341           fix a problem to enable/disable DEBUG under MSVC
8342
8343 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8344
8345         * win32/:
8346           enable more debug code in DEBUG build
8347
8348 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8349
8350         * win32/config.h:
8351         * gst/gst-i18n-app.h:
8352           enable NLS under Windows
8353
8354 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8355         * tools/gst-compprep.c: (handle_xmlerror), (main):
8356           Make an error that baffled me a bit clearer
8357
8358 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8359
8360         * gst/gstqueue.c:
8361           don't use g_queue_get_length () because it's 2.4, use ->length
8362
8363 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8364
8365         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8366
8367         * tools/gst-inspect.c: (print_signal_info):
8368           don't free random data twice. (fixes #144185)
8369
8370 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8371
8372         * gst/gstqueue.c:
8373         * gst/gstqueue.h:
8374           fix removing from the wrong queue on event timeout
8375           fix disposing of the event queue by casting correctly
8376           add mutexes for handling the event queue
8377           someone was sleeping when fixing queue last time around :)
8378
8379 2004-06-10  Johan Dahlin  <johan@gnome.org>
8380
8381         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8382         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8383
8384 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8385
8386         * docs/random/gdp:
8387         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8388         * libs/gst/dataprotocol/dataprotocol.c:
8389         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8390         (gst_dp_buffer_from_header):
8391         * libs/gst/dataprotocol/dataprotocol.h:
8392         * libs/gst/dataprotocol/dp-private.h:
8393           rev version to 0.1, add buffer flags and copy them
8394
8395 2004-06-09  Johan Dahlin  <johan@gnome.org>
8396
8397         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8398         the flags from the buffer we're copying.
8399
8400 2004-06-09  Wim Taymans  <wim@fluendo.com>
8401
8402         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8403         * gst/elements/gstidentity.c: (gst_identity_init),
8404         (gst_identity_chain):
8405         Print more buffer info in fakesink.
8406         Make identity output similar to fakesink.
8407
8408 2004-06-07  Daniel Gazard  <dany42@free.fr>
8409
8410         reviewed by Benjamin Otte  <otte@gnome.org>
8411
8412         * configure.ac:
8413           fix cross compiling not working. (fixes #143741)
8414
8415 2004-06-07  Benjamin Otte  <otte@gnome.org>
8416
8417         * gst/gstelement.c: (gst_element_set_time_delay):
8418           add failure check
8419         * gst/gstinfo.h:
8420           put brackets around macro arguments of GST_TIME_ARGS, add note to
8421           move it to correct header in 0.9
8422
8423 2004-06-07  Benjamin Otte  <otte@gnome.org>
8424
8425         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8426         (gst_file_index_load), (_file_index_id_save_entries),
8427         (gst_file_index_commit), (gst_file_index_add_association),
8428         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8429         (gst_file_index_plugin_init):
8430           make debugging use a default category
8431
8432 2004-06-06  David Moore  <dcm@acm.org>
8433
8434         reviewed by Benjamin Otte  <otte@gnome.org>
8435
8436         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8437         (gst_fdsrc_change_state):
8438           reset offset counter when going READY => PAUSED. (fixes #142903)
8439
8440 2004-06-06  ed@catmur.co.uk
8441
8442         reviewed by Benjamin Otte  <otte@gnome.org>
8443
8444         * gst/registries/gstxmlregistry.c:
8445         (gst_xml_registry_rebuild_recurse):
8446           don't rely on g_dir_open to figure out if a file is a directory, use
8447           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8448           directories. (fixes #142850)
8449
8450 2004-06-06  Benjamin Otte  <otte@gnome.org>
8451
8452         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8453           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8454         * libs/gst/bytestream/adapter.c:
8455         * libs/gst/bytestream/adapter.h:
8456           fix copyright in header and typo in debugging category name
8457
8458 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8459
8460         * configure.ac:
8461           bump nano to cvs
8462
8463 === release 0.8.3 ===
8464
8465 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8466
8467         * configure.ac:
8468           update libtool versioning
8469           do a new release
8470         * docs/gst/tmpl/gstelement.sgml:
8471         * docs/gst/tmpl/gsttypes.sgml:
8472         * gst/gstinfo.c: (_gst_debug_init):
8473           put back GST_CAT_DATAFLOW to fix API breakage
8474
8475 2004-06-04  David Schleef  <ds@schleef.org>
8476
8477         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8478
8479 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8480
8481         * configure.ac:
8482           bump nano to cvs
8483
8484 === release 0.8.2 ===
8485
8486 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8487
8488         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8489           check GST_DEBUG environment variable which is parsed the same way
8490           as --gst-debug=
8491
8492 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8493
8494         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8495                             gstmd5sink.c gstshaper.c gsttee.c
8496                             gsttypefindelement.c
8497         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8498
8499           - removing trailing commas at end of enums
8500             it is correct C99 code but C90 compilers would complain
8501             (AIX, Forte, ...)
8502             ('should' fix #143290, at least partially)
8503
8504 2004-05-27  Wim Taymans  <wim@fluendo.com>
8505
8506         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8507         (chain_group_set_enabled), (create_group), (add_to_group),
8508         (merge_groups), (setup_group_scheduler), (group_elements),
8509         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8510         Don't try to follow the pad connections with other groups
8511         when a loop based element is added to the scheduler because
8512         the bin will inform the scheduler about the pad links a little
8513         later.
8514
8515 2004-05-27  Wim Taymans  <wim@fluendo.com>
8516
8517         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8518         (remove_from_chain), (chain_group_set_enabled),
8519         (setup_group_scheduler), (group_element_set_enabled),
8520         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8521         (gst_opt_scheduler_show):
8522         Elements without a group can do a state change as well, just wait
8523         with the setup of the scheduling function when it is added to a
8524         chain.
8525
8526 2004-05-27  Wim Taymans  <wim@fluendo.com>
8527
8528         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8529         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8530         (merge_groups), (setup_group_scheduler),
8531         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8532         (gst_opt_scheduler_show):
8533         Fixes to maintain internal consistency of the scheduler data
8534         structures. 
8535          - adding an enabled group to a chain should increment the
8536            number of enabled elements in that chain.
8537          - removing an enabled group from a chain could disable the
8538            chain.
8539          - removing a disabled group from a chain could enable the
8540            chain.
8541          - add g_assert when internal inconsistency is detected.
8542          - adding an element to a group could increase the number of
8543            links this group has with other groups.
8544          - merging two groups also merges the chains.
8545          - also show group links in the _show method.
8546            
8547
8548 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8549
8550         * gst/gstcaps.c: (gst_caps_structure_simplify):
8551           don't print error messages when there is no error
8552         * gst/gstvalue.c: (gst_value_compare_int_range):
8553           compare the second value, too
8554         * testsuite/caps/Makefile.am:
8555         * testsuite/caps/random.c: (assert_on_error), (main):
8556           add tests to make sure the two things above are checked for
8557
8558 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8559
8560         * configure.ac:
8561         * libs/gst/dataprotocol/Makefile.am:
8562         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8563         * libs/gst/dataprotocol/dataprotocol.h:
8564           wrap header in GST_ENABLE_NEW.  make code use it
8565
8566 2004-05-23  Johan Dahlin  <johan@gnome.org>
8567
8568         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8569         so verbose and print GstElement signal names all the time.
8570
8571 2004-05-22  David Schleef  <ds@schleef.org>
8572
8573         * gst/registries/gstxmlregistry.c:
8574         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8575         (bug #142957)
8576
8577 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8578
8579         * configure.ac:
8580           scrub cflags for glib2 so gcc doesn't complain when glib is in
8581           /usr/local
8582
8583 2004-05-21  Johan Dahlin  <johan@gnome.org>
8584
8585         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8586         __GNUC__, patch from Brian Cameron, fixes bug #142804
8587
8588 2004-05-20  David Schleef  <ds@schleef.org>
8589
8590         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8591         comparison code.  (bug #142819)
8592
8593 2004-05-20  Wim Taymans  <wim@fluendo.com>
8594
8595         * gst/gstbuffer.c: (gst_buffer_default_copy):
8596         * gst/gstbuffer.h:
8597         Added Comment to a flag.
8598         copy relevant flags in _buffer_copy.
8599
8600 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8601
8602         reviewed by: Wim Taymans <wim at fluendo dot com>
8603
8604         * gst/gstbuffer.h:
8605           add GST_BUFFER_IN_CAPS buffer flag
8606         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8607         (gst_structure_parse_any_list), (gst_structure_parse_list),
8608         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8609         * gst/gstvalue.c: (gst_value_serialize_any_list),
8610         (gst_value_transform_any_list_string),
8611         (gst_value_list_prepend_value), (gst_value_list_append_value),
8612         (gst_value_list_get_size), (gst_value_list_get_value),
8613         (gst_value_transform_list_string),
8614         (gst_value_transform_fixed_list_string),
8615         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8616         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8617         (_gst_value_initialize):
8618         * gst/gstvalue.h:
8619           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8620           < , > as a format.
8621         * testsuite/caps/string-conversions.c: (main):
8622           add regression tests for < >
8623
8624 2004-05-20  Johan Dahlin  <johan@gnome.org>
8625
8626         * docs/gst/Makefile.am (all-local): Re-add
8627
8628 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8629
8630         * docs/gst/Makefile.am:
8631         * docs/gst/gstreamer-docs.sgml:
8632         * docs/libs/Makefile.am:
8633         * docs/libs/gstreamer-libs-docs.sgml:
8634           fix distcheck issues
8635
8636 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8637
8638         * libs/gst/dataprotocol/Makefile.am:
8639           add to autotest
8640
8641 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8642
8643         * libs/gst/dataprotocol/Makefile.am:
8644         * libs/gst/dataprotocol/dataprotocol.c:
8645         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8646         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8647         * libs/gst/dataprotocol/dp-private.h:
8648           use GST macros to read/write fixed length ints
8649           add some more asserts
8650
8651 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8652
8653         * docs/libs/gstreamer-libs-docs.sgml:
8654         * docs/libs/gstreamer-libs-sections.txt:
8655           remove idct and putbits
8656         * configure.ac:
8657         * docs/libs/tmpl/gstdataprotocol.sgml:
8658         * libs/gst/Makefile.am:
8659         * libs/gst/dataprotocol/Makefile.am:
8660         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8661         (buffer_test), (caps_test), (event_test), (main):
8662         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8663         (gst_dp_dump_byte_array), (gst_dp_init),
8664         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8665         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8666         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8667         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8668         (gst_dp_validate_header), (gst_dp_validate_payload),
8669         (gst_dp_validate_packet), (plugin_init):
8670         * libs/gst/dataprotocol/dataprotocol.h:
8671         * libs/gst/dataprotocol/dp-private.h:
8672           add dataprotocol
8673
8674 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8675
8676         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8677           fix int variable deserialization and add a helper so we can actually
8678           debug this.
8679
8680 2004-05-18  David Schleef  <ds@schleef.org>
8681
8682         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8683           argv[0].  Calling yourself is probably not the best way to
8684           construct a test like this, btw.
8685
8686 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8687
8688         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8689           don't claim to be more intelligent than a scheduler when the
8690           scheduler claims the pipeline is stopped
8691         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8692         (safe_cothread_destroy),
8693         (gst_entry_scheduler_remove_all_cothreads),
8694         (gst_entry_scheduler_reset), (_remove_cothread),
8695         (gst_entry_scheduler_state_transition):
8696           hold off cothread destruction if we're not in main cothread
8697         * configure.ac:
8698         * testsuite/Makefile.am:
8699           add new test dir
8700         * testsuite/schedulers/.cvsignore:
8701         * testsuite/schedulers/Makefile.am:
8702           add tests
8703         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8704           check relinking and adding/removing elements from a running pipeline
8705         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8706           check unlinking in a running pipeline
8707         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8708           check unreffing a running pipeline
8709         * testsuite/schedulers/useless_iteration.c: (main):
8710           check iterating a pipeline that contains running threads works
8711
8712 2004-05-18  David Schleef  <ds@schleef.org>
8713
8714         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8715           is false.
8716
8717 2004-05-18  Wim Taymans  <wim@fluendo.com>
8718
8719         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8720         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8721         Fixed an error introduced with patch for 1.63. When setting
8722         a get based element as the entry point in a group, make sure
8723         to mark the group as GET based.
8724
8725 2004-05-18  Wim Taymans  <wim@fluendo.com>
8726
8727         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8728         (setup_group_scheduler), (loop_group_schedule_function),
8729         (gst_opt_scheduler_pad_link):
8730         Added some more debug info and fixed a bug where the group
8731         type was set to LOOP but it was in fact unknown.
8732
8733 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8734
8735         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8736           make resetting scheduler work twice in a row
8737
8738 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8739
8740         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8741         (CREATE_USERIALIZATION), (_gst_value_initialize),
8742         (gst_value_compare_float), (gst_value_serialize_float),
8743         (gst_value_deserialize_float), (gst_value_compare_enum),
8744         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8745           add serialization and comparison functions for long, int64, enum and
8746           float values
8747         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8748           use best serialization function in type hierarchy instead of only a
8749           matching one. This is required for enums to work.
8750         * gst/parse/grammar.y:
8751           use gst_caps_deserialize
8752         * testsuite/parse/Makefile.am:
8753           parse1 now works
8754         * testsuite/parse/parse1.c: (main):
8755           remove aggregator check, aggregator is broken, this test works now
8756           but fails because of bug #138012
8757         * testsuite/parse/parse2.c: (main):
8758           s/xvideosink/xvimagesink - this test looks a lot like we should
8759           disable it
8760
8761 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8762
8763         * gst/gstelement.c: (gst_element_class_init):
8764           whoops, store the signal id correctly
8765         * gst/schedulers/gstbasicscheduler.c:
8766         (gst_basic_scheduler_chain_wrapper):
8767           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8768           chain function isn't linked
8769
8770 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8771         * configure.ac:
8772         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8773         support until we decide where the flags should be used
8774         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8775         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8776         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8777         Output refused caps in the debug info
8778
8779 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8780
8781         * gst/elements/gstidentity.c: (gst_identity_chain):
8782           add duration debug
8783         * gst/gstinfo.c: (gst_debug_log_default):
8784           add timestamp
8785
8786 2004-05-13  Benjamin Otte  <otte@gnome.org>
8787
8788         * gst/gstpipeline.c: (gst_pipeline_dispose),
8789         (gst_pipeline_change_state):
8790           call gst_scheduler_reset on dispose (fixes #141416)
8791
8792 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8793
8794         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8795           compute mapsize correctly
8796         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8797           use correct datatypes when calling a varargs function
8798         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8799           push a DISCONT event as first thing
8800         * gst/gst_private.h:
8801         * gst/gstinfo.c: (_gst_debug_init):
8802           remove GST_DATAFLOW debugging category
8803         * gst/gstbin.c: (gst_bin_iterate):
8804           use GST_SCHEDULING category
8805         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8806         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8807         (gst_pad_call_get_function):
8808           add GST_DATAFLOW to easily track flow of buffers or events.
8809         * gst/gstqueue.c: (gst_queue_get_type),
8810         (gst_queue_handle_pending_events), (gst_queue_chain),
8811         (gst_queue_get), (gst_queue_handle_src_event):
8812           use own static debugging category GST_DATAFLOW for dataflow,
8813           use DEBUG category for showing which path events go, use LOG
8814           category for buffers.
8815
8816 2004-05-10  David Schleef  <ds@schleef.org>
8817
8818         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8819
8820 2004-05-10  David Schleef  <ds@schleef.org>
8821
8822         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8823         symbols, because otherwise we don't know what they are.  Thanks,
8824         the GStreamer team.
8825         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8826
8827 2004-05-10  David Schleef  <ds@schleef.org>
8828
8829         (from Steve Lhomme)
8830         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8831         are deleted.  Fix.
8832         * win32/Makefile.inspect:
8833         * win32/Makefile.launch:
8834         * win32/Makefile.register:
8835
8836 2004-05-10  David Schleef  <ds@schleef.org>
8837
8838         * gst/gstinfo.h: Add missing inline function.
8839         * gst/gsttrace.c: add include
8840         * gst/parse/grammar.y: remove unused code
8841         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8842         more portable.
8843         * tools/gst-register.c: wrap unistd.h
8844         
8845         More additions/fixes from Steve for the MSVC build.
8846         * win32/GStreamer.vcproj:
8847         * win32/Makefile:
8848         * win32/Makefile.inspect:
8849         * win32/Makefile.launch:
8850         * win32/Makefile.register:
8851         * win32/README.txt:
8852         * win32/gst-inspect.vcproj:
8853         * win32/gst-launch.vcproj:
8854         * win32/gst-register.vcproj:
8855         * win32/gstbytestream.def:
8856         * win32/gstbytestream.vcproj:
8857         * win32/gstconfig.h:
8858         * win32/gstelements.def:
8859         * win32/gstelements.vcproj:
8860         * win32/gstenumtypes.c:
8861         * win32/gstenumtypes.h:
8862         * win32/gstoptimalscheduler.def:
8863         * win32/gstoptimalscheduler.vcproj:
8864         * win32/gstreamer.def:
8865         * win32/gstspider.def:
8866         * win32/gstspider.vcproj:
8867         * win32/gstversion.h:
8868         * win32/msvc71.sln:
8869
8870 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8871
8872         * gst/gstelement.c: (gst_element_class_init),
8873         (gst_element_no_more_pads):
8874         * gst/gstelement.h:
8875           add gst_element_no_more_pads and the "no-more-pads" signal
8876
8877 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8878
8879         * gst/gstregistry.c: (gst_registry_add_plugin):
8880           refuse to add plugins when a plugin with same name is already
8881           registered. Fixes a bunch of "How to remove plugins?" issues.
8882           May lead to other problems though, let's test
8883
8884 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8885
8886         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8887         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8888         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8889
8890 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8891
8892         * tests/Makefile.am: fix am16 issue
8893
8894 2004-05-09  Benjamin Otte  <otte@gnome.org>
8895
8896         * libs/gst/bytestream/Makefile.am:
8897           we should indeed add .c files to makefiles or they won't be built
8898           (d'oh)
8899
8900 2004-05-08  Benjamin Otte  <otte@gnome.org>
8901
8902         * gst/gstpad.c: (gst_pad_proxy_fixate):
8903           really reduce the set of caps
8904
8905 2004-05-08  Benjamin Otte  <otte@gnome.org>
8906
8907         * tests/Makefile.am:
8908         * tests/spidey_bench.c: (handoff), (main):
8909           add benchmark to test how long spider needs to create a pipeline
8910
8911 2004-05-08  Benjamin Otte  <otte@gnome.org>
8912
8913         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8914           mark links as unengaged when unnegotiating instead of deactivating.
8915           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8916
8917 2004-05-08  Benjamin Otte  <otte@gnome.org>
8918
8919         * docs/manual/helloworld.xml:
8920           s/audiosink/osssink (patch by Patrick Guimond)
8921
8922 2004-05-07  David Schleef  <ds@schleef.org>
8923
8924         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8925         since it contains important stuff.
8926
8927 2004-05-07  David Schleef  <ds@schleef.org>
8928
8929         * testsuite/caps/caps.c: (test3), (main): A check for appending
8930         ANY caps.
8931
8932 2004-05-07  David Schleef  <ds@schleef.org>
8933
8934         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8935         which may contain commas.  Fixes detection of -Wa,-mregnames
8936
8937 2004-05-06  David Schleef  <ds@schleef.org>
8938
8939         Changes to handle compilers that don't have variadic macro
8940         support.  In particular, glib headers define some inlines
8941         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8942         builds.
8943         * gst/Makefile.am:
8944         * gst/cothreads.c:
8945         * gst/elements/gstfdsink.c:
8946         * gst/elements/gstfdsrc.c:
8947         * gst/elements/gstfilesink.c:
8948         * gst/elements/gstfilesrc.c:
8949         * gst/gst_private.h:
8950         * gst/gstatomic.c:
8951         * gst/gstcaps.c: (gst_caps_append):
8952         * gst/gstcpu.c: (gst_cpuid_i386):
8953         * gst/gstelement.c:
8954         * gst/gsterror.c:
8955         * gst/gstfilter.c:
8956         * gst/gstinfo.h:
8957         * gst/gstprobe.c:
8958         * gst/gstquery.c:
8959         * gst/gstregistry.c:
8960         * gst/gststructure.c:
8961         * gst/gsttaginterface.c:
8962         * gst/gsttrace.c: (gst_trace_new):
8963         * gst/gsttrashstack.c:
8964         * gst/gsturi.c:
8965         * gst/gstvalue.c:
8966         * gst/parse/grammar.y:
8967         * gst/parse/parse.l:
8968         * tools/gst-inspect.c: (main):
8969         * tools/gst-launch.c: (main):
8970         * tools/gst-xmlinspect.c: (PUT_STRING):
8971
8972 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8973
8974         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8975         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8976         * gst/elements/gstfilesrc.h:
8977           send NEW_MEDIA events correctly
8978         * gst/elements/gsttypefindelement.c: (start_typefinding),
8979         (gst_type_find_element_handle_event):
8980           restart typefinding when we get a NEW_MEDIA event
8981         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8982         (gst_bin_dispose):
8983           don't die when someone removes elements in callbacks
8984         * gst/gstelement.c: (gst_element_change_state):
8985           improve debugging
8986         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8987           we need a NEW_MEDIA event to engage a link
8988         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8989           don't g_print debugging stuff
8990         * testsuite/caps/simplify.c: (check_caps):
8991
8992 2004-05-04  Benjamin Otte  <otte@gnome.org>
8993
8994         * gst/parse/grammar.y:
8995           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8996
8997 2004-05-04  Benjamin Otte  <otte@gnome.org>
8998
8999         * testsuite/caps/renegotiate.c: (main):
9000           improve output in error case
9001
9002 2004-05-04  Benjamin Otte  <otte@gnome.org>
9003
9004         * gst/parse/grammar.y:
9005           fix assert to not trigger when there's no error argument
9006         * gst/parse/parse.l:
9007           fix definition of caps to allow more than two structures
9008         * testsuite/caps/Makefile.am:
9009         * testsuite/caps/renegotiate.c: (main):
9010           it's sinesrc and works in that case
9011
9012 2004-05-04  Wim Taymans  <wim@fluendo.com>
9013
9014         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9015         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9016         when removing an element from a group, we always need to
9017         decrement the link count that this group had with other 
9018         groups through the element.
9019         added an extra assert to catch inconsistencies when decrementing
9020         the link count.
9021
9022 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9023
9024         * configure.ac:
9025         * docs/gst/Makefile.am:
9026         * docs/gst/gstreamer-sections.txt:
9027         * docs/gst/tmpl/gstcompat.sgml:
9028         * examples/appreader/Makefile.am:
9029         * examples/cutter/Makefile.am:
9030         * examples/events/Makefile.am:
9031         * examples/helloworld/Makefile.am:
9032         * examples/helloworld2/Makefile.am:
9033         * examples/launch/Makefile.am:
9034         * examples/manual/Makefile.am:
9035         * examples/mixer/Makefile.am:
9036         * examples/pingpong/Makefile.am:
9037         * examples/plugins/Makefile.am:
9038         * examples/queue/Makefile.am:
9039         * examples/queue2/Makefile.am:
9040         * examples/queue3/Makefile.am:
9041         * examples/queue4/Makefile.am:
9042         * examples/retag/Makefile.am:
9043         * examples/thread/Makefile.am:
9044         * examples/typefind/Makefile.am:
9045         * examples/xml/Makefile.am:
9046         * gst/Makefile.am:
9047         * gst/autoplug/Makefile.am:
9048         * gst/elements/Makefile.am:
9049         * gst/gstcompat.h:
9050         * gst/indexers/Makefile.am:
9051         * gst/parse/Makefile.am:
9052         * gst/registries/Makefile.am:
9053         * gst/schedulers/Makefile.am:
9054         * libs/gst/bytestream/Makefile.am:
9055         * libs/gst/control/Makefile.am:
9056         * libs/gst/getbits/Makefile.am:
9057         * po/af.po:
9058         * po/az.po:
9059         * po/en_GB.po:
9060         * po/fr.po:
9061         * po/nl.po:
9062         * po/sr.po:
9063         * po/sv.po:
9064         * po/tr.po:
9065         * po/uk.po:
9066         * tests/Makefile.am:
9067         * tests/bufspeed/Makefile.am:
9068         * tests/instantiate/Makefile.am:
9069         * tests/memchunk/Makefile.am:
9070         * tests/muxing/Makefile.am:
9071         * tests/negotiation/Makefile.am:
9072         * tests/probes/Makefile.am:
9073         * tests/sched/Makefile.am:
9074         * tests/seeking/Makefile.am:
9075         * tests/threadstate/Makefile.am:
9076         * testsuite/caps/Makefile.am:
9077         * testsuite/cleanup/Makefile.am:
9078         * testsuite/dlopen/Makefile.am:
9079         * testsuite/dynparams/Makefile.am:
9080         * testsuite/plugin/Makefile.am:
9081         * testsuite/states/Makefile.am:
9082         * tools/Makefile.am:
9083           reorganize compile/link flags to be consistent
9084           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9085
9086 2004-05-04  David Schleef  <ds@schleef.org>
9087
9088         The "once more, with feeling" check-in.
9089         * testsuite/caps/Makefile.am: dist caps_strings
9090         * testsuite/caps/renegotiate.c: (main): This test triggers a
9091           segfault in the core.  Marking as failing.
9092
9093 2004-05-03  David Schleef  <ds@schleef.org>
9094
9095         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9096           by the build bots.
9097         * testsuite/caps/renegotiate.c: (main): Same.
9098
9099 2004-05-03  David Schleef  <ds@schleef.org>
9100
9101         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9102
9103 2004-05-03  David Schleef  <ds@schleef.org>
9104
9105         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9106           variable to find our source file.
9107
9108 2004-05-03  David Schleef  <ds@schleef.org>
9109
9110         * configure.ac:  Link plugins with libgstreamer and dependent
9111           libraries
9112         * testsuite/caps/Makefile.am:
9113         * testsuite/caps/caps_strings:
9114         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9115           through a file of caps strings and test each one
9116
9117 2004-05-04  Benjamin Otte  <otte@gnome.org>
9118
9119         * libs/gst/bytestream/Makefile.am:
9120         * libs/gst/bytestream/adapter.c: 
9121         * libs/gst/bytestream/adapter.h:
9122           add GstAdapter, similar to bytestream, but doesn't require ugly event
9123           handling or uglier loopbased elements
9124
9125 2004-05-03  David Schleef  <ds@schleef.org>
9126
9127         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9128         * testsuite/caps/erathostenes.c:
9129         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9130
9131 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9132
9133         * docs/pwg/pwg.xml:
9134           remove hardcoded stylesheet path (duh)
9135         * docs/random/release:
9136         * docs/gst/gstreamer-sections.txt:
9137         * gst/Makefile.am:
9138         * gst/gst.h:
9139         * gst/gst_private.h:
9140         * gst/gstcaps.c:
9141         * gst/gstevent.c:
9142         * gst/gstformat.c:
9143         * gst/gstinfo.c:
9144         * gst/gstinfo.h:
9145         * gst/gstinterface.c:
9146         * gst/gstmemchunk.c:
9147         * gst/gstprobe.c:
9148         * gst/gstquery.c:
9149         * gst/gstregistry.c:
9150         * gst/gstregistrypool.c:
9151         * gst/gststructure.c:
9152         * gst/gsttaginterface.c:
9153         * gst/gstthread.c:
9154         * gst/gsttrace.c:
9155         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9156         * gst/gsturi.c:
9157         * gst/gstvalue.c:
9158           deprecate gst_info; remove gstlog.h
9159    
9160
9161 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9162
9163         * Makefile.am:
9164         * po/en_GB.po:
9165         * po/sv.po:
9166         * po/uk.po:
9167           updated translations
9168
9169 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9170
9171         * gst/gstbin.c: (gst_bin_dispose):
9172           better debugging
9173
9174 2004-05-03  Johan Dahlin  <johan@gnome.org>
9175
9176         * gst/schedulers/gstoptimalscheduler.c
9177         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9178         really is a GstElement. Avoids critical when running gst-launch -v
9179         and a oggdemux/decoding pipeline.
9180
9181 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9182
9183         * docs/gst/tmpl/gstpipeline.sgml :
9184         * docs/manual/elements-api.xml :
9185                 doc fix by Patrick Guimond (Protector) from devel ML
9186                 reviewed by ronald
9187
9188 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9189
9190         * docs/gst/Makefile.am :
9191         * docs/libs/Makefile.am :
9192                 apply a patch from Arwed v. Merkatz so that gtk-doc
9193                 generated docs install (same for .devhelp file)
9194                 (fixes part 1 of #138836)
9195
9196 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9197
9198         * docs/faq/dependencies.xml: typo
9199         * docs/faq/getting.xml :
9200             - fix download URL for new gstreamer site
9201             - hide sf.net download page as latest version aren't there
9202             - fix apt URLs
9203             - fill "get via CVS" paragraph (link to dev page on the site)
9204         * docs/faq/general.xml:
9205             hide status tables as they no more exists
9206             change case on plugins license file to reflect reality
9207         * docs/faq/troubleshooting.xml:
9208             remove the wiki question/answer as there is no more wiki
9209
9210 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9211
9212         * gst/gsterror.h:
9213           include the headers needed for declarations used in this header
9214
9215 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9216
9217         * docs/random/uraeus/gstreamer_and_midi.txt :
9218           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9219           (fixes #132288)
9220
9221 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9222
9223         reviewed by Benjamin Otte  <otte@gnome.org>
9224
9225         * gst/schedulers/gthread-cothreads.h:
9226           free allocated data for main cothread, too when destroying context
9227           (fixes #141417)
9228
9229 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9230
9231         * docs/manual/goals.xml : remove duplicated paragraph at end 
9232         of doc page (fixes #141448)
9233
9234 2004-04-29  David Schleef  <ds@schleef.org>
9235
9236         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9237         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9238
9239 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9240
9241         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9242           fix property
9243         * gst/gstcaps.c:
9244           fix doc string
9245         * po/POTFILES.in:
9246           rename typefind source file
9247
9248 2004-04-28  David Schleef  <ds@schleef.org>
9249
9250         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9251         * win32/GStreamer.vcproj:
9252         * win32/Makefile:
9253         * win32/config.h:
9254         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9255         (_trewinddir), (_ttelldir), (_tseekdir):
9256         * win32/dirent.h:
9257         * win32/gst-inspect.vcproj:
9258         * win32/gst-launch.vcproj:
9259         * win32/gst-register.vcproj:
9260         * win32/gstbytestream.vcproj:
9261         * win32/gstelements.vcproj:
9262         * win32/gstoptimalscheduler.vcproj:
9263         * win32/gstspider.vcproj:
9264         * win32/gtchar.h:
9265         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9266         * win32/mman.h:
9267         * win32/mman.inl:
9268         * win32/msvc71.sln:
9269
9270 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9271
9272         * gst/gst.c: (init_post):
9273         * gst/gstinfo.c:
9274           remove useless _gst_progname stuff
9275         * tools/gst-inspect.c: (print_field), (print_caps):
9276           improve caps output
9277
9278 2004-04-28  David Schleef  <ds@schleef.org>
9279
9280         Disable parsing of a lot of files that aren't part of the
9281         exported API.  Move corresponding template files to old/,
9282         waiting for removal when they don't contain anything
9283         interesting.
9284         * docs/gst/Makefile.am:
9285         * docs/gst/gstreamer-sections.txt:
9286         * docs/gst/tmpl/cothreads.sgml:
9287         * docs/gst/tmpl/cothreads_compat.sgml:
9288         * docs/gst/tmpl/gettext.sgml:
9289         * docs/gst/tmpl/gobject2gtk.sgml:
9290         * docs/gst/tmpl/grammar.tab.sgml:
9291         * docs/gst/tmpl/gst-i18n-app.sgml:
9292         * docs/gst/tmpl/gst-i18n-lib.sgml:
9293         * docs/gst/tmpl/gst_private.sgml:
9294         * docs/gst/tmpl/gstaggregator.sgml:
9295         * docs/gst/tmpl/gstarch.sgml:
9296         * docs/gst/tmpl/gstatomic_impl.sgml:
9297         * docs/gst/tmpl/gstbufferstore.sgml:
9298         * docs/gst/tmpl/gstdata_private.sgml:
9299         * docs/gst/tmpl/gstdisksink.sgml:
9300         * docs/gst/tmpl/gstdisksrc.sgml:
9301         * docs/gst/tmpl/gstelementfactory.sgml:
9302         * docs/gst/tmpl/gstextratypes.sgml:
9303         * docs/gst/tmpl/gstfakesink.sgml:
9304         * docs/gst/tmpl/gstfakesrc.sgml:
9305         * docs/gst/tmpl/gstfdsink.sgml:
9306         * docs/gst/tmpl/gstfdsrc.sgml:
9307         * docs/gst/tmpl/gstfilesink.sgml:
9308         * docs/gst/tmpl/gstfilesrc.sgml:
9309         * docs/gst/tmpl/gsthttpsrc.sgml:
9310         * docs/gst/tmpl/gstidentity.sgml:
9311         * docs/gst/tmpl/gstindexfactory.sgml:
9312         * docs/gst/tmpl/gstmarshal.sgml:
9313         * docs/gst/tmpl/gstmd5sink.sgml:
9314         * docs/gst/tmpl/gstmultidisksrc.sgml:
9315         * docs/gst/tmpl/gstmultifilesrc.sgml:
9316         * docs/gst/tmpl/gstpadtemplate.sgml:
9317         * docs/gst/tmpl/gstpipefilter.sgml:
9318         * docs/gst/tmpl/gstschedulerfactory.sgml:
9319         * docs/gst/tmpl/gstsearchfuncs.sgml:
9320         * docs/gst/tmpl/gstshaper.sgml:
9321         * docs/gst/tmpl/gstspider.sgml:
9322         * docs/gst/tmpl/gstspideridentity.sgml:
9323         * docs/gst/tmpl/gststatistics.sgml:
9324         * docs/gst/tmpl/gsttee.sgml:
9325         * docs/gst/tmpl/gsttimecache.sgml:
9326         * docs/gst/tmpl/gsttypefind.sgml:
9327         * docs/gst/tmpl/gsttypefindfactory.sgml:
9328         * docs/gst/tmpl/gstxmlregistry.sgml:
9329         * docs/gst/tmpl/gthread-cothreads.sgml:
9330         * docs/gst/tmpl/old/cothreads.sgml:
9331         * docs/gst/tmpl/old/cothreads_compat.sgml:
9332         * docs/gst/tmpl/old/gettext.sgml:
9333         * docs/gst/tmpl/old/gobject2gtk.sgml:
9334         * docs/gst/tmpl/old/grammar.tab.sgml:
9335         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9336         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9337         * docs/gst/tmpl/old/gst_private.sgml:
9338         * docs/gst/tmpl/old/gstaggregator.sgml:
9339         * docs/gst/tmpl/old/gstarch.sgml:
9340         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9341         * docs/gst/tmpl/old/gstbufferstore.sgml:
9342         * docs/gst/tmpl/old/gstdata_private.sgml:
9343         * docs/gst/tmpl/old/gstdisksink.sgml:
9344         * docs/gst/tmpl/old/gstdisksrc.sgml:
9345         * docs/gst/tmpl/old/gstelementfactory.sgml:
9346         * docs/gst/tmpl/old/gstextratypes.sgml:
9347         * docs/gst/tmpl/old/gstfakesink.sgml:
9348         * docs/gst/tmpl/old/gstfakesrc.sgml:
9349         * docs/gst/tmpl/old/gstfdsink.sgml:
9350         * docs/gst/tmpl/old/gstfdsrc.sgml:
9351         * docs/gst/tmpl/old/gstfilesink.sgml:
9352         * docs/gst/tmpl/old/gstfilesrc.sgml:
9353         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9354         * docs/gst/tmpl/old/gstidentity.sgml:
9355         * docs/gst/tmpl/old/gstindexfactory.sgml:
9356         * docs/gst/tmpl/old/gstmarshal.sgml:
9357         * docs/gst/tmpl/old/gstmd5sink.sgml:
9358         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9359         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9360         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9361         * docs/gst/tmpl/old/gstpipefilter.sgml:
9362         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9363         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9364         * docs/gst/tmpl/old/gstshaper.sgml:
9365         * docs/gst/tmpl/old/gstspider.sgml:
9366         * docs/gst/tmpl/old/gstspideridentity.sgml:
9367         * docs/gst/tmpl/old/gststatistics.sgml:
9368         * docs/gst/tmpl/old/gsttee.sgml:
9369         * docs/gst/tmpl/old/gsttimecache.sgml:
9370         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9371         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9372         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9373         * docs/gst/tmpl/old/types.sgml:
9374         * docs/gst/tmpl/types.sgml:
9375
9376         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9377         gtkdoc-scan doesn't like files with the same name in different
9378         directories.
9379         * gst/elements/Makefile.am:
9380         * gst/elements/gstelements.c:
9381         * gst/elements/gsttypefind.c: 
9382         * gst/elements/gsttypefind.h:
9383         * gst/elements/gsttypefindelement.c:
9384         * gst/elements/gsttypefindelement.h:
9385
9386 2004-04-28  David Schleef  <ds@schleef.org>
9387
9388         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9389         patch (bug #141317):
9390         * gst/gst-i18n-lib.h: Allow disabling gettext.
9391         * gst/gstatomic_impl.h: disable warning when it's dumb.
9392         * gst/gstclock.c: fix include
9393         * gst/gstcompat.h: fix variadic macro
9394         * gst/gstinfo.c: fix include
9395         * gst/gstmacros.h: add defines for inlines on MSVC
9396         * gst/gstplugin.c: fix includes
9397         * gst/gstregistry.c: fix includes
9398         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9399         * gst/gstsystemclock.c: fix include
9400         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9401         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9402         * gst/registries/gstxmlregistry.c:
9403         (gst_xml_registry_parse_element_factory): fix use of non-portable
9404         functions
9405         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9406         * libs/gst/control/dparammanager.h: same
9407
9408 2004-04-28  David Schleef  <ds@schleef.org>
9409
9410         Move a bunch of unused files to old/ with names that are
9411         not case-insensitive-unique.  These files still contain some
9412         useful information that needs to be merged into gstbin.sgml,
9413         etc., so they shouldn't be deleted yet.
9414         * docs/gst/tmpl/GstBin.sgml:
9415         * docs/gst/tmpl/GstBuffer.sgml:
9416         * docs/gst/tmpl/GstCaps.sgml:
9417         * docs/gst/tmpl/GstClock.sgml:
9418         * docs/gst/tmpl/GstCompat.sgml:
9419         * docs/gst/tmpl/GstData.sgml:
9420         * docs/gst/tmpl/GstElement.sgml:
9421         * docs/gst/tmpl/GstEvent.sgml:
9422         * docs/gst/tmpl/GstIndex.sgml:
9423         * docs/gst/tmpl/GstStructure.sgml:
9424         * docs/gst/tmpl/GstTag.sgml:
9425         * docs/gst/tmpl/old/GstBin.sgml:
9426         * docs/gst/tmpl/old/GstBuffer.sgml:
9427         * docs/gst/tmpl/old/GstCaps.sgml:
9428         * docs/gst/tmpl/old/GstClock.sgml:
9429         * docs/gst/tmpl/old/GstCompat.sgml:
9430         * docs/gst/tmpl/old/GstData.sgml:
9431         * docs/gst/tmpl/old/GstElement.sgml:
9432         * docs/gst/tmpl/old/GstEvent.sgml:
9433         * docs/gst/tmpl/old/GstIndex.sgml:
9434         * docs/gst/tmpl/old/GstStructure.sgml:
9435         * docs/gst/tmpl/old/GstTag.sgml:
9436
9437 2004-04-28  David Schleef  <ds@schleef.org>
9438
9439         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9440         (gst_caps_append), (gst_caps_append_structure),
9441         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9442         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9443         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9444         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9445         (gst_caps_intersect), (gst_caps_normalize),
9446         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9447         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9448         * gst/gstcaps.h: use GST_IS_CAPS().
9449
9450 2004-04-26  David Schleef  <ds@schleef.org>
9451
9452         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9453         assembly.  gcc doesn't handle it correctly. (bug #141083)
9454         * gst/gsttrashstack.h: same
9455
9456 2004-04-25  Benjamin Otte  <otte@gnome.org>
9457
9458         * gst/gstelement.c: (gst_element_change_state):
9459           fix assertion to do an int comparison
9460
9461 2004-04-25  Benjamin Otte  <otte@gnome.org>
9462
9463         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9464           better debugging output on error
9465
9466 2004-04-25  Benjamin Otte  <otte@gnome.org>
9467
9468         * gst/gstcaps.c: (gst_caps_subtract):
9469           fix memleak
9470
9471 2004-04-23  Benjamin Otte  <otte@gnome.org>
9472
9473         * gst/gstvalue.c: (gst_value_compare_buffer),
9474         (_gst_value_initialize):
9475           add comparison function for buffers
9476
9477 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9478
9479         * docs/pwg/pwg.xml:
9480           Just found out that this so-called "ima-wav" format is really
9481           just "dvi adpcm" (according to the MS WAV documentation). So
9482           renaming it. We didn't use it yet anyway.
9483
9484 2004-04-23  Benjamin Otte  <otte@gnome.org>
9485
9486         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9487           call gst_caps_is_subset
9488
9489 2004-04-23  Benjamin Otte  <otte@gnome.org>
9490
9491         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9492         (gst_caps_is_subset):
9493           add documentation
9494
9495 2004-04-23  Benjamin Otte  <otte@gnome.org>
9496           
9497         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9498         (gst_caps_structure_subtract), (gst_caps_subtract),
9499         (gst_caps_structure_figure_out_union),
9500         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9501           fix simplifying and subtracting not working correctly with optional
9502           properties
9503           solve assorted problems that make it now simplify ebven more
9504         * docs/gst/tmpl/gstcaps.sgml:
9505         * gst/gstcaps.h:
9506           make gst_caps_do_simplify return a bool to indicate if it simplified
9507         * testsuite/caps/simplify.c: (main):
9508           add more checks. The tests is quite a bit useless right now because
9509           the core is heavily simplifying itself.
9510         * testsuite/caps/caps.h:
9511           fix caps to contain all optional properties
9512
9513 2004-04-22  Benjamin Otte  <otte@gnome.org>
9514
9515         * docs/gst/tmpl/gstcaps.sgml:
9516         * docs/gst/tmpl/gstfilesrc.sgml:
9517         * docs/gst/tmpl/gststructure.sgml:
9518         * docs/gst/tmpl/gstvalue.sgml:
9519           update for recent API changes
9520         * gst/gstcaps.c: (gst_caps_do_simplify):
9521           fix to stop trying with a freed structure
9522         * gst/gstpad.c: (gst_pad_link_fixate):
9523           simplify caps
9524         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9525           remove C++ comment
9526         * gst/gstpad.h:
9527           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9528         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9529         (gst_structure_to_string):
9530           keep the correct type when using lists of ranges
9531         * gst/gstvalue.c: (gst_value_list_prepend_value),
9532         (gst_value_list_append_value):
9533           copy the value before adding to the list (d'oh)
9534         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9535         (gst_value_subtract_int_range_int_range):
9536           handle overflows correctly
9537         * gst/gstvalue.c: (gst_value_subtract_from_list):
9538           fix memleak
9539         * testsuite/caps/caps.h:
9540           add a caps that caused segfaults
9541
9542 2004-04-22  Benjamin Otte  <otte@gnome.org>
9543
9544         * testsuite/refcounting/pad.c: (main):
9545           fix test
9546
9547 2004-04-22  Benjamin Otte  <otte@gnome.org>
9548
9549         * gst/gstcaps.c: (gst_caps_subtract):
9550           allow subtracting ANY and EMPTY from ANY caps
9551
9552 2004-04-22  Benjamin Otte  <otte@gnome.org>
9553
9554         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9555         (gst_caps_union):
9556           only simplify in functions that create new caps. Simplifying in
9557           gst_caps_append breaks tests.
9558
9559 2004-04-22  Benjamin Otte  <otte@gnome.org>
9560
9561         * gst/gstcaps.c: (gst_caps_structure_simplify):
9562           unset GValue after use
9563         * gst/gstcaps.c: (gst_caps_append), 
9564         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9565           use gst_caps_simplify (reduces registry size by 30%)
9566         * gst/gstpad.c: (gst_pad_template_new):
9567           don't allow NULL caps
9568
9569 2004-04-22  Benjamin Otte  <otte@gnome.org>
9570
9571         * docs/gst/gstreamer-sections.txt:
9572           add gst_caps_do_simplify
9573         * gst/gstcaps.c:
9574           add documentation for gst_caps_do_simplify
9575         * gst/gstvalue.h:
9576           fix typo in gst_value_register_subtract_func declaration for gst-doc
9577
9578 2004-04-22  Benjamin Otte  <otte@gnome.org>
9579
9580         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9581           fix bug when converting from empty string.
9582         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9583         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9584           use gst_caps_new_empty to allocate a new caps. Only that function
9585           allocates memory for caps now.
9586         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9587         (gst_caps_remove_structure):
9588           add ability to remove one structure (but not to header yet)
9589         * gst/gstcaps.c: (gst_caps_compare_structures),
9590         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9591         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9592         * gst/gstcaps.h:
9593           add gst_caps_do_simplify that tries to simplify a caps in place.
9594           Deprecate old gst_caps_simplify function.
9595         * testsuite/caps/caps.h:
9596           add caps.h containing a common set of caps to test against.
9597         * testsuite/caps/sets.c: (check_caps), (main):
9598           use it.
9599         * testsuite/caps/.cvsignore:
9600         * testsuite/caps/Makefile.am:
9601         * testsuite/caps/simplify.c: (check_caps), (main):
9602           add test to check correctness and efficency of caps simplification.
9603
9604 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9605
9606         reviewed by Benjamin Otte  <otte@gnome.org>
9607
9608         * gst/gstparse.c: (_gst_parse_escape):
9609           Free the GString used in _gst_parse_escape()
9610
9611 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9612
9613         * gst/gstpad.c: (gst_pad_link_negotiate):
9614           refuse to link if the link is not possible
9615         * configure.ac:
9616         * testsuite/Makefile.am:
9617         * testsuite/negotiation/.cvsignore:
9618         * testsuite/negotiation/Makefile.am:
9619         * testsuite/negotiation/pad_link.c: (main):
9620           add test that checks the above behaviour
9621
9622 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9623
9624         * docs/gst/gstreamer-sections.txt:
9625           add newly added API
9626
9627 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9628
9629         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9630         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9631         (gst_filesrc_open_file), (gst_filesrc_close_file),
9632         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9633         * gst/elements/gstfilesrc.h:
9634           add support for non-regular files (#140734)
9635
9636 2004-04-21  Benjamin Otte  <otte@gnome.org>
9637
9638         * gst/gstpad.c: (gst_pad_link_fixate):
9639           add sophisticated error checking code to see if fixation functions
9640           did their fixation right
9641
9642 2004-04-21  Benjamin Otte  <otte@gnome.org>
9643
9644         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9645           check for ANY caps before appending/unioning
9646         * gst/gstcaps.c: (gst_caps_is_subset),
9647         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9648         (gst_caps_structure_subtract), (gst_caps_subtract):
9649         * gst/gstcaps.h:
9650           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9651           the API. deprecate gst_caps_is_equal_fixed
9652         * gst/gstpad.c: (gst_pad_try_set_caps):
9653         * gst/gstqueue.c: (gst_queue_link):
9654           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9655         * gst/gststructure.c: (gst_structure_get_name_id):
9656         * gst/gststructure.h:
9657           add function gst_structure_get_name_id
9658         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9659         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9660         (gst_value_subtract_int_range_int_range),
9661         (gst_value_subtract_double_double_range),
9662         (gst_value_subtract_double_range_double),
9663         (gst_value_subtract_double_range_double_range),
9664         (gst_value_subtract_from_list), (gst_value_subtract_list),
9665         (gst_value_can_intersect), (gst_value_subtract),
9666         (gst_value_can_subtract), (gst_value_register_subtract_func),
9667         (_gst_value_initialize):
9668         * gst/gstvalue.h:
9669           add support for subtracting values from each other. Note that
9670           subtracting means subtracting as in set theory. Required for caps
9671           stuff above.
9672         * testsuite/caps/.cvsignore:
9673         * testsuite/caps/Makefile.am:
9674         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9675         * testsuite/caps/sets.c: (check_caps), (main):
9676         * testsuite/caps/subtract.c: (check_caps), (main):
9677           add tests for subtraction and equality code.
9678
9679 2004-04-20  David Schleef  <ds@schleef.org>
9680
9681         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9682         * gst/indexers/Makefile.am:
9683         * gst/schedulers/Makefile.am:
9684         * libs/gst/bytestream/Makefile.am:
9685         * libs/gst/control/Makefile.am:
9686         * libs/gst/getbits/Makefile.am:
9687
9688 2004-04-20  David Schleef  <ds@schleef.org>
9689
9690         * common/as-libtool.mak: Fine-tune DLL building.
9691         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9692         (like gst-plugins)
9693         * examples/plugins/Makefile.am: remove plugindir
9694         * gst/autoplug/Makefile.am: DLL building fixes
9695         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9696         Windows.
9697         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9698         * gst/indexers/Makefile.am: DLL building fixes
9699         * gst/schedulers/Makefile.am: DLL building fixes.
9700         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9701         * libs/gst/control/Makefile.am: same
9702         * libs/gst/getbits/Makefile.am: same
9703         * testsuite/Makefile.am: New dlopen directory
9704         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9705         when dlopened.
9706         * testsuite/dlopen/dlopen_gst.c: (main): same
9707         * testsuite/dlopen/loadgst.c: (do_test): same
9708
9709 2004-04-20  David Schleef  <ds@schleef.org>
9710
9711         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9712         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9713
9714 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9715
9716         * gst/gstelement.c: (gst_element_wait),
9717         (gst_element_set_time_delay), (gst_element_change_state):
9718           Use GST_TIME_*
9719
9720 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9721
9722         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9723         (gst_spider_identity_plug):
9724           improve debugging messages
9725         * gst/gstbin.c: (gst_bin_remove_func):
9726           make sure the state_change function is only called with simple state
9727           transitions
9728
9729 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9730
9731         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9732         (gst_fakesink_set_property), (gst_fakesink_chain):
9733         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9734         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9735         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9736         * gst/elements/gstidentity.c: (gst_identity_chain),
9737         (gst_identity_set_property):
9738         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9739         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9740           add warnings to _set_property for unknown arguments
9741           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9742
9743 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9744
9745         * Makefile.am:
9746         * docs/manuals.mak:
9747           add .po file download snippet
9748           fix a bug in the doc makefile
9749
9750 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9751
9752         * Makefile.am:
9753         * po/LINGUAS:
9754         * po/en_GB.po:
9755           Added en_GB translation (Gareth Owen)
9756
9757 2004-04-20  Johan Dahlin  <johan@gnome.org>
9758
9759         * gst/gstpad.c (_invent_event): Clean up
9760
9761 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9762
9763         * testsuite/caps/filtercaps.c: (main):
9764           fix test to test things correctly (caps are complicated)
9765
9766 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9767
9768         * testsuite/caps/Makefile.am:
9769         * testsuite/caps/filtercaps.c: (main):
9770           add test (that doesn't work right now, but should)
9771
9772 2004-04-19  David Schleef  <ds@schleef.org>
9773
9774         * configure.ac: Add test for allowing unaligned access.  Add define
9775         to put in gstconfig.h.
9776         * docs/gst/gstreamer-sections.txt: New symbols
9777         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9778         * docs/gst/tmpl/gstfilesrc.sgml:
9779         * docs/gst/tmpl/gstparse.sgml:
9780         * docs/gst/tmpl/gsttypes.sgml:
9781         * docs/gst/tmpl/gstutils.sgml:
9782         * docs/gst/tmpl/gstvalue.sgml:
9783         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9784         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9785         on most !i386/!powerpc architectures.  From Daniel Gazard
9786         <daniel.gazard@free.fr>.  (bug #140156)
9787         * po/af.po: Check in changes made by gettext.
9788         * po/az.po:
9789         * po/fr.po:
9790         * po/nl.po:
9791         * po/sr.po:
9792         * po/sv.po:
9793
9794 2004-04-20  Benjamin Otte  <otte@gnome.org>
9795
9796         * gst/schedulers/entryscheduler.c: 
9797         (gst_entry_scheduler_yield):
9798           refuse to yield when decoupled elements insist on doing that.
9799           At least it's better than crashing
9800
9801 2004-04-19  David Schleef  <ds@schleef.org>
9802
9803         * docs/libs/Makefile.am: Change sinclude to include
9804         * docs/gst/Makefile.am: same
9805         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9806
9807 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9808
9809         * po/LINGUAS:
9810         * po/uk.po:
9811           Added Ukrainian translation (Maxim V. Dziumanenko)
9812
9813 2004-04-19  Johan Dahlin  <johan@gnome.org>
9814
9815         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9816         checking here, do it before calling the function.
9817         Clean up, use for loops instead of while loops while iterating
9818         over lists.
9819
9820         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9821         in debug message.
9822         (gst_spider_create_and_plug): Improve debug message.
9823         General: Replace while loops which iterates over GLists with for
9824         loops. Which are much cleaner, improves readability, especially
9825         for gst_spider_identity_plug
9826
9827         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9828         fixes bug 140477
9829
9830 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9831
9832         * po/LINGUAS:
9833         * po/tr.po:
9834           Added Turkish translation (Baris Cicek)
9835
9836 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9837
9838         * docs/faq/troubleshooting.xml:
9839           Mention gst-register in the FAQ (fixes 139045).
9840
9841 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9842
9843         * docs/gst/gstreamer-sections.txt:
9844
9845 2004-04-17  Benjamin Otte  <otte@gnome.org>
9846
9847         * gst/gstelement.c: (gst_element_dispose):
9848           simplify
9849         * gst/gstpad.c: (gst_pad_call_chain_function):
9850           don't create loads of events due to bad macro usage
9851
9852 2004-04-16  David Schleef  <ds@schleef.org>
9853
9854         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9855         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9856         * gst/gstvalue.c: (gst_value_serialize_buffer),
9857         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9858         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9859         to indicate types that are fixed wrt caps or not.  Switching to
9860         this function fixes (bug #140298).
9861         * gst/gstvalue.h:
9862
9863 2004-04-16  David Schleef  <ds@schleef.org>
9864
9865         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9866         for GST_UNALIGNED_ACESS, since we essentially know which archs
9867         are ok.
9868
9869 2004-04-17  Benjamin Otte  <otte@gnome.org>
9870
9871         * docs/gst/Makefile.am:
9872           ignore gst/parse directory when building docs (fixes #140205)
9873
9874 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9875
9876         * testsuite/refcounting/mem.c: (vmsize):
9877           do error checking
9878
9879 2004-04-16  Johan Dahlin  <johan@gnome.org>
9880
9881         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9882         and gst_pad_call_get_function.
9883
9884 2004-04-15  David Schleef  <ds@schleef.org>
9885
9886         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9887         checks if we can access unaligned memory.
9888         * configure.ac: Use it.
9889
9890 2004-04-16  Benjamin Otte  <otte@gnome.org>
9891
9892         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9893         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9894         * gst/elements/gstfilesrc.h:
9895           s/seek_happened/need_discont/ and require discont before sending any
9896           data
9897
9898 2004-04-15  David Schleef  <ds@schleef.org>
9899
9900         * gst/gstvalue.c: (gst_value_serialize_buffer),
9901         (gst_value_deserialize_buffer), (_gst_value_initialize):
9902         Register these types as fundamental types. (bug #140015)
9903
9904 2004-04-16  Benjamin Otte  <otte@gnome.org>
9905
9906         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9907         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9908         (gst_pad_pull):
9909           implement enforcing discont events before buffers are passed. This
9910           allows state changes of only some elements and later correctly going
9911           on where they left off (or in short: you can now set audio sinks to
9912           NULL to release the device when the pipeline is paused)
9913         * gst/gstpad.c: (gst_pad_call_chain_function),
9914         (gst_pad_call_get_function):
9915         * gst/gstpad.h:
9916           add gst_pad_call_chain_function and gst_pad_call_get_function for
9917           scheduler interaction. They are required because of the changes
9918           above.
9919         * gst/schedulers/entryscheduler.c: (get_buffer),
9920         (gst_entry_scheduler_chain_wrapper),
9921         (gst_entry_scheduler_get_wrapper),
9922         (gst_entry_scheduler_state_transition),
9923         (gst_entry_scheduler_pad_link):
9924         * gst/schedulers/gstbasicscheduler.c:
9925         (gst_basic_scheduler_chain_wrapper),
9926         (gst_basic_scheduler_src_wrapper),
9927         (gst_basic_scheduler_chainhandler_proxy),
9928         (gst_basic_scheduler_gethandler_proxy),
9929         (gst_basic_scheduler_cothreaded_chain),
9930         (gst_basic_scheduler_chain_elements):
9931         * gst/schedulers/gstoptimalscheduler.c:
9932         (get_group_schedule_function), (pad_clear_queued),
9933         (gst_opt_scheduler_pad_link):
9934           use the new functions instead of calling get/chain-functions
9935           directly.
9936
9937 2004-04-15  David Schleef  <ds@schleef.org>
9938
9939         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9940         * docs/gst/tmpl/gstinfo.sgml: same
9941         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9942         gtk-doc put here.
9943         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9944         * examples/queue/queue.c: (main):  We iterate pipelines, not
9945         bins.  (bug #139996)
9946
9947 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9948
9949         * docs/pwg/advanced-types.xml:
9950           Add MS RLE support. Also document Qt RLE although I have no sample
9951           files for that yet. And document an extra property for ADPCM.
9952
9953 2004-04-15  David Schleef  <ds@schleef.org>
9954
9955         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9956         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9957         Windows.
9958
9959 2004-04-15  David Schleef  <ds@schleef.org>
9960
9961         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9962         symbol names to not conflict with new gstinfo.h symbols.
9963         * gst/gstinfo.h: Add inline functions for all those crazy
9964         compilers that don't know how to handle variadic macros (MSVC).
9965
9966 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9967
9968         * configure.ac: bump nano to 1
9969
9970 === release 0.8.1 ===
9971
9972 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9973
9974         * NEWS:
9975         * RELEASE:
9976         * configure.ac:
9977           releasing 0.8.1, "Snow Brigade"
9978
9979 2004-04-14  David Schleef  <ds@schleef.org>
9980
9981         * testsuite/Makefile.am: define tests_ignore
9982         * testsuite/Rules: Added new tests_ignore, which get compiled,
9983         but not run (generally because they're inconsistent or have
9984         heisenbugs).  Now we can ensure all the .c files compile in
9985         testsuite/.
9986         * testsuite/bins/Makefile.am: define tests_ignore
9987         * testsuite/bytestream/Makefile.am:
9988         * testsuite/caps/Makefile.am:
9989         * testsuite/clock/Makefile.am:
9990         * testsuite/debug/Makefile.am:
9991         * testsuite/debug/global.c: (gst_debug_log_one),
9992         (gst_debug_log_two): Fix compilation problem.
9993         * testsuite/dynparams/Makefile.am:
9994         * testsuite/elements/Makefile.am:
9995         * testsuite/ghostpads/Makefile.am:
9996         * testsuite/indexers/Makefile.am:
9997         * testsuite/parse/Makefile.am:
9998         * testsuite/plugin/Makefile.am:
9999         * testsuite/refcounting/Makefile.am:
10000         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10001         results, because it's not calculated correctly.
10002         * testsuite/refcounting/pad.c: (main): same
10003         * testsuite/states/Makefile.am:
10004         * testsuite/tags/Makefile.am:
10005         * testsuite/threads/Makefile.am:
10006
10007 2004-04-14  David Schleef  <ds@schleef.org>
10008
10009         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10010         generating bad code around the cpu detection asm code.
10011
10012 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10013
10014         * tools/gst-inspect.c: (print_element_info):
10015           print numeric version of rank as well, since we added some - 1
10016           rank values to elements
10017
10018 2004-04-13  David Schleef  <ds@schleef.org>
10019
10020         * configure.ac:  Disable various code when compiling for MinGW.
10021         * gst/elements/Makefile.am:
10022         * gst/elements/gstelements.c:
10023         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10024         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10025         * gst/registries/gstxmlregistry.c: (make_dir):
10026
10027 2004-04-13  David Schleef  <ds@schleef.org>
10028
10029         * gst/Makefile.am:
10030         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10031         assembly.
10032         * gst/gstcpuid_i386.s: remove
10033
10034 2004-04-13  David Schleef  <ds@schleef.org>
10035
10036         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10037         seems to think it needs to be done.
10038         * docs/gst/tmpl/gstfakesink.sgml:
10039         * docs/gst/tmpl/gstfakesrc.sgml:
10040         * docs/gst/tmpl/gstfdsink.sgml:
10041         * docs/gst/tmpl/gstfdsrc.sgml:
10042         * docs/gst/tmpl/gstfilesink.sgml:
10043         * docs/gst/tmpl/gstfilesrc.sgml:
10044         * docs/gst/tmpl/gstidentity.sgml:
10045         * docs/gst/tmpl/gstmd5sink.sgml:
10046         * docs/gst/tmpl/gstmultifilesrc.sgml:
10047         * docs/gst/tmpl/gstpipefilter.sgml:
10048         * docs/gst/tmpl/gstshaper.sgml:
10049         * docs/gst/tmpl/gstspider.sgml:
10050         * docs/gst/tmpl/gstspideridentity.sgml:
10051         * docs/gst/tmpl/gststatistics.sgml:
10052         * docs/gst/tmpl/gsttee.sgml:
10053         * docs/gst/tmpl/gsttypefind.sgml:
10054         * docs/gst/tmpl/gstutils.sgml:
10055
10056 2004-04-13  David Schleef  <ds@schleef.org>
10057
10058         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10059         and to build DLLs on Windows.
10060         * gst/Makefile.am:
10061         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10062         (gst_filesrc_open_file):
10063         * gst/schedulers/Makefile.am:
10064
10065 2004-04-13  David Schleef  <ds@schleef.org>
10066
10067         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10068         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10069         fixating lists.
10070
10071 2004-04-12  David Schleef  <ds@schleef.org>
10072
10073         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10074         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10075         to using it.
10076         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10077         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10078         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10079         * gst/gststructure.c: (gst_structure_set_valist),
10080         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10081         support for buffers.
10082         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10083         intended to be const.
10084         * gst/gsttag.h: same
10085         * gst/gstvalue.c: (gst_value_serialize_buffer),
10086         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10087         to (de)serialize buffers.
10088         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10089         * testsuite/caps/string-conversions.c: (main):
10090         * testsuite/caps/value_serialize.c: add new test
10091
10092 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10093
10094         * docs/pwg/advanced-types.xml:
10095           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10096
10097 2004-04-11  Benjamin Otte  <otte@gnome.org>
10098
10099         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10100           rename categories to basic_*
10101         * gst/schedulers/gstbasicscheduler.c: 
10102         (gst_basic_scheduler_chain_wrapper),
10103         (gst_basic_scheduler_chainhandler_proxy),
10104         (gst_basic_scheduler_gethandler_proxy),
10105         (gst_basic_scheduler_eventhandler_proxy):
10106           debugging category fixes - put common stuff in log category
10107         * gst/schedulers/gstbasicscheduler.c: 
10108         (gst_basic_scheduler_chain_elements):
10109           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10110           active and linking two active chains
10111
10112 2004-04-10  Benjamin Otte  <otte@gnome.org>
10113
10114         * docs/pwg/intro-preface.xml:
10115           fix dead links and remove reference to Wiki
10116
10117 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10118
10119         * gst/schedulers/gstbasicscheduler.c:
10120           make sure we can switch back to the main function if we're still in
10121           the main function (supposed to fix #139617)
10122         * gst/schedulers/gthread-cothreads.h:
10123           don't throw an error when switching to the same cothread
10124
10125 2004-04-09  Benjamin Otte  <otte@gnome.org>
10126
10127         * gst/gstbin.c: (gst_bin_get_type):
10128         * gst/gstclock.c: (gst_clock_get_type):
10129         * gst/gstindex.c: (gst_index_get_type):
10130         * gst/gstobject.c: (gst_object_get_type),
10131         (gst_signal_object_get_type):
10132         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10133         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10134         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10135         * gst/gstqueue.c: (gst_queue_get_type):
10136         * gst/gstregistry.c: (gst_registry_get_type):
10137         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10138         * gst/gstthread.c: (gst_thread_get_type):
10139           don't use memchunks for these objects, use malloc instead
10140
10141 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10142
10143         * docs/gst/.cvsignore:
10144         * docs/gst/Makefile.am:
10145         * docs/gst/gstreamer-sections.txt:
10146         * docs/gst/tmpl/gstaggregator.sgml:
10147         * docs/gst/tmpl/gstbuffer.sgml:
10148         * docs/gst/tmpl/gstclock.sgml:
10149         * docs/gst/tmpl/gstelement.sgml:
10150         * docs/gst/tmpl/gstfakesink.sgml:
10151         * docs/gst/tmpl/gstfakesrc.sgml:
10152         * docs/gst/tmpl/gstfdsink.sgml:
10153         * docs/gst/tmpl/gstfdsrc.sgml:
10154         * docs/gst/tmpl/gstfilesink.sgml:
10155         * docs/gst/tmpl/gstfilesrc.sgml:
10156         * docs/gst/tmpl/gstidentity.sgml:
10157         * docs/gst/tmpl/gstindex.sgml:
10158         * docs/gst/tmpl/gstinfo.sgml:
10159         * docs/gst/tmpl/gstmd5sink.sgml:
10160         * docs/gst/tmpl/gstmultifilesrc.sgml:
10161         * docs/gst/tmpl/gstpad.sgml:
10162         * docs/gst/tmpl/gstpipefilter.sgml:
10163         * docs/gst/tmpl/gstpipeline.sgml:
10164         * docs/gst/tmpl/gstpluginfeature.sgml:
10165         * docs/gst/tmpl/gstqueue.sgml:
10166         * docs/gst/tmpl/gstregistry.sgml:
10167         * docs/gst/tmpl/gstscheduler.sgml:
10168         * docs/gst/tmpl/gstshaper.sgml:
10169         * docs/gst/tmpl/gstspider.sgml:
10170         * docs/gst/tmpl/gstspideridentity.sgml:
10171         * docs/gst/tmpl/gststatistics.sgml:
10172         * docs/gst/tmpl/gstsystemclock.sgml:
10173         * docs/gst/tmpl/gsttee.sgml:
10174         * docs/gst/tmpl/gstthread.sgml:
10175         * docs/gst/tmpl/gsttypefind.sgml:
10176         * docs/gst/tmpl/gstutils.sgml:
10177           further doc build fixes
10178
10179 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10180
10181         * docs/gst/Makefile.am:
10182           make docs exit on scanning problems
10183           fix nonsrcdir build issues
10184         * docs/gst/gstreamer-sections.txt:
10185           adding stuff from -unused
10186         * gst/gstqueue.h:
10187           create GstQueueSize
10188         * gst/schedulers/cothreads_compat.h:
10189           fix cothread warnings
10190
10191 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10192
10193         * docs/gst/gstreamer-sections.txt:
10194           remove defines deprecated by Benjamin
10195
10196 2004-04-07  Benjamin Otte  <otte@gnome.org>
10197
10198         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10199           when the buffer is complete, don't check if other buffers are needed
10200         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10201           check that the offset is >0 so we don't try to read before the
10202           beginning of the file
10203         * gst/gstpad.c: (gst_pad_set_pad_template):
10204           sink the template, so we don't end up with 130k pad templates
10205
10206 2004-04-06  Benjamin Otte  <otte@gnome.org>
10207
10208         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10209           don't ref the element, adding already reffed it. And we didn't unref
10210           it later anyway... (huge memleak when you used many spider elements)
10211         * gst/gstelement.c: (gst_element_base_class_finalize):
10212         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10213         (gst_element_register):
10214         * gst/gsturi.c: (gst_element_make_from_uri):
10215           use gst_object_(un)ref instead of g_object(un)ref
10216
10217 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10218
10219         * gst/gstbuffer.h:
10220           remove macro that wouldn't work anymore because struct member has
10221           been removed.
10222         * gst/schedulers/entryscheduler.c: (schedule_forward):
10223           fix segfault for unconnected pads
10224         
10225 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10226
10227         reviewed by David Schleef <ds@schleef.org>
10228
10229         * gst/gstinfo.h:
10230           *_FORMAT modifiers should require putting a % in front of them for
10231           consistency reasons.
10232
10233 2004-04-05  Colin Walters  <walters@redhat.com>
10234
10235         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10236         space.
10237
10238 2004-04-05  Benjamin Otte  <otte@gnome.org>
10239
10240         * configure.ac:
10241         * gst/Makefile.am:
10242         * gst/gst_private.h:
10243         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10244           add support for detecting if GStreamer runs inside valgrind.
10245           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10246           print a big message in valgrind that GStreamer has detected it's
10247           running inside and might now use different code.
10248         * gst/gstmemchunk.c: (populate), (free_area),
10249         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10250         (gst_mem_chunk_free):
10251           flag memchunks for valgrind, so it can detect leaking of chunks.
10252           This allows detecting leaks of GstBuffer and GstEvent correctly
10253           inside valgrind.
10254
10255 2004-04-05  David Schleef  <ds@schleef.org>
10256
10257         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10258           jensgr@gmx.net (Jens Granseuer)
10259
10260 2004-04-05  David Schleef  <ds@schleef.org>
10261
10262         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10263         (gst_buffer_default_free), (gst_buffer_default_copy),
10264         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10265         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10266         structures in one place.
10267
10268 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10269
10270         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10271           (GST_TIME_FORMAT, GST_TIME_ARGS)
10272
10273 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10274
10275         * testsuite/elements/Makefile.am:
10276           disable test until it stops breaking make distcheck
10277
10278 2004-04-05  Johan Dahlin  <johan@gnome.org>
10279
10280         * po/sv.po: Updated translation
10281
10282 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10283
10284         * gst/gstplugin.c: (gst_plugin_load_file):
10285           fix segfault for when original plugin was loaded statically
10286
10287 2004-04-05  Benjamin Otte  <otte@gnome.org>
10288
10289         * testsuite/debug/category.c: (main):
10290         * testsuite/debug/commandline.c: (main):
10291         * testsuite/debug/output.c: (main):
10292           fix tests to work again with debugging enabled
10293
10294 2004-04-05  Benjamin Otte  <otte@gnome.org>
10295
10296         * gst/schedulers/gstbasicscheduler.c:
10297         (gst_basic_scheduler_pad_link):
10298           fix to work with recent scheduling changes
10299
10300 2004-04-05  Benjamin Otte  <otte@gnome.org>
10301
10302         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10303         prepareChangeLog doesn't work when cvs indents):
10304           don't throw an error when no element can be scheduled, there's too
10305           many weird reasons why it doesn't work. Return STOPPED instead.
10306           decoupled elemts' schedulability doesn't depend on bufpens.
10307
10308 2004-04-04  Benjamin Otte  <otte@gnome.org>
10309
10310         * gst/schedulers/gstbasicscheduler.c:
10311         (gst_basic_scheduler_pad_select):
10312           fix uninitialized variable warnings
10313
10314 2004-04-04  Benjamin Otte  <otte@gnome.org>
10315
10316         * gst/gstpad.c: (gst_pad_collect_valist):
10317           fix uninitialized variable warning
10318         * gst/schedulers/entryscheduler.c: (schedule_forward):
10319           fix shadowed variable
10320
10321 2004-04-04  Benjamin Otte  <otte@gnome.org>
10322
10323         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10324         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10325         (gst_pad_select):
10326         * gst/gstpad.h:
10327         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10328         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10329         * gst/gstscheduler.h:
10330           implement gst_pad_collect as replacement for gst_pad_select.
10331           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10332           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10333           new pad_select, lock and unlock calls.
10334         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10335         * gst/cothreads.h:
10336         * gst/schedulers/cothreads_compat.h:
10337         * gst/schedulers/gthread-cothreads.h:
10338           remove unused cothread_lock and cothread_unlock calls
10339         * gst/schedulers/entryscheduler.c:
10340         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10341         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10342         (gst_entry_scheduler_pad_select):
10343           update to new API
10344         * gst/schedulers/gstbasicscheduler.c:
10345         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10346         (gst_basic_scheduler_pad_select):
10347           remove useless lock and unlock calls, update pad_select to new API
10348           (untested)
10349         * gst/schedulers/gstoptimalscheduler.c:
10350         (gst_opt_scheduler_class_init):
10351           remove useless select, lock and unlock function calls
10352         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10353           use gst_pad_collect instead of gst_pad_select
10354
10355 2004-04-04  Benjamin Otte  <otte@gnome.org>
10356
10357         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10358         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10359         (schedule_next_element), (print_entry):
10360           add can_schedule_pad to handle element states.
10361           add schedule_forward to select the correct entry to schedule next
10362
10363 2004-04-03  Benjamin Otte  <otte@gnome.org>
10364
10365         * gst/schedulers/entryscheduler.c: 
10366           remove unused variable, fix error inside Rb, fix compile warning in
10367           unreachable code
10368
10369 2004-04-03  Benjamin Otte  <otte@gnome.org>
10370
10371         * gst/schedulers/entryscheduler.c:
10372           completely revamp the inner workings, so it's a lot easier to
10373           understand and extend
10374
10375 2004-04-03  Andy Wingo  <wingo@pobox.com>
10376
10377         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10378         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10379         This allows better introspection of pipeline topology.
10380         (add_to_chain): Don't do trickery to put loop elements first;
10381         rather, queue a chain sort by marking the chain as dirty.
10382         (remove_from_chain): Mark the chain dirty.
10383         (sort_chain): New function. Sorts the group list so that terminal
10384         sinks are first. This means elements on the sink side will be
10385         preferentially sscheduled before elements on the src side of the
10386         pipeline.
10387         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10388         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10389         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10390         (group_inc_link): Change argument and variable names to match the
10391         new link structure member names (src and sink).
10392         (group_dec_link): Add some description
10393
10394 2004-04-03  Benjamin Otte  <otte@gnome.org>
10395
10396         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10397         * gst/gstinfo.h:
10398         * testsuite/debug/category.c: (main):
10399         * testsuite/debug/commandline.c: (main):
10400         * testsuite/debug/output.c: (main):
10401         * testsuite/debug/printf_extension.c: (main):
10402           fix to successfully build and test with --disable-gst-debug
10403           configure switch (fixes #138705)
10404
10405 2004-04-03  Benjamin Otte  <otte@gnome.org>
10406
10407         * docs/pwg/building-boiler.xml:
10408           add cvs login line and s/anonymous/anoncvs/
10409
10410 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10411
10412         reviewed by Benjamin Otte  <otte@gnome.org>
10413
10414         * gst/gststructure.c: (gst_structure_free):
10415           memleak fix: free fields array (partial fix for #134839)
10416
10417 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10418
10419         * docs/random/ds/0.9-suggested-changes:
10420           Add a note to change handoff use in fakesrc to be usable in
10421           a more generic way (fakesrc should be renamed to appsrc or so).
10422         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10423           Change signal type to scope, so we can fill the buffer in the
10424           handoff handler (that's the whole use of this signal...).
10425
10426 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10427
10428         * docs/pwg/other-ntoone.xml:
10429           Document muxers and n-to-1 elements.
10430
10431 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10432
10433         * gst/registries/gstxmlregistry.c
10434         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10435         determine if a file is a G_MODULE. The old one discards paths
10436         containing "so" somewhere in the middle. My home directory is
10437         called "soto". Go figure...
10438
10439 2004-03-31  David Schleef  <ds@schleef.org>
10440
10441         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10442         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10443         * gst/gstbuffer.h:
10444
10445 2004-03-31  David Schleef  <ds@schleef.org>
10446
10447         * gst/gstvalue.c: (gst_value_union_int_int_range),
10448         (gst_value_union_int_range_int_range), (gst_value_can_union),
10449         (gst_value_union), (_gst_value_initialize):  Add some union
10450         implementations.  We didn't have any previously.
10451         * testsuite/caps/Makefile.am:
10452         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10453         (gst_audioscale_getcaps), (test_caps), (main): A little test
10454         that is the same as the caps manipulation in audioscale.
10455
10456 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10457
10458         * docs/faq/general.xml:
10459           add entry about "does gst support format X?"
10460
10461 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10462
10463         * gst/gstthread.c:
10464           fix docs
10465         * gst/gstutils.h:
10466           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10467
10468 2004-03-30  Benjamin Otte  <otte@gnome.org>
10469
10470         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10471           set the offset of the buffer to the requested offset
10472         * gst/elements/gsttypefind.c: (stop_typefinding):
10473           revert patch 1.18 (which I unfortunately don't know the reason for).
10474           This is needed to allow downstream elements to seek. Otherwise
10475           typefind might overwrite a previous seek by downstream elements.
10476           This lead to errors with id3tag and typefind on some mp3s.
10477         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10478         (gst_entry_scheduler_iterate):
10479           be more verbose when debugging
10480
10481 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10482
10483         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10484           make sure we don't get NULL strings
10485
10486 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10487
10488         * gst/gstcaps.c:
10489         * gst/gstelement.c:
10490         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10491         * gst/gstindex.c: (gst_index_resolver_get_type),
10492         (gst_index_get_type), (gst_index_factory_get_type):
10493         * gst/gstinfo.c:
10494         * gst/gstpad.c:
10495         * gst/gstplugin.c:
10496         * gst/gsturi.c: (gst_uri_handler_get_type):
10497         * gst/gstvalue.c:
10498           first batch of documentation fixes
10499
10500 2004-03-29  David Schleef  <ds@schleef.org>
10501
10502         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10503         * docs/gst/gstreamer-docs.sgml:  More hacking
10504         * docs/gst/gstreamer-sections.txt:
10505         * docs/gst/tmpl/cothreads_compat.sgml:
10506         * docs/gst/tmpl/gstcaps.sgml:
10507         * docs/gst/tmpl/gstclock.sgml:
10508         * docs/gst/tmpl/gstelement.sgml:
10509         * docs/gst/tmpl/gstevent.sgml:
10510         * docs/gst/tmpl/gstpad.sgml:
10511         * docs/gst/tmpl/gstutils.sgml:
10512         * docs/gst/tmpl/gstxml.sgml:
10513         * docs/gst/tmpl/gthread-cothreads.sgml:
10514         * docs/random/ds/0.9-suggested-changes:
10515         * gst/elements/gstfakesink.h: doc fixes
10516         * gst/elements/gstfakesrc.h: doc fixes
10517         * gst/gstcaps.c: doc fixes
10518         * gst/gstcaps.h: doc fixes
10519         * gst/gstelement.c: doc fixes
10520         * gst/gstelement.h: doc fixes
10521         * gst/gstindex.c: doc fixes
10522         * gst/gstinfo.c: doc fixes
10523         * gst/gstpad.c: doc fixes
10524         * gst/gstpad.h: doc fixes
10525         * gst/gstplugin.c: doc fixes
10526         * gst/gsttypefind.h: doc fixes
10527         * gst/gsturi.c: doc fixes
10528         * gst/gstvalue.c: doc fixes
10529
10530 2004-03-29  Colin Walters  <walters@redhat.com>
10531
10532         * gst/registries/gstxmlregistry.c (get_time)
10533         (plugin_times_older_than_recurse):
10534         Use the result of stat to determine whether a path is a file,
10535         so we don't attempt to opendir() files.
10536
10537 2004-03-29  Benjamin Otte  <otte@gnome.org>
10538
10539         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10540           print caps in debugging output when setting caps failed
10541         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10542         (schedule_next_element), (get_buffer), (run_chainhandler),
10543         (element_may_start), (gst_entry_scheduler_chain_handler),
10544         (gst_entry_scheduler_get_handler),
10545         (gst_entry_scheduler_state_transition),
10546         (gst_entry_scheduler_pad_link):
10547           make this scheduler a testcase for mandatory
10548           discont-before-first-buffer which is needed if we want to allow apps
10549           to release the sound device.
10550           add SCHED_ASSERT macro to print scheduler state before an assertion
10551           triggers.
10552
10553 2004-03-29  Benjamin Otte  <otte@gnome.org>
10554
10555         * COPYING:
10556           replace by LGPL (former COPYING.LIB). The core is completely
10557           licensed LGPL.
10558         * COPYING.LIB:
10559           remove
10560
10561 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10562
10563         * po/af.po:
10564         * po/sv.po:
10565           updated Afrikaans and Swedish
10566
10567 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10568
10569         * po/LINGUAS:
10570         * po/az.po:
10571           adding Azerbaijani (Mətin Əmirov)
10572
10573 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10574
10575         * gst/gstelement.h: 
10576         * gst/gstelement.c (gst_element_set_time_delay): New function for
10577         setting element time taking into account a hardware buffering
10578         delay.
10579         (gst_element_set_time): Now just an invocation of
10580         gst_element_set_time_delay.
10581         * gst/gstclock.h: 
10582         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10583         allowing to set event times in the future.
10584         (gst_clock_get_event_time): Now just an invocation of
10585         gst_clock_get_event_time_delay.
10586
10587 2004-03-28  Benjamin Otte  <otte@gnome.org>
10588
10589         * gst/gstbin.c: (gst_bin_set_element_sched),
10590         (gst_bin_unset_element_sched):
10591           don't add decoupled elements to schedulers - otherwise it's
10592           impossible to control if a link to a decoupled element was already
10593           removed from a scheduler or not.
10594         * gst/schedulers/cothreads_compat.h:
10595         * gst/schedulers/gthread-cothreads.h:
10596           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10597           is no "unused" warning.
10598         * gst/schedulers/Makefile.am:
10599         * gst/schedulers/entryscheduler.c:
10600           add new scheduler, based on ideas from talking to David and Martin.
10601           It's supposed to be small and correct. Currently it's also slow (but
10602           it's not noticable)
10603         * examples/retag/retag.c: (main):
10604         * testsuite/bytestream/test1.c: (main):
10605           fix missing NULLs at end of variadic functions
10606         * testsuite/elements/.cvsignore:
10607           update
10608
10609 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10610
10611         * gst/gstevent.h:
10612         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10613
10614 2004-03-25  David Schleef  <ds@schleef.org>
10615
10616         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10617         * docs/gst/tmpl/gstaggregator.sgml:
10618         * docs/gst/tmpl/gstautoplugfactory.sgml:
10619         * docs/gst/tmpl/gstbin.sgml:
10620         * docs/gst/tmpl/gstbuffer.sgml:
10621         * docs/gst/tmpl/gstbufferstore.sgml:
10622         * docs/gst/tmpl/gstfakesink.sgml:
10623         * docs/gst/tmpl/gstfakesrc.sgml:
10624         * docs/gst/tmpl/gstmd5sink.sgml:
10625         * docs/gst/tmpl/gstreamer-unused.sgml:
10626         * docs/gst/tmpl/gstsearchfuncs.sgml:
10627         * docs/gst/tmpl/gstshaper.sgml:
10628         * docs/gst/tmpl/gstspider.sgml:
10629         * docs/gst/tmpl/gsttee.sgml:
10630         * docs/gst/tmpl/gstutils.sgml:
10631         * docs/gst/tmpl/gstvalue.sgml:
10632         * docs/gst/tmpl/gstxml.sgml:
10633         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10634         and we don't support it.
10635         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10636         (gst_use_threads), (gst_has_threads): same
10637         * gst/gstthreaddummy.c: same
10638         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10639         * gst/autoplug/gstspider.h: same
10640         * gst/elements/gstaggregator.h: Remove bogus function from header
10641         * gst/elements/gstfakesink.h: same
10642         * gst/elements/gstfakesrc.h: same
10643         * gst/elements/gstmd5sink.h: same
10644         * gst/elements/gstshaper.h: same
10645         * gst/elements/gsttee.h: same
10646         * gst/gstbin.c: doc fixes
10647         * gst/gstbin.h: Remove unused definition.
10648         * gst/gstbuffer.c: doc fixes
10649         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10650         * gst/gstfilter.c: doc fixes
10651         * gst/gsttag.c: doc fixes
10652         * gst/gstvalue.c: doc fixes
10653
10654 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10655
10656         * docs/pwg/advanced-types.xml:
10657           Document typefinding.
10658         * docs/pwg/other-oneton.xml:
10659           Document one-to-n elements, demuxers and parsers.
10660
10661 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10662
10663         reviewed by: David Schleef  <ds@schleef.org>
10664
10665         * configure.ac: Check bison version (bug #127838)
10666
10667 2004-03-25  David Schleef  <ds@schleef.org>
10668
10669         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10670         * docs/gst/gstreamer-sections.txt:
10671         * docs/gst/tmpl/gstautoplug.sgml:
10672         * docs/gst/tmpl/gststaticautoplug.sgml:
10673         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10674         * docs/gst/tmpl/gstutils.sgml:
10675         * docs/gst/tmpl/gstxml.sgml:
10676
10677 2004-03-24  David Schleef  <ds@schleef.org>
10678
10679         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10680         manual being such complete crap, that I decided to do major
10681         hacking of it.  This checkin replaces any fine tuning that
10682         may have been done previously, with the benefit of actually
10683         being complete for much of the API that was changed since
10684         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10685         * docs/gst/gstreamer-sections.txt:
10686         * docs/gst/tmpl/GstBin.sgml:
10687         * docs/gst/tmpl/GstBuffer.sgml:
10688         * docs/gst/tmpl/GstCaps.sgml:
10689         * docs/gst/tmpl/GstClock.sgml:
10690         * docs/gst/tmpl/GstCompat.sgml:
10691         * docs/gst/tmpl/GstData.sgml:
10692         * docs/gst/tmpl/GstElement.sgml:
10693         * docs/gst/tmpl/GstEvent.sgml:
10694         * docs/gst/tmpl/GstIndex.sgml:
10695         * docs/gst/tmpl/GstStructure.sgml:
10696         * docs/gst/tmpl/GstTag.sgml:
10697         * docs/gst/tmpl/cothreads.sgml:
10698         * docs/gst/tmpl/cothreads_compat.sgml:
10699         * docs/gst/tmpl/gettext.sgml:
10700         * docs/gst/tmpl/grammar.tab.sgml:
10701         * docs/gst/tmpl/gst-i18n-app.sgml:
10702         * docs/gst/tmpl/gst-i18n-lib.sgml:
10703         * docs/gst/tmpl/gst.sgml:
10704         * docs/gst/tmpl/gst_private.sgml:
10705         * docs/gst/tmpl/gstaggregator.sgml:
10706         * docs/gst/tmpl/gstarch.sgml:
10707         * docs/gst/tmpl/gstatomic.sgml:
10708         * docs/gst/tmpl/gstatomic_impl.sgml:
10709         * docs/gst/tmpl/gstbin.sgml:
10710         * docs/gst/tmpl/gstbuffer.sgml:
10711         * docs/gst/tmpl/gstbufferstore.sgml:
10712         * docs/gst/tmpl/gstcaps.sgml:
10713         * docs/gst/tmpl/gstclock.sgml:
10714         * docs/gst/tmpl/gstcompat.sgml:
10715         * docs/gst/tmpl/gstconfig.sgml:
10716         * docs/gst/tmpl/gstcpu.sgml:
10717         * docs/gst/tmpl/gstdata.sgml:
10718         * docs/gst/tmpl/gstdata_private.sgml:
10719         * docs/gst/tmpl/gstelement.sgml:
10720         * docs/gst/tmpl/gstenumtypes.sgml:
10721         * docs/gst/tmpl/gsterror.sgml:
10722         * docs/gst/tmpl/gstevent.sgml:
10723         * docs/gst/tmpl/gstfakesink.sgml:
10724         * docs/gst/tmpl/gstfakesrc.sgml:
10725         * docs/gst/tmpl/gstfilesink.sgml:
10726         * docs/gst/tmpl/gstfilter.sgml:
10727         * docs/gst/tmpl/gstindex.sgml:
10728         * docs/gst/tmpl/gstinfo.sgml:
10729         * docs/gst/tmpl/gstinterface.sgml:
10730         * docs/gst/tmpl/gstlog.sgml:
10731         * docs/gst/tmpl/gstmacros.sgml:
10732         * docs/gst/tmpl/gstmarshal.sgml:
10733         * docs/gst/tmpl/gstmd5sink.sgml:
10734         * docs/gst/tmpl/gstmultifilesrc.sgml:
10735         * docs/gst/tmpl/gstobject.sgml:
10736         * docs/gst/tmpl/gstpad.sgml:
10737         * docs/gst/tmpl/gstparse.sgml:
10738         * docs/gst/tmpl/gstpipeline.sgml:
10739         * docs/gst/tmpl/gstplugin.sgml:
10740         * docs/gst/tmpl/gstpluginfeature.sgml:
10741         * docs/gst/tmpl/gstqueue.sgml:
10742         * docs/gst/tmpl/gstreamer-unused.sgml:
10743         * docs/gst/tmpl/gstregistry.sgml:
10744         * docs/gst/tmpl/gstregistrypool.sgml:
10745         * docs/gst/tmpl/gstscheduler.sgml:
10746         * docs/gst/tmpl/gstsearchfuncs.sgml:
10747         * docs/gst/tmpl/gstshaper.sgml:
10748         * docs/gst/tmpl/gstspider.sgml:
10749         * docs/gst/tmpl/gstspideridentity.sgml:
10750         * docs/gst/tmpl/gststructure.sgml:
10751         * docs/gst/tmpl/gstsystemclock.sgml:
10752         * docs/gst/tmpl/gsttag.sgml:
10753         * docs/gst/tmpl/gsttaginterface.sgml:
10754         * docs/gst/tmpl/gsttee.sgml:
10755         * docs/gst/tmpl/gstthread.sgml:
10756         * docs/gst/tmpl/gsttrace.sgml:
10757         * docs/gst/tmpl/gsttrashstack.sgml:
10758         * docs/gst/tmpl/gsttypefind.sgml:
10759         * docs/gst/tmpl/gsttypes.sgml:
10760         * docs/gst/tmpl/gsturi.sgml:
10761         * docs/gst/tmpl/gsturitype.sgml:
10762         * docs/gst/tmpl/gstutils.sgml:
10763         * docs/gst/tmpl/gstvalue.sgml:
10764         * docs/gst/tmpl/gstversion.sgml:
10765         * docs/gst/tmpl/gstxml.sgml:
10766         * docs/gst/tmpl/gstxmlregistry.sgml:
10767         * docs/gst/tmpl/gthread-cothreads.sgml:
10768         * docs/gst/tmpl/types.sgml:
10769
10770 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10771
10772         * docs/pwg/other-sink.xml:
10773         * docs/pwg/other-source.xml:
10774           Documentation on how to write source and sink elements. Other
10775           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10776           manager, autoplugger) are all still pending.
10777
10778 2004-03-25  Benjamin Otte  <otte@gnome.org>
10779
10780         * testsuite/elements/Makefile.am:
10781         * testsuite/elements/gst-compprep-check:
10782           add check to make sure gst-compprep works
10783         * testsuite/elements/gst-inspect-check.in:
10784           improve initialization output
10785         * testsuite/Makefile.am:
10786         * testsuite/gst-inspect-check:
10787           remove old file
10788
10789 2004-03-24  David Schleef  <ds@schleef.org>
10790
10791         * testsuite/elements/Makefile.am:
10792         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10793         to the testsuite.
10794
10795 2004-03-24  Benjamin Otte  <otte@gnome.org>
10796
10797         * libs/gst/control/dparam.c: (gst_dparam_attach),
10798         (gst_dparam_detach):
10799         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10800           fix lvalue casts for real
10801
10802 2004-03-24  Benjamin Otte  <otte@gnome.org>
10803
10804         * gst/schedulers/gstbasicscheduler.c:
10805         (gst_basic_scheduler_src_wrapper):
10806         * gst/schedulers/gstoptimalscheduler.c:
10807         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10808         (pad_clear_queued), (gst_opt_scheduler_add_element),
10809         (gst_opt_scheduler_remove_element):
10810           fix GStreamer to not have issues with lvalue casts anymore (fixes
10811           #136841)
10812
10813 2004-03-24  Benjamin Otte  <otte@gnome.org>
10814
10815         * gst/gstelement.c:
10816           add documentation about a gobject quirk where the object hasn't the
10817           correct class pointer set on initialization
10818         * gst/schedulers/gstbasicscheduler.c:
10819         (gst_basic_scheduler_src_wrapper):
10820           make sure to not run into an infinite loop
10821
10822 2004-03-22  Benjamin Otte  <otte@gnome.org>
10823
10824         * gst/gstutils.c: (gst_util_dump_mem):
10825         * gst/gstutils.h:
10826           first argument of gst_util_dump_mem should be const
10827
10828 2004-03-22  Johan Dahlin  <johan@gnome.org>
10829
10830         * gst/gstvalue.h: Clean up a little bit.
10831
10832 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10833
10834         reviewed by Benjamin Otte  <otte@gnome.org>
10835
10836         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10837         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10838         (gst_aggregator_class_init), (gst_aggregator_init):
10839         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10840         (gst_filesrc_dispose), (gst_filesrc_set_location):
10841         * gst/elements/gstidentity.c: (gst_identity_finalize),
10842         (gst_identity_class_init), (gst_identity_chain):
10843         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10844         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10845         (gst_statistics_class_init):
10846         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10847         (gst_tee_get_property):
10848           clean up used memory in this elements correctly on teardown (closes
10849           #137279)
10850
10851 2004-03-20  Colin Walters  <walters@redhat.com>
10852
10853         * gst/registries/gstxmlregistry.c:
10854         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10855         registry saving atomic.
10856
10857 2004-03-20  Colin Walters  <walters@redhat.com>
10858
10859         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10860         Just use
10861         access() instead of actually creating and deleting files.
10862
10863 2004-03-18  David Schleef  <ds@schleef.org>
10864
10865         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10866         (bug #137625)
10867
10868 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10869
10870         * po/sv.po: updated translation (Christian Rose)
10871
10872 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10873
10874         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10875         (gst_filesink_get_query_types), (_do_init),
10876         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10877           return FALSE silently
10878         * po/af.po: updated translation (Petri Jooste)
10879
10880 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10881
10882         * Makefile.am:
10883         * configure.ac:
10884           dist common properly
10885         * po/af.po:
10886         * po/fr.po:
10887         * po/nl.po:
10888         * po/sr.po:
10889         * po/sv.po:
10890           refreshing translations
10891
10892 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10893
10894         * po/LINGUAS:
10895         * po/sv.po:
10896         * po/af.po:
10897           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10898
10899 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10900
10901         * Makefile.am: use common/release.mak
10902
10903 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10904
10905         * docs/faq/gst-uninstalled:
10906           adding gst-monkeysaudio to the list of possible plugin dirs
10907
10908 2004-03-16  David Schleef  <ds@schleef.org>
10909
10910         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10911         (gst_init_check_with_popt_table):  Fix some gettext strings to
10912         make them easier to translate.  Required making the strings
10913         non-const.
10914
10915 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10916
10917         * configure.ac: bump nano to 1
10918
10919 === release 0.8.0 ===
10920
10921 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10922
10923         * configure.ac: release 0.8.0, "Executive Slacks"
10924
10925 2004-03-16  Johan Dahlin  <johan@gnome.org>
10926
10927         * gst/schedulers/gstoptimalscheduler.c
10928         (gst_opt_scheduler_pad_unlink): Remove double ;,
10929         spotted by Scott Wheeler
10930
10931 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10932
10933         * configure.ac: bump libtool version
10934
10935 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10936
10937         * gst/gstcaps.h:
10938         * gst/gststructure.h:
10939           add reserved padding
10940
10941 2004-03-15  Benjamin Otte  <otte@gnome.org>
10942
10943         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10944           set the first parameter for select call correctly.
10945           (fixes #137230)
10946
10947 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10948
10949         * *.c,*.h: don't mix tabs and spaces
10950
10951 2004-03-15  Johan Dahlin  <johan@gnome.org>
10952
10953         * gst/schedulers/gstoptimalscheduler.c
10954         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10955         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10956
10957         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10958         
10959 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10960
10961         * testsuite/Rules:
10962           fix gst-register rules
10963
10964 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10965
10966         * testsuite/Rules:
10967           use versioned gst-register
10968
10969 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10970
10971         * docs/libs/gstreamer-libs-sections.txt:
10972           remove </SUBSECTION>
10973         * gst/gstplugin.c:
10974         * gst/gstregistry.c: (gst_registry_add_plugin):
10975         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10976         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10977           add debugging and fix some comment blocks
10978
10979 2004-03-15  Johan Dahlin  <johan@gnome.org>
10980
10981         * *.h: Revert indent changes.
10982         
10983 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10984
10985         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10986           g_error_free the g_error
10987         * tools/gst-feedback-m.m:
10988           check for other versions of gstreamer
10989         * tools/gst-indent:
10990           use sh, not bash
10991
10992 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10993
10994         * tools/gst-register.c: do not spill paths when registries are not
10995           writable, until we fix the "user running gst-register" case.
10996
10997 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10998
10999         * *.c, *.h: commit of gst-indent run on core
11000
11001 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11002
11003         * tools/gst-indent:
11004         * tools/Makefile.am:
11005           add our indentation style as a script
11006
11007 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11008
11009         * po/sr.po:
11010         * po/LINGUAS:
11011           added Serbian translation
11012
11013 2004-03-13  Benjamin Otte  <otte@gnome.org>
11014
11015         * gst/gstelement.c:
11016           add documentation note about gst_element_found_tags_for_pad not
11017           being usable in getfunctions. (see #137042)
11018
11019 2004-03-12  David Schleef  <ds@schleef.org>
11020
11021         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11022         change API right now!  Readd gst_caps_is_simple() macro.
11023         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11024         uninitialized variable.  I'd bet this caused crashes.
11025         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11026
11027 2004-03-12  Johan Dahlin  <johan@gnome.org>
11028
11029         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11030         * gst/gstcaps.h: Clean up
11031
11032         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11033         _gst_caps_initalize()
11034
11035         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11036         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11037
11038         * gst/gststructure.c (gst_structure_get_type): Ditto
11039
11040         * gst/gststructure.h: Ditto
11041         
11042 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11043
11044         * gst/gstqueue.c: (gst_queue_init):
11045           Reset default max. values in queues. Reason is simply to avoid
11046           braindead use. If you want wider values, use the properties. The
11047           default is supposed to always work. Wider values would make this
11048           beast a memory hog by default (250 full-PAL RGB32 video frames?
11049           That's 440 MB! No thank you).
11050
11051 2004-03-10  David Schleef  <ds@schleef.org>
11052
11053         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11054         were found.  (bug #136793)
11055
11056 2004-03-10  Johan Dahlin  <johan@gnome.org>
11057
11058         * gst/schedulers/gstoptimalscheduler.c
11059         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11060         links to elements within the same group, so we can finally remove
11061         that annoying warning. Refactor the code a little bit
11062         (group_dec_links_for_element): Split out
11063
11064 2004-03-09  David Schleef  <ds@schleef.org>
11065
11066         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11067         (bug #134863)
11068
11069 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11070
11071         * configure.ac: first bug fix due to major/minor bump
11072
11073 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11074
11075         * configure.ac: bump nano to 1
11076
11077 === release 0.7.6 ===
11078
11079 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11080
11081         * NEWS:
11082         * RELEASE:
11083         * configure.ac:
11084           releasing 0.7.6, "Almost"
11085         * po/fr.po:
11086         * po/nl.po:
11087         * tools/Makefile.am:
11088         * tools/gst-feedback-m.m:
11089           unversioned source
11090
11091 2004-03-09  Johan Dahlin  <johan@gnome.org>
11092
11093         Reviewed by: Thomas Vander Stichele
11094
11095         * gst/gstelement.c (gst_element_class_init): register second
11096         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11097         language bindings can (de)marshall correctly.
11098
11099         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11100
11101         * gst/gsterror.c (gst_g_error_get_type): New function
11102
11103         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11104         with VOID:OBJECT,OBJECT,STRING 
11105
11106 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11107
11108         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11109         Free a leaked g_timer on early returns.
11110
11111 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11112
11113         * docs/pwg/advanced-types.xml:
11114           Add cinepak description.
11115
11116 2004-03-07  David Schleef  <ds@schleef.org>
11117
11118         * docs/random/mimetypes:  Added cinepak description
11119
11120 2004-03-07  Andy Wingo  <wingo@pobox.com>
11121
11122         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11123
11124         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11125         there are no links to other groups when a group is destroyed.
11126         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11127         removed from a group, make sure the link count to elements linked
11128         to other pads is appropriately decremented. This really fixes
11129         #135672.
11130
11131         The 1.60->1.61 patch has been reapplied in light of this fix.
11132
11133         * gst/gstelement.c (gst_element_dispose): Really protect against
11134         multiple invocations this time.
11135
11136 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11137
11138         * docs/gst/gstreamer-sections.txt:
11139         * docs/gst/tmpl/gsttag.sgml:
11140           remove some deprecated functions, document some existing ones
11141         * gst/gsttag.c: (gst_tag_get_flag):
11142         * gst/gsttag.h:
11143           add accessor function
11144
11145 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11146
11147         * docs/gst/gstreamer-sections.txt:
11148         * docs/gst/tmpl/gsttag.sgml:
11149         * docs/gst/tmpl/gstxml.sgml:
11150         * gst/gsttag.c: (gst_tag_get_flag):
11151         * gst/gsttag.h:
11152
11153 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11154
11155         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11156         leak
11157
11158 2004-03-05  David Schleef  <ds@schleef.org>
11159
11160         * REQUIREMENTS: Add bison and flex.
11161         * configure.ac: Fix comment about bison.
11162         * docs/random/ds/0.9-suggested-changes: yer ma
11163         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11164
11165 2004-03-05  Benjamin Otte  <otte@gnome.org>
11166
11167         * gst/gstelement.c: (gst_element_error_full):
11168           revert recent recursive state changing commit - messing with other
11169           elements' states is evil and should be done by apps only.
11170
11171 2004-03-05  Benjamin Otte  <otte@gnome.org>
11172
11173         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11174           check for empty intersection instead of NULL caps
11175         (gst_element_get_compatible_pad_filtered):
11176           remove old workaround that is only a bug nowadays
11177
11178 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11179
11180         * gst/gstelement.c: (gst_element_error_full):
11181           make elements try to recursively change state to PAUSED on all
11182           parents after an error to suppress ensuing warnings
11183         * gst/parse/grammar.y:
11184           make it check if it was able to sync the state, and throw an error
11185           if not, so stuff like
11186           oggdemux ! vorbisdec ! osssink gets caught
11187
11188 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11189
11190         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11191           it contains lib64; use AS_AC_EXPAND to handle it properly
11192
11193 2004-03-05  David Schleef  <ds@schleef.org>
11194
11195         * gst/gstcpuid_i386.s:  Remove unused code
11196         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11197         (gst_getbits_newbuf): Remove MMX code
11198         * libs/gst/getbits/getbits.h: Remove MMX code
11199
11200 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11201
11202         * debian/.cvsignore:
11203         * debian/README.Debian:
11204         * debian/changelog:
11205         * debian/control:
11206         * debian/control.in:
11207         * debian/copyright:
11208         * debian/gstreamer-core-libs-dev.files:
11209         * debian/gstreamer-core-libs.files:
11210         * debian/gstreamer-core.files:
11211         * debian/gstreamer-core.postinst:
11212         * debian/gstreamer-core.postrm:
11213         * debian/gstreamer-doc.files:
11214         * debian/gstreamer-doc.links:
11215         * debian/gstreamer-doc.lintian:
11216         * debian/gstreamer-runtime.files:
11217         * debian/gstreamer-runtime.manpages:
11218         * debian/gstreamer-runtime.postinst:
11219         * debian/gstreamer-runtime.postrm:
11220         * debian/gstreamer-tools.files:
11221         * debian/gstreamer-tools.manpages:
11222         * debian/libgstreamer-dev.files:
11223         * debian/libgstreamer0.4.1.files:
11224         * debian/libgstreamerVERSION.files:
11225         * debian/rules:
11226         Debian package info not maintained here.
11227
11228 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11229
11230         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11231         * gst/gstbin.c: (gst_bin_class_init):
11232         * gst/gstelement.c: (gst_element_class_init):
11233         * gst/gstindex.c: (gst_index_class_init):
11234         * gst/gstobject.c: (gst_object_class_init),
11235         (gst_signal_object_class_init):
11236         * gst/gstpad.c: (gst_pad_template_class_init):
11237         * gst/gstregistry.c: (gst_registry_class_init):
11238         * gst/gsturi.c: (gst_uri_handler_base_init):
11239         * gst/gstxml.c: (gst_xml_class_init):
11240         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11241         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11242           make all signal names use dashes instead of underscore
11243
11244 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11245
11246         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11247
11248 2004-03-03  Benjamin Otte  <otte@gnome.org>
11249
11250         * gst/schedulers/gstoptimalscheduler.c:
11251           revert last commit by Andy Wingo. It causes segfaults on unreffing
11252           in Rhythmbox. (see bug #135672)
11253
11254 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11255
11256         * po/fr.po: fix typo
11257
11258 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11259
11260         * tools/gst-inspect.c: (main): 
11261         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11262
11263 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11264
11265         * configure.ac:
11266           get GLIB_ONLY and POPT flags for the nonversioned binaries
11267         * tools/Makefile.am:
11268           use them
11269
11270 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11271
11272         * gst/gst.c: (init_post):
11273           change so that GST_REGISTRY now is where the global registry gets
11274           saved, since that is where plugins now get attached to first, and
11275           spilled over to the user registry.  Note that in the case of using
11276           GST_REGISTRY env var, we don't want to affect any real registries
11277           beyond the one given by this var, and thus we don't set a user
11278           registry to spill to.  So make sure GST_REGISTRY is writable.
11279
11280 2004-03-01  David Schleef  <ds@schleef.org>
11281
11282         * AUTHORS:  Added some names.  Add yourself if you're missing.
11283
11284 2004-03-01  David Schleef  <ds@schleef.org>
11285
11286         * MAINTAINERS: Add
11287
11288 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11289
11290         * configure.ac:
11291           remove whitespace
11292         * docs/gst/tmpl/gstbuffer.sgml:
11293         * docs/gst/tmpl/gstdata.sgml:
11294         * docs/gst/tmpl/gstreamer-unused.sgml:
11295         * docs/gst/tmpl/gstxml.sgml:
11296           doc update
11297         * docs/manuals.mak:
11298           add a FIXME
11299         * docs/pwg/intro-preface.xml:
11300         * docs/pwg/pwg.xml:
11301           remove GNOME
11302         * gst/gst.c: (init_post):
11303           try GST_PLUGIN_PATH paths for the _global_registry first
11304         * gst/gstelement.h:
11305           add the error message as well, otherwise (null) debug info doesn't
11306           make much sense
11307         * tools/gst-register.c: (main):
11308           spill paths to next registry if this registry is not writable
11309         * po/fr.po:
11310         * po/nl.po:
11311           translation updates
11312
11313 2004-03-01  Johan Dahlin  <johan@gnome.org>
11314
11315         * gst/gstbuffer.c (_gst_buffer_initialize): 
11316         * gst/gstdata.c (gst_data_get_type): 
11317         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11318         instead of ref, since some applications that uses GBoxed
11319         routines depends on a function that actually returns a copy.
11320
11321 2004-02-27  Benjamin Otte  <otte@gnome.org>
11322
11323         * gst/gstbuffer.h:
11324           remove gst_buffer_free, use gst_data_unref
11325         * gst/gstdata.c: (gst_data_get_type):
11326           use refcounting in GstData GBoxed registration
11327         * gst/gstdata.h:
11328           remove gst_data_free, use gst_data_unref
11329
11330 2004-02-27  Johan Dahlin  <johan@gnome.org>
11331
11332         * gst/gstdata.c (gst_data_get_type): New function, register
11333         GstData as a GBoxed type.
11334
11335         * gst/gstdata.h (GST_TYPE_DATA): New macro
11336
11337 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11338
11339         * Makefile.am:
11340         * gstreamer.spec.in:
11341           put back RELEASE
11342         * gst/Makefile.am:
11343           clean up non-disting of built files
11344         * testsuite/debug/commandline.c:
11345           test fix for option rename
11346
11347 2004-02-26  David Schleef  <ds@schleef.org>
11348
11349         * configure.ac:  We don't really need glib-2.3.  Also remove
11350         some unneeded checks for library functions.
11351         * gst/Makefile.am:  Instead, we need to not dist files created
11352         by glib-genmarshal.
11353
11354 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11355
11356         * configure.ac:
11357           bump glib required version to 2.3.0 for g_value_takes_boxed
11358
11359  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11360
11361         * common/m4/gst-docs.m4
11362         change flavour text from enable to disable as enable is our default
11363         closes bug Bug 135304
11364
11365 === release 0.7.5 ===
11366  
11367  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11368  
11369         * NEWS:
11370           instate NEWS file
11371         * Makefile.am:
11372         * gstreamer.spec.in:
11373         * RELEASE:
11374           put back release
11375         * configure.ac:
11376         * docs/random/release:
11377           more updates
11378
11379 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11380
11381         * gst/gsttag.c: (_gst_tag_initialize):
11382         * po/fr.po:
11383         * po/nl.po:
11384           remove hyphen from codec tags
11385
11386 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11387
11388         * gst/parse/Makefile.am:
11389           fix dependency so that a make from a clean build works the first
11390           time
11391
11392 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11393
11394         * docs/random/release:
11395           update release strategy
11396         * po/fr.po:
11397           auto-update po file
11398         * po/nl.po:
11399           update dutch translation
11400
11401 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11402
11403         * docs/manual/debugging.xml:
11404         fix manual for new debugging system
11405
11406 2004-02-25  Andy Wingo  <wingo@pobox.com>
11407
11408         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11409         gst_pad_link_prepare. Please email the list with specific reasons
11410         for reverting.
11411
11412 2004-02-24  Andy Wingo  <wingo@pobox.com>
11413
11414         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11415         invocations.
11416
11417         * gst/schedulers/gstoptimalscheduler.c:
11418         I added a mess of prototypes at the top of the file by way of
11419         documentation. Some of the operations on chains and groups were
11420         re-organized.
11421
11422         (create_group): Added a type argument so if the group is enabled,
11423         the setup_group_scheduler knows what to do.
11424         (group_elements): Added a type argument here, too, to be passed on
11425         to create_group.
11426         (group_element_set_enabled): If an unlinked PLAYING element is
11427         added to a bin, we have to create a new group to hold the element,
11428         and this function will be called before the group is added to the
11429         chain. Thus we have a valid case for group->chain==NULL. Instead
11430         of calling chain_group_set_enabled, just set the flag on the group
11431         (the chain's status will be set when the group is added to it).
11432         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11433         Setup the group scheduler when the group is enabled, not
11434         specifically when an element goes PAUSED->PLAYING. This means
11435         PLAYING elements can be added, linked, and scheduled into a
11436         PLAYING pipeline, as was intended.
11437         (add_to_group): Don't ref the group twice. I don't know when this
11438         double-ref got in here. Removing it has the potential to cause
11439         segfaults if other parts of the scheduler are buggy. If you find
11440         that the scheduler is segfaulting for you, put in an extra ref
11441         here and see if that hacks over the underlying issue. Of course,
11442         then find out what code is unreffing a group it doesn't own...
11443         (create_group): Make the extra refcount floating, and remove it
11444         after adding the element. This means that...
11445         (unref_group): Destroy when the refcount reaches 0, not 1, like
11446         every other refcounted object in the known universe.
11447         (remove_from_group): When a group becomes empty, set it to be not
11448         active, and remove it from its chain. Don't unref it again,
11449         there's no floating reference any more.
11450         (destroy_group): We have to remove the group from the chain in
11451         remove_from_group (rather than here) to break refcounting cycles
11452         (the chain always has a ref on the group). So assert that
11453         group->chain==NULL.
11454         (ref_group_by_count): Removed, it was commented out anyway.
11455         (merge_chains): Use the remove_from_chain and add_to_chain
11456         primitives to do the reparenting, instead of rolling our own
11457         implementation.
11458         (add_to_chain): The first non-disabled group in the chain's group
11459         list will be the entry point for the chain. Because buffers can
11460         accumulate in loop elements' peer bufpens, we preferentially
11461         schedule loop groups before get groups to avoid unnecessary
11462         execution of get-based groups when the bufpens are already full.
11463         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11464         (get_group_schedule_function): Ditto.
11465         (loop_group_schedule_function): Ditto.
11466         (gst_opt_scheduler_loop_wrapper): Ditto.
11467         (gst_opt_scheduler_iterate): Ditto.
11468
11469         I understand the opt scheduler now, yippee!
11470
11471         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11472         (gst_pad_get_name, gst_pad_set_chain_function) 
11473         (gst_pad_set_get_function, gst_pad_set_event_function) 
11474         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11475         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11476         (gst_pad_set_query_function, gst_pad_get_query_types) 
11477         (gst_pad_get_query_types_default) 
11478         (gst_pad_set_internal_link_function) 
11479         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11480         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11481         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11482         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11483         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11484         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11485         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11486         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11487         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11488         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11489         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11490         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11491         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11492         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11493         argument checks, and some doc fixes.
11494
11495         (gst_pad_custom_new_from_template): Um, does anyone
11496         use these functions? Actually make a custom pad instead of a
11497         normal one.
11498         (gst_pad_try_set_caps): Transpose some checks.
11499         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11500         the pad is in negotiation.
11501         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11502         
11503         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11504
11505         * gst/gstelement.h: 
11506         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11507         on the list.
11508
11509 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11510
11511         * gst/gstbin.c: (gst_bin_add):
11512           add error for not being able to add elements
11513
11514 2004-02-22  Julien MOUTTE <julien@moutte.net>
11515
11516         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11517         audio-codec and video-codec.
11518
11519 2004-02-22  Benjamin Otte  <otte@gnome.org>
11520
11521         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11522
11523         * autogen.sh:
11524           replace test -e with test -x for mkinstalldirs to be more portable.
11525           (fixes #134816)
11526
11527 2004-02-22  Benjamin Otte  <otte@gnome.org>
11528
11529         * gst/gstpad.c:
11530           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11531           too noisy
11532         * gst/gsttag.c: (_gst_tag_initialize):
11533         * gst/gsttag.h:
11534           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11535         * libs/gst/control/dparam.c: (gst_dparam_attach):
11536         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11537           check that types for attached dparams match
11538
11539 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11540
11541         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11542         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11543         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11544           fix errors
11545
11546 2004-02-20  Andy Wingo  <wingo@pobox.com>
11547
11548         * gst/gstbin.c:
11549         * gst/gstbuffer.c:
11550         * gst/gstplugin.c:
11551         * gst/registries/gstxmlregistry.c: 
11552         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11553
11554         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11555         (gst_element_add_pad): DEBUG->INFO, some fixes.
11556         (gst_element_get_compatible_pad_template): Just see if the
11557         templates' caps intersect, not if one is a strict subset of the
11558         other. This conforms more to what gst_pad_link_intersect() does.
11559         (gst_element_class_add_pad_template): Don't memcpy the pad
11560         template, just ref it.
11561         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11562
11563         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11564         (gst_pad_link_filtered): Debug changes.
11565         (gst_pad_link_prepare): New function, consolidated from
11566         can_link_filtered and link_filtered.
11567
11568         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11569         look more like that of the functions in gstelement.c
11570
11571         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11572         object, and return the empty string if object is NULL.
11573
11574         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11575         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11576         LOG, not DEBUG. We still get flex info on debug.
11577
11578         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11579         debug string more verbose.
11580         (plugin_times_older_than): DEBUG->LOG.
11581
11582 2004-02-20  Julien MOUTTE <julien@moutte.net>
11583
11584         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11585         will emit found_tag for each stream they demux with the codec.
11586
11587 2004-02-20  Benjamin Otte  <otte@gnome.org>
11588
11589         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11590           copy navigation event correctly. Check freeing tag lists. 
11591         * gst/gstthread.c: (gst_thread_change_state):
11592           don't abort() on state changing mess - it might happen because of
11593           bugs.
11594         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11595           use boxed functions
11596         * gst/gstvalue.h:
11597           fix GST_VALUE_HOLDS_CAPS
11598
11599 2004-02-19  David Schleef  <ds@schleef.org>
11600
11601         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11602         and use it for GST_FUNCTION.  (bug #134750)
11603
11604 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11605
11606         * po/fr.po:
11607         * po/nl.po:
11608           updating translations
11609
11610 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11611
11612         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11613
11614 2004-02-18  kost@imn.htwk-leipzig.de
11615
11616         reviewed by: David Schleef  <ds@schleef.org>
11617
11618         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11619         for libgstcontrol.
11620
11621 2004-02-18  David Schleef  <ds@schleef.org>
11622
11623         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11624         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11625         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11626         * tools/gst-inspect.c: (print_element_info): Support dumping of
11627         double dparam information.
11628
11629 2004-02-17  David Schleef  <ds@schleef.org>
11630
11631         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11632         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11633         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11634         Use GST_TYPE_CAPS in signal prototype.
11635         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11636         Convert GST_TYPE_CAPS to boxed.
11637         * gst/gstelement.c: (gst_element_class_init):
11638         Use GST_TYPE_TAG_LIST in signal prototype.
11639         * gst/gstindex.c: (gst_index_class_init):
11640         * gst/gstindex.h:
11641         Add GST_TYPE_INDEX_ENTRY type.
11642         * gst/gstmarshal.list:
11643         Add necessary marshal types.
11644         * gst/gstpad.c: (gst_real_pad_class_init),
11645         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11646         (gst_pad_recover_caps_error):
11647         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11648         * gst/gststructure.c: (_gst_structure_initialize),
11649         (gst_structure_copy), (_gst_structure_copy_conditional):
11650         * gst/gststructure.h:
11651         Convert GST_TYPE_STRUCTURE to boxed.
11652         * gst/gsttag.c: (gst_tag_list_get_type):
11653         * gst/gsttag.h:
11654         Add GST_TYPE_TAG_LIST type.
11655
11656 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11657
11658         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11659         to what we agreed with david.
11660         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11661
11662 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11663
11664         * po/nl.po: update translation
11665
11666 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11667
11668         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11669           throw an error if spider is trying to play a mime type there is
11670           no decoder for
11671         * po/POTFILES.in:
11672           add gst/autoplug/gstspider.c for translation
11673
11674 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11675
11676         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11677         silently when the pad is negotiating.
11678
11679 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11680
11681         * docs/faq/Makefile.am:
11682           add script to run gstreamer uninstalled 
11683         * docs/faq/faq.xml:
11684         * docs/faq/developing.xml:
11685         * docs/faq/gst-uninstalled:
11686           extract script to run gstreamer uninstalled
11687         * docs/manuals.mak:
11688           add EXTRA_SOURCES variable for Makefile.am's to set to
11689           use additional SOURCE files for the doc build
11690
11691 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11692
11693         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11694
11695 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11696
11697         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11698         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11699         an error was thrown by osssink. Basically a state change failure for
11700         an element in a different scheduling group was considered as
11701         successful, which means that caps nego was going on and weird stuff
11702         happened. Like I wrote in the comment there, if someone wants to
11703         revert that please drop me a mail explaining why because I really see
11704         no point in keeping that broken behaviour there.
11705         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11706         be empty, we then return NULL which will trigger a nice error when 
11707         pulling from the pad.
11708
11709 2004-02-13  David Schleef  <ds@schleef.org>
11710
11711         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11712         (gst_dparam_get_property), (gst_dparam_set_property),
11713         (gst_dparam_do_update_default):
11714         * libs/gst/control/dparam.h:
11715         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11716         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11717         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11718         (gst_dpsmooth_do_update_double):
11719         * libs/gst/control/dparam_smooth.h:
11720         * libs/gst/control/dparammanager.c:
11721         (gst_dpman_inline_direct_update):
11722         Add support for double dparams.
11723
11724 2004-02-13  David Schleef  <ds@schleef.org>
11725
11726         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11727         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11728
11729 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11730
11731         reviewed by: David Schleef  <ds@schleef.org>
11732
11733         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11734         (gst_fdsrc_init), (gst_fdsrc_set_property),
11735         (gst_fdsrc_get_property), (gst_fdsrc_get):
11736         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11737         and sends an EOS event if file descriptor reading times out.
11738
11739 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11740
11741         * configure.ac:
11742           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11743
11744 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11745
11746         * configure.ac: pass required libxml version as argument
11747         (bug reported by Christophe Fergeau)
11748
11749 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11750   
11751         * docs/gst/gstreamer-docs.sgml:
11752         * docs/gst/tmpl/gstxml.sgml:
11753         * docs/libs/gstreamer-libs-docs.sgml:
11754           version API docs
11755
11756 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11757
11758         * gst/gstinfo.c:
11759         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11760         (gst_registry_pool_feature_filter):
11761         * gst/gstthread.c: (gst_thread_class_init):
11762         * gst/gstvalue.c:
11763           add includes exposed by building without libxml
11764         * gst/indexers/Makefile.am:
11765           do not build fileindex when LOADSAVE disabled; we should have
11766           a better libxml check later since fileindex depends on xml, not
11767           LOADSAVE or REGISTRY
11768         * libs/gst/control/Makefile.am:
11769           link with m
11770         * tools/Makefile.am:
11771           fix wrong source code for gst-xmlinspect
11772
11773 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11774
11775         * configure.ac:
11776           fix gcov help output
11777           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11778         * docs/random/release:
11779           some updated releasing notes
11780         * gstreamer.spec.in:
11781           more updates
11782
11783 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11784
11785         * docs/faq/faq.xml:
11786         * docs/manual/manual.xml:
11787         * docs/pwg/pwg.xml:
11788         * docs/pwg/titlepage.xml:
11789           put version in documentation
11790
11791 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11792
11793         * tools/Makefile.am: fix man page installation
11794
11795 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11796
11797         * configure.ac:
11798           don't check for libxml when load/save and registry disabled (#105844)
11799         * gstreamer.spec.in:
11800           sync with fedora candidate spec
11801
11802 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11803
11804         * po/fr.po:
11805         * po/nl.po:
11806           replace multidisksrc with multifilesrc
11807
11808 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11809
11810         * po/POTFILES.in:
11811           update to multidisksrc => multifilesrc file renaming (#134145)
11812
11813 2004-02-11  David Schleef  <ds@schleef.org>
11814
11815         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11816         * docs/gst/tmpl/gstpadtemplate.sgml: same
11817         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11818         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11819         fixing dance.
11820         * gst/gstutils.c: Remove disabled code that uses GstProps.
11821         * gst/registries/gstxmlregistry.h: same
11822         * docs/random/ds/0.9-suggested-changes: random notes
11823
11824 2004-02-11  kost@imn.htwk-leipzig.de
11825
11826         reviewed by: David Schleef  <ds@schleef.org>
11827
11828         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11829         initialisation of clock (bug #134128)
11830
11831 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11832
11833         * configure.ac:
11834         * gst/elements/Makefile.am:
11835         * gst/elements/gstelements.c:
11836         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11837         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11838         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11839         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11840         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11841         * gst/elements/gstmultifilesrc.h:
11842           rename multidisksrc to multifilesrc (part of #122200)
11843
11844 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11845
11846         * docs/manuals.mak:
11847           fix automake complaints
11848         * gst-element-check.m4:
11849           fix unquotedness
11850
11851 2004-02-11  David Schleef  <ds@schleef.org>
11852
11853         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11854         * gst/gstatomic_impl.h: Disable sparc implementation.
11855
11856 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11857
11858         * gst-element-check.m4:
11859           fix underquoted macros as reported by automake 1.8.x (#133800)
11860         * configure.ac:
11861           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11862           by autopoint (fixes #132996)
11863
11864 2004-02-10  Andy Wingo  <wingo@pobox.com>
11865
11866         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11867         way to do inheritance.
11868         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11869         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11870         Routine docs.
11871         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11872         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11873         doc.
11874         (gst_pad_unlink, gst_pad_is_linked): Docs.
11875         (gst_pad_renegotiate): A brief description of capsnego.
11876         (gst_pad_try_set_caps): Document.
11877         (gst_pad_try_set_caps_nonfixed): Document.
11878         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11879         (gst_pad_set_parent): Deprecated (although not out of the API).
11880         (gst_pad_get_parent): Deprecated, although many plugins use this.
11881         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11882         are private and will go away in 0.9.
11883         (gst_pad_perform_negotiate): Doc.
11884         (gst_pad_link_unnegotiate): I think this is meant to be static.
11885         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11886         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11887         (gst_pad_get_peer): Doc updates.
11888         (gst_pad_caps_change_notify): Doc.
11889         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11890         (gst_ghost_pad_new): Doc fixes.
11891
11892         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11893         (gst_object_check_uniqueness): 
11894
11895         * gst/gstelement.c (gst_element_add_pad) 
11896         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11897         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11898         (gst_element_get_static_pad, gst_element_get_pad_list) 
11899         (gst_element_class_get_pad_template_list) 
11900         (gst_element_class_get_pad_template): Work on the docs.
11901         (gst_element_get_pad_template_list): Uses the class method.
11902         (gst_element_get_compatible_pad_template): Docs, and consolidate
11903         some test conditions. 
11904         (gst_element_get_pad_from_template): New static function.
11905         (gst_element_request_compatible_pad): Docs, and work with
11906         non-request compatible templates. 
11907         (gst_element_get_compatible_pad_filtered): Docs and remove
11908         redundant checks.
11909         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11910         (gst_element_link_filtered, gst_element_link_many) 
11911         (gst_element_link, gst_element_link_pads) 
11912         (gst_element_unlink_many): Docs.
11913
11914 2004-02-05  Andy Wingo  <wingo@pobox.com>
11915
11916         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11917         s/pointer/boxed/.
11918
11919         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11920
11921         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11922         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11923         with the type=GST_TYPE_CAPS. This allows language bindings to know
11924         what kind of data they're dealing with.
11925
11926         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11927         to NULL when g_value_init is called. GstCaps, which rolls its own
11928         type implementation, now does the same instead of allocating empty
11929         caps.
11930         (_gst_caps_initialize, _gst_caps_collect_value,
11931         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11932         table methods. This allows G_VALUE_COLLECT to work.
11933
11934 2004-02-05  Andy Wingo  <wingo@pobox.com>
11935
11936         * configure.ac:
11937         * testsuite/Makefile.am (SUBDIRS): 
11938         * testsuite/ghostpads/Makefile.am: 
11939         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11940
11941         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11942         These two routines are the only ones that set
11943         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11944         pad template. They should be made static, depending on ABI needs.
11945         (gst_real_pad_dispose): Handle the case of ghost pads without a
11946         parent. Assert after dealing with ghost pads that the ghost pad
11947         list is empty.
11948         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11949         set after creation.
11950         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11951         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11952         functions. set_property will call add_ghost_pad/remove_ghost_pad
11953         as appropriate.
11954         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11955
11956         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11957         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11958         (gst_element_remove_pad): Handle ghost pads as well.
11959         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11960         depending on API-stability needs).
11961
11962 2004-02-05  Andy Wingo  <wingo@pobox.com>
11963
11964         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11965         of course they're const
11966
11967 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11968
11969         * tools/Makefile.am:
11970         * tools/gst-feedback:
11971         * tools/gst-feedback-0.7:
11972           make gst-feedback versioned too for consistency
11973
11974 2004-02-11  David Schleef  <ds@schleef.org>
11975
11976         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11977         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11978
11979 2004-02-10  Julien MOUTTE <julien@moutte.net>
11980
11981         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11982         the structure does not contain a valid tag list. Adding a safety check
11983         to remove a noisy warning in that case.
11984
11985 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11986
11987         * gst/gst.c: fix name to be in line with others
11988
11989 2004-02-09  Julien MOUTTE <julien@moutte.net>
11990
11991         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11992         not shout that loud when len is 0. Just return 0 silently.
11993
11994 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11995
11996         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11997         because data_unref has one and I prefer the debug to be symetric.
11998         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11999         were refed when added to the queue and unrefed only once when the queue
12000         was flushed. Now the flush handler unref the buffers two times : first
12001         unref for the ref added when pushing in the queue's tail and second
12002         unref to destroy the flushed buffer.
12003
12004 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12005
12006         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12007
12008 2004-02-06  David Schleef  <ds@schleef.org>
12009
12010         * docs/random/ds/0.9-suggested-changes: Random ramblings
12011         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12012         to int before printing.
12013         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12014         * gst/parse/parse.l: same.  See bug #129600
12015
12016 2004-02-06  David Schleef  <ds@schleef.org>
12017
12018         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12019         (gst_index_add_entry), (gst_index_add_associationv),
12020         (gst_index_add_association): Add gst_index_add_associationv()
12021         and clean up gst_index_add_association(). #127133
12022
12023 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12024
12025         * autogen.sh: check out common with right tag if CVS/Tag exists
12026
12027 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12028
12029         * testsuite/ghostpads/ghostpads.c: (main):
12030           fix testsuite from segfaulting
12031
12032 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12033
12034         * Makefile.am: add release target
12035         * configure.ac: bump nano to 1
12036         * docs/random/release:
12037
12038 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12039
12040         * gst/gstcaps.h:
12041         * gst/gstelement.c: (gst_element_base_class_init),
12042         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12043         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12044         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12045         (gst_real_pad_dispose):
12046         * gst/gststructure.c: (gst_structure_free),
12047         (gst_structure_from_string):
12048           put reverted patch back in
12049         * gst/gstelement.c: (gst_element_remove_pad):
12050           free explicit caps if they're set
12051         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12052           copy the structure when fixating
12053
12054 2004-02-05  David Schleef  <ds@schleef.org>
12055
12056         * gst/gstmarshal.list:
12057         * gst/gstpad.c: (gst_real_pad_class_init),
12058         (_gst_real_pad_fixate_accumulator):
12059         Revert POINTER->BOXED change in signal marshaller.
12060
12061 === release 0.7.4 ===
12062                                                                                 
12063 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12064                                                                                 
12065         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12066         * configure.ac: changed for release
12067
12068 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12069
12070         * gstreamer.spec.in:
12071           bump required version of gtk-doc
12072
12073 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12074
12075         * gst/gstcaps.h:
12076         * gst/gstelement.c: (gst_element_base_class_init),
12077         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12078         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12079         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12080         (gst_real_pad_dispose):
12081         * gst/gststructure.c: (gst_structure_free),
12082         (gst_structure_from_string):
12083           revert patch that breaks applications, reapply after release
12084           to get this fixed properly
12085
12086 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12087
12088         * gst/gsttag.c: (_gst_tag_initialize):
12089         * gst/gsttag.h:
12090           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12091
12092 2004-02-04  David Schleef  <ds@schleef.org>
12093
12094         Fix some memleaks:
12095         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12096         (gst_spider_plug_from_srcpad):
12097         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12098
12099 2004-02-04  David Schleef  <ds@schleef.org>
12100
12101         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12102         a GstRealPad before accessing its structure members.
12103
12104 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12105
12106         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12107         (gst_clock_get_speed):
12108         * gst/gstclock.h:
12109           reset padding, remove unused fields
12110
12111 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12112
12113         * gst/autoplug/gstspideridentity.c:
12114         (gst_spider_identity_sink_loop_type_finding):
12115           use get_allowed_caps, not get_caps (fixes #132519)
12116         * gst/elements/gsttypefind.c: (stop_typefinding):
12117           use correct order when sending buffers and seeking
12118
12119 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12120
12121         * configure.ac:
12122         * gst/gstelement.h:
12123         * gst/gstpad.h:
12124         * gst/gstqueue.h:
12125           upgrade libtool CURRENT, reset padding
12126
12127 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12128
12129         * configure.ac:
12130           bump to prerelease
12131           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12132
12133 2004-02-04  David Schleef  <ds@schleef.org>
12134
12135         * docs/random/ds/0.9-suggested-changes: random notes
12136         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12137         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12138         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12139         expansion.
12140         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12141         (gst_filesink_get_query_types): same
12142         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12143         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12144         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12145         to use new GST_PTR_FORMAT.
12146         * gst/gstelement.h: deprecate function factory macros
12147         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12148         These are our last variadic macros that can't be replaced with
12149         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12150         attempting to deprecate gst_element_clock_wait().
12151         * gst/gstevent.h: same
12152         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12153         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12154         * gst/gstpad.h: deprecate function factory macros similar to above.
12155
12156 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12157
12158         * configure.ac:
12159         * tools/Makefile.am:
12160         * tools/gst-run.c: (popt_callback), (hash_print_key),
12161         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12162         (get_candidates), (main):
12163           add new source file to generate non-versioned wrapper binaries
12164           for our tools.
12165
12166 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12167
12168         * gst/gstevent.c: (_gst_event_free):
12169           actually break; inside the switch statement
12170         * gst/parse/grammar.y:
12171           fix memleak where GValues weren't unset
12172
12173 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12174
12175         * gst/gststructure.c: (gst_structure_from_string):
12176           fix huge memleak
12177         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12178         (new_entry), (gst_type_find_element_chain):
12179         * gst/gstelement.c: (gst_element_base_class_init),
12180         (gst_element_class_set_details):
12181         * gst/gstpad.c: (gst_pad_can_link_filtered):
12182           fix smaller memleaks
12183         * gst/gstpad.c: (gst_real_pad_dispose):
12184           check that explicit caps are gone
12185         * gst/gststructure.c: (gst_structure_free):
12186           actually free the structure
12187         * gst/gstelement.c: (gst_element_clear_pad_caps):
12188           unset explicit caps
12189
12190 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12191
12192         * tools/Makefile.am:
12193           use AM_CFLAGS since all the CFLAGS are the same
12194           use AM_LDFAGS
12195
12196 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12197
12198         * docs/manual/gnome.xml:
12199           expand example a little
12200         * gst/gst.c: (gst_init_with_popt_table),
12201         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12202           make sure popt option displays are done with right textdomain
12203           use GstPoptOption type
12204         * gst/gst.h:
12205           create GstPoptOption type
12206
12207 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12208
12209         * gst/gsterror.c: (_gst_stream_errors_init):
12210         * gst/gsterror.h:
12211           adding error type for no codec
12212         * po/POTFILES.in:
12213           add gst-inspect
12214         * po/nl.po:
12215           update dutch translation
12216         * tools/gst-inspect.c: (print_element_list), (main):
12217           do proper internationalization
12218         * tools/gst-launch.c: (idle_func):
12219           remove commented out function call
12220
12221 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12222
12223         * docs/README:
12224           add some error fixing notes
12225         * docs/gst/gstreamer-sections.txt:
12226           remove double entries
12227         * docs/gst/tmpl/gstbin.sgml:
12228         * docs/gst/tmpl/gstclock.sgml:
12229           remove override
12230         * docs/gst/tmpl/gstelement.sgml:
12231         * docs/gst/tmpl/gstindex.sgml:
12232         * docs/gst/tmpl/gstobject.sgml:
12233         * docs/gst/tmpl/gstpadtemplate.sgml:
12234         * docs/gst/tmpl/gstreamer-unused.sgml:
12235         * docs/gst/tmpl/gsttag.sgml:
12236         * docs/gst/tmpl/gstthread.sgml:
12237         * docs/gst/tmpl/gstxml.sgml:
12238         * gst/gsttag.h:
12239           sync header prototypes with c decls
12240         * gst/gsttaginterface.c:
12241           fix doc headers
12242
12243 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12244
12245         * gst/parse/Makefile.am:
12246         * gst/gstobject.h:
12247           get rid of gstmarshal.h dependency. It's not needed.
12248         * gst/gst.h:
12249         * gst/elements/gstfakesink.c:
12250         * gst/elements/gstfakesrc.c:
12251         * gst/elements/gstidentity.c:
12252         * gst/gstbin.c:
12253         * gst/gstelement.c:
12254         * gst/gstindex.c:
12255         * gst/gstobject.c:
12256         * gst/gstpad.c:
12257         * gst/gstthread.c:
12258         * gst/gstxml.c:
12259         * libs/gst/control/dparam.c:
12260         * libs/gst/control/dparammanager.c:
12261           include gstmarshal.h.
12262         Fixes #132045
12263
12264 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12265
12266         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12267         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12268         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12269         * gst/elements/gstfilesrc.h:
12270           don't ref the filesrc when creating mmaped buffers. Don't keep a
12271           list of not-yet-destroyed buffers.
12272         * gst/gstbuffer.h:
12273           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12274
12275 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12276
12277         * gst/gst.c: (init_pre):
12278           remove textdomain
12279
12280 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12281
12282         * docs/pwg/advanced-events.xml:
12283         * docs/pwg/advanced-scheduling.xml:
12284         * docs/pwg/intro-basics.xml:
12285         * docs/pwg/other-manager.xml:
12286         * docs/pwg/other-nton.xml:
12287         * docs/pwg/other-ntoone.xml:
12288         * docs/pwg/other-oneton.xml:
12289         * docs/pwg/pwg.xml:
12290           All sort of documentation... Forgot what. Point is that I want this
12291           in before I leave. The 'other-*' will be the last section and will
12292           explain issues specific to these type of elements.
12293
12294 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12295
12296         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12297         (gst_filesrc_get_read):
12298           set all the values on buffers that we can
12299
12300 2004-02-02  David Schleef  <ds@schleef.org>
12301
12302         Change usage of isblah() to g_ascii_isblah() to be more locale
12303         independent.  (#133076)
12304         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12305         * gst/gstutils.c:
12306         * gst/parse/parse.l:
12307
12308 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12309
12310         reviewed by: David Schleef  <ds@schleef.org>
12311
12312         Fix memory leaks:
12313         * gst/gstcaps.c: (gst_caps_to_string):
12314         * gst/registries/gstxmlregistry.c:
12315         (gst_xml_registry_add_path_list_func),
12316         (gst_xml_registry_parse_padtemplate):
12317
12318 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12319
12320         * gst/gstelement.c: (gst_element_default_error):
12321           suffix error messages with period
12322
12323 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12324
12325         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12326         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12327         * gst/gsterror.c: (gst_error_get_message):
12328           Suffix with dots
12329         * po/fr.po:
12330         * po/nl.po:
12331           Update translation files
12332
12333 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12334
12335         * gst/autoplug/gstspideridentity.c:
12336         (gst_spider_identity_sink_loop_type_finding):
12337         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12338         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12339         (gst_filesink_close_file), (gst_filesink_handle_event),
12340         (gst_filesink_chain):
12341         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12342         (gst_filesrc_get_read), (gst_filesrc_open_file):
12343         * gst/elements/gstidentity.c: (gst_identity_chain):
12344         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12345         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12346         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12347         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12348         * gst/gsterror.c: (_gst_core_errors_init),
12349         (_gst_library_errors_init), (_gst_resource_errors_init),
12350         (_gst_stream_errors_init), (gst_error_get_message):
12351         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12352         (gst_pad_recover_caps_error), (gst_pad_pull):
12353         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12354         * gst/schedulers/gstbasicscheduler.c:
12355         (gst_basic_scheduler_chainhandler_proxy),
12356         (gst_basic_scheduler_gethandler_proxy),
12357         (gst_basic_scheduler_cothreaded_chain):
12358           Suffix error messages with period.
12359           Use (NULL) instead of NULL
12360
12361 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12362
12363         * docs/gst/tmpl/gstelement.sgml:
12364         * docs/gst/tmpl/gstxml.sgml:
12365         * gst/gstelement.c: (gst_element_error_full):
12366           add element path to error
12367
12368 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12369
12370         * docs/random/mimetypes:
12371           update raw int/float info
12372         * gst/gsttag.c: (_gst_tag_initialize):
12373         * gst/gsttag.h:
12374           add GST_TAG_ENCODER
12375
12376 2004-01-30  David Schleef  <ds@schleef.org>
12377
12378         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12379           missing (#132991)
12380
12381 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12382
12383         reviewed by Benjamin Otte 
12384           parts of the patch submitted in bug #113913
12385
12386         * configure.ac:
12387           use AC_C_INLINE. Use = instead of == with test
12388         * examples/plugins/example.c:
12389         * gst/autoplug/gstspideridentity.c:
12390         * gst/elements/gstfdsrc.c:
12391         * gst/elements/gstfilesrc.c:
12392         * gst/elements/gstidentity.c:
12393         * gst/elements/gstmultidisksrc.c:
12394         * gst/elements/gststatistics.c:
12395         * gst/gstelement.c:
12396         * gst/gstobject.c:
12397         * gst/gstpad.c:
12398         * gst/gstpipeline.c:
12399         * gst/gstthread.c:
12400           don't end enums with a comma
12401         * gst/gstindex.c: (gst_index_compare_func):
12402           do explicit casting to gint
12403         * gst/gsttrace.c: (gst_trace_text_flush):
12404           #define strsize as a macro
12405
12406 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12407
12408         * docs/README:
12409         * docs/gst/gstreamer-docs.sgml:
12410         * docs/gst/gstreamer-sections.txt:
12411         * docs/gst/tmpl/gstelement.sgml:
12412         * docs/gst/tmpl/gsterror.sgml:
12413         * docs/gst/tmpl/gstinterface.sgml:
12414         * docs/gst/tmpl/gstreamer-unused.sgml:
12415         * docs/gst/tmpl/gststructure.sgml:
12416         * docs/gst/tmpl/gsttag.sgml:
12417         * docs/gst/tmpl/gsttaginterface.sgml:
12418         * docs/gst/tmpl/gstvalue.sgml:
12419         make sure all API ends up in the built docs
12420         * gst/gstinterface.c:
12421         * gst/gststructure.c: (gst_structure_id_set_value),
12422         (gst_structure_set_value), (gst_structure_id_get_value):
12423         * gst/gststructure.h:
12424         * gst/gstvalue.h:
12425         sync .h with .c declarations
12426
12427 2004-01-30  Julien Moutte  <julien@moutte.net>
12428
12429         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12430         Ronald will fix riffread.
12431
12432 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12433
12434         * docs/pwg/advanced-interfaces.xml:
12435           Added tuner interface docs.
12436
12437 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12438
12439         * docs/random/mimetypes:
12440           correct Theora information
12441         * gst/gstelement.h:
12442           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12443
12444 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12445
12446         * gst/gstelement.c: (gst_element_error_full):
12447         * gst/gstelement.h:
12448           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12449
12450 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12451
12452         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12453         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12454         again and even before DISCONT.
12455         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12456         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12457         bytestream so that it's not stopping to fill the bytestream if events
12458         different than EOS or DISCONT are received. Instead it process them so
12459         that they go downstream.
12460
12461 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12462
12463         * docs/gst/tmpl/gstelement.sgml:
12464         * docs/gst/tmpl/gstreamer-unused.sgml:
12465         * docs/gst/tmpl/gstxml.sgml:
12466         * gst/autoplug/gstspideridentity.c:
12467         (gst_spider_identity_sink_loop_type_finding):
12468         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12469         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12470         (gst_filesink_close_file), (gst_filesink_handle_event),
12471         (gst_filesink_chain):
12472         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12473         (gst_filesrc_get_read), (gst_filesrc_open_file):
12474         * gst/elements/gstidentity.c: (gst_identity_chain):
12475         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12476         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12477         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12478         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12479         * gst/gstelement.h:
12480         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12481         (gst_pad_recover_caps_error), (gst_pad_pull):
12482         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12483         * gst/schedulers/gstbasicscheduler.c:
12484         (gst_basic_scheduler_chainhandler_proxy),
12485         (gst_basic_scheduler_gethandler_proxy),
12486         (gst_basic_scheduler_cothreaded_chain):
12487           gst_element_error -> GST_ELEMENT_ERROR
12488
12489 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12490
12491         * docs/Makefile.am:
12492         * docs/gst/tmpl/gstelement.sgml:
12493         * docs/gst/tmpl/gstxml.sgml:
12494         * docs/manuals.mak:
12495         * docs/pwg/advanced-request.xml:
12496         * docs/pwg/advanced-scheduling.xml:
12497         * docs/pwg/advanced-tagging.xml:
12498           fix non-validating docbook using CDATA
12499           make sure make check-local gets run first to check if it validates
12500
12501 2004-01-29  Julien MOUTTE <julien@moutte.net>
12502
12503         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12504         handling (up and downstream).
12505         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12506         my_filter thing.
12507
12508 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12509
12510         * docs/pwg/advanced-tagging.xml:
12511           Add docs about tag writing.
12512
12513 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12514
12515         * docs/pwg/advanced-tagging.xml:
12516           Add a part about tag reading and application signalling... Tag
12517           writing still needs to be documented.
12518         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12519           We can set file locations in READY, too.
12520
12521 2004-01-29  Julien MOUTTE <julien@moutte.net>
12522
12523         * docs/random/ds/element-checklist: Adding some notes about src
12524         events.
12525
12526 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12527
12528         * docs/random/mimetypes:
12529           Update docs to point to correct elements for various mimetypes, and
12530           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12531           <stephane.loeuillet@tiscali.fr>.
12532
12533 2004-01-28  David Schleef  <ds@schleef.org>
12534
12535         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12536
12537 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12538
12539         * docs/random/mimetypes:
12540           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12541           undefined"
12542         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12543           make it only work in NULL.
12544         * gst/gstcaps.c:
12545           don't posion NULL caps
12546         * gst/gstelement.c: (gst_element_set_time):
12547           add debugging statement
12548         * gst/gstelement.c: (gst_element_emit_found_tag),
12549         (gst_element_found_tag_func), (gst_element_found_tags):
12550         * gst/gstelement.h:
12551           These functions take const taglists
12552         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12553           fix memleak
12554         * gst/gstpad.c: (gst_pad_event_default):
12555           make more effort on handling discont and clocks, g_warn if everything
12556           fails
12557         * gst/gststructure.c: (gst_structure_remove_fields),
12558         (gst_structure_remove_fields_valist):
12559         * gst/gststructure.h:
12560           add gst_structure_remove_fields(_valist)
12561         * gst/gsttag.c:
12562           fix doc glitch
12563
12564 2004-01-28  David Schleef  <ds@schleef.org>
12565
12566         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12567         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12568         Fix memory leakage of gst_caps_to_string().
12569
12570         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12571         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12572         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12573         (gst_spider_identity_sink_loop_type_finding):
12574         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12575         (find_suggest):
12576         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12577         (gst_pad_set_explicit_caps):
12578         * gst/parse/grammar.y:
12579
12580 2004-01-28  David Schleef  <ds@schleef.org>
12581
12582         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12583         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12584         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12585         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12586         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12587         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12588         (gst_debug_log_default), (_gst_info_printf_extension),
12589         (_gst_info_printf_extension_arginfo):  Add printf extension.
12590         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12591         * gst/gststructure.c: (gst_structure_to_string),
12592         (_gst_structure_parse_value): Use gst_value_deserialize() and
12593         remove old code.
12594         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12595         (gst_value_deserialize_boolean), (gst_strtoi),
12596         (gst_value_deserialize_int), (gst_value_deserialize_double),
12597         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12598         a bunch of deserialize functions and gst_value_deserialize.
12599         * gst/gstvalue.h: er, _de_serialize, not unserialize
12600         * testsuite/caps/string-conversions.c: (main): We don't currently
12601         handle (float) in caps, so convert these to (double).
12602         * testsuite/debug/Makefile.am: Add new test for the printf extension
12603         * testsuite/debug/printf_extension.c: (main): same
12604
12605 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12606
12607         * docs/random/company/time:
12608           Add some docs about clocking and time
12609
12610 2004-01-28  Julien MOUTTE <julien@moutte.net>
12611
12612         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12613
12614 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12615
12616         * docs/pwg/advanced-clock.xml:
12617         * docs/pwg/advanced-dparams.xml:
12618         * docs/pwg/advanced-events.xml:
12619         * docs/pwg/advanced-interfaces.xml:
12620         * docs/pwg/advanced-midi.xml:
12621         * docs/pwg/advanced-request.xml:
12622         * docs/pwg/advanced-scheduling.xml:
12623         * docs/pwg/advanced-tagging.xml:
12624         * docs/pwg/advanced-types.xml:
12625         * docs/pwg/appendix-checklist.xml:
12626         * docs/pwg/building-boiler.xml:
12627         * docs/pwg/building-chainfn.xml:
12628         * docs/pwg/building-filterfactory.xml:
12629         * docs/pwg/building-pads.xml:
12630         * docs/pwg/building-props.xml:
12631         * docs/pwg/building-signals.xml:
12632         * docs/pwg/building-state.xml:
12633         * docs/pwg/building-testapp.xml:
12634         * docs/pwg/intro-basics.xml:
12635         * docs/pwg/intro-preface.xml:
12636         * docs/pwg/other-autoplugger.xml:
12637         * docs/pwg/other-sink.xml:
12638         * docs/pwg/other-source.xml:
12639         * docs/pwg/titlepage.xml:
12640           fix up id's
12641
12642 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12643
12644         * docs/95NonPath:
12645         * docs/HACKING:
12646         * docs/README:
12647         * docs/building-the-docs-on-debian:
12648           collect relevant bits of doc info
12649
12650 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12651
12652         * docs/pwg/advanced_tagging.xml:
12653           Half-assed commit so Thomas can re-arrange document IDs here to be
12654           consistent, too.
12655
12656 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12657
12658         * docs/manual/autoplugging.xml:
12659         * docs/manual/bins-api.xml:
12660         * docs/manual/bins.xml:
12661         * docs/manual/buffers-api.xml:
12662         * docs/manual/buffers.xml:
12663         * docs/manual/clocks.xml:
12664         * docs/manual/components.xml:
12665         * docs/manual/cothreads.xml:
12666         * docs/manual/debugging.xml:
12667         * docs/manual/dparams-app.xml:
12668         * docs/manual/dynamic.xml:
12669         * docs/manual/elements-api.xml:
12670         * docs/manual/elements.xml:
12671         * docs/manual/factories.xml:
12672         * docs/manual/gnome.xml:
12673         * docs/manual/goals.xml:
12674         * docs/manual/helloworld.xml:
12675         * docs/manual/helloworld2.xml:
12676         * docs/manual/init-api.xml:
12677         * docs/manual/intro.xml:
12678         * docs/manual/links-api.xml:
12679         * docs/manual/links.xml:
12680         * docs/manual/manual.xml:
12681         * docs/manual/motivation.xml:
12682         * docs/manual/pads-api.xml:
12683         * docs/manual/pads.xml:
12684         * docs/manual/plugins-api.xml:
12685         * docs/manual/plugins.xml:
12686         * docs/manual/programs.xml:
12687         * docs/manual/queues.xml:
12688         * docs/manual/quotes.xml:
12689         * docs/manual/schedulers.xml:
12690         * docs/manual/states-api.xml:
12691         * docs/manual/states.xml:
12692         * docs/manual/threads.xml:
12693         * docs/manual/typedetection.xml:
12694         * docs/manual/xml.xml:
12695           use chapter, part, section or misc as id starts for all bits
12696
12697 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12698
12699         * docs/gst/gstreamer-sections.txt:
12700           Fix up TITLE of the sections
12701
12702 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12703
12704         * docs/pwg/advanced_interfaces.xml:
12705           Add documentation on propertyprobing.
12706         * docs/pwg/advanced_events.xml:
12707         * docs/pwg/advanced_tagging.xml:
12708         * docs/pwg/building_boiler.xml:
12709         * docs/pwg/building_filterfactory.xml:
12710         * docs/pwg/pwg.xml:
12711           Move filterfactory and tagging into their own chapter, add a chapter
12712           on events. all these are empty placeholders that will be filled in
12713           some day.
12714
12715 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12716
12717         * docs/pwg/advanced_interfaces.xml:
12718           Docs for mixer interface. Also a check for website uploading.
12719
12720 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12721
12722         * docs/HACKING:
12723         * docs/Makefile.am:
12724         * docs/faq/Makefile.am:
12725         * docs/gst/Makefile.am:
12726         * docs/gst/tmpl/gstelement.sgml:
12727         * docs/gst/tmpl/gstplugin.sgml:
12728         * docs/gst/tmpl/gstreamer-unused.sgml:
12729         * docs/libs/Makefile.am:
12730         * docs/manual/Makefile.am:
12731         * docs/manuals.mak:
12732         * docs/pwg/Makefile.am:
12733         * docs/upload.mak:
12734           Separate out upload target and make it similar for
12735           both docbook and gtk-doc docs
12736
12737 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12738
12739         * docs/manuals.mak:
12740           Fix upload target to work with freedesktop
12741
12742 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12743
12744         * docs/pwg/advanced_types.xml:
12745           Add notes on creating your own types.
12746         * docs/pwg/building_boiler.xml:
12747         * docs/pwg/building_pads.xml:
12748         * docs/pwg/building_state.xml:
12749           Add some stuff about how to retrieve values from structures, how
12750           that relates to types and change layout slightly again to be almost
12751           perfect.
12752
12753 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12754
12755         * docs/pwg/advanced_dparams.xml:
12756         * docs/pwg/advanced_scheduling.xml:
12757           Change index layout slightly.
12758
12759 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12760
12761         * docs/pwg/advanced_clock.xml:
12762         * docs/pwg/advanced_interfaces.xml:
12763         * docs/pwg/advanced_midi.xml:
12764           General placeholders for now.
12765         * docs/pwg/advanced_request.xml:
12766           Explanation about sometimes and request pads.
12767         * docs/pwg/advanced_scheduling.xml:
12768           Concept of bytestream, loopfunctions and schedulers.
12769         * docs/pwg/building_boiler.xml:
12770           Add something about plugin-init.
12771
12772 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12773
12774         * docs/pwg/building_pads.xml:
12775           Fix broken docbook
12776
12777 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12778
12779         * docs/pwg/advanced_interfaces.xml:
12780         * docs/pwg/pwg.xml:
12781           Add as a placeholder for future filling-in.
12782         * docs/pwg/basics_autoplugging.xml:
12783         * docs/pwg/basics_buffers.xml:
12784         * docs/pwg/basics_elements.xml:
12785         * docs/pwg/basics_events.xml:
12786         * docs/pwg/basics_plugins.xml:
12787         * docs/pwg/basics_types.xml:
12788           Remove, because unused (this is all in intro_basics.xml).
12789         * docs/pwg/building_signals.xml:
12790           Short intro to signals + reference to GObject docs - we really
12791           shouldn't go into these sort of things to deply because we don't
12792           use them that extensively anyway.
12793         * docs/pwg/building_state.xml:
12794           Explanation of states. Benjamin, please check.
12795         * docs/pwg/building_testapp.xml:
12796           Put everything in one page - putting only a few lines of content
12797           per page doesn't really make sense.
12798
12799           Time to get into the advanced topics. ;).
12800
12801 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12802
12803         * docs/pwg/advanced_types.xml:
12804           Finish documenting the current state of mimetypes.
12805         * docs/pwg/building_boiler.xml:
12806         * docs/pwg/building_chainfn.xml:
12807         * docs/pwg/building_pads.xml:
12808         * docs/pwg/building_props.xml:
12809         * docs/pwg/building_testapp.xml:
12810           Start documenting the "how to build a simple audio filter" part
12811           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12812           states and (maybe?) a short introduction to capsnego in the chapter
12813           on pads (building_pads.xml). Capsnego should probably be explained
12814           fully in advanced_capsnego.xml or so.
12815
12816 2004-01-26  David Schleef  <ds@schleef.org>
12817
12818         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12819         * gst/gstpad.h: Add new function to allow element to (somewhat)
12820         specify non-fixed caps on a pad.
12821         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12822         that I added a few weeks ago.
12823
12824 2004-01-26  David Schleef  <ds@schleef.org>
12825
12826         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12827           making try_set_caps() work with non-fixed caps.
12828
12829 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12830
12831         * docs/pwg/advanced_types.xml:
12832         * docs/pwg/intro_basics.xml:
12833         * docs/pwg/intro_preface.xml:
12834         * docs/pwg/pwg.xml:
12835         * docs/pwg/titlepage.xml:
12836           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12837           in here (docs/random/mimetypes), and will from there on work on both
12838           updating outdated parts and adding missing parts.
12839           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12840
12841 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12842
12843         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12844           policy is set
12845
12846 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12847
12848         * gst/gstelement.h:
12849           remove gst_element_factory_get_version. It doesn't exist anymore.
12850         * gst/gstplugin.c:
12851         * gst/gstplugin.h:
12852           remove gst_plugin_set_name and change gst_plugin_get_longname to
12853           gst_plugin_get_description to match code.
12854         * gst/gsterror.h:
12855           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12856         * gst/gstpad.c: (gst_pad_try_set_caps):
12857           make it work with nonfixed caps.
12858           Note that even in the nonfixed case the link function of the pad
12859           that tries to set caps isn't called.
12860
12861 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12862
12863         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12864           fix bug where buffer was not assembled correctly
12865         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12866           silence by default
12867         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12868           only seek if there's no more buffers that could work without seeking
12869
12870 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12871
12872         * gst/gsttag.c: (_gst_tag_initialize):
12873         * gst/gsttag.h:
12874           Add application tag (for encoding/muxing app).
12875
12876 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12877
12878         * autogen.sh:
12879           make autopoint force, and libtoolize not copy
12880         * common/m4/as-docbook.m4:
12881           added docbook xml catalog setup check
12882         * common/m4/gst-doc.m4:
12883           use docbook check
12884
12885 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12886
12887         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12888         * gst/gsttag.h:
12889           add GstTagFlag
12890
12891 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12892
12893         * docs/gst/gstreamer-sections.txt:
12894         * docs/gst/tmpl/gst.sgml:
12895         * docs/gst/tmpl/gstbuffer.sgml:
12896         * docs/gst/tmpl/gstclock.sgml:
12897         * docs/gst/tmpl/gstelement.sgml:
12898         * docs/gst/tmpl/gstreamer-unused.sgml:
12899         * docs/gst/tmpl/gstxml.sgml:
12900           sync latest API changes to docs
12901
12902 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12903
12904         * gst/gstpluginfeature.c:
12905           fix doc snippet
12906         * tools/gst-inspect.c: (print_element_list):
12907           fix output of typefind
12908           add GPL header
12909         * tools/gst-launch.c:
12910           add GPL header
12911
12912 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12913
12914         * gst/elements/Makefile.am:
12915         * gst/elements/gstelements.c:
12916         * gst/elements/gsttypefindelement.c:
12917         * gst/elements/gsttypefindelement.h:
12918         * po/POTFILES.in:
12919         * po/fr.po:
12920         * po/nl.po:
12921           renamed gsttypefindelement to gsttypefind, conserving CVS history
12922
12923 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12924
12925         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12926         * gst/gsttag.h:
12927           add some tags used in ogg as well
12928           fix _ in replaygain tags
12929
12930 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12931
12932         * gst/gsterror.h:
12933           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12934
12935 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12936
12937         * gst/gstelement.c: (gst_element_error_full):
12938         * gst/gstelement.h:
12939           change _extended to _full
12940
12941 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12942
12943         reviewed by: <delete if not using a buddy>
12944
12945         * docs/gst/tmpl/gst.sgml:
12946         * docs/gst/tmpl/gstbuffer.sgml:
12947         * docs/gst/tmpl/gstclock.sgml:
12948         * docs/gst/tmpl/gstelement.sgml:
12949         * docs/gst/tmpl/gstreamer-unused.sgml:
12950         * docs/gst/tmpl/gstxml.sgml:
12951         * gst/gstelement.c: (gst_element_error_full):
12952         * gst/gstelement.h:
12953
12954 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12955
12956         * gst/gstelement.h: fix _gst_element_error_printf prototype
12957
12958 2004-01-20  David Schleef  <ds@schleef.org>
12959
12960         * gst/gststructure.c: (gst_structure_to_string):
12961         Convert function to use gst_value_serialize().
12962         * gst/gstvalue.c: (gst_value_serialize_list),
12963         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12964         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12965         (gst_value_serialize_int), (gst_value_serialize_double),
12966         (gst_string_wrap), (gst_value_serialize_string),
12967         (gst_value_serialize), (gst_value_deserialize):
12968         * gst/gstvalue.h:
12969         Add implementations for serialize.
12970
12971 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12972
12973         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12974         we want to keep that one in the future or change xvidenc.c to use 
12975         another error.
12976
12977 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12978
12979         * gst/gstelement.c: (_gst_element_error_printf):
12980         * gst/gstelement.h:
12981           privatise function
12982
12983 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12984
12985         * docs/random/error:
12986           doc explaining error system
12987         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12988           cleanup
12989
12990 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12991
12992         * gst/gst-i18n-app.h:
12993         * gst/gst-i18n-lib.h:
12994           remove inclusion of config.h
12995         * po/POTFILES.in:
12996         * po/nl.po:
12997           add gst/gstelement.c
12998
12999 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13000
13001         * po/nl.po: updated Dutch translation
13002
13003 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13004
13005         * gst/gsterror.c: (_gst_core_errors_init),
13006         (_gst_library_errors_init), (_gst_resource_errors_init),
13007         (_gst_stream_errors_init):
13008         remove ending punctuation dots
13009
13010 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13011
13012         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13013         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13014         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13015         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13016         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13017         use GST_ERROR_SYSTEM
13018
13019 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13020
13021         * gst/gstelement.c: (gst_element_error_printf),
13022         (gst_element_error_extended):
13023         * gst/gstelement.h:
13024           add a helper printf function so we can have NULL values passed.
13025
13026 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13027
13028         * gst/gstelement.h:
13029           add G_STMT macros to gst_element_error, which isn't strictly
13030           necessary but people tell me to anyway.
13031
13032 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13033
13034         * gst/Makefile.am:
13035         * gst/autoplug/gstspideridentity.c:
13036         (gst_spider_identity_sink_loop_type_finding):
13037         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13038         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13039         (gst_filesink_close_file), (gst_filesink_handle_event),
13040         (gst_filesink_chain):
13041         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13042         (gst_filesrc_map_region), (gst_filesrc_get_read),
13043         (gst_filesrc_open_file):
13044         * gst/elements/gstidentity.c: (gst_identity_chain):
13045         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13046         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13047         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13048         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13049         * gst/gst.h:
13050         * gst/gst_private.h:
13051         * gst/gstelement.c: (gst_element_class_init),
13052         (gst_element_default_error), (gst_element_error_func),
13053         (gst_element_error_extended):
13054         * gst/gstelement.h:
13055         * gst/gsterror.c: (_gst_core_errors_init),
13056         (_gst_library_errors_init), (_gst_resource_errors_init),
13057         (_gst_stream_errors_init), (gst_error_get_message):
13058         * gst/gsterror.h:
13059         * gst/gstinfo.c: (_gst_debug_init):
13060         * gst/gstmarshal.list:
13061         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13062         (gst_pad_recover_caps_error), (gst_pad_pull):
13063         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13064         * gst/schedulers/gstbasicscheduler.c:
13065         (gst_basic_scheduler_chainhandler_proxy),
13066         (gst_basic_scheduler_gethandler_proxy),
13067         (gst_basic_scheduler_cothreaded_chain):
13068         * po/POTFILES.in:
13069         * po/fr.po:
13070         * po/nl.po:
13071           change error signal
13072           add error categories
13073
13074 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13075
13076         * gst/gsttag.c: (_gst_tag_initialize):
13077         * gst/gsttag.h:
13078         Add replaygain tag
13079
13080 2004-01-18  Colin Walters  <walters@verbum.org>
13081
13082         * examples/retag/retag.c: Call gst_init before processing
13083         program args.  Add g_assert to _link_many call.
13084
13085 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13086
13087         * gst/gstpad.c: (gst_pad_alloc_buffer):
13088           Return a newly allocated buffer when the pad has no peer.
13089
13090 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13091
13092         * gst/gstclock.c: (gst_clock_get_time):
13093           make it compile with gcc 2.95 again.
13094           Patch by Scott Wheeler
13095
13096 2004-01-15  David Schleef  <ds@schleef.org>
13097
13098         * gst/gstcaps.h:
13099         Added gst_caps_is_simple() macro.
13100         * testsuite/caps/caps.c: (test1):
13101         * testsuite/caps/intersect2.c: (main):
13102         * testsuite/caps/intersection.c: (main):
13103         Fixes to make 'make check' work again after removing
13104         gst_caps_is_chained().
13105
13106 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13107
13108         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13109         and additions to the MIDI document.
13110
13111 2004-01-15  David Schleef  <ds@schleef.org>
13112
13113         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13114         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13115         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13116
13117 2004-01-15  David Schleef  <ds@schleef.org>
13118
13119         * gst/gstqueue.c:
13120         * gst/gstqueue.h:
13121         Fix the spelling of "treshold" and make min_threshold actually
13122         affect the queue.
13123
13124 2004-01-15  David Schleef  <ds@schleef.org>
13125
13126         * gst/gstcaps.c:
13127         Add lots of documentation.
13128         * gst/gstcaps.h:
13129         Deprecate a few functions.
13130         * gst/gstpad.c:
13131         Removed use of deprecated functions.
13132
13133 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13134
13135         * gst/gstpad.c: (gst_pad_is_linked):
13136         * gst/gstpad.h:
13137           implement gst_pad_is_linked
13138         * gst/gstelement.h:
13139           reserve space for initiate_state_change
13140
13141 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13142
13143         * gst/autoplug/gstspideridentity.c:
13144         (gst_spider_identity_sink_loop_type_finding):
13145           break infinite loop by just returning instead of looping
13146         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13147           set event time difference correctly. Set it to 1 second instead
13148           of 100ms to be more tolerant
13149         * gst/gstelement.c: (gst_element_set_time):
13150           add debugging output
13151
13152 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13153
13154         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13155           query if buffers are inside the pool, ignore events
13156
13157 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13158
13159         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13160         (gst_clock_set_speed), (gst_clock_set_active),
13161         (gst_clock_is_active), (gst_clock_reset),
13162         (gst_clock_handle_discont):
13163         * gst/gstclock.h:
13164           deprecate old interface and disable functions that aren't in use
13165           anymore.
13166         * gst/gstelement.h:
13167         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13168         (gst_element_set_time), (gst_element_adjust_time):
13169           add concept of "element time" and functions to get/set this time.
13170         * gst/gstelement.c: (gst_element_change_state):
13171           update element time correctly.
13172         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13173           This is a debug message, not a g_critical.
13174         * gst/gstpad.c: (gst_pad_event_default):
13175           handle discontinuous events right with element time.
13176         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13177           update to clocking fixes.
13178           set clocks on elements in READY=>PAUSED. The old behaviour caused
13179           a wrong element time on the first element that started playing.
13180         * gst/schedulers/gstbasicscheduler.c:
13181         (gst_basic_scheduler_class_init):
13182         * gst/schedulers/gstoptimalscheduler.c:
13183         (gst_opt_scheduler_class_init):
13184           remove code that just implements the default behaviour.
13185         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13186           update to use new clocking functions
13187         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13188         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13189           update to test new element time.
13190         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13191           use _get_allowed_caps instead of _get_caps. This catches filtered
13192           caps correctly.
13193         * testsuite/debug/commandline.c:
13194           update for new GST_DEBUG syntax.
13195         * testsuite/threads/Makefile.am:
13196           disable a test that only works sometimes.
13197
13198 2004-01-13  Julien MOUTTE <julien@moutte.net>
13199
13200         * po/LINGUAS: Adding fr.
13201         * po/fr.po: Adding french translation.
13202
13203 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13204
13205         * gst/parse/grammar.y:
13206         * po/POTFILES.in:
13207         * po/nl.po:
13208         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13209           translate parsing error messages
13210
13211 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13212
13213         * po/POTFILES.in: adding gst-launch
13214         * po/nl.po: updated translation, all 99 strings translated
13215         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13216         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13217           fix strings for translation
13218
13219 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13220
13221         * gst/gst.c:
13222           - capitalize beginnings of popt options
13223           - fix strings for translation
13224           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13225
13226 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13227
13228         * po/README: add some notes on how to update translations
13229
13230 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13231
13232         * ABOUT-NLS: removed, is autogenerated from autopoint
13233         * autogen.sh: add autopoint stuff
13234         * configure.ac: fix up gettext stuff
13235         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13236         * gst/elements/gsttypefindelement.c: add header include
13237         * gst/gettext.h: add header, copy from system-installed header
13238         * gst/gst-i18n-app.h: to be included by each app having translations
13239         * gst/gst-i18n-lib.h: to be included by each lib having translations
13240         * gst/gst.c: (init_pre): fix up gettext calls
13241         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13242         * po/LINGUAS: the new way to specify translations present
13243         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13244         * po/Makevars: the variables filled in for GStreamer
13245         * po/POTFILES.in: added new files with translations
13246         * po/de.po: has new strings
13247         * po/nl.po: readded, has new strings
13248
13249 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13250
13251         * gst/gsttag.c: fix some strings marked for translation
13252
13253 2004-01-13  Iain <iain@prettypeople.org>
13254
13255         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13256         group when we add an element to it, cos we unref it when we remove one
13257
13258 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13259
13260         * testsuite/debug/commandline.c: (debug_not_reached):
13261         * testsuite/debug/output.c: (check_message):
13262           fix testsuite
13263
13264 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13265
13266         * examples/cutter/.cvsignore:
13267         * examples/helloworld/.cvsignore:
13268         * examples/launch/.cvsignore:
13269         * examples/manual/.cvsignore:
13270         * examples/mixer/.cvsignore:
13271         * examples/pingpong/.cvsignore:
13272         * examples/plugins/.cvsignore:
13273         * examples/queue/.cvsignore:
13274         * examples/queue2/.cvsignore:
13275         * examples/queue3/.cvsignore:
13276         * examples/queue4/.cvsignore:
13277         * examples/retag/.cvsignore:
13278         * examples/thread/.cvsignore:
13279         * examples/typefind/.cvsignore:
13280         * examples/xml/.cvsignore:
13281         * gst/.cvsignore:
13282         * gst/autoplug/.cvsignore:
13283         * gst/elements/.cvsignore:
13284         * gst/indexers/.cvsignore:
13285         * gst/parse/.cvsignore:
13286         * gst/registries/.cvsignore:
13287         * gst/schedulers/.cvsignore:
13288         * libs/gst/bytestream/.cvsignore:
13289         * libs/gst/control/.cvsignore:
13290         * libs/gst/getbits/.cvsignore:
13291         * tests/.cvsignore:
13292         * tests/bufspeed/.cvsignore:
13293         * tests/instantiate/.cvsignore:
13294         * tests/memchunk/.cvsignore:
13295         * tests/muxing/.cvsignore:
13296         * tests/sched/.cvsignore:
13297         * tests/seeking/.cvsignore:
13298         * tests/threadstate/.cvsignore:
13299         * testsuite/.cvsignore:
13300         * testsuite/caps/.cvsignore:
13301         * testsuite/cleanup/.cvsignore:
13302         * testsuite/dynparams/.cvsignore:
13303         * testsuite/plugin/.cvsignore:
13304         * tools/.cvsignore:
13305           update - this is huge, because it includes *.bb, *.bbg and *.da files
13306           which are generated for gcov.
13307
13308 2004-01-11  David Schleef  <ds@schleef.org>
13309
13310         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13311         a function to parse integers in ways that strto[u]l() does not.
13312
13313 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13314
13315         * tools/gst-inspect.c: (print_caps):
13316           improve output of caps a bit
13317
13318 2004-01-11  David Schleef  <ds@schleef.org>
13319
13320         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13321         inherit correct flags (READONLY and DONTKEEP).
13322
13323 2004-01-11  David Schleef  <ds@schleef.org>
13324
13325         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13326         (gst_filesrc_map_region):
13327         * gst/gstbuffer.c: (_gst_buffer_initialize),
13328         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13329         (gst_buffer_new), (gst_buffer_create_sub),
13330         (gst_buffer_is_span_fast), (gst_buffer_span):
13331         * gst/gstbuffer.h:
13332         Change GstBuffer private structure element names. (all files)
13333         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13334         (gst_queue_link):
13335         * gst/gstqueue.h:
13336         Implement getcaps/pad_link functions that handle the case where
13337         there are data in the queue.
13338
13339 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13340
13341         * gst/elements/gstbufferstore.c:
13342           initialize debugging structure correctly
13343         * gst/elements/gsttee.c: (gst_tee_set_property):
13344           g_object_notify when property was changed
13345         * gst/elements/gsttypefindelement.c:
13346         (gst_type_find_element_change_state):
13347           clear caps correctly
13348
13349 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13350
13351         * gst/gstqueue.c: (gst_queue_init):
13352           Use better defaults for when a queue should block. This
13353           gets rid of jerky playback for quite a few files.
13354           It takes more memory.
13355
13356 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13357
13358         (gst_xml_registry_parse_padtemplate):
13359           make critical message slightly more useful
13360
13361 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13362
13363         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13364         (gst_debug_message_get), (gst_debug_log_default):
13365         * gst/gstinfo.h:
13366           Change gst_debug_log(_valist) to take a const format string.
13367           Change prototype of log function and functions using those to 
13368           take a GstDebugMessage instead of a string that requires using
13369           gst_debug_message_get.
13370
13371 2004-01-08  David Schleef  <ds@schleef.org>
13372
13373         * Makefile.am:
13374         * configure.ac:
13375         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13376         and -ftest-coverage, which allows gcov to show information about
13377         testsuite coverage.
13378
13379 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13380
13381         * gst/gstutils.h:
13382           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13383           GST_PARENT_CALL_WITH_DEFAULT
13384         * gst/elements/gstaggregator.c: 
13385         * gst/elements/gstbufferstore.c: 
13386         * gst/elements/gstfakesink.c: 
13387         * gst/elements/gstfakesrc.c: 
13388         * gst/elements/gstfdsink.c: 
13389         * gst/elements/gstfdsrc.c: 
13390         * gst/elements/gstfilesink.c: 
13391         * gst/elements/gstfilesrc.c: 
13392         * gst/elements/gstidentity.c: 
13393         * gst/elements/gstmd5sink.c: 
13394         * gst/elements/gstmultidisksrc.c:
13395         * gst/elements/gstpipefilter.c: 
13396         * gst/elements/gstshaper.c:
13397         * gst/elements/gststatistics.c:
13398         * gst/elements/gsttee.c:
13399         * gst/elements/gsttypefindelement.c:
13400           use them.
13401
13402 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13403
13404         * docs/gst/gstreamer-docs.sgml: remove props
13405         * docs/gst/gstreamer-sections.txt: remove props
13406         * docs/gst/tmpl/gst.sgml:
13407         * docs/gst/tmpl/gstbin.sgml:
13408         * docs/gst/tmpl/gstbuffer.sgml:
13409         * docs/gst/tmpl/gstcaps.sgml:
13410         * docs/gst/tmpl/gstclock.sgml:
13411         * docs/gst/tmpl/gstelement.sgml:
13412         * docs/gst/tmpl/gstindex.sgml:
13413         * docs/gst/tmpl/gstobject.sgml:
13414         * docs/gst/tmpl/gstpad.sgml:
13415         * docs/gst/tmpl/gstpadtemplate.sgml:
13416         * docs/gst/tmpl/gstreamer-unused.sgml:
13417         * docs/gst/tmpl/gstthread.sgml:
13418         * docs/gst/tmpl/gstxml.sgml:
13419           sync with code reorganization
13420
13421 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13422
13423         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13424         Make the 'Could not find compatible pad' message more informative.
13425
13426 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13427                                                                                 
13428         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13429           Fix for if we pass NULL as property to location.
13430         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13431         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13432           Fix for instantiate-test (see below).
13433         * gst/gststructure.c: (_gst_structure_parse_value):
13434           Fix compile error on gcc-2.96.
13435         * configure.ac:
13436         * tests/Makefile.am:
13437         * tests/instantiate/Makefile.am:
13438         * tests/instantiate/create.c: (create_all_elements), (main):
13439           Add a test that instantiates all elements. This makes it easy to
13440           track dead code for old API/design (like setting event functions
13441           on sink pads and so on).
13442
13443 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13444
13445         * gst/gstcaps.c: (gst_caps_append_structure):
13446           Move the poisoning to allow a NULL structure
13447         * gst/gstevent.c: (_gst_event_free):
13448           When freeing a navigation event, free the structure
13449           also
13450
13451 2004-01-04  David Schleef  <ds@schleef.org>
13452
13453         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13454         Remove usage of gst_pad_proxy_fixate.
13455         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13456         (gst_caps_split_one), (gst_caps_replace):
13457         Add poisoning code.
13458         * gst/gstmarshal.list:
13459         Add pointer__pointer for fixate signal
13460         * gst/gstpad.c: (gst_real_pad_class_init),
13461         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13462         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13463         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13464         Add poisoning code. Add fixate signal on RealPad. Change
13465         set_explicit_caps() to take const GstCaps, like try_set_caps().
13466         * gst/gstpad.h:
13467         * testsuite/caps/Makefile.am:
13468         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13469
13470 2004-01-03  David Schleef  <ds@schleef.org>
13471
13472         * gst/elements/gsttypefindelement.c:
13473         (gst_type_find_element_have_type), (gst_type_find_element_init):
13474         Use gst_pad_use_explicit_caps for src pad.
13475         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13476         before using it.
13477
13478 2004-01-03  David Schleef  <ds@schleef.org>
13479
13480         * gst/gstelement.c: (gst_element_link_pads_filtered),
13481         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13482         that linking was successful.
13483         * gst/gstpad.c: (gst_pad_link_free),
13484         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13485         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13486         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13487         GstPadLinkReturn correctly between functions, and don't fail
13488         when DELAYED is used (DELAYED is very important).  Better
13489         cleanup on unlinking and unnegotiation.  Should fix some spider
13490         bugs.
13491
13492 2004-01-02  David Schleef  <ds@schleef.org>
13493
13494         * gst/gstelement.c: (gst_element_class_init),
13495         (gst_element_base_class_init): ->padtemplates should be cleared
13496         in base_init, since we need to have a fresh list for every
13497         class.  (Alternately, we chould copy the list and share the
13498         actual pad templates (not the list), but that would require
13499         changing every plugin to move pad template registration from
13500         base_init to class_init.)
13501
13502 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13503
13504         * gst/gstelement.c: (gst_element_class_add_pad_template):
13505           Refuse registering a pad template if another pad template
13506           with the same name already exists (#114715).
13507
13508 2004-01-02  David Schleef  <ds@schleef.org>
13509
13510         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13511         (gst_caps_is_equal_fixed): Add new function.
13512         * gst/gstcaps.h: ditto.
13513         * gst/gstpad.c: (gst_real_pad_class_init),
13514         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13515         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13516         check new caps against existing caps -- if they're the same, return
13517         OK without renegotiating.  caps-nego-failed signal fixed so that
13518         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13519         to save an extra caps copy.  Don't complete negotiation if a pad
13520         link function returns DELAYED.
13521
13522 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13523
13524         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13525           Fix wrong g_return_if_fail
13526
13527 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13528
13529         * gst/gstbin.c: (gst_bin_class_init):
13530         Change the marshalling of element_added/element_removed
13531         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13532         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13533
13534 2004-01-01  David Schleef  <ds@schleef.org>
13535
13536         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13537         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13538         (gst_pad_use_explicit_caps):
13539         * gst/gstpad.h:
13540         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13541         to use an internal getcaps and link fuction so that negotiation
13542         always results in the explicitly set caps.
13543         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13544         are particularly useful for decoders.
13545
13546 2003-12-31  David Schleef  <ds@schleef.org>
13547
13548         * gst/elements/gstidentity.c: (gst_identity_class_init),
13549         (gst_identity_init), (gst_identity_chain),
13550         (gst_identity_set_property), (gst_identity_get_property):
13551         * gst/elements/gstidentity.h:
13552         * gst/gstqueue.c: (gst_queue_init):
13553           Negotiation fixes.
13554
13555 2003-12-31  David Schleef  <ds@schleef.org>
13556
13557         * gst/gstcaps.c: (gst_caps_intersect),
13558         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13559           Implement gst_caps_normalize().
13560         * testsuite/caps/normalisation.c: (main):
13561           Add an additional test
13562
13563 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13564
13565         * gst/gstqueue.c: (gst_queue_init):
13566           use gst_pad_proxy_getcaps()
13567
13568 2003-12-31  David Schleef  <ds@schleef.org>
13569
13570         * gst/elements/gstshaper.c: (gst_shaper_link):
13571         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13572         * gst/gstqueue.c: (gst_queue_link):
13573           Negotiation fixes.
13574
13575 2003-12-31  David Schleef  <ds@schleef.org>
13576
13577         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13578         * gst/gstpad.h: Add functions that are useful as default pad
13579         link and fixate functions for elements.
13580
13581 2003-12-30  David Schleef  <ds@schleef.org>
13582
13583         * gst/gstpad.c: (gst_pad_link_try):
13584           Fix segfault when attempting to return to old caps
13585
13586 2003-12-29  David Schleef  <ds@schleef.org>
13587
13588         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13589         (gst_caps_structure_simplify), (gst_caps_simplify):
13590         * gst/gstcaps.h:
13591           Add simplify function
13592         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13593         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13594         * gst/gstpad.h:
13595           Copy over srcnotify, sinknotify when calling old pad_link
13596           functions.  Add new is_negotiated() function.
13597         * gst/gststructure.c: (gst_structure_copy):
13598           Fix an incredibly stupid bug that should have been noticed
13599           weeks ago.  _copy() returned the argument, not the new copy.
13600
13601 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13602
13603         * gst/gstcaps.c: (gst_caps_append):
13604           add sanity checks
13605         * gst/gstcaps.h: (gst_caps_debug):
13606           remove, it doesn't exist anymore.
13607         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13608         (gst_element_threadsafe_properties_post_run):
13609           make debugging messages not clutter up THREAD debug category
13610         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13611         (gst_element_change_state):
13612           update to new caps API
13613         * gst/gstinterface.c: (gst_implements_interface_cast):
13614           don't put vital code in g_return_if_fail
13615         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13616         (gst_pad_link_filtered):
13617           add pst_pad_try_link and use it.
13618         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13619           implement correctly, deprecate first one.
13620         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13621           add and implement.
13622         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13623           implement.
13624         (gst_pad_get_negotiated_caps):
13625           add and implement. Make GST_PAD_CAPS call this function.
13626         (gst_pad_get_caps):
13627           remove unneeded check..
13628         (gst_pad_recover_caps_error):
13629           disable, always return FALSE.
13630         (gst_real_pad_dispose):
13631           don't free caps and appfilter anymore, they're unused.
13632         * gst/gstpad.h:
13633           Reflect changes mentioned above.
13634         * gst/gstsystemclock.c: (gst_system_clock_wait):
13635           Make 'clock is way behind' a debugging message.
13636         * gst/gstthread.c: (gst_thread_change_state):
13637           Fix debugging message
13638
13639 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13640
13641         * gst/gstinfo.h:
13642           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13643         * docs/gst/tmpl/gstreamer-unused.sgml:
13644           removed all traces of cvs conflicts
13645
13646 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13647
13648         * configure.ac:
13649         * gst/schedulers/cothreads_compat.h:
13650         * libs/Makefile.am:
13651           remove last instances of wingo cothread usage
13652
13653 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13654
13655         * gst/gstplugin.c:
13656         * gst/gstversion.h.in:
13657         * gst/parse/grammar.y:
13658           change comment block from /** to /* when not gtk-doc comments
13659
13660 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13661
13662         * gst/gst.c: whitespace and doc style fixes
13663
13664 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13665
13666         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13667
13668 2003-12-24  Colin Walters  <walters@verbum.org>
13669
13670         * gst/elements/gsttypefindelement.c:
13671           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13672           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13673           Don't double-free caps.
13674
13675 2003-12-23  David Schleef  <ds@schleef.org>
13676
13677         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13678           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13679           Many little fixes and additions of debug statements to
13680           get rhythmbox working.
13681
13682 2003-12-23  Colin Walters  <walters@verbum.org>
13683
13684         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13685         Use GST_PAD_LINK_SUCCESSFUL.
13686
13687 2003-12-23  David Schleef  <ds@schleef.org>
13688
13689         * gst/elements/gstaggregator.c:
13690         * gst/elements/gsttee.c:
13691           Use gst_pad_proxy_getcaps().
13692         * gst/gstpad.c:
13693         * gst/gstpad.h:
13694           Add gst_pad_proxy_getcaps(), which filter elements can use
13695           as a generic getcaps implementation.
13696           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13697           was advertised.
13698
13699 2003-12-23  David Schleef  <ds@schleef.org>
13700
13701         * gst/gstpad.c:
13702           Rearrange/rewrite much of the pad negotiation code, since it
13703           resembled pasta.  This actually changes the way some
13704           negotiation works, since the previous code was inconsistent
13705           depending on how it was invoked.  Add (internal) structure
13706           GstPadLink, which is used to hold some information (more in
13707           the future) about the link between two pads.  Fixes a number
13708           of bugs, including random lossage of filter caps when the
13709           initial negotiation is delayed.  A few functions are still
13710           unimplemented.
13711         * gst/gstpad.h:
13712           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13713           these when testing GstPadLinkReturn values instead of comparing
13714           directly.
13715
13716 2003-12-23  David Schleef  <ds@schleef.org>
13717
13718         * gst/gstvalue.c: 
13719         * gst/gstvalue.h:
13720           Rearrange lots of code.  Change registration of compare function
13721           into registration of compare/serialize/deserialize functions.
13722           Doesn't include implementation of gst_value_[de]serialize(),
13723           but that should be easy.
13724
13725 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13726
13727         * docs/gst/gstreamer-sections.txt:
13728         * docs/gst/tmpl/gstprops.sgml: removed
13729         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13730           David removed props and caps code, so let's remove their docs as well.
13731           Removed all no longer existing symbols from gstreamer-sections.txt
13732           
13733 2003-12-22  Colin Walters  <walters@verbum.org>
13734
13735         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13736           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13737           of tags directly.
13738
13739 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13740
13741         * gst/elements/gstelements.c:
13742           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13743         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13744           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13745           gst_caps (peer).
13746
13747 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13748
13749         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13750         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13751         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13752         (gst_spider_identity_sink_loop_type_finding):
13753         * gst/autoplug/gstspideridentity.h:
13754           Fix autoplugging in spider element, so it works with new caps.
13755           This was mainly caused by identifying empty caps incorrectly.
13756
13757 2003-12-22  David Schleef  <ds@schleef.org>
13758
13759         * gststructure.c, gstvalue.c, gstvalue.h: Add
13760           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13761           using g_value_copy()
13762
13763 2003-12-21  David Schleef  <ds@schleef.org>
13764
13765         * many, many files: Merge CAPS branch.  This includes:
13766           - implemention of GstValue and several GstValue types
13767           - implemention of GstStructure
13768           - entire rewrite of GstCaps
13769           - removal of GstProps
13770           - many changes to GstPad to compensate for new caps paradigm
13771           - removal of GstBufferpool
13772         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13773         gstvalue.h, gst/gstcaps[2]*.[ch]:
13774           - rename gstcaps2.[ch] to gstcaps.[ch]
13775
13776 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13777
13778         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13779         (gst_queue_chain), (gst_queue_handle_src_event):
13780           implement timeout for sending events. Workaround for if the
13781           pipeline on this queue is not passing any data.
13782
13783 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13784                                                                                 
13785         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13786         * moved CVS to freedesktop.org