New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
2
3         * docs/gst/gstreamer-sections.txt:
4         * gst/gstutils.h:
5           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
6
7 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8
9         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
10           Fix a pretty good memleak.
11
12 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
13
14         * gst/gstiterator.h:
15           Fix wrong include and 'make distcheck'.
16
17 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
18
19         * gst/gstbin.c: (bin_bus_handler):
20           Use gst_element_post_message() instead.
21
22 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
23
24         * gst/base/gstadapter.h:
25         * gst/base/gstbasesink.h:
26         * gst/base/gstbasesrc.h:
27         * gst/base/gstbasetransform.h:
28         * gst/base/gstcollectpads.h:
29         * gst/base/gstpushsrc.h:
30         * gst/gstiterator.h:
31           Add padding to our base elements' class and instance structs and
32           to GstIterator (you will need to rebuild all plugins and apps!)
33
34 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
35
36         * gst/gstbin.c: (bin_bus_handler):
37           Make default message forwarding from child->bus to bin->bus
38           threadsafe and make it not emit warnings if the parent has no bus.
39
40 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
41
42         * gst/gstelement.c: (activate_pads):
43           On paused->ready, set pad->caps to NULL, as is the documented
44           behaviour in this state change. Fixes playback of series of
45           media files when visualization is enabled in Totem.
46
47 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
48
49         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
50           Allow NULL as filter-caps (which means "any").
51
52 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
53
54         * docs/libs/gstreamer-libs-sections.txt:
55         * libs/gst/controller/gst-controller.c:
56         * libs/gst/controller/gst-controller.h:
57         * libs/gst/controller/gst-helper.c:
58           adding more entries to the docs and fix small doc-bugs
59
60 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
61
62         * docs/gst/gstreamer-docs.sgml:
63         * docs/gst/gstreamer-sections.txt:
64         * docs/gst/gstreamer.types:
65         * docs/gst/tmpl/gstbasesink.sgml:
66         * docs/gst/tmpl/gstbasesrc.sgml:
67         * docs/gst/tmpl/gstbasetransform.sgml:
68         * docs/gst/tmpl/gstfakesrc.sgml:
69         * gst/base/gstcollectpads.c:
70         * gst/base/gstcollectpads.h:
71         * libs/gst/controller/gst-controller.c:
72         * libs/gst/controller/gst-controller.h:
73         * libs/gst/controller/gst-helper.c:
74         * libs/gst/controller/gst-interpolation.c:
75         * libs/gst/controller/lib.c:
76           added long/short desc for controller docs
77           added collectpads base class docs
78           added correct includes to base-class docs
79
80 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
81
82         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
83         (gst_test_mono_source_set_property),
84         (gst_test_mono_source_class_init), (GST_START_TEST),
85         (gst_controller_suite):
86         * docs/gst/gstreamer-docs.sgml:
87         * docs/gst/gstreamer-sections.txt:
88         * docs/gst/gstreamer.types:
89         * docs/libs/gstreamer-libs-docs.sgml:
90         * docs/libs/gstreamer-libs-sections.txt:
91         * gst/base/gstadapter.c:
92         * libs/gst/controller/gst-controller.c:
93         (gst_controlled_property_new), (gst_controlled_property_free),
94         (gst_controller_new_valist),
95         (gst_controller_remove_properties_valist),
96         (gst_controller_sink_values), (_gst_controller_finalize):
97         * libs/gst/controller/gst-controller.h:
98         * libs/gst/controller/gst-helper.c:
99         (gst_object_control_properties), (gst_object_uncontrol_properties),
100         (gst_object_get_controller), (gst_object_set_controller),
101         (gst_object_sink_values), (gst_object_get_value_arrays),
102         (gst_object_get_value_array):
103           more tests (and fixes) for the controller
104           more docs for the controller
105           integrated companies docs for the adapter 
106
107 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
108
109         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
110         (GST_START_TEST), (fakesrc_suite):
111           add tests for sizetype
112
113 2005-08-04  Andy Wingo  <wingo@pobox.com>
114
115         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
116         fixes buffer_alloc proxying among other things.
117
118         * gst/base/gstbasetransform.c:
119         * gst/base/gstbasetransform.h:
120         Revert patch to gstbasetransform from 7-28 removing
121         delay_configure.
122
123         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
124         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
125         Semantics changed, should return not the size of the output buffer
126         but the byte size of a buffer with a given caps.
127
128         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
129         debug object.
130         (gst_base_transform_configure_caps): Don't set out_size here: (in,
131         out) are not the pad caps until setcaps finishes.
132         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
133         not-in-place case as well. Deal with changing from in-place to
134         not-in-place within calling pad_alloc_buffer. Still a bit
135         concerned about the overhead here...
136
137 2005-08-03  Andy Wingo  <wingo@pobox.com>
138
139         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
140         fixating is an error.
141
142 2005-08-04  Edward Hervey  <edward@fluendo.com>
143
144         * gst/base/gstadapter.h: 
145         Added gst_adapter_get_type() to the header
146
147 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
148
149         * check/Makefile.am:
150         * check/gst-libs/controller.c:
151         * libs/gst/controller/gst-controller.c:
152         (gst_controller_new_valist):
153           added check test suite for the controller
154         * gst/base/gstpushsrc.c:
155           fixed a doc typo
156
157 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
158
159         * docs/gst/Makefile.am:
160         * docs/gst/gstreamer-docs.sgml:
161         * docs/gst/gstreamer-sections.txt:
162         * docs/gst/gstreamer.types:
163         * docs/gst/tmpl/gstfakesrc.sgml:
164         * gst/base/README:
165         * gst/base/gstbasesink.c:
166         * gst/base/gstbasesink.h:
167         * gst/base/gstbasesrc.c:
168         * gst/base/gstbasesrc.h:
169         * gst/base/gstbasetransform.c:
170         * gst/base/gstpushsrc.c:
171         * gst/base/gstpushsrc.h:
172           add short/long description docs to base classes
173           add pushsrc to the docs
174           remove consolidated doc fragments
175
176 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
177
178         * configure.ac:
179         * docs/libs/Makefile.am:
180         * docs/libs/gstreamer-libs-docs.sgml:
181         * docs/libs/gstreamer-libs-sections.txt:
182         * docs/libs/gstreamer-libs.types:
183         * examples/Makefile.am:
184         * examples/controller/.cvsignore:
185         * examples/controller/Makefile.am:
186         * examples/controller/audio-example.c: (main):
187         * libs/gst/Makefile.am:
188         * libs/gst/controller/.cvsignore:
189         * libs/gst/controller/Makefile.am:
190         * libs/gst/controller/gst-controller.c:
191         (on_object_controlled_property_changed), (gst_timed_value_compare),
192         (gst_timed_value_find),
193         (gst_controlled_property_set_interpolation_mode),
194         (gst_controlled_property_new), (gst_controlled_property_free),
195         (gst_controller_find_controlled_property),
196         (gst_controller_new_valist), (gst_controller_new),
197         (gst_controller_remove_properties_valist),
198         (gst_controller_remove_properties), (gst_controller_set),
199         (gst_controller_set_from_list), (gst_controller_unset),
200         (gst_controller_get), (gst_controller_get_all),
201         (gst_controller_sink_values), (gst_controller_get_value_arrays),
202         (gst_controller_get_value_array),
203         (gst_controller_set_interpolation_mode),
204         (_gst_controller_finalize), (_gst_controller_init),
205         (_gst_controller_class_init), (gst_controller_get_type):
206         * libs/gst/controller/gst-controller.h:
207         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
208         (g_object_uncontrol_properties), (g_object_get_controller),
209         (g_object_set_controller), (g_object_sink_values),
210         (g_object_get_value_arrays), (g_object_get_value_array):
211         * libs/gst/controller/gst-interpolation.c:
212         (gst_controlled_property_find_timed_value_node),
213         (interpolate_none_get), (interpolate_trigger_get),
214         (interpolate_trigger_get_value_array):
215         * libs/gst/controller/lib.c: (gst_controller_init):
216         * pkgconfig/Makefile.am:
217         * pkgconfig/gstreamer-control-uninstalled.pc.in:
218         * pkgconfig/gstreamer-control.pc.in:
219         * testsuite/Makefile.am:
220         * testsuite/controller/.cvsignore:
221         * testsuite/controller/Makefile.am:
222         * testsuite/controller/interpolator.c: (main):
223           added controller code
224           removed dparam pc files
225
226 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
227         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
228         (gst_collectpads_stop):
229           Broadcast the condition when shutting down, to make sure we wake all
230           threads up. Shut down pads on finalize, for safety.
231
232 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
233         * gst/base/gstbasetransform.c: (gst_base_transform_init),
234         (gst_base_transform_handle_buffer),
235         (gst_base_transform_change_state):
236           Handle PAUSED->READY->PAUSED transition after negotiation
237           occurred already.
238         * gst/gstmessage.c: (gst_message_init):
239           Extra piece of debug for new messages.
240
241 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
242
243         * configure.ac:
244         * docs/gst/tmpl/gstbasesrc.sgml:
245         * docs/gst/tmpl/gstelement.sgml:
246         * docs/gst/tmpl/gstevent.sgml:
247         * docs/gst/tmpl/gstfakesrc.sgml:
248         * docs/gst/tmpl/gstformat.sgml:
249         * docs/gst/tmpl/gstghostpad.sgml:
250         * docs/gst/tmpl/gstpad.sgml:
251         * docs/gst/tmpl/gstquery.sgml:
252         * docs/gst/tmpl/gststructure.sgml:
253         * docs/gst/tmpl/gsttaglist.sgml:
254         * docs/gst/tmpl/gstvalue.sgml:
255         * docs/libs/gstreamer-libs-docs.sgml:
256         * docs/libs/gstreamer-libs-sections.txt:
257         * docs/libs/gstreamer-libs.types:
258         * libs/gst/Makefile.am:
259         * libs/gst/control/.cvsignore:
260         * libs/gst/control/Makefile.am:
261         * libs/gst/control/control.c:
262         * libs/gst/control/control.h:
263         * libs/gst/control/dparam.c:
264         * libs/gst/control/dparam.h:
265         * libs/gst/control/dparam_smooth.c:
266         * libs/gst/control/dparam_smooth.h:
267         * libs/gst/control/dparamcommon.h:
268         * libs/gst/control/dparammanager.c:
269         * libs/gst/control/dparammanager.h:
270         * libs/gst/control/dplinearinterp.c:
271         * libs/gst/control/dplinearinterp.h:
272         * libs/gst/control/unitconvert.c:
273         * libs/gst/control/unitconvert.h:
274         * testsuite/Makefile.am:
275         * testsuite/dynparams/.cvsignore:
276         * testsuite/dynparams/Makefile.am:
277         * testsuite/dynparams/dparamstest.c:
278         * tools/Makefile.am:
279         * tools/gst-inspect.c: (print_element_info), (main):
280         * tools/gst-xmlinspect.c: (print_element_info), (main):
281           deactivate and remove dparams (libgstcontrol)
282
283 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
284
285         * gst/elements/gsttypefindelement.c:
286         (gst_type_find_element_have_type), (gst_type_find_element_init),
287         (stop_typefinding), (gst_type_find_element_handle_event),
288         (gst_type_find_element_chain), (gst_type_find_element_getrange):
289         * gst/elements/gsttypefindelement.h:
290           Set caps on all outgoing buffers, not just the first one.
291
292 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
293
294         * gst/elements/gsttypefindelement.c:
295         (gst_type_find_element_have_type),
296         (gst_type_find_element_check_set_buffer_caps),
297         (gst_type_find_element_init), (stop_typefinding),
298         (gst_type_find_element_handle_event),
299         (gst_type_find_element_chain), (gst_type_find_element_getrange):
300         * gst/elements/gsttypefindelement.h:
301           Set caps on first outgoing buffer when we've found the type.
302
303 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
304
305         * docs/gst/gstreamer-docs.sgml:
306         * docs/gst/gstreamer-sections.txt:
307         * docs/gst/tmpl/gstscheduler.sgml:
308         * docs/gst/tmpl/gstschedulerfactory.sgml:
309           Remove some old cruft from docs.
310
311 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
312
313         * gst/gstpad.h:
314           Fix inline docs for GstPadLinkReturn.
315           
316         * gst/gststructure.c: (gst_structure_has_name):
317         * gst/gststructure.h:
318         * docs/gst/gstreamer-sections.txt:
319           New API: gst_structure_has_name().
320
321 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
322
323         * configure.ac:
324           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
325           and _LARGEFILE_SOURCE in config.h as required. Do not 
326           export those flags in our .pc files any longer (#142209).
327
328           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
329
330         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
331         (gst_file_sink_do_seek), (gst_file_sink_event),
332         (gst_file_sink_get_current_offset), (gst_file_sink_render):
333           Redo seek/tell calls with large file support in mind; add some
334           debugging messages; add log message that tells us when large
335           file support is unavailable or not enabled for some reason.
336
337         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
338           Add log message that tells us when large file support 
339           is unavailable or not enabled for some reason.
340
341 2005-07-29  Wim Taymans  <wim@fluendo.com>
342
343         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
344         Added test for removing an element with ghostpad from a bin.
345         Fixed test as current implementation does the right thing.
346
347         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
348         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
349         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
350         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
351         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
352         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
353         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
354         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
355         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
356         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
357         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
358         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
359         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
360         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
361         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
362         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
363         * gst/gstghostpad.h:
364         Clean up ghostpads, remove properties for internal stuff.
365         Make threadsafe.
366         Fix refcounting.
367         Prepare for switching targets, not all use cases work yet.
368
369 2005-07-29  Wim Taymans  <wim@fluendo.com>
370
371         * docs/design/part-gstghostpad.txt:
372         Small update.
373
374         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
375         (gst_bin_remove_func):
376         Unlinking pads while holding the bin LOCK is not a good
377         idea.
378
379         * gst/gstpad.c: (gst_pad_class_init),
380         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
381         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
382         No prob setting template after creating the pad.
383
384 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
385
386         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
387         (gst_bus_peek), (gst_bus_source_dispatch),
388         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
389         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
390           gst_bus_poll may be called from other threads. Handle
391           this nicely by not making poll_data disappear off the
392           stack once gst_bus_poll returns.
393           gst_bus_peek now increments the refcount on the returned
394           message.
395
396 2005-07-29  Wim Taymans  <wim@fluendo.com>
397
398         * docs/design/part-gstghostpad.txt:
399         Overview of current GhostPad datastructures and use
400         cases for changing the target.
401
402 2005-07-28  Wim Taymans  <wim@fluendo.com>
403
404         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
405         Added checks for hierarchy consistency whan adding linked
406         elements to bins.
407
408         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
409         Added check to test element scheduling without bin/pipeline.
410
411         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
412         First add elements to bin, then link.
413         
414         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
415         (gst_bin_remove_func):
416         Unlink pads from elements added/removed from bin to maintain
417         hierarchy consistency.
418
419 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
420
421         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
422         (gst_base_transform_handle_buffer):
423         * gst/base/gstbasetransform.h:
424           Remove broken delay_configure (fixes renegotiation of software
425           scaling pipelines); remove some leftover printf()s.
426
427 2005-07-28  Wim Taymans  <wim@fluendo.com>
428
429         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
430         Added some more tests for wrong hierarchy
431
432         * docs/design/part-overview.txt:
433         Some updates.
434
435         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
436         Cleanups.
437
438         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
439         (gst_element_dispose):
440         Some more cleanups.
441
442         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
443         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
444         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
445         (gst_pad_set_caps), (gst_pad_send_event):
446         Check for correct hierarchy when linking pads. Moving to
447         strict requirement for ghostpads when linking elements in
448         different bins.
449
450         * gst/gstpad.h:
451         Clean ups. Added WRONG_HIERARCHY return value.
452
453 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
454
455         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
456           Better debug if no transform is possible.
457
458 2005-07-27  Wim Taymans  <wim@fluendo.com>
459
460         * docs/random/wtay/network-transp:
461         Some old doc I had.
462
463 2005-07-27  Wim Taymans  <wim@fluendo.com>
464
465         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
466         (gst_dp_event_from_packet):
467         Fix serialization of seek events.
468
469 2005-07-27  Wim Taymans  <wim@fluendo.com>
470
471         * check/gst-libs/gdp.c: (GST_START_TEST):
472         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
473         Fix compilation and fix event serialization.
474
475 2005-07-27  Wim Taymans  <wim@fluendo.com>
476
477         * CHANGES-0.9:
478         * docs/design/part-TODO.txt:
479         * docs/design/part-events.txt:
480         Some docs updates
481
482         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
483         (gst_base_sink_event), (gst_base_sink_do_sync),
484         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
485         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
486         (gst_base_src_do_seek), (gst_base_src_event_handler),
487         (gst_base_src_loop):
488         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
489         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
490         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
491         (gst_base_transform_event), (gst_base_transform_handle_buffer),
492         (gst_base_transform_set_passthrough),
493         (gst_base_transform_is_passthrough):
494         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
495         * gst/elements/gstfilesink.c: (gst_file_sink_event):
496         Event updates.
497
498         * gst/gstbuffer.h:
499         Use faster casts.
500
501         * gst/gstelement.c: (gst_element_seek):
502         * gst/gstelement.h:
503         Update gst_element_seek.
504
505         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
506         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
507         (gst_event_new_flush_start), (gst_event_new_flush_stop),
508         (gst_event_new_eos), (gst_event_new_newsegment),
509         (gst_event_parse_newsegment), (gst_event_new_tag),
510         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
511         (gst_event_parse_qos), (gst_event_new_seek),
512         (gst_event_parse_seek), (gst_event_new_navigation):
513         * gst/gstevent.h:
514         Make GstEvent use GstStructure. Add parsing code, make sure the
515         API is sufficiently generic.
516         Mark possible directions of events and serialization.
517
518         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
519         (_gst_message_copy), (gst_message_new_segment_start),
520         (gst_message_new_segment_done), (gst_message_new_custom),
521         (gst_message_parse_segment_start),
522         (gst_message_parse_segment_done):
523         Small cleanups.
524
525         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
526         (gst_pad_set_caps), (gst_pad_send_event):
527         Update for new events. 
528         Catch events sent in wrong directions.
529
530         * gst/gstqueue.c: (gst_queue_link_src),
531         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
532         (gst_queue_handle_src_query):
533         Event updates.
534
535         * gst/gsttag.c:
536         * gst/gsttag.h:
537         Remove event code from this file.
538
539         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
540         (gst_dp_event_from_packet):
541         Event updates.
542
543 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
544
545         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
546         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
547         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
548           Make debugging actually useful.
549
550 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
551
552         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
553         (gst_pad_fixate_caps):
554           Implement default fixation once again, so that gst_pad_fixate()
555           actually does anything at all. This probably needs to be some
556           sort of a last resort, and use profile-based fixation first, but
557           since that doesn't exist yet, this is the best we have. Fixes
558           visualization in Totem.
559
560 2005-07-22  Wim Taymans  <wim@fluendo.com>
561
562         * docs/design/part-events.txt:
563         Small update.
564
565         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
566         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
567         (gst_base_sink_activate_pull):
568         Some more comments.
569
570         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
571         (gst_fake_src_create):
572         Fix handoff marshall.
573
574         * gst/elements/gstidentity.c: (gst_identity_class_init),
575         (gst_identity_transform_ip):
576         We're a real inplace element.
577
578         * gst/gstbus.c: (gst_bus_post):
579         Added some comments.
580
581         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
582         * tests/muxing/case1.c: (main):
583         * tests/sched/dynamic-pipeline.c: (main):
584         * tests/sched/interrupt1.c: (main):
585         * tests/sched/interrupt2.c: (main):
586         * tests/sched/interrupt3.c: (main):
587         * tests/sched/runxml.c: (main):
588         * tests/sched/sched-stress.c: (main):
589         * tests/seeking/seeking1.c: (event_received), (main):
590         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
591         (main):
592         * tests/threadstate/threadstate3.c: (main):
593         * tests/threadstate/threadstate4.c: (main):
594         * tests/threadstate/threadstate5.c: (main):
595         Fix the tests.
596
597 2005-07-21  Wim Taymans  <wim@fluendo.com>
598
599         * docs/design/part-seeking.txt:
600         Some small additions.
601
602         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
603         (gst_base_sink_get_times), (gst_base_sink_do_sync),
604         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
605         * gst/base/gstbasesink.h:
606         discont values are gint64, handle the math correctly.
607
608         * gst/base/gstbasesrc.c: (gst_base_src_loop):
609         Make the basesrc report error if the source pad is not linked.
610
611         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
612         (gst_queue_loop), (gst_queue_handle_src_query),
613         (gst_queue_src_activate_push):
614         Make queue collect data even if the srcpad is not linked.
615         Start pushing out data as soon as it is linked.
616
617         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
618         * gst/gstutils.h:
619         Added gst_flow_get_name() to ease error reporting.
620
621 2005-07-20  Wim Taymans  <wim@fluendo.com>
622
623         * gst/gstmessage.c: (gst_message_new_segment_start),
624         (gst_message_new_segment_done), (gst_message_parse_segment_start),
625         (gst_message_parse_segment_done):
626         * gst/gstmessage.h:
627         Added a bunch of messages for advanced seeking.
628
629         * gst/parse/grammar.y:
630         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
631         (gst_dpman_state_changed):
632         Fix some new-pad -> pad-added signals
633
634 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
635
636         * docs/manual/appendix-porting.xml:
637         * docs/pwg/appendix-porting.xml:
638           Document new-pad/state-change signal renames and the FixedList
639           type rename.
640
641 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
642
643         * docs/manual/advanced-autoplugging.xml:
644         * docs/manual/basics-helloworld.xml:
645         * docs/manual/basics-pads.xml:
646         * docs/random/ds/0.9-suggested-changes:
647         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
648         * gst/gstelement.h:
649         * gst/gstevent.h:
650         * gst/gstformat.h:
651         * gst/gstquery.h:
652         * gst/gststructure.c: (gst_structure_value_get_generic_type),
653         (gst_structure_parse_array), (gst_structure_parse_value):
654         * gst/gstvalue.c: (gst_type_is_fixed),
655         (gst_value_list_prepend_value), (gst_value_list_append_value),
656         (gst_value_list_get_size), (gst_value_list_get_value),
657         (gst_value_transform_array_string), (gst_value_serialize_array),
658         (gst_value_deserialize_array), (gst_value_intersect_array),
659         (gst_value_is_fixed), (_gst_value_initialize):
660         * gst/gstvalue.h:
661           GstElement::new-pad -> pad-added, GstElement::state-change ->
662           state-changed, GstValueFixedList -> GstValueArray, add format and
663           flags as their own arguments in gst_element_seek() (should improve
664           "bindeability"), remove function generators since they don't work
665           under a whole bunch of compilers (they were deprecated already
666           anyway).
667
668 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
669
670         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
671         (_gst_debug_register_funcptr):
672         * gst/gstinfo.h:
673           Fix illegal cast on some platforms (#309253).
674
675 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
676
677         * gst/gstmessage.c: (gst_message_new_custom):
678         * gst/gstmessage.h:
679           Add _new_custom, make _new_application a macro to _new_custom.
680
681 2005-07-20  Wim Taymans  <wim@fluendo.com>
682
683         * gst/base/gstbasesrc.c: (gst_base_src_init),
684         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
685         * gst/base/gstbasesrc.h:
686         Add a gboolean to decide when to push out a discont.
687
688         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
689         (gst_queue_loop), (gst_queue_handle_src_query),
690         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
691         (gst_queue_set_property), (gst_queue_get_property):
692         Some cleanups.
693
694         * tests/threadstate/threadstate1.c: (main):
695         Make a thread test compile and run... very silly..
696
697
698 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
699
700         * docs/manual/appendix-porting.xml:
701           Mention removal of libgstgconf-0.9.la and existence of gconf
702           elements.
703
704 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
705
706         * docs/pwg/advanced-clock.xml:
707         * docs/pwg/appendix-porting.xml:
708         * docs/pwg/intro-preface.xml:
709         * docs/pwg/other-base.xml:
710         * docs/pwg/other-manager.xml:
711         * docs/pwg/other-nton.xml:
712         * docs/pwg/other-ntoone.xml:
713         * docs/pwg/other-oneton.xml:
714         * docs/pwg/pwg.xml:
715           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
716           demuxer), remove n-to-n (was never written), fix some code examples
717           and links and update the porting section to include all this.
718
719 2005-07-19  Wim Taymans  <wim@fluendo.com>
720
721         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
722         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
723         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
724         (gst_queue_src_activate_push), (gst_queue_change_state),
725         (gst_queue_get_property):
726         * gst/gstqueue.h:
727         Propagate GstFlowReturn more intelligently upstream and output
728         an ERROR/EOS when streaming stopped due to fatal error.
729
730 2005-07-19  Wim Taymans  <wim@fluendo.com>
731
732         * tools/gst-launch.c: (check_intr), (event_loop), (main):
733         Don't block forever for the state change to complete, the
734         pipeline already did with a sensible timeout.
735
736 2005-07-19  Wim Taymans  <wim@fluendo.com>
737
738         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
739         Make sure we never call the create function is we
740         got deactivated.
741
742 2005-07-19  Andy Wingo  <wingo@pobox.com>
743
744         * gst/parse/parse.l: Attempt to solve bug #172815.
745
746 2005-07-19  Wim Taymans  <wim@fluendo.com>
747
748         * docs/design/part-clocks.txt:
749         * docs/design/part-events.txt:
750         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
751         Small docs updates.
752         Only update the seeking values when we are not
753         busy streaming.
754
755 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
756
757         * gst/base/gstbasesrc.c: (gst_base_src_loop):
758           Oops, ignore the result of gst_pad_push_event here.
759
760 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
761
762         * gst/base/gstbasesrc.c: (gst_base_src_loop),
763         (gst_base_src_activate_push):
764           Send discont event from the loop function, as pads
765           aren't activated yet in the activate_push handler.
766
767         * gst/gstbin.c: (bin_bus_handler):
768           Don't leak element name.
769
770 2005-07-18  Andy Wingo  <wingo@pobox.com>
771
772         * configure.ac: Use AS_LIBTOOL_TAGS.
773
774 2005-07-18  Wim Taymans  <wim@fluendo.com>
775
776         * docs/gst/gstreamer.types:
777         Remove deleted types.
778
779 2005-07-18  Wim Taymans  <wim@fluendo.com>
780
781         * check/elements/gstfakesrc.c: (GST_START_TEST):
782         * configure.ac:
783         * gst/Makefile.am:
784         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
785         (init_popt_callback):
786         * gst/gst.h:
787         * gst/gst_private.h:
788         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
789         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
790         * gst/gstbin.h:
791         * gst/gstbus.h:
792         * gst/gstconfig.h.in:
793         * gst/gstelement.c: (gst_element_class_init),
794         (gst_element_set_base_time), (gst_element_get_base_time),
795         (iterator_fold_with_resync), (gst_element_change_state),
796         (gst_element_dispose), (gst_element_get_bus):
797         * gst/gstelement.h:
798         * gst/gstelementfactory.h:
799         * gst/gsterror.c: (_gst_core_errors_init):
800         * gst/gsterror.h:
801         * gst/gstevent.h:
802         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
803         * gst/gstindex.c:
804         * gst/gstinfo.c: (_gst_debug_init):
805         * gst/gstmessage.c: (_gst_message_copy):
806         * gst/gstmessage.h:
807         * gst/gstminiobject.h:
808         * gst/gstobject.c:
809         * gst/gstobject.h:
810         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
811         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
812         * gst/gstpad.h:
813         * gst/gstparse.h:
814         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
815         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
816         (gst_pipeline_get_last_stream_time):
817         * gst/gstpipeline.h:
818         * gst/gstpluginfeature.h:
819         * gst/gstquery.h:
820         * gst/gstscheduler.c:
821         * gst/gstscheduler.h:
822         * gst/gststructure.h:
823         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
824         (gst_task_finalize), (gst_task_func), (gst_task_create),
825         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
826         (gst_task_stop), (gst_task_pause):
827         * gst/gsttask.h:
828         * gst/gsttypefind.h:
829         * gst/gsttypes.h:
830         * gst/registries/gstlibxmlregistry.c: (load_feature),
831         (gst_xml_registry_load), (gst_xml_registry_save_feature):
832         * gst/registries/gstxmlregistry.c:
833         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
834         * gst/schedulers/threadscheduler.c:
835         * libs/gst/control/dparammanager.h:
836         * tools/gst-inspect.c: (print_element_list),
837         (print_plugin_features), (print_element_features):
838         * tools/gst-xmlinspect.c: (print_element_list),
839         (print_plugin_info), (main):
840         Removed plugable schedulers.
841         Removed Scheduler/Manager from elements.
842         Removed gsttypes.h, rearranged includes.
843         Removed dependency pad<->element, element<>pipeline, and
844         various others,  fix includes.
845         implement gst_pad_get_parent() with gst_object_get_parent()
846         Make GstTask sefcontained.
847         Fix _get_state() on GstBin, it did not return ASYNC with a 0
848         timeout.
849         Fix endless loop in iterator_fold_with_resync.
850
851
852 2005-07-18  Wim Taymans  <wim@fluendo.com>
853
854         * gst/Makefile.am:
855         * gst/gstarch.h:
856         Remove old file.
857
858 2005-07-18  Wim Taymans  <wim@fluendo.com>
859
860         * gst/Makefile.am:
861         No more cothreads.h
862
863 2005-07-18  Wim Taymans  <wim@fluendo.com>
864
865         * gst/cothreads.c:
866         * gst/cothreads.h:
867         Let's remove these.
868
869 2005-07-18  Wim Taymans  <wim@fluendo.com>
870
871         * docs/design/part-dynamic.txt:
872         * docs/design/part-events.txt:
873         * docs/design/part-seeking.txt:
874         Some more docs in the works.
875
876         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
877         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
878         (gst_base_transform_setcaps), (gst_base_transform_get_size),
879         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
880         (gst_base_transform_handle_buffer),
881         (gst_base_transform_sink_activate_push),
882         (gst_base_transform_src_activate_pull),
883         (gst_base_transform_set_passthrough),
884         (gst_base_transform_is_passthrough):
885         Refcounting fixes.
886
887         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
888         Cleanups.
889
890         * gst/gstevent.c: (gst_event_finalize):
891         Set SRC to NULL.
892
893         * gst/gstutils.c: (gst_element_unlink),
894         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
895         (gst_pad_proxy_setcaps):
896         * gst/gstutils.h:
897         Add _get_parent_element() to get a pads parent as an element.
898
899 2005-07-18  Wim Taymans  <wim@fluendo.com>
900
901         * check/gst/gstbin.c: (GST_START_TEST):
902         Remove bogus test.
903
904 2005-07-18  Wim Taymans  <wim@fluendo.com>
905
906         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
907         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
908         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
909         (gst_base_sink_event), (gst_base_sink_do_sync),
910         (gst_base_sink_chain), (gst_base_sink_loop),
911         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
912         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
913         Refcounting fixes.
914         Fix logic for returning ASYNC when not prerolled.
915
916 2005-07-18  Wim Taymans  <wim@fluendo.com>
917
918         * gst/gstqueue.c: (gst_queue_handle_sink_event):
919         Fix nasty refcount bug.
920
921 2005-07-16 Philippe Khalaf <burger@speedy.org>
922         * gst/elements/gstfdsrc.c:
923         * gst/elements/gstfdsrc.h:
924         * gst/elements/gstelements.c:
925         * gst/elements/Makefile.am:
926         Ported fdsrc to 0.9.
927
928 2005-07-16  Wim Taymans  <wim@fluendo.com>
929
930         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
931         (gst_base_sink_do_sync):
932         Fix compile error.
933
934 2005-07-16  Wim Taymans  <wim@fluendo.com>
935
936         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
937         (gst_base_sink_event), (gst_base_sink_get_times),
938         (gst_base_sink_do_sync), (gst_base_sink_change_state):
939         * gst/base/gstbasesink.h:
940         Store and use discont values when syncing buffers as described
941         in design docs.
942         
943         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
944         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
945         (gst_base_src_activate_push):
946         Push discont event when starting.
947
948         * gst/elements/gstidentity.c: (gst_identity_transform):
949         Small cleanups.
950
951         * gst/gstbin.c: (gst_bin_change_state):
952         Small cleanups in base_time  distribution.
953
954         * gst/gstelement.c: (gst_element_set_base_time),
955         (gst_element_get_base_time), (gst_element_change_state):
956         * gst/gstelement.h:
957         Added methods for the base_time of the element.
958         Some MT fixes.
959
960         * gst/gstpipeline.c: (gst_pipeline_send_event),
961         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
962         (gst_pipeline_get_last_stream_time):
963         * gst/gstpipeline.h:
964         MT fixes.
965         Handle seeking as described in design doc, remove stream_time
966         hack.
967         Cleanups clock and stream_time selection code. Added accessors
968         for the stream_time.
969         
970
971 2005-07-16  Andy Wingo  <wingo@pobox.com>
972
973         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
974         (#305291).
975
976 2005-07-16  Wim Taymans  <wim@fluendo.com>
977
978         * check/gst/gstbin.c: (GST_START_TEST):
979         Make elements silent as the deep_notify refs the
980         parent, which might make the test fail.
981
982         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
983         Don't hold the lock for too long.
984
985 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
986
987         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
988           Don't unref the caps we passed to gst_caps_make_writable() after
989           passing them. gst_caps_make_writable() will do that for us.
990
991 2005-07-15  Andy Wingo  <wingo@pobox.com>
992
993         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
994         (#157311).
995
996         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
997         own marshalling function for the handoff signal. Properly type the
998         buffer as a buffer. Fixes some warnings. Should do a more general
999         solution.
1000         (gst_identity_class_init): Plug into the right marshaller.
1001
1002 2005-07-15  Wim Taymans  <wim@fluendo.com>
1003
1004         * docs/design/part-TODO.txt:
1005         * docs/design/part-clocks.txt:
1006         * docs/design/part-element-sink.txt:
1007         * docs/design/part-events.txt:
1008         * docs/design/part-gstpipeline.txt:
1009         Updated docs, mostly DISCONT related.
1010
1011 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1012
1013         * docs/pwg/building-pads.xml:
1014           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1015
1016 2005-07-15  Andy Wingo  <wingo@pobox.com>
1017
1018         * tools/gst-typefind.c: Update, add copyright block.
1019
1020         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1021         Normalize and truncate caps before fixation.
1022
1023         * gst/gstcaps.h:
1024         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1025         discards all but the first structure from its argument.
1026
1027 2005-07-15  Wim Taymans  <wim@fluendo.com>
1028
1029         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1030         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1031         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1032         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1033         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1034         (gst_base_transform_chain), (gst_base_transform_change_state),
1035         (gst_base_transform_set_passthrough),
1036         (gst_base_transform_is_passthrough):
1037         * gst/base/gstbasetransform.h:
1038         Make passthrough work using the bufferpools.
1039         Changed API a bit, subclasses have to write into a buffer
1040         provided by the base class.
1041         More debug info in nego functions.
1042         
1043         * gst/elements/gstidentity.c: (gst_identity_init),
1044         (gst_identity_transform):
1045         Port to new base class.
1046
1047 2005-07-15  Wim Taymans  <wim@fluendo.com>
1048
1049         * gst/gstmessage.c: (gst_message_new_state_changed):
1050         * tools/gst-launch.c: (event_loop), (main):
1051         Totally dump messages in -launch with the -m option.
1052         Fix message name for State messages,
1053
1054 2005-07-14  Wim Taymans  <wim@fluendo.com>
1055
1056         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1057         Post error messages on errors.
1058
1059 2005-07-14  Wim Taymans  <wim@fluendo.com>
1060
1061         * gst/gstcaps.c: (gst_caps_do_simplify):
1062         Remove debug info.
1063
1064         * gst/gsterror.h:
1065         Define error for stream stopped.
1066
1067         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1068         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1069         Do proper return values.
1070
1071         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1072         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1073         (gst_pad_get_range):
1074         Better return values.
1075
1076         * gst/gstpad.h:
1077         Reorganise return values, add macro to check for fatal errors.
1078
1079         * gst/gstqueue.c: (gst_queue_chain):
1080         Return proper GstFlowReturn values,
1081
1082 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1083
1084         * docs/gst/gstreamer-sections.txt:
1085         * docs/gst/gstreamer.types:
1086         * docs/gst/tmpl/gst.sgml:
1087         * docs/gst/tmpl/gstbasesink.sgml:
1088         * docs/gst/tmpl/gstbasesrc.sgml:
1089         * docs/gst/tmpl/gstbasetransform.sgml:
1090         * docs/gst/tmpl/gstbin.sgml:
1091         * docs/gst/tmpl/gstbuffer.sgml:
1092         * docs/gst/tmpl/gstcaps.sgml:
1093         * docs/gst/tmpl/gstclock.sgml:
1094         * docs/gst/tmpl/gstcompat.sgml:
1095         * docs/gst/tmpl/gstconfig.sgml:
1096         * docs/gst/tmpl/gstelement.sgml:
1097         * docs/gst/tmpl/gstelementdetails.sgml:
1098         * docs/gst/tmpl/gstelementfactory.sgml:
1099         * docs/gst/tmpl/gstenumtypes.sgml:
1100         * docs/gst/tmpl/gsterror.sgml:
1101         * docs/gst/tmpl/gstevent.sgml:
1102         * docs/gst/tmpl/gstfakesink.sgml:
1103         * docs/gst/tmpl/gstfakesrc.sgml:
1104         * docs/gst/tmpl/gstfilesink.sgml:
1105         * docs/gst/tmpl/gstfilesrc.sgml:
1106         * docs/gst/tmpl/gstfilter.sgml:
1107         * docs/gst/tmpl/gstformat.sgml:
1108         * docs/gst/tmpl/gstghostpad.sgml:
1109         * docs/gst/tmpl/gstimplementsinterface.sgml:
1110         * docs/gst/tmpl/gstindex.sgml:
1111         * docs/gst/tmpl/gstindexfactory.sgml:
1112         * docs/gst/tmpl/gstinfo.sgml:
1113         * docs/gst/tmpl/gstiterator.sgml:
1114         * docs/gst/tmpl/gstmacros.sgml:
1115         * docs/gst/tmpl/gstmemchunk.sgml:
1116         * docs/gst/tmpl/gstminiobject.sgml:
1117         * docs/gst/tmpl/gstobject.sgml:
1118         * docs/gst/tmpl/gstpad.sgml:
1119         * docs/gst/tmpl/gstpadtemplate.sgml:
1120         * docs/gst/tmpl/gstparse.sgml:
1121         * docs/gst/tmpl/gstpipeline.sgml:
1122         * docs/gst/tmpl/gstplugin.sgml:
1123         * docs/gst/tmpl/gstpluginfeature.sgml:
1124         * docs/gst/tmpl/gstquery.sgml:
1125         * docs/gst/tmpl/gstqueue.sgml:
1126         * docs/gst/tmpl/gstregistry.sgml:
1127         * docs/gst/tmpl/gstregistrypool.sgml:
1128         * docs/gst/tmpl/gstscheduler.sgml:
1129         * docs/gst/tmpl/gstschedulerfactory.sgml:
1130         * docs/gst/tmpl/gststructure.sgml:
1131         * docs/gst/tmpl/gstsystemclock.sgml:
1132         * docs/gst/tmpl/gsttaglist.sgml:
1133         * docs/gst/tmpl/gsttagsetter.sgml:
1134         * docs/gst/tmpl/gsttrace.sgml:
1135         * docs/gst/tmpl/gsttrashstack.sgml:
1136         * docs/gst/tmpl/gsttypefind.sgml:
1137         * docs/gst/tmpl/gsttypefindfactory.sgml:
1138         * docs/gst/tmpl/gsttypes.sgml:
1139         * docs/gst/tmpl/gsturihandler.sgml:
1140         * docs/gst/tmpl/gsturitype.sgml:
1141         * docs/gst/tmpl/gstutils.sgml:
1142         * docs/gst/tmpl/gstvalue.sgml:
1143         * docs/gst/tmpl/gstversion.sgml:
1144         * docs/gst/tmpl/gstxml.sgml:
1145         * docs/libs/tmpl/gstcontrol.sgml:
1146         * docs/libs/tmpl/gstdataprotocol.sgml:
1147         * docs/libs/tmpl/gstdparam.sgml:
1148         * docs/libs/tmpl/gstdplinint.sgml:
1149         * docs/libs/tmpl/gstdpman.sgml:
1150         * docs/libs/tmpl/gstdpsmooth.sgml:
1151         * docs/libs/tmpl/gstgetbits.sgml:
1152         * docs/libs/tmpl/gstunitconvert.sgml:
1153         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1154         (gst_push_src_base_init), (gst_push_src_class_init),
1155         (gst_push_src_init), (gst_push_src_create):
1156         * gst/base/gstpushsrc.h:
1157         * gst/elements/gstelements.c:
1158         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1159         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1160         (gst_fake_sink_init), (gst_fake_sink_set_property),
1161         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1162         (gst_fake_sink_event), (gst_fake_sink_preroll),
1163         (gst_fake_sink_render), (gst_fake_sink_change_state):
1164         * gst/elements/gstfakesink.h:
1165         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1166         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1167         (gst_fake_src_base_init), (gst_fake_src_class_init),
1168         (gst_fake_src_init), (gst_fake_src_event_handler),
1169         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1170         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1171         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1172         (gst_fake_src_create_buffer), (gst_fake_src_create),
1173         (gst_fake_src_start), (gst_fake_src_stop):
1174         * gst/elements/gstfakesrc.h:
1175         * gst/elements/gstfilesink.c: (_do_init),
1176         (gst_file_sink_base_init), (gst_file_sink_class_init),
1177         (gst_file_sink_init), (gst_file_sink_dispose),
1178         (gst_file_sink_set_location), (gst_file_sink_set_property),
1179         (gst_file_sink_get_property), (gst_file_sink_open_file),
1180         (gst_file_sink_close_file), (gst_file_sink_query),
1181         (gst_file_sink_event), (gst_file_sink_render),
1182         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1183         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1184         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1185         * gst/elements/gstfilesink.h:
1186         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1187         (gst_file_src_class_init), (gst_file_src_init),
1188         (gst_file_src_finalize), (gst_file_src_set_location),
1189         (gst_file_src_set_property), (gst_file_src_get_property),
1190         (gst_file_src_map_region), (gst_file_src_map_small_region),
1191         (gst_file_src_create_mmap), (gst_file_src_create_read),
1192         (gst_file_src_create), (gst_file_src_is_seekable),
1193         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1194         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1195         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1196         (gst_file_src_uri_handler_init):
1197         * gst/elements/gstfilesrc.h:
1198           more autistic cleanliness in functions/names/defines
1199
1200 2005-07-13  Andy Wingo  <wingo@pobox.com>
1201
1202         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1203         source couldn't negotiate.
1204
1205         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1206         connections again.
1207
1208         * gst/gstutils.h:
1209         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1210         function. I am channeling Hades. Put your boots on suckers!!!
1211
1212 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1213
1214         * testsuite/caps/Makefile.am:
1215         * testsuite/caps/value_compare.c:
1216         * testsuite/caps/value_intersect.c:
1217         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1218           move two testsuite apps over to the check dir
1219
1220 2005-07-12  Wim Taymans  <wim@fluendo.com>
1221
1222         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1223         Added more debug info in the negotiate process.
1224
1225         * gst/gstmessage.h:
1226         Prepare for segment playback.
1227
1228         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1229         Better debugging.
1230
1231         * gst/gstutils.c:
1232         Some more docs.
1233
1234         * tools/gst-launch.c: (main):
1235         NULL pipeline on errors.
1236
1237 2005-07-12  Andy Wingo  <wingo@pobox.com>
1238
1239         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1240         not it comes from a malloc region. Make sure our copy gets freed.
1241
1242 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1243
1244         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1245         * check/gst/gstmessage.c: (GST_START_TEST):
1246         * check/gst/gststructure.c: (GST_START_TEST),
1247         (gst_structure_suite), (main):
1248           more testing
1249         * gst/gstelement.c: (gst_element_message_full):
1250           clean up GError and debug string now that they get copied
1251         * gst/gstmessage.c: (gst_message_new_error),
1252         (gst_message_new_warning), (gst_message_parse_error),
1253         (gst_message_parse_warning):
1254           use GST_TYPE_G_ERROR for structure_new, and take copies of
1255           arguments, so that we don't mess up refcounting
1256
1257 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1258
1259         * check/Makefile.am:
1260           add per-test valgrind targets
1261         * check/gst-libs/gdp.c: (GST_START_TEST),
1262         (gst_data_protocol_suite), (main):
1263           clean up
1264
1265 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1266
1267         * check/Makefile.am:
1268           instate more valgrindable tests
1269         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1270         (GST_START_TEST), (fakesrc_suite):
1271         * check/gst/gstpad.c: (GST_START_TEST):
1272         * check/gst/gststructure.c: (GST_START_TEST):
1273           fix test leaks
1274         * docs/gst/tmpl/gstminiobject.sgml:
1275         * gst/gstpad.c: (gst_pad_finalize):
1276           fix the static mutex leak
1277
1278 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1279
1280         * check/Makefile.am:
1281           add two more tests for valgrinding
1282         * check/gst/gstvalue.c: (GST_START_TEST):
1283           test refcount of deserialized buffer, found a leak
1284         * docs/gst/gstreamer-docs.sgml:
1285         * docs/gst/gstreamer-sections.txt:
1286         * docs/gst/gstreamer.types:
1287         * docs/gst/tmpl/gstminiobject.sgml:
1288           add miniobject to docs
1289         * gst/gstminiobject.c:
1290           add some docs
1291         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1292         (gst_string_unwrap):
1293           fix a hard-to-find invalid write for one of the tests
1294           fix a leak for deserialized buffers
1295
1296 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1297
1298         * docs/pwg/advanced-events.xml:
1299         * docs/pwg/advanced-request.xml:
1300         * docs/pwg/advanced-scheduling.xml:
1301         * docs/pwg/appendix-porting.xml:
1302         * docs/pwg/building-boiler.xml:
1303         * docs/pwg/intro-preface.xml:
1304         * docs/pwg/other-ntoone.xml:
1305           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1306           of example code and explanation for pad activation, loop() and
1307           getrange() functions and a bit more. Remove old comments pointing
1308           to loop-functions.
1309         * examples/pwg/Makefile.am:
1310           Add loop/getrange examples.
1311
1312 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1313
1314         * configure.ac:
1315           check for valgrind binary + some fixes
1316         * check/gst.supp:
1317           valgrind suppressions for the tests
1318         * check/Makefile.am:
1319           add a valgrind: target that valgrinds the unit tests
1320         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1321         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1322         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1323         * check/gst/gstghostpad.c:
1324           added some cleanup
1325         * check/gst/gstdata.c:
1326           removed
1327         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1328         (thread_unref), (gst_mini_object_suite), (main):
1329           added
1330         * gst/gst.c: (gst_deinit):
1331         * gst/gst.h:
1332           add a method to clean up.
1333         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1334         (gst_system_clock_obtain):
1335           allow for disposing the system clock.
1336         * tools/gst-launch.c: (main):
1337           deinit
1338
1339 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1340
1341         * docs/gst/tmpl/gstbasesrc.sgml:
1342         * docs/gst/tmpl/gstfakesrc.sgml:
1343         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1344         (gst_base_src_init), (gst_base_src_set_property),
1345         (gst_base_src_get_property), (gst_base_src_get_range),
1346         (gst_base_src_start):
1347         * gst/base/gstbasesrc.h:
1348           add num-buffers property
1349         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1350         (gst_fakesrc_init), (gst_fakesrc_set_property),
1351         (gst_fakesrc_get_property), (gst_fakesrc_create),
1352         (gst_fakesrc_start):
1353           remove num-buffers property
1354
1355 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1356
1357         * docs/gst/gstreamer-sections.txt:
1358         * docs/gst/tmpl/gstbasesink.sgml:
1359         * docs/gst/tmpl/gstbasesrc.sgml:
1360         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1361         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1362         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1363         (gst_base_sink_set_property), (gst_base_sink_get_property),
1364         (gst_base_sink_handle_object), (gst_base_sink_event),
1365         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1366         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1367         (gst_base_sink_loop), (gst_base_sink_deactivate),
1368         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1369         (gst_base_sink_change_state):
1370         * gst/base/gstbasesink.h:
1371         * gst/base/gstbasesrc.h:
1372         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1373         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1374         (gst_filesink_init):
1375           more macro splitting
1376
1377 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1378
1379         * gst/gstelement.c: (gst_element_get_bus):
1380           add debug
1381         * tools/gst-launch.c: (check_intr), (event_loop):
1382           fix bus leaks
1383
1384 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1385
1386         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1387           fix a caps leak
1388
1389 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1390
1391         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1392         (gst_base_src_finalize):
1393           add finalize method and clean up properly
1394         * gst/gstpipeline.c: (gst_pipeline_dispose):
1395           add debug
1396
1397 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1398
1399         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1400         (gst_bin_suite):
1401           add more things to check
1402         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1403         * gst/gstelement.c:
1404           more debug
1405
1406 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1407
1408         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1409         (GST_START_TEST), (fakesrc_suite):
1410         * check/gst-libs/gdp.c: (GST_START_TEST):
1411         * check/gst/gst.c: (GST_START_TEST):
1412         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1413         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1414         * check/gst/gstbus.c: (GST_START_TEST):
1415         * check/gst/gstcaps.c: (GST_START_TEST):
1416         * check/gst/gstdata.c: (GST_START_TEST):
1417         * check/gst/gstelement.c: (GST_START_TEST):
1418         * check/gst/gstghostpad.c: (GST_START_TEST):
1419         * check/gst/gstiterator.c: (GST_START_TEST):
1420         * check/gst/gstmessage.c: (GST_START_TEST):
1421         * check/gst/gstobject.c: (GST_START_TEST):
1422         * check/gst/gstpad.c: (GST_START_TEST):
1423         * check/gst/gststructure.c: (GST_START_TEST):
1424         * check/gst/gstsystemclock.c: (GST_START_TEST),
1425         (gst_systemclock_suite):
1426         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1427         * check/gst/gstvalue.c: (GST_START_TEST):
1428         * check/pipelines/cleanup.c: (GST_START_TEST):
1429         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1430         * check/states/sinks.c: (GST_START_TEST):
1431         * check/gstcheck.c: (gst_check_init):
1432         * check/gstcheck.h:
1433           add debugging category
1434           use GST_START_TEST now, so we add a debug line
1435
1436 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1437
1438         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1439           add test for state change message on a bin
1440         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1441           add another test
1442         * gst/gstbin.c: (gst_bin_init):
1443         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1444         * gst/gstelement.c: (gst_element_post_message),
1445         (gst_element_set_state):
1446         * gst/gstelementfactory.c: (gst_element_factory_create):
1447         * gst/gstmessage.c: (gst_message_new):
1448         * gst/gstscheduler.c:
1449           various debugging additions and cleanups
1450
1451 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1452
1453         * check/Makefile.am:
1454         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1455         (main):
1456           adding tests for elements
1457         * gst/gstelement.c: (gst_element_dispose):
1458
1459 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1460
1461         * gst/registries/gstlibxmlregistry.c: (load_feature):
1462           plug more leaks.  A simple gst_init() now is leakfree, yay.
1463
1464 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1465
1466         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1467         (gst_xml_registry_load):
1468           plug another memleak
1469
1470 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1471
1472         * configure.ac:
1473           use GST_SET_ERROR_CFLAGS
1474         * docs/faq/cvs.xml:
1475           change to ERROR_CFLAGS
1476
1477 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1478
1479         * configure.ac:
1480           make GST_ERROR_CFLAGS overridable and re-enable Werror
1481         * docs/faq/cvs.xml:
1482           add a note about error CFLAGS
1483         * docs/gst/tmpl/gstfakesrc.sgml:
1484         * gst/elements/gstfakesrc.c:
1485           comment out some unused code
1486         * gst/gst.c: (split_and_iterate):
1487         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1488         (load_feature):
1489           plug some memleaks
1490
1491 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1492
1493         * common/Makefile.am:
1494         * common/gtk-doc.mak:
1495         * docs/gst/Makefile.am:
1496           factor out gtk-doc.mak
1497
1498 2005-07-07  Wim Taymans  <wim@fluendo.com>
1499
1500         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1501         (gst_thread_scheduler_dispose):
1502         Unlock the STREAM_LOCK completely.
1503
1504 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1505
1506         * check/Makefile.am:
1507         * check/elements/.cvsignore:
1508         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1509         (START_TEST), (fakesrc_suite), (main):
1510         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1511         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1512         (gst_fakesrc_create), (gst_fakesrc_start):
1513         * gst/elements/gstfakesrc.h:
1514           adding a first element test
1515
1516 2005-07-07  Andy Wingo  <wingo@pobox.com>
1517
1518         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1519         debug message.
1520
1521 2005-07-07  Wim Taymans  <wim@fluendo.com>
1522
1523         * gst/gstquery.c:
1524         * gst/gstquery.h:
1525         Remove old types
1526
1527 2005-07-07  Wim Taymans  <wim@fluendo.com>
1528
1529         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1530         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1531         Allow subclasses to implement their own negotiation.
1532
1533 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1534
1535         * docs/design/part-gstbin.txt:
1536         * docs/design/part-gstpipeline.txt:
1537           Update design notes to reflect the movement of
1538           responsibility for bus handling from GstPipeline to
1539           GstBin
1540
1541 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1542
1543         * configure.ac:
1544           Remove unnecessary queue2/3/4 examples.
1545
1546 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1547
1548         * examples/Makefile.am:
1549         * examples/helloworld/helloworld.c: (event_loop), (main):
1550         * examples/queue/queue.c: (event_loop), (main):
1551         * examples/queue2/queue2.c: (main):
1552           Update a couple of the examples to work again.
1553
1554         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1555         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1556          Spelling corrections and extra debug.
1557         
1558         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1559         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1560         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1561         * gst/gstbin.h:
1562         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1563         (gst_pipeline_change_state):
1564         * gst/gstpipeline.h:
1565           Move the bus handler for children to the GstBin, and create a
1566           separate bus for receiving messages from children to the one the
1567           bus sends 'upwards' on.
1568
1569 2005-07-06  Wim Taymans  <wim@fluendo.com>
1570
1571         * gst/base/README:
1572         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1573         (gst_base_sink_handle_object), (gst_base_sink_loop),
1574         (gst_base_sink_change_state):
1575         * gst/base/gstbasesink.h:
1576         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1577         (gst_base_src_init), (gst_base_src_setcaps),
1578         (gst_base_src_getcaps), (gst_base_src_loop),
1579         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1580         (gst_base_src_start), (gst_base_src_change_state):
1581         * gst/base/gstbasesrc.h:
1582         Make basesrc negotiate.
1583         Handle the case where preroll fails in basesink.
1584         Update README.
1585
1586 2005-07-06  Wim Taymans  <wim@fluendo.com>
1587
1588         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1589         Implement the fixate function.
1590         Clean up acceptcaps.
1591
1592 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1593
1594         * docs/pwg/building-filterfactory.xml:
1595         * docs/pwg/pwg.xml:
1596           Remove never-written filter-factory chapter; I'll add the various
1597           base classes to part 4 ("other element types") later on.
1598
1599 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1600
1601         * docs/pwg/advanced-negotiation.xml:
1602         * docs/pwg/building-boiler.xml:
1603         * docs/pwg/building-pads.xml:
1604         * docs/pwg/pwg.xml:
1605         * examples/pwg/Makefile.am:
1606           Add a chapter on caps negotiation, simplify the original code
1607           samples a bit w.r.t. caps negotiation, add link to the advanced
1608           section. Add a bunch of examples showing different use cases of
1609           different types of caps negotiation. Upstream renegotiation isn't
1610           fully documented yet since nobody knows how that works.
1611
1612 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1613
1614         * check/gst/gstpad.c:
1615         * check/gstcheck.c:
1616         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1617           if pad has no parent, return NULL as list of internal links
1618
1619 2005-07-05  Andy Wingo  <wingo@pobox.com>
1620
1621         * gst/elements/gstfilesrc.c:
1622         * gst/elements/gstfakesrc.c: 
1623         * gst/base/gstpushsrc.c:
1624         * gst/base/gstbasesrc.h: 
1625         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1626         
1627 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1628
1629         * Makefile.am:
1630           better report generation target (lcov needs a patch)
1631
1632 2005-07-05  Andy Wingo  <wingo@pobox.com>
1633
1634         * gst/elements, testsuite: Null if we got it...
1635
1636 2005-07-05  Wim Taymans  <wim@fluendo.com>
1637
1638         * configure.ac:
1639         * libs/gst/dataprotocol/Makefile.am:
1640         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1641         * libs/gst/dataprotocol/dataprotocol.h:
1642         * pkgconfig/Makefile.am:
1643         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1644         * pkgconfig/gstreamer-dataprotocol.pc.in:
1645         Ported dataprotol to 0.9. 
1646         Added pkgconfig files.
1647
1648 2005-07-05  Andy Wingo  <wingo@pobox.com>
1649
1650         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1651         Default to returning TRUE for the case when tranform_caps returns
1652         a fixed caps, like for identity or volume.
1653
1654         * check/gst/gstbus.c (pound_bus_with_messages): 
1655         * check/gst/gstmessage.c (START_TEST): 
1656         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1657         message API change.
1658
1659         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1660         logic weaks here: always run transform_caps, trying passthrough
1661         operation only if the original caps intersects with the transform.
1662
1663         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1664         source and sink caps.
1665
1666         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1667         Intersect the peer caps with the pad template before going into
1668         transform_caps.
1669         (gst_base_transform_transform_caps): More debugging.
1670
1671         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1672         src argument.
1673
1674 2005-07-04  Edward Hervey  <edward@fluendo.com>
1675
1676         * gst/gstutils.c:
1677         * gst/gstutils.h:
1678         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1679         in bindings.
1680
1681 2005-07-04  Andy Wingo  <wingo@pobox.com>
1682
1683         * check/gst/gstpad.c: Only set explicit caps on pads.
1684
1685 2005-07-01  Andy Wingo  <wingo@pobox.com>
1686
1687         * tests/network-clock.scm: Commentary update.
1688
1689         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1690         Didn't really make sense, not implementable with basetransform,
1691         etc.
1692         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1693         attempt at implementing the sync property, needs an unlock method.
1694
1695         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1696         New func, by default returns the same caps (the identity
1697         transformation).
1698         (gst_base_transform_getcaps): Uses transform_caps to return
1699         something sensible.
1700         (gst_base_transform_setcaps): Complicated logic to get caps on
1701         both pads, even if they are different, and to call set_caps once
1702         for every time both pads get their caps set.
1703         (gst_base_transform_handle_buffer): Give the ref to the transform
1704         function. Allows in-place modification of the buffer.
1705
1706         * gst/base/gstbasetransform.h (transform_caps): New class method.
1707         Given caps on one side, what can I do on the other.
1708         (set_caps): Take two caps, one for each side of the element.
1709
1710         * gst/gstpad.h:
1711         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1712         caps in place. This is safe because we can check the mutability of
1713         the caps, and a good idea because fixate functions are just called
1714         as a matter of last resort. (Not actually implemented.)
1715         (gst_pad_set_caps): If the caps we're setting is actually the same
1716         as the existing pad caps, just update the pointer without calling
1717         setcaps. Assert that caps is either NULL or fixed, as per the
1718         docs.
1719
1720         * gst/gstghostpad.c: Update for fixate changes.
1721
1722 2005-07-02  Andy Wingo  <wingo@pobox.com>
1723
1724         * gst/gstcaps.c:
1725         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1726         two refcounts makes it immutable, which is enough. Doc more.
1727
1728 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1729
1730         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1731           Put the mini_object into GValue as a mini_object,
1732           not a gpointer, since that's how we declared
1733           the signal.
1734
1735 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1736
1737         * examples/pwg/Makefile.am:
1738           Fix buildbot again.
1739
1740 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1741
1742         * docs/pwg/building-testapp.xml:
1743           Add extra check.
1744         * examples/pwg/Makefile.am:
1745           Fix buildbot.
1746
1747 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1748
1749         * configure.ac:
1750         * examples/Makefile.am:
1751         * examples/pwg/Makefile.am:
1752         * examples/pwg/extract.pl:
1753           Enable building the PWG examples.
1754         * docs/pwg/advanced-interfaces.xml:
1755           Add URI interface stub.
1756         * docs/pwg/advanced-types.xml:
1757         * docs/pwg/other-autoplugger.xml:
1758         * docs/pwg/appendix-porting.xml:
1759         * docs/pwg/pwg.xml:
1760           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1761         * docs/pwg/building-boiler.xml:
1762         * docs/pwg/building-chainfn.xml:
1763         * docs/pwg/building-pads.xml:
1764         * docs/pwg/building-props.xml:
1765         * docs/pwg/building-state.xml:
1766         * docs/pwg/building-testapp.xml:
1767           Update the building-*.xml parts for 0.9 changes. All examples
1768           code blocks compile in examples/pwg/*.
1769
1770 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1771
1772         * docs/manual/advanced-autoplugging.xml:
1773         * docs/manual/appendix-checklist.xml:
1774         * docs/manual/appendix-integration.xml:
1775         * docs/manual/highlevel-components.xml:
1776           Fix playbin/decodebin examples, update docs a bit, mention bus
1777           instead of signals in various places, mention kmplayer and
1778           kaffeine since they have a working GStreamer backend in the KDE
1779           section.
1780
1781 2005-06-30  Wim Taymans  <wim@fluendo.com>
1782
1783         * CHANGES-0.9:
1784         * docs/design/draft-ghostpads.txt:
1785         * docs/design/draft-push-pull.txt:
1786         * docs/design/draft-query.txt:
1787         * docs/design/part-TODO.txt:
1788         * docs/design/part-query.txt:
1789         Added CHANGES-0.9 doc, updated status of other docs.
1790         
1791         * gst/gstquery.h:
1792         Remove "hmm" macro
1793
1794 2005-06-30  Wim Taymans  <wim@fluendo.com>
1795
1796         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1797         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1798         (gst_base_sink_change_state):
1799         * gst/base/gstbasesink.h:
1800         Some tweaks, only EOS and a buffer complete a preroll.
1801
1802 2005-06-30  Andy Wingo  <wingo@pobox.com>
1803
1804         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1805         activate_push down to the internal pad as well.
1806
1807 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1808
1809         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1810
1811         * gst/gsttaginterface.c:
1812           Some documentation fixes (#307394 and #307397).
1813
1814 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1815
1816         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1817
1818         * gst/gstvalue.c: (gst_value_intersect_list):
1819           Fix memleak (#309125).
1820
1821 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1822
1823         * docs/manual/advanced-dataaccess.xml:
1824           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1825         * docs/manual/basics-pads.xml:
1826           Add reference for filtered caps to above chapter.
1827
1828 2005-06-30  Wim Taymans  <wim@fluendo.com>
1829
1830         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1831         (gst_bin_change_state):
1832         Probes are gone.
1833         Lame attempt at making the state change function a bit
1834         more readable.
1835
1836 2005-06-30  Wim Taymans  <wim@fluendo.com>
1837
1838         * docs/design/part-clocks.txt:
1839         * docs/design/part-element-sink.txt:
1840         * docs/design/part-events.txt:
1841         * docs/design/part-preroll.txt:
1842         * docs/design/part-states.txt:
1843         Some more tweeks and additions to the docs.
1844
1845 2005-06-30  Wim Taymans  <wim@fluendo.com>
1846
1847         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1848         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1849         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1850         (gst_pad_check_pull_range), (gst_pad_get_range),
1851         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1852         * gst/gstpad.h:
1853         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1854         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1855         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1856         (gst_pad_remove_buffer_probe):
1857         Removed atomic operations, use existing LOCK.
1858         Move exception handling out of main code path.
1859
1860 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1861
1862         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1863         (silly_return_true_function), (gst_pad_class_init),
1864         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1865         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1866         (gst_pad_send_event):
1867           Fix accumulator, add default value by using _emitv() instead
1868           of _emit() for signal emission.
1869
1870 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1871
1872         * docs/manual/advanced-dataaccess.xml:
1873         * examples/manual/Makefile.am:
1874           Add probe example.
1875         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1876           Make work (??).
1877
1878 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1879
1880         * gst/elements/gstfilesink.c: (gst_filesink_render):
1881           Simplify code so that we don't have to handle short
1882           writes and return GST_FLOW_ERROR if an error occured.
1883
1884 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1885
1886         * docs/gst/gstreamer-docs.sgml:
1887           Remove probes more.
1888
1889 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1890
1891         * docs/gst/gstreamer-sections.txt:
1892         * docs/gst/tmpl/gstpad.sgml:
1893         * docs/gst/tmpl/gstprobe.sgml:
1894         * gst/Makefile.am:
1895         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1896         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1897         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1898         (gst_pad_push_event), (gst_pad_send_event):
1899         * gst/gstpad.h:
1900         * gst/gstutils.c: (gst_pad_add_data_probe),
1901         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1902         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1903         (gst_pad_remove_buffer_probe):
1904         * gst/gstutils.h:
1905           Remove old probes, add new g-signal-based probes and some utility
1906           functions.
1907
1908 2005-06-29  Edward Hervey  <edward@fluendo.com>
1909
1910         * gst/gstelementfactory.c:
1911         * gst/gstutils.h:
1912         * gst/gstutils.c:
1913         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1914         the definition to the header file.
1915
1916 2005-06-29  Andy Wingo  <wingo@pobox.com>
1917
1918         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1919         plugins from the source directory.
1920
1921 2005-06-29  Wim Taymans  <wim@fluendo.com>
1922
1923         * docs/gst/tmpl/gstbuffer.sgml:
1924         * docs/gst/tmpl/gstclock.sgml:
1925         Some fixings for blantently wrong text.
1926
1927 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1928
1929         * check/Makefile.am:
1930         * gst/gst.c: (add_path_func), (init_pre):
1931         * gst/gstregistry.c: (gst_registry_add_path):
1932           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1933           only scan the GST_PLUGIN_PATH locations, and not add
1934           system locations
1935
1936 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1937
1938         * docs/gst/gstreamer-sections.txt:
1939         * docs/gst/tmpl/gstbasesrc.sgml:
1940         * gst/gstelement.c:
1941         * gst/gstelement.h:
1942         * gst/gstevent.c:
1943         * gst/gstutils.c:
1944           doc fixes
1945
1946 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1947
1948         * docs/manual/advanced-autoplugging.xml:
1949           Fix autoplugging example.
1950
1951 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1952
1953         * docs/manual/advanced-autoplugging.xml:
1954         * docs/manual/mime-world.fig:
1955           Try to get autoplugging working, fix type detection. Fix text
1956           in hello-world image.
1957
1958 2005-06-29  Wim Taymans  <wim@fluendo.com>
1959
1960         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1961         (gst_base_sink_change_state):
1962         Small debug line.
1963
1964         * gst/gstclock.h:
1965         map SIGNAL and BROADCAST to the right function.
1966
1967         * gst/gstobject.h:
1968         Remove redundant braces.
1969
1970         * gst/gstpad.c: (gst_pad_set_caps):
1971         Don't call setcaps function when reseting caps to NULL.
1972
1973         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1974         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1975         (gst_system_clock_id_unschedule):
1976         Use BROADCAST as this is what we do.
1977
1978 2005-06-29  Wim Taymans  <wim@fluendo.com>
1979
1980         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1981         We are actually prerolling before commiting the state
1982         change. 
1983
1984 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1985
1986         * docs/manual/advanced-clocks.xml:
1987         * docs/manual/advanced-interfaces.xml:
1988         * docs/manual/advanced-metadata.xml:
1989         * docs/manual/advanced-position.xml:
1990         * docs/manual/advanced-schedulers.xml:
1991         * docs/manual/advanced-threads.xml:
1992         * docs/manual/appendix-porting.xml:
1993         * docs/manual/basics-bins.xml:
1994         * docs/manual/basics-bus.xml:
1995         * docs/manual/basics-elements.xml:
1996         * docs/manual/basics-helloworld.xml:
1997         * docs/manual/basics-pads.xml:
1998         * docs/manual/highlevel-components.xml:
1999         * docs/manual/manual.xml:
2000         * docs/manual/thread.fig:
2001           Update (until threads/scheduling) Application Development Manual;
2002           remove GstThread, add GstBus, add simple porting checklist, add
2003           documentation for tag writing, clocks, make all examples until this
2004           part compile and run.
2005         * examples/manual/Makefile.am:
2006           Update from changes to Application Development Manual; add bus
2007           example, remove thread example.
2008
2009 2005-06-28  Wim Taymans  <wim@fluendo.com>
2010
2011         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2012         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2013         (gst_bus_source_dispatch):
2014         Add debugging messages.
2015         Make internal methods static.
2016         Handle the case where the bus is flushed in the handler.
2017         
2018         * gst/gstelement.c: (gst_element_get_bus):
2019         Fix refcount in _get_bus();
2020
2021         * gst/gstpipeline.c: (gst_pipeline_change_state),
2022         (gst_pipeline_get_clock_func):
2023         Clock refcounting fixes.
2024         Handle the case where preroll timed out more gracefully.
2025         
2026         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2027         Clean up the internal thread in dispose. This is needed
2028         for subclasses that actually get disposed.
2029         
2030         * gst/schedulers/threadscheduler.c:
2031         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2032         (gst_thread_scheduler_dispose):
2033         Free thread pool in dispose.
2034
2035 2005-06-28  Andy Wingo  <wingo@pobox.com>
2036
2037         * tests/network-clock-utils.scm (debug, print-event): New utils.
2038
2039         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2040         (*packet-loss*): Unified loss probability.
2041         (network-time): Report out-of-band events.
2042
2043         * tests/plot-data: Add support for out-of-band events. Hack it
2044         into this script instead of passing it down the pipe; should fix
2045         this later.
2046
2047 2005-06-28  Wim Taymans  <wim@fluendo.com>
2048
2049         * docs/gst/gstreamer.types:
2050         * docs/gst/tmpl/gstbasesrc.sgml:
2051         * docs/gst/tmpl/gstpad.sgml:
2052         Docs fixes.
2053
2054 2005-06-28  Wim Taymans  <wim@fluendo.com>
2055
2056         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2057         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2058         (gst_proxy_pad_do_fixatecaps):
2059         Correctly proxy the check_pull_range function.
2060
2061 2005-06-28  Andy Wingo  <wingo@pobox.com>
2062
2063         * tests/network-clock.scm: Removed need for slib.
2064         
2065 2005-06-28  Wim Taymans  <wim@fluendo.com>
2066
2067         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2068         (gst_basesink_preroll_queue_flush):
2069         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2070         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2071         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2072         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2073         (gst_proxy_pad_set_property):
2074         * gst/gstpad.c:
2075         * gst/gstpad.h:
2076         * gst/gstqueue.c: (gst_queue_init):
2077         The deprecated pad loop function is removed now.
2078
2079 2005-06-28  Andy Wingo  <wingo@pobox.com>
2080
2081         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2082         New parameters, simulate network packet loss.
2083
2084         * tests/network-clock-utils.scm: Initialize the RNG.
2085
2086 2005-06-28  Wim Taymans  <wim@fluendo.com>
2087
2088         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2089         (gst_basesink_event), (gst_basesink_deactivate):
2090         Flushing the preroll queue always needs to unlock the waiters.
2091
2092 2005-06-28  Edward Hervey  <edward@fluendo.com>
2093
2094         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2095         Wheen a seek was successful on a pipeline, set the stream_time to the
2096         seek offset in order to have a synchronized stream_time.
2097
2098 2005-06-28  Wim Taymans  <wim@fluendo.com>
2099
2100         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2101         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2102         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2103         (gst_proxy_pad_do_fixatecaps):
2104         Call wrapper function instead of just calling the function
2105         pointers. This takes care of any locking and whatmore.
2106
2107 2005-06-28  Wim Taymans  <wim@fluendo.com>
2108
2109         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2110         (gst_pad_pull_range):
2111         * gst/gstpad.h:
2112         CONNECTED -> LINKED.
2113
2114 2005-06-28  Andy Wingo  <wingo@pobox.com>
2115
2116         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2117         source-munging commit!!!
2118
2119         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2120         (gst_object_sink): Take gpointer arguments, not GstObject --
2121         avoids casts. Like GLib.
2122
2123         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2124         activate.
2125
2126 2005-06-27  Andy Wingo  <wingo@pobox.com>
2127
2128         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2129         remaining buffer.
2130
2131         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2132         returns a sorted copy of the trace list.
2133         (gst_alloc_trace_print_live): New API, only prints traces with
2134         live objects. Sort the list.
2135         (gst_alloc_trace_print_all): Sort the list.
2136         (gst_alloc_trace_print): Align columns.
2137
2138         * gst/elements/gstttypefindelement.c:
2139         * gst/elements/gsttee.c:
2140         * gst/base/gstbasesrc.c:
2141         * gst/base/gstbasesink.c:
2142         * gst/base/gstbasetransform.c:
2143         * gst/gstqueue.c: Adapt for pad activation changes.
2144
2145         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2146         sched.
2147         (gst_pipeline_dispose): Drop ref on sched.
2148
2149         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2150         (gst_pad_activate_default): Push mode by default.
2151         (pre_activate_switch, post_activate_switch): New stubs, things to
2152         do before and after switching activation modes on pads.
2153         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2154         the pad's activate function to choose which mode to activate.
2155         Shortcut on deactivation and call the right function directly.
2156         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2157         mode.
2158         (gst_pad_activate_push): New API, same for push mode.
2159         (gst_pad_set_activate_function) 
2160         (gst_pad_set_activatepull_function) 
2161         (gst_pad_set_activatepush_function): Setters for new API.
2162
2163         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2164         Trace all miniobjects.
2165         (gst_mini_object_make_writable): Unref the arg if we copy, like
2166         gst_caps_make_writable.
2167
2168         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2169
2170         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2171         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2172         Adapt for new pad API.
2173
2174         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2175
2176         * gst/gstelement.h:
2177         * gst/gstelement.c (gst_element_iterate_src_pads) 
2178         (gst_element_iterate_sink_pads): New API functions.
2179         
2180         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2181         should fold into gstiterator.c in some form.
2182         (gst_element_pads_activate): Simplified via use of fold and
2183         delegation of decisions to gstpad->activate.
2184
2185         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2186         help in debugging.
2187
2188         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2189         class once in init, like gstmessage. Didn't run into this issue
2190         but it seems correct. Don't initialize a trace, gstminiobject does
2191         that.
2192
2193         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2194         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2195         to the bus.
2196         (assert_live_count): New util function, uses alloc traces to check
2197         cleanup.
2198
2199         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2200         To be modified when unlink drops the internal pad.
2201
2202 2005-06-27  Wim Taymans  <wim@fluendo.com>
2203
2204         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2205         (gst_bin_change_state):
2206         Cleanup the get_state() function a little, make sure it
2207         iterates the same set of elements.
2208         Added stub iterate_state_order().
2209
2210 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2211
2212         * docs/gst/gstreamer-docs.sgml:
2213         * docs/gst/gstreamer-sections.txt:
2214         * docs/gst/gstreamer.types:
2215         * docs/gst/tmpl/gstbasesink.sgml:
2216         * docs/gst/tmpl/gstbasesrc.sgml:
2217         * docs/gst/tmpl/gstbasetransform.sgml:
2218         * docs/gst/tmpl/gstelement.sgml:
2219         * docs/gst/tmpl/gstiterator.sgml:
2220         * gst/base/gstbasesrc.c:
2221         * gst/base/gstbasesrc.h:
2222         * gst/base/gstbasetransform.h:
2223         * gst/gstelement.c:
2224         * gst/gstiterator.h:
2225           adding basetransform and iterator docs
2226
2227 2005-06-27  Andy Wingo  <wingo@pobox.com>
2228
2229         * docs/design/part-activation.txt: Notes on how activation should
2230         work -- not quite implemented yet.
2231
2232 2005-06-25  Wim Taymans  <wim@fluendo.com>
2233
2234         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2235         At least get the chain function correct, needs more
2236         fixing.
2237
2238 2005-06-25  Wim Taymans  <wim@fluendo.com>
2239
2240         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2241         (gst_basesink_handle_object), (gst_basesink_event),
2242         (gst_basesink_do_sync), (gst_basesink_handle_event),
2243         (gst_basesink_change_state):
2244         * gst/gsttask.h:
2245         Right, two problems here: ghostpads don't take locks and
2246         glib _rec_mutex_lock_full() with depth==0 still locks.
2247         Catch illegal locking and g_warn them.
2248
2249 2005-06-25  Wim Taymans  <wim@fluendo.com>
2250
2251         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2252         Have to check for completion now...
2253
2254 2005-06-25  Wim Taymans  <wim@fluendo.com>
2255
2256         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2257         (gst_basesink_handle_object), (gst_basesink_event),
2258         (gst_basesink_do_sync), (gst_basesink_handle_event),
2259         (gst_basesink_change_state):
2260         * gst/gstpad.h:
2261         Unlock STREAM_LOCK whatever the recursion was.
2262
2263 2005-06-25  Wim Taymans  <wim@fluendo.com>
2264
2265         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2266         (gst_basesink_preroll_queue_empty),
2267         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2268         (gst_basesink_event), (gst_basesink_do_sync),
2269         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2270         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2271         (gst_basesink_change_state):
2272         Reworked the base sink, handle event and buffer serialisation
2273         correctly and removed possible deadlock.
2274         Handle EOS correctly.
2275
2276 2005-06-25  Wim Taymans  <wim@fluendo.com>
2277
2278         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2279         (gst_pipeline_change_state):
2280         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2281         Allow elements to post EOS in the state change function.
2282         Fix up -launch, make it exit the poll loop when the
2283         pipeline actually changed state.
2284         Fix up warning parsing in -launch.
2285
2286 2005-06-25  Wim Taymans  <wim@fluendo.com>
2287
2288         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2289         (gst_tee_sink_activate):
2290         Core takes STREAM_LOCK for us now.
2291
2292 2005-06-25  Wim Taymans  <wim@fluendo.com>
2293
2294         * gst/gstelement.c: (gst_element_get_state_func),
2295         (gst_element_set_state):
2296         * gst/gstelement.h:
2297         * gst/gstmessage.c: (gst_message_parse_error),
2298         (gst_message_parse_warning):
2299         Keep track of current target state while performing a state
2300         change so that subclasses can do something interesting.
2301         Fix parsing of warning/error messages when GError is NULL.
2302
2303 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2304
2305         * docs/gst/Makefile.am:
2306         * docs/gst/gstreamer-docs.sgml:
2307         * docs/gst/gstreamer-sections.txt:
2308         * docs/gst/gstreamer.types:
2309         * docs/gst/tmpl/gstbasesink.sgml:
2310         * docs/gst/tmpl/gstbasesrc.sgml:
2311         * docs/gst/tmpl/gstbin.sgml:
2312         * docs/gst/tmpl/gstcompat.sgml:
2313         * docs/gst/tmpl/gstfakesink.sgml:
2314         * docs/gst/tmpl/gstfakesrc.sgml:
2315         * docs/gst/tmpl/gstfilesink.sgml:
2316         * docs/gst/tmpl/gstfilesrc.sgml:
2317         * docs/gst/tmpl/gstindex.sgml:
2318         * docs/manual/appendix-quotes.xml:
2319         * gst/base/gstbasesrc.h:
2320         * gst/elements/gstfakesrc.h:
2321         * gst/gstmessage.h:
2322           start pulling in base classes and elements in our docs
2323
2324 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2325
2326         * docs/gst/Makefile.am:
2327         * docs/libs/Makefile.am:
2328           fixed make distcheck with gtk-doc 1.3
2329
2330 2005-06-23  Wim Taymans  <wim@fluendo.com>
2331
2332         * gst/gstelement.c: (gst_element_get_state_func),
2333         (gst_element_set_state), (gst_element_change_state):
2334         When the state did not change, also report NO_PREROLL
2335         when it matters.
2336
2337 2005-06-23  Wim Taymans  <wim@fluendo.com>
2338
2339         * gst/gstpad.c: (gst_pad_event_default):
2340         * gst/gstqueue.c: (gst_queue_loop):
2341         No unsafe task pausing please.
2342
2343 2005-06-23  Wim Taymans  <wim@fluendo.com>
2344
2345         * gst/schedulers/threadscheduler.c:
2346         (gst_thread_scheduler_task_start),
2347         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2348         Ref the task before pushing it on the threadpool. This
2349         makes sure that we have a ref when the threadfunction is
2350         actually called.
2351
2352 2005-06-23  Andy Wingo  <wingo@pobox.com>
2353
2354         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2355         offset is greater than the file's size.
2356
2357         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2358         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2359         * gst/gstobject.c (gst_object_class_init): Make the class lock
2360         recursive. Wim won't let me drop deep_notify. Decodebin works
2361         again, whoopdy doo.
2362
2363         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2364         internal pad, and hacks accordingly. Doesn't do it on the target
2365         pad because we change its caps. Probably catches all cases of
2366         interest tho.
2367         (gst_ghost_pad_set_property): Connect to notify::caps as
2368         appropritate.
2369
2370         * tests/network-clock.scm (plot-simulation): Pipe data to the
2371         elite python skript.
2372
2373         * tests/network-clock-utils.scm (define-parameter): New macro,
2374         defines a parameter that can be set via the command line.
2375         (set-parameter!, parse-parameter-arguments): Command line args
2376         parser.
2377
2378         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2379         stdin.
2380
2381 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2382
2383         * gst/elements/gsttypefindelement.c:
2384         (gst_type_find_element_handle_event):
2385           Don't restart typefinding on a discont.
2386         * gst/gstelement.c: (gst_element_set_state):
2387           Debug spelling fix.
2388         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2389           Allow changing mode of an active pad.
2390           Debug output fixes.
2391         * gst/registries/gstlibxmlregistry.c: (load_feature):
2392           Don't cast a static pad template to a normal pad template.
2393
2394 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2395
2396         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2397         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2398           remove gst_strtoll completely, since it didn't actually do
2399           anything more than what g_ascii_strtoull already does.
2400           check for range errors when deserializing
2401           do a cast for the unsigned cases; but further fixing needs
2402           a decision on what the interpretation of "(int)" and
2403           deserialization should be for values that fall outside the
2404           type's boundaries (ie, refuse, or interpret as casting)
2405
2406 2005-06-23  Wim Taymans  <wim@fluendo.com>
2407
2408         * check/Makefile.am:
2409         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2410         * docs/design/part-live-source.txt:
2411         * docs/design/part-states.txt:
2412         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2413         (gst_basesrc_set_live), (gst_basesrc_is_live),
2414         (gst_basesrc_get_range), (gst_basesrc_activate),
2415         (gst_basesrc_change_state):
2416         * gst/base/gstbasesrc.h:
2417         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2418         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2419         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2420         * gst/gstelement.c: (gst_element_get_state_func),
2421         (gst_element_set_state):
2422         * gst/gstelement.h:
2423         * gst/gsttypes.h:
2424         * tools/gst-launch.c: (event_loop), (main):
2425         Added support for live sources and other elements that
2426         cannot do preroll.
2427         Updated design docs, added live-source design doc.
2428         Implemented live source functionality in basesrc
2429         Fix error condition in _bin_get_state()
2430         Implement live source handling in -launch.
2431         Added check for live sources.
2432         Fixed case in GstBin where elements were changed state
2433         multiple times.
2434
2435
2436 2005-06-23  Andy Wingo  <wingo@pobox.com>
2437
2438         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2439         borken refcounting.
2440
2441         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2442         gst_caps_replace takes care of this for us.
2443
2444         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2445         gst_pad_set_caps on the target, not just its setcaps() function.
2446
2447         * tests/network-clock.scm: 
2448         * tests/network-clock-utils.scm: A network clock simulator.
2449         Something of an algorithmic testbed before doing something in C.
2450
2451 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2452
2453         * check/Makefile.am:
2454         * check/gst/capslist.h:
2455           copy over from 0.8, and add two with bitmasks specified with
2456           (int) 0xFF...
2457         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2458           add test to parse everything from capslist.h
2459         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2460         (main):
2461           add test for structure deserialization
2462         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2463           add tests for deserialization of strings to int types
2464         * gst/gststructure.c: (gst_structure_nth_field_name):
2465         * gst/gststructure.h:
2466           add a way to get the name of a field referenced by index
2467         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2468           instead of checking if the resulting long long lies between
2469           min and max, we check if the long long would fit into
2470           a number of bytes for the final type.
2471           This fixes cases where a string represents 2^32 - 1, which
2472           when cast to int would be the (valid) -1, but is bigger than
2473           G_MAXINT
2474
2475 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2476
2477         * gst/parse/grammar.y:
2478           add a log line for type deserialization
2479
2480 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2481
2482         * check/gst/gstvalue.c: (START_TEST):
2483         * gst/gstvalue.c: (gst_value_deserialize):
2484           return long long, not int, so gint64 deserialization actually
2485           works.  Is there any flag that makes the compiler check this ?
2486           Fixes #308559
2487
2488 2005-06-22  Wim Taymans  <wim@fluendo.com>
2489
2490         * gst/gstbuffer.h:
2491         Added convenience macros for setting buffers in GValue.
2492
2493 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2494
2495         * check/gst/.cvsignore:
2496         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2497           add a test deserializing int64, and comment part out because
2498           it fails, yay !
2499
2500 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2501
2502         * check/Makefile.am:
2503         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2504         * testsuite/Makefile.am:
2505         * testsuite/caps/Makefile.am:
2506         * testsuite/caps/value_serialize.c:
2507         * testsuite/test_gst_init.c:
2508           move a value_serialize test over
2509
2510 2005-06-20  Wim Taymans  <wim@fluendo.com>
2511
2512         * gst/gstpad.c:
2513         Small doc updates.
2514         
2515         * gst/gstvalue.c: (gst_value_compare_buffer),
2516         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2517         (gst_value_compare_flags), (gst_value_serialize_flags),
2518         (gst_value_deserialize_flags), (_gst_value_initialize):
2519         Fix serialisation of buffers, they are not boxed types anymore
2520
2521 2005-06-20  Wim Taymans  <wim@fluendo.com>
2522
2523         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2524         Testcase to show error in buffer-on-caps serialisation.
2525
2526 2005-06-20  Andy Wingo  <wingo@pobox.com>
2527
2528         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2529         will be adding to later.
2530
2531         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2532         if its socks fill with rocks.
2533         (gst_system_clock_obtain): Set the name on object construction.
2534         Avoid double-checked locking.
2535
2536 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2537
2538         * gst/gsturi.c: (gst_element_make_from_uri):
2539           Fix potential endless loop.
2540
2541 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2542
2543         * check/Makefile.am:
2544           add gsttag
2545         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2546         (main):
2547           move over from testsuite dir and clean up
2548         * configure.ac:
2549         * gst/gsttag.c:
2550         * testsuite/Makefile.am:
2551         * testsuite/tags/.cvsignore:
2552         * testsuite/tags/Makefile.am:
2553         * testsuite/tags/merge.c:
2554           remove testsuite/tags
2555
2556 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2557
2558         * docs/gst/gstreamer-sections.txt:
2559         * docs/gst/tmpl/gstenumtypes.sgml:
2560         * win32/gstenumtypes.c:
2561           clean up documentation build a little
2562
2563 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2564
2565         * check/gstcheck.h:
2566           add macros for checking refcounts on objects and caps
2567         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2568           add some more unit tests
2569         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2570         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2571           fix leaked refcounts (I hope :)) so unittest works
2572         * gst/gstpad.h:
2573           whitespace removal
2574
2575 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2576
2577         * configure.ac: back to HEAD
2578
2579 === release 0.9.1 ===
2580
2581 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2582
2583         * NEWS:
2584         * RELEASE:
2585           updated
2586
2587 2005-06-17  Andy Wingo  <wingo@pobox.com>
2588
2589         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2590         assert; it's always possible that the pad gets deactivated in
2591         between the checks in gstpad.c and the implementation. Rely on
2592         finish_preroll() to return a FLUSHING or similar instead of on the
2593         assert.
2594         
2595         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2596         clock and post an EOS message if we come out of finish_preroll in
2597         the playing state.
2598
2599 2005-06-16  David Schleef  <ds@schleef.org>
2600
2601         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2602         (gst_capsfilter_set_property): Allow NULL as possible value
2603         for filter_caps property, indicating GST_CAPS_ANY.
2604
2605 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2606
2607         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2608           fix debug output
2609         * gst/schedulers/Makefile.am:
2610           use libgst prefix
2611         * gstreamer.spec.in:
2612           fix spec for it
2613
2614 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2615
2616         * gstreamer.spec.in:
2617           clean up
2618
2619 2005-06-08  Andy Wingo  <wingo@pobox.com>
2620
2621         * gst/gstutils.c: RPAD fixes all around.
2622         (gst_element_link_pads): Refcounting fixes.
2623
2624         * tools/gst-inspect.c:
2625         * tools/gst-xmlinspect.c:
2626         * parse/grammar.y:
2627         * gst/base/gsttypefindhelper.c:
2628         * gst/base/gstbasesink.c:
2629         * gst/gstqueue.c: RPAD fixes.
2630
2631         * gst/gstghostpad.h:
2632         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2633         pads. The tricky thing is they provide both source and sink
2634         interfaces, since they proxy the internal pad for the external
2635         pad, and vice versa. Implement with lower-level ProxyPad objects,
2636         with the interior proxy pad as a child of the exterior ghost pad.
2637         Should write a doc on this.
2638         
2639         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2640         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2641         gst_object API.
2642         
2643         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2644         pads are real pads. No ghost pads in this file. Not documenting
2645         the myriad s/RPAD/PAD/ and REALIZE fixes.
2646         (gst_pad_class_init): Add properties for "direction" and
2647         "template". Both are construct-only, so they can't change during
2648         the life of the pad. Fixes properly deriving from GstPad.
2649         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2650         derived objects, just set properties when creating the objects via
2651         g_object_new.
2652         (gst_pad_get_parent): Implement as a function, return NULL if the
2653         parent is not an element.
2654         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2655         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2656         
2657         * gst/gstobject.c (gst_object_class_init): Make name a construct
2658         property. Don't set it in the object init.
2659
2660         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2661         with UNKNOWN direction.
2662         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2663         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2664         (gst_element_remove_pad): Remove ghost-pad special cases.
2665         (gst_element_pads_activate): Remove rpad cruft.
2666
2667         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2668         catch the pad's-parent-not-an-element case.
2669
2670         * gst/gst.h: Include gstghostpad.h.
2671
2672         * gst/gst.c (init_post): No more real, ghost pads.
2673
2674         * gst/Makefile.am: Add gstghostpad.[ch].
2675
2676         * check/Makefile.am:
2677         * check/gst/gstbin.c:
2678         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2679         into a bin creates ghost pads, and that the refcounts are right.
2680         Partly moved from gstbin.c.
2681
2682 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2683
2684         * check/gst-libs/.cvsignore:
2685         * check/gst/.cvsignore:
2686         * check/pipelines/.cvsignore:
2687           ignore more
2688         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2689         (START_TEST), (cleanup_suite), (main):
2690           add some tests related to cleanup after running pipelines
2691
2692 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2693
2694         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2695           add a testsuite for GstBuffer
2696
2697 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2698
2699         * gst/gstminiobject.h:
2700           add defines for accessing the refcount
2701
2702 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2703
2704         * Makefile.am: added support for html unit test coverage reports
2705
2706 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2707
2708         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2709           Free existing caps if the capsfilter changes. Add a FIXME about
2710           setting those caps on the pads.
2711
2712         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2713           Before adding a ghost pad to a parent bin, check that there isn't
2714           already one for the element on the bin. Prevents infinite recursion
2715           when using decodebin in parse pipelines. Andy says he'll rewrite the
2716           way this works anyway, so ignore the hack.
2717
2718 2005-06-02  Andy Wingo  <wingo@pobox.com>
2719
2720         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2721         file size, pass it on to the type find helper.
2722
2723         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2724         segment_start and segment_end properly according to the seek
2725         method. Segment_end is still a bit flaky because offset can be
2726         negative for CUR and END cases, but it takes -1 as an "unset"
2727         value.
2728
2729 2005-06-02  Wim Taymans  <wim@fluendo.com>
2730
2731         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2732         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2733         (gst_basesink_activate):
2734         * gst/base/gstbasesink.h:
2735         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2736         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2737         (gst_pad_query), (gst_pad_start_task):
2738         * gst/gstpad.h:
2739         * gst/gstqueue.c: (gst_queue_bufferalloc),
2740         (gst_queue_handle_sink_event), (gst_queue_chain):
2741         Bufferalloc: return GstFlowReturn to more accuratly report
2742         why allocation failed.
2743
2744 2005-06-02  Wim Taymans  <wim@fluendo.com>
2745
2746         * gst/gstpipeline.c: (gst_pipeline_send_event):
2747         Take snapshot of state without blocking.
2748
2749 2005-06-02  Wim Taymans  <wim@fluendo.com>
2750
2751         * docs/design/part-TODO.txt:
2752         * docs/design/part-caps.txt:
2753         * docs/design/part-clocks.txt:
2754         * docs/design/part-negotiation.txt:
2755         * docs/design/part-preroll.txt:
2756         Small doc updates 
2757
2758 2005-05-30  Wim Taymans  <wim@fluendo.com>
2759
2760         * gst/elements/gstidentity.c: (gst_identity_event),
2761         (gst_identity_transform), (gst_identity_get_property):
2762         Protect last_message property as it is accessed from
2763         multiple threads.
2764
2765 2005-05-30  Wim Taymans  <wim@fluendo.com>
2766
2767         * gst/gstelement.c: (gst_element_init),
2768         (gst_element_pads_activate), (gst_element_change_state):
2769         Slicker pad activation code.
2770
2771 2005-05-30  Wim Taymans  <wim@fluendo.com>
2772
2773         * gst/Makefile.am:
2774         * gst/gstelement.h:
2775         * gst/gstelementfactory.h:
2776         * gst/gsttypes.h:
2777         Move elementfactory methods to separate .h file.
2778
2779 2005-05-30  Wim Taymans  <wim@fluendo.com>
2780
2781         * docs/design/part-overview.txt:
2782         * gst/gstsystemclock.h:
2783         Small typo fixes, doc updates.
2784
2785 2005-05-30  Wim Taymans  <wim@fluendo.com>
2786
2787         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2788         (init_popt_callback):
2789         Remove cpu-opt flag.
2790
2791 2005-05-30  Wim Taymans  <wim@fluendo.com>
2792
2793         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2794         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2795         * gst/gstbuffer.h:
2796         Avoid typechecking in places where not needed.
2797         Added accessor for malloc_data.
2798
2799 2005-05-30  Wim Taymans  <wim@fluendo.com>
2800
2801         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2802         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2803         (gst_pad_configure_sink), (gst_pad_configure_src),
2804         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2805         (gst_pad_start_task):
2806         Propagate errors from _set_caps() in configure_src/sink
2807         functions instead of returning TRUE.
2808         FLUSH events can travel up and downstream
2809
2810
2811 2005-05-30  Wim Taymans  <wim@fluendo.com>
2812
2813         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2814         (gst_basesink_activate):
2815         Handle EOS in preroll.
2816
2817 2005-05-30  Wim Taymans  <wim@fluendo.com>
2818
2819         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2820         (gst_queue_loop), (gst_queue_handle_src_event):
2821         Remove old pieces of code
2822         Flushing the queue in an upstream event is a very bad idea.
2823
2824 2005-05-26  Andy Wingo  <wingo@pobox.com>
2825
2826         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2827         gst_value_set_mini_object so as to add a ref on the object (which
2828         will be removed when the value is unset).
2829
2830         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2831         arg type in ::handoff.
2832
2833         * gst/gstelement.c (gst_element_change_state): Also deactivate
2834         pads in READY->NULL, just in case the element didn't make it to
2835         PAUSED. Wingo tested, Wim approved.
2836
2837 2005-05-26  Wim Taymans  <wim@fluendo.com>
2838
2839         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2840         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2841         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2842         A flushing pad cannot be used to alloc_buffer from.
2843
2844 2005-05-26  Wim Taymans  <wim@fluendo.com>
2845
2846         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2847         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2848         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2849         (gst_bus_create_watch), (gst_bus_add_watch_full):
2850         * gst/gstbus.h:
2851         Implement a real GSource and use g_main_context_wakeup() to
2852         signal new messages instead of the socketpair.
2853
2854 2005-05-25  Wim Taymans  <wim@fluendo.com>
2855
2856         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2857         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2858         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2859         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2860         (gst_pad_send_event), (gst_pad_start_task):
2861         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2862         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2863         (gst_queue_sink_activate), (gst_queue_src_activate),
2864         (gst_queue_change_state):
2865         * gst/gstqueue.h:
2866         Fix state changes for non sinks. We now change sinks, then elements
2867         with unconnected srcpads, then the rest.
2868         More efficient queue unlocking in flush and state changes.
2869         Set the pad activate mode even if it does not have an activate
2870         function.
2871
2872 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2873
2874         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2875           Don't go in pull mode for non-seekable sources.
2876         * gst/elements/gsttypefindelement.h:
2877         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2878         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2879         (free_entry), (stop_typefinding),
2880         (gst_type_find_element_handle_event), (find_peek),
2881         (gst_type_find_element_chain), (do_pull_typefind),
2882         (gst_type_find_element_change_state):
2883           Allow typefinding (w/o seeking) in push-mode, simplified version
2884           of what was in 0.8.
2885         * gst/gstutils.c: (gst_buffer_join):
2886         * gst/gstutils.h:
2887           gst_buffer_join() from 0.8.
2888
2889 2005-05-25  Wim Taymans  <wim@fluendo.com>
2890
2891         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2892         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2893         (gst_pad_send_event), (gst_pad_start_task):
2894         Disable attempt at mode switching until it is figured out.
2895
2896 2005-05-25  Wim Taymans  <wim@fluendo.com>
2897
2898         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2899         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2900         (gst_basesink_finish_preroll), (gst_basesink_chain),
2901         (gst_basesink_loop), (gst_basesink_activate),
2902         (gst_basesink_change_state):
2903         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2904         (gst_basesrc_get_range), (gst_basesrc_loop),
2905         (gst_basesrc_activate):
2906         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2907         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2908         (gst_real_pad_init), (gst_real_pad_set_property),
2909         (gst_real_pad_get_property), (gst_pad_set_active),
2910         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2911         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2912         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2913         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2914         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2915         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2916         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2917         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2918         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2919         (gst_pad_stop_task):
2920         * gst/gstpad.h:
2921         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2922         (gst_queue_loop), (gst_queue_src_activate):
2923         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2924         (gst_task_get_state):
2925         * gst/gsttask.h:
2926         * gst/schedulers/threadscheduler.c:
2927         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2928         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2929         in task function.
2930         Remove ACTIVE pad flag, use FLUSHING everywhere
2931         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2932         functions.
2933         Add locks around IS_FLUSHING when reading.
2934         Take STREAM lock in chain(), get_range() functions so plugins
2935         don't need to take it anymore.
2936         
2937
2938
2939 2005-05-25  Wim Taymans  <wim@fluendo.com>
2940
2941         * tools/gst-launch.c: (event_loop):
2942         Unref message after using its contents instead of
2943         before.
2944
2945 2005-05-24  Wim Taymans  <wim@fluendo.com>
2946
2947         * docs/design/draft-ghostpads.txt:
2948         * docs/design/draft-push-pull.txt:
2949         * docs/design/draft-query.txt:
2950         * docs/design/part-overview.txt:
2951         Docs updates, added general overview doc.
2952
2953 2005-05-21  David Schleef  <ds@schleef.org>
2954
2955         * docs/gst/tmpl/old/GstBin.sgml:
2956         * docs/gst/tmpl/old/GstBuffer.sgml:
2957         * docs/gst/tmpl/old/GstCaps.sgml:
2958         * docs/gst/tmpl/old/GstClock.sgml:
2959         * docs/gst/tmpl/old/GstCompat.sgml:
2960         * docs/gst/tmpl/old/GstData.sgml:
2961         * docs/gst/tmpl/old/GstElement.sgml:
2962         * docs/gst/tmpl/old/GstEvent.sgml:
2963         * docs/gst/tmpl/old/GstIndex.sgml:
2964         * docs/gst/tmpl/old/GstStructure.sgml:
2965         * docs/gst/tmpl/old/GstTag.sgml:
2966         * docs/gst/tmpl/old/cothreads.sgml:
2967         * docs/gst/tmpl/old/cothreads_compat.sgml:
2968         * docs/gst/tmpl/old/gettext.sgml:
2969         * docs/gst/tmpl/old/gobject2gtk.sgml:
2970         * docs/gst/tmpl/old/grammar.tab.sgml:
2971         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2972         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2973         * docs/gst/tmpl/old/gst_private.sgml:
2974         * docs/gst/tmpl/old/gstaggregator.sgml:
2975         * docs/gst/tmpl/old/gstarch.sgml:
2976         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2977         * docs/gst/tmpl/old/gstbufferstore.sgml:
2978         * docs/gst/tmpl/old/gstdata_private.sgml:
2979         * docs/gst/tmpl/old/gstdisksink.sgml:
2980         * docs/gst/tmpl/old/gstdisksrc.sgml:
2981         * docs/gst/tmpl/old/gstelementfactory.sgml:
2982         * docs/gst/tmpl/old/gstextratypes.sgml:
2983         * docs/gst/tmpl/old/gstfakesink.sgml:
2984         * docs/gst/tmpl/old/gstfakesrc.sgml:
2985         * docs/gst/tmpl/old/gstfdsink.sgml:
2986         * docs/gst/tmpl/old/gstfdsrc.sgml:
2987         * docs/gst/tmpl/old/gstfilesink.sgml:
2988         * docs/gst/tmpl/old/gstfilesrc.sgml:
2989         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2990         * docs/gst/tmpl/old/gstidentity.sgml:
2991         * docs/gst/tmpl/old/gstindexfactory.sgml:
2992         * docs/gst/tmpl/old/gstmarshal.sgml:
2993         * docs/gst/tmpl/old/gstmd5sink.sgml:
2994         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2995         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2996         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2997         * docs/gst/tmpl/old/gstpipefilter.sgml:
2998         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2999         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3000         * docs/gst/tmpl/old/gstshaper.sgml:
3001         * docs/gst/tmpl/old/gstspider.sgml:
3002         * docs/gst/tmpl/old/gstspideridentity.sgml:
3003         * docs/gst/tmpl/old/gststatistics.sgml:
3004         * docs/gst/tmpl/old/gsttee.sgml:
3005         * docs/gst/tmpl/old/gsttimecache.sgml:
3006         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3007         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3008         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3009         * docs/gst/tmpl/old/types.sgml:
3010           I didn't intend to add these or check them in.
3011
3012 2005-05-19  David Schleef  <ds@schleef.org>
3013
3014         * configure.ac: Use -no-common everywhere.  In a sane world, it
3015           would be the default in libtool, because without it, you can't
3016           build DLLs on Windows.
3017         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3018         * docs/gst/gstreamer-sections.txt:
3019         * docs/gst/tmpl/gstcpu.sgml:
3020         * docs/gst/tmpl/gstdata.sgml:
3021         * docs/gst/tmpl/gstthread.sgml:
3022
3023 2005-05-19  David Schleef  <ds@schleef.org>
3024
3025         * gst/gstminiobject.c: (gst_value_set_mini_object),
3026         (gst_value_take_mini_object), (gst_value_get_mini_object):
3027         * gst/gstminiobject.h: Add GValue set/get functions.
3028
3029 2005-05-19  Wim Taymans  <wim@fluendo.com>
3030
3031         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3032         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3033         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3034         * gst/gstbuffer.h:
3035         * gst/gstbus.c: (gst_bus_post):
3036         * gst/gstelement.c: (gst_element_get_random_pad):
3037         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3038         Make subbufer unref the parent in finalize.
3039         some more debugging info.
3040
3041
3042 2005-05-19  Wim Taymans  <wim@fluendo.com>
3043
3044         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3045         (gst_basesink_init), (gst_basesink_finalize),
3046         (gst_basesink_activate), (gst_basesink_change_state):
3047         Don't free preroll queue too early.
3048
3049 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3050
3051         * gst/Makefile.am:
3052         * gst/ROADMAP:
3053           Hi, I'm outdated. Please shoot me.
3054
3055 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3056
3057         * gst/gstpipeline.c: (gst_pipeline_send_event):
3058           Do not access variables after they have been deleted.
3059
3060 2005-05-19  Wim Taymans  <wim@fluendo.com>
3061
3062         * tools/gst-inspect.c: (print_plugin_features):
3063         A plugin feature does unfortunatly not use the
3064         object name yet...
3065
3066 2005-05-18  Wim Taymans  <wim@fluendo.com>
3067
3068         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3069         Port _span() functions to new subbuffers.
3070
3071 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3072
3073         * gst/gstbin.c: (gst_bin_add_func):
3074           Fix clock settery in bins when adding kids after the clock has
3075           been selected.
3076
3077 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3078
3079         * gst/elements/gstidentity.c: (gst_identity_class_init):
3080           Workaround until signals support GstMiniObject.
3081
3082 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3083
3084         * gst/gstbuffer.c:
3085         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3086
3087 2005-05-18  Wim Taymans  <wim@fluendo.com>
3088
3089         * gst/base/Makefile.am:
3090         * gst/base/gstadapter.c: (gst_adapter_base_init),
3091         (gst_adapter_class_init), (gst_adapter_init),
3092         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3093         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3094         (gst_adapter_flush), (gst_adapter_available),
3095         (gst_adapter_available_fast):
3096         * gst/base/gstadapter.h:
3097         Ported and added adapter to the base classes.
3098
3099 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3100
3101         * gst/gst.c:
3102         * gst/gstmessage.c:
3103           Make sure the class is reffed/unreffed once before threads can be
3104           used.  Fixes #304551.
3105
3106 2005-05-17  Wim Taymans  <wim@fluendo.com>
3107
3108         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3109         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3110         * gst/gstminiobject.c: (gst_mini_object_get_type),
3111         (gst_mini_object_free):
3112         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3113         (gst_pad_push), (gst_pad_push_event):
3114         * gst/gstqueue.c: (gst_queue_change_state):
3115         Don't queue buffers in basesink when we are flushing.
3116         Unref buffer when flushing in basesink.
3117         Flush queue when going to READY
3118         Unref buffer when _push() returns an error.
3119         Don't free MiniObject instance when refcount is incremented
3120         in _finalize() so that we can recover objects.
3121
3122 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3123
3124         * docs/manual/advanced-schedulers.xml:
3125         * docs/manual/appendix-checklist.xml:
3126         * docs/pwg/advanced-clock.xml:
3127         * docs/pwg/advanced-interfaces.xml:
3128         * docs/pwg/advanced-request.xml:
3129         * docs/pwg/advanced-types.xml:
3130         * docs/pwg/intro-preface.xml:
3131         * examples/plugins/example.c: (gst_example_get_type),
3132         (gst_example_class_init), (gst_example_chain),
3133         (gst_example_set_property), (gst_example_get_property),
3134         (gst_example_change_state), (plugin_init):
3135         * examples/plugins/example.h:
3136           small doc fixes
3137
3138 2005-05-17  Wim Taymans  <wim@fluendo.com>
3139
3140         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3141         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3142         * gst/gstqueue.c: (gst_queue_change_state):
3143         Clear queue when going to READY.
3144         Remove IN_SETCAPS flag too.
3145
3146 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3147
3148         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3149           Remove implicit cast from gboolean to GstElementStateReturn;
3150           make sure we still return failure in paused => ready case if
3151           the parent class fails to change state and our own stop 
3152           vfunc succeeds.
3153
3154 2005-05-17  Wim Taymans  <wim@fluendo.com>
3155
3156         * tools/gst-launch.c: (event_loop):
3157         Message was unreffed too soon.
3158
3159 2005-05-16  Andy Wingo  <wingo@pobox.com>
3160
3161         * gst/gstbin.c (sink_iterator_filter): Err... um...
3162
3163         * check/gst/gstbin.c (test_ghost_pads): New test for the
3164         ghosting-if-elements-not-in-same-bin behavior.
3165
3166 2005-05-16  David Schleef  <ds@schleef.org>
3167
3168         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3169         accessing refcount directly.
3170
3171 2005-05-15  David Schleef  <ds@schleef.org>
3172
3173         * check/Makefile.am: remove GstData checks
3174         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3175         * gst/Makefile.am: add miniobject, remove data
3176         * gst/gst.h: add miniobject, remove data
3177         * gst/gstdata.c: remove
3178         * gst/gstdata.h: remove
3179         * gst/gstdata_private.h: remove
3180         * gst/gsttypes.h: remove GstEvent and GstMessage
3181         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3182         * gst/gstmarshal.list: change BOXED -> OBJECT
3183
3184         Implement GstMiniObject.
3185         * gst/gstminiobject.c:
3186         * gst/gstminiobject.h:
3187
3188         Modify to be subclasses of GstMiniObject.
3189         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3190         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3191         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3192         (gst_subbuffer_get_type), (gst_subbuffer_init),
3193         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3194         (gst_buffer_span):
3195         * gst/gstbuffer.h:
3196         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3197         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3198         (_gst_event_copy), (gst_event_new):
3199         * gst/gstevent.h:
3200         * gst/gstmessage.c: (_gst_message_initialize),
3201         (gst_message_get_type), (gst_message_class_init),
3202         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3203         (gst_message_new), (gst_message_new_error),
3204         (gst_message_new_warning), (gst_message_new_tag),
3205         (gst_message_new_state_changed), (gst_message_new_application):
3206         * gst/gstmessage.h:
3207         * gst/gstprobe.c: (gst_probe_perform),
3208         (gst_probe_dispatcher_dispatch):
3209         * gst/gstprobe.h:
3210         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3211         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3212         (_gst_query_copy), (gst_query_new):
3213
3214         Update elements for GstData -> GstMiniObject changes
3215         * gst/gstquery.h:
3216         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3217         (gst_queue_chain), (gst_queue_loop):
3218         * gst/elements/gstbufferstore.c:
3219         (gst_buffer_store_add_buffer_func),
3220         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3221         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3222         (gst_fakesink_render):
3223         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3224         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3225         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3226         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3227         (gst_filesrc_create_read):
3228         * gst/elements/gstidentity.c: (gst_identity_class_init):
3229         * gst/elements/gsttypefindelement.c:
3230         (gst_type_find_element_src_event), (free_entry_buffers),
3231         (gst_type_find_element_handle_event):
3232         * libs/gst/dataprotocol/dataprotocol.c:
3233         (gst_dp_header_from_buffer):
3234         * libs/gst/dataprotocol/dataprotocol.h:
3235         * libs/gst/dataprotocol/dp-private.h:
3236
3237 2005-05-15  David Schleef  <ds@schleef.org>
3238
3239         * gst/elements/gstelements.c: Don't include headers that were
3240         just removed.
3241
3242 2005-05-15  David Schleef  <ds@schleef.org>
3243
3244         * gst/elements/Makefile.am: Remove some elements that don't
3245         need to be in the core (or even exist at all).
3246         * gst/elements/gstaggregator.c:
3247         * gst/elements/gstaggregator.h:
3248         * gst/elements/gstmd5sink.c:
3249         * gst/elements/gstmd5sink.h:
3250         * gst/elements/gstmultifilesrc.c:
3251         * gst/elements/gstmultifilesrc.h:
3252         * gst/elements/gstpipefilter.c:
3253         * gst/elements/gstpipefilter.h:
3254         * gst/elements/gstshaper.c:
3255         * gst/elements/gstshaper.h:
3256         * gst/elements/gststatistics.c:
3257         * gst/elements/gststatistics.h:
3258         * po/POTFILES.in: Remove above files.
3259
3260 2005-05-14  Andy Wingo  <wingo@pobox.com>
3261
3262         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3263         so as to get the refs right.
3264         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3265         unreffing objects that don't pass the filter.
3266
3267         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3268         gst_element_set_bus.
3269         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3270         normal cases, this will destroy the bus.
3271
3272         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3273         object.
3274
3275         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3276         has no sinks.
3277
3278 2005-05-13  Andy Wingo  <wingo@pobox.com>
3279
3280         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3281         gst_pad_link, call pad_link_maybe_ghosting,
3282         (pad_link_maybe_ghosting): Links pads, making sure that the
3283         elements being linked are in the same bin.
3284         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3285         Helpers for pad_link_maybe_ghosting.
3286
3287 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3288
3289         * configure.ac:
3290           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3291
3292 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3293
3294         * docs/design/part-element-source.txt:
3295           Mention GstPushSrc
3296
3297 2005-05-12  Wim Taymans  <wim@fluendo.com>
3298
3299         * gst/base/gstbasesink.c: (gst_basesink_init),
3300         (gst_basesink_activate):
3301         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3302         (gst_basesrc_is_seekable):
3303         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3304         (bin_element_is_sink), (gst_bin_change_state):
3305         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3306         * gst/gstelement.h:
3307         Identify sinks by their flag to avoid overly complicated
3308         checks (fow now).
3309         Do state changes even for elements not reachable from the
3310         sinks.
3311         BaseSink is a sink now :)
3312         Some more debugging info in the basesrc.
3313
3314
3315 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3316
3317         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3318           Implement _query on a bin, similar to _send_event.
3319
3320 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3321
3322         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3323           Discont event offset format should be GST_FORMAT_BYTES,
3324           not GST_FORMAT_TIME.
3325
3326 2005-05-12  Wim Taymans  <wim@fluendo.com>
3327
3328         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3329         Same fix as Ronald's but without the signal. 
3330
3331 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3332
3333         * gst/gstutils.c: (gst_element_query_position):
3334           No, an element is not a pad.
3335
3336 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3337
3338         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3339         (gst_bin_get_state):
3340           If a child is removed from a bin while we remove the child from
3341           the bin and while we're retrieving its state, signal this to the
3342           get_state function so we abort the wait (instead of waiting for
3343           a timeout) and can immediately re-iterate over all other elements.
3344
3345 2005-05-12  Wim Taymans  <wim@fluendo.com>
3346
3347         * gst/base/Makefile.am:
3348         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3349         (gst_basesrc_start):
3350         * gst/base/gstbasesrc.h:
3351         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3352         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3353         (gst_pushsrc_init), (gst_pushsrc_create):
3354         * gst/base/gstpushsrc.h:
3355         Added is_seekable to BaseSrc
3356         Added simple PushSrc.
3357
3358 2005-05-11  Wim Taymans  <wim@fluendo.com>
3359
3360         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3361         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3362         (gst_element_link_pads), (gst_element_query_position),
3363         (gst_element_query_convert), (intersect_caps_func),
3364         (gst_pad_query_position), (gst_pad_query_convert):
3365         Fix refcounting in utils function.
3366         No point in trying to activate a pad when it's added, it could
3367         be added from the state change function and then we deadlock, the
3368         element has to decide what to do.
3369
3370 2005-05-10  Andy Wingo  <wingo@pobox.com>
3371
3372         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3373         *all* the arguments.
3374
3375         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3376         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3377         lock (according to the docs -- if this is wrong change the docs).
3378
3379         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3380         flush messages in the NULL state.
3381
3382         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3383         message immediately and return.
3384         (gst_bus_set_flushing): New function. If a bus is flushing, it
3385         flushes out any queued messages and immediately unrefs new
3386         messages. This is so when an element goes to NULL, all of the
3387         unhandled messages coming from it can be freed, and their
3388         references to the element dropped. In other words: message source
3389         ref considered harmful :P
3390
3391         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3392         we're finished with it.
3393
3394         * gst/gstmessage.c (gst_message_new_state_changed): 
3395
3396 2005-05-10  Wim Taymans  <wim@fluendo.com>
3397
3398         * gst/gstvalue.c: (gst_value_compare_flags),
3399         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3400         (_gst_value_initialize):
3401         Added flags serialize/deserialize/compare code.
3402
3403 2005-05-09  Andy Wingo  <wingo@pobox.com>
3404
3405         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3406         Intersect the peer's caps with our caps.
3407
3408 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3409
3410         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3411         * gst/elements/gsttypefindelement.c: (find_peek):
3412           Handle negative offsets better. Fixes decodebin.
3413
3414 2005-05-09  Wim Taymans  <wim@fluendo.com>
3415
3416         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3417         (gst_base_transform_event):
3418         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3419         Implement accept_caps.
3420         Fix silly lock/unlock mismatch in base class.
3421
3422 2005-05-09  Wim Taymans  <wim@fluendo.com>
3423
3424         * docs/design/draft-push-pull.txt:
3425         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3426         * gst/elements/gstfilesink.c: (gst_filesink_init),
3427         (gst_filesink_query):
3428         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3429         (gst_type_find_handle_src_query), (find_element_get_length):
3430         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3431         * gst/gstelement.h:
3432         * gst/gstmessage.c:
3433         * gst/gstmessage.h:
3434         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3435         (gst_real_pad_get_caps_unlocked),
3436         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3437         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3438         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3439         (gst_real_pad_dispose), (gst_real_pad_finalize),
3440         (gst_pad_load_and_link), (gst_pad_save_thyself),
3441         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3442         (gst_pad_check_pull_range), (gst_pad_pull_range),
3443         (gst_pad_template_get_type), (gst_pad_template_class_init),
3444         (gst_pad_template_init), (gst_pad_template_dispose),
3445         (name_is_valid), (gst_static_pad_template_get),
3446         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3447         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3448         (gst_pad_get_element_private), (gst_pad_start_task),
3449         (gst_pad_pause_task), (gst_pad_stop_task),
3450         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3451         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3452         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3453         (gst_ghost_pad_new):
3454         * gst/gstpad.h:
3455         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3456         (gst_query_new_position), (gst_query_set_position),
3457         (gst_query_parse_position), (gst_query_new_convert),
3458         (gst_query_set_convert), (gst_query_parse_convert):
3459         * gst/gstquery.h:
3460         * gst/gstqueryutils.c:
3461         * gst/gstqueryutils.h:
3462         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3463         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3464         (gst_queue_handle_src_query):
3465         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3466         (gst_element_query_position), (gst_element_query_convert),
3467         (intersect_caps_func), (gst_pad_query_position),
3468         (gst_pad_query_convert):
3469         * gst/gstutils.h:
3470         * tools/gst-inspect.c: (print_pad_info):
3471         * tools/gst-xmlinspect.c: (print_element_info):
3472         Remove old query functions. Ported old code.
3473         Added position/convert helper functions to gstutils.
3474         Reordered gstpad.c code, grouping relevant things.
3475         Remove gst_message_new(), always need to speficy a specific
3476         message.
3477
3478
3479 2005-05-09  Andy Wingo  <wingo@pobox.com>
3480
3481         * gst/gstiterator.h: Add some includes.
3482
3483         * gst/gstqueryutils.h: Include more headers.
3484
3485         * gst/gstpad.h:
3486         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3487         some uses of gst_pad_query.
3488
3489         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3490         NULL out parameters.
3491         (gst_query_new_position): New proc, allocates a new position
3492         query.
3493
3494         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3495         gstqueryutils.c to the build.
3496
3497         * gst/gststructure.c (gst_structure_set_valist): Implement with
3498         the generic G_VALUE_COLLECT.
3499         
3500 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3501
3502         * gst/Makefile.am: (gst_headers):
3503         Added gstqueryutils.h to the list of headers to install, that was
3504         a 'nachty' move wingo :)
3505
3506 2005-05-06  Andy Wingo  <wingo@pobox.com>
3507
3508         * gst/gstquery.h
3509         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3510         GstData, init a memchunk.
3511         (standard_definitions): Add a few query types, deprecate a few.
3512         (gst_query_get_type): New proc.
3513         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3514         implementation.
3515         (gst_query_new_application, gst_query_get_structure): New public
3516         procs.
3517
3518         * docs/design/draft-query.txt: Removed LINKS from the query types,
3519         because all the rest can be dispatched to other pads -- seemed
3520         ugly to have a query that couldn't be dispatched. internal_links
3521         is fine as a pad method.
3522
3523         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3524         in gstpad.c, but maintain binary compatibility for the moment.
3525         Will fix before 0.9 is out.
3526
3527         * gst/gstqueryutils.c: 
3528         * gst/gstqueryutils.h: New files, implement 3 methods for each
3529         query type: parse_query, parse_response, and set. Probably need an
3530         allocator as well.
3531
3532         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3533
3534         * gst/elements/gstfilesink.c (gst_filesink_query2):
3535         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3536         query_types, and formats methods.
3537
3538         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3539         (gst_pad_set_query2_function): New functions.
3540         (gst_real_pad_init): Set query2_default as the default query2
3541         function. Basically just dispatches to internally linked pads.
3542
3543         Needs review!
3544         
3545         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3546         without using the atomic operations. Only one thread can possibly
3547         be accessing the data at this point. Changed so as to avoid
3548         gst_atomic operations.
3549
3550 2005-05-06  Wim Taymans  <wim@fluendo.com>
3551
3552         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3553         Also set caps if we use the fallback buffer alloc.
3554
3555 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3556
3557         * docs/gst/Makefile.am:
3558         * docs/gst/gstreamer-docs.sgml:
3559         * docs/gst/gstreamer-sections.txt:
3560         * docs/gst/tmpl/gstatomic.sgml:
3561         * docs/gst/tmpl/gstmemchunk.sgml:
3562         * testsuite/elements/struct_i386.h:
3563         * win32/GStreamer.vcproj:
3564         * win32/Makefile:
3565           Purge GstAtomic stuff from docs and win32 makefiles as well
3566
3567 2005-05-06  Wim Taymans  <wim@fluendo.com>
3568
3569         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3570         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3571         * gst/gstpad.c: (gst_pad_peer_get_caps):
3572         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3573         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3574         (gst_queue_src_activate), (gst_queue_change_state):
3575         * gst/gstqueue.h:
3576         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3577         (intersect_caps_func):
3578         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3579         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3580         Some fixes for the peer_get_caps() change.
3581
3582 2005-05-06  Wim Taymans  <wim@fluendo.com>
3583
3584         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3585         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3586         (gst_basesink_activate):
3587         Actually do something with error codes returned from the push
3588         functions.
3589
3590 2005-05-06  Wim Taymans  <wim@fluendo.com>
3591
3592         * docs/design/part-element-sink.txt:
3593         * docs/design/part-element-source.txt:
3594         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3595         (gst_basesink_event), (gst_basesink_activate):
3596         * gst/base/gstbasesink.h:
3597         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3598         (gst_basesrc_activate):
3599         * gst/base/gstbasesrc.h:
3600         * gst/gstelement.c: (gst_element_pads_activate):
3601         Some more documentation.
3602         Fixed scheduling decision in _pads_activate().
3603
3604 2005-05-05  Andy Wingo  <wingo@pobox.com>
3605
3606         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3607         the test suite.
3608
3609 2005-05-05  Wim Taymans  <wim@fluendo.com>
3610
3611         * gst/base/Makefile.am:
3612         * gst/base/gstbasesink.h:
3613         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3614         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3615         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3616         (gst_collectpads_class_init), (gst_collectpads_init),
3617         (gst_collectpads_finalize), (gst_collectpads_new),
3618         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3619         (find_pad), (gst_collectpads_remove_pad),
3620         (gst_collectpads_is_active), (gst_collectpads_collect),
3621         (gst_collectpads_collect_range), (gst_collectpads_start),
3622         (gst_collectpads_stop), (gst_collectpads_peek),
3623         (gst_collectpads_pop), (gst_collectpads_available),
3624         (gst_collectpads_read), (gst_collectpads_flush),
3625         (gst_collectpads_chain):
3626         * gst/base/gstcollectpads.h:
3627         * gst/elements/Makefile.am:
3628         * gst/elements/gstelements.c:
3629         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3630         (gst_fakesink_get_times), (gst_fakesink_event),
3631         (gst_fakesink_preroll), (gst_fakesink_render):
3632         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3633         (gst_filesink_init), (gst_filesink_set_location),
3634         (gst_filesink_open_file), (gst_filesink_close_file),
3635         (gst_filesink_pad_query), (gst_filesink_event),
3636         (gst_filesink_render), (gst_filesink_change_state):
3637         * gst/elements/gstfilesink.h:
3638         Added object to help in making collect pad based elements.
3639         Ported filesink.
3640         Make event function in sink baseclass return gboolean.
3641
3642 2005-05-05  Wim Taymans  <wim@fluendo.com>
3643
3644         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3645         (gst_bin_get_by_name):
3646         * gst/gstbuffer.h:
3647         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3648         (gst_clock_finalize):
3649         * gst/gstdata.c: (gst_data_replace):
3650         * gst/gstdata.h:
3651         * gst/gstelement.c: (gst_element_request_pad),
3652         (gst_element_pads_activate):
3653         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3654         (gst_object_unref):
3655         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3656         (gst_pad_set_checkgetrange_function),
3657         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3658         (gst_pad_check_pull_range), (gst_pad_pull_range),
3659         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3660         (gst_pad_pause_task), (gst_pad_stop_task):
3661         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3662         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3663         Fix name lookup in GstBin.
3664         Added _data_replace() function and _buffer_replace()
3665         Use finalize method to clean up clock.
3666         Fix refcounting on request pads.
3667         Fix pad schedule mode error.
3668         Some more object refcounting debug info,
3669
3670
3671 2005-05-04  Andy Wingo <wingo@pobox.com>
3672
3673         * check/Makefile.am:
3674         * docs/gst/tmpl/gstatomic.sgml:
3675         * docs/gst/tmpl/gstplugin.sgml:
3676         * gst/base/gstbasesink.c: (gst_basesink_activate):
3677         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3678         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3679         (gst_basesrc_query), (gst_basesrc_set_property),
3680         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3681         (gst_basesrc_activate):
3682         * gst/base/gstbasesrc.h:
3683         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3684         (gst_base_transform_src_activate):
3685         * gst/elements/gstelements.c:
3686         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3687         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3688         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3689         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3690         (gst_type_find_element_checkgetrange),
3691         (gst_type_find_element_activate):
3692         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3693         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3694         (gst_caps_load_thyself):
3695         * gst/gstelement.c: (gst_element_pads_activate),
3696         (gst_element_save_thyself), (gst_element_restore_thyself):
3697         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3698         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3699         * gst/gstpad.h:
3700         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3701         (gst_xml_parse_file), (gst_xml_parse_memory),
3702         (gst_xml_get_element), (gst_xml_make_element):
3703         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3704         (_file_index_id_save_xml), (gst_file_index_commit):
3705         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3706         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3707         (load_paths):
3708         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3709         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3710         * tools/gst-complete.c: (main):
3711         * tools/gst-compprep.c: (main):
3712         * tools/gst-inspect.c: (print_element_properties_info):
3713         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3714         * tools/gst-xmlinspect.c: (print_element_properties):
3715         GCC 4 fixen.
3716         
3717 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3718
3719         * gst/gstplugin.c: (gst_plugin_check_module),
3720         (gst_plugin_check_file), (gst_plugin_load_file):
3721             apply patch from #172526 to make register work on MacOSX
3722
3723 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3724
3725         * docs/gst/tmpl/gstconfig.sgml:
3726         * gst/gstconfig.h.in:
3727           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3728         * testsuite/debug/printf_extension.c: (main):
3729           Do not use GST_PTR_FORMAT on pointers to types with
3730           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3731         * testsuite/elements/property.h:
3732           use correct printf format
3733
3734 2005-05-02  Wim Taymans  <wim@fluendo.com>
3735
3736         * docs/design/draft-push-pull.txt:
3737         * docs/design/draft-query.txt:
3738         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3739         (gst_basesrc_start):
3740         Added draft for new query API.
3741         Added draft for better selecting scheduling methods.
3742         Make basesrc ignore length if the subclass does not support
3743         it.
3744
3745 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3746
3747         * gst/Makefile.am:
3748           possible fixes for automake-1.5 - _LIBADD is reserved
3749
3750 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3751
3752         * docs/faq/Makefile.am:
3753         * docs/manual/Makefile.am:
3754         * docs/manuals.mak:
3755         * docs/pwg/Makefile.am:
3756         * gst/Makefile.am:
3757           possible fixes for automake-1.5
3758
3759 2005-04-28  Wim Taymans  <wim@fluendo.com>
3760
3761         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3762         (gst_basesink_pad_getcaps), (gst_basesink_init),
3763         (gst_basesink_do_sync):
3764         * gst/gstclock.c: (gst_clock_entry_new):
3765         * gst/gstevent.c: (gst_event_discont_get_value):
3766         * gst/gstpipeline.c: (pipeline_bus_handler),
3767         (gst_pipeline_change_state):
3768         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3769         Better debugging of clocking info.
3770         Allow NULL values when getting discont values.
3771
3772 2005-04-27  Wim Taymans  <wim@fluendo.com>
3773
3774         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3775         * check/gst/gstpad.c: (gst_pad_suite):
3776         Increase timeout for checks.
3777
3778 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3779
3780         * check/Makefile.am:
3781           fix the broken rule for cleanup.  Apparently this rule is
3782           only needed on FC2, so maybe this warrants further autotool
3783           inspection.
3784
3785 2005-04-26  Wim Taymans  <wim@fluendo.com>
3786
3787         * gst/gsttrashstack.h:
3788         Ooohh. a nasty one! After having a failed pop() from the stack,
3789         it's possible that the stack is empty. In that case, don't
3790         follow the NULL pointer.
3791
3792 2005-04-25  Wim Taymans  <wim@fluendo.com>
3793
3794         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3795         (gst_pad_set_checkgetrange_function),
3796         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3797         (gst_pad_check_pull_range), (gst_pad_pull_range),
3798         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3799         (gst_pad_pause_task), (gst_pad_stop_task):
3800         * gst/gstplugin.c: (gst_plugin_load):
3801         * gst/gstplugin.h:
3802         Remove gst_library_load as it does more harm than good with
3803         the new g_module flags.
3804         Revert bogus caps template check in pad linking, pad caps
3805         are important when linking not the template, which is more
3806         general than the current caps.
3807
3808 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3809
3810         * gst/autoplug/.cvsignore:
3811         * gst/autoplug/Makefile.am:
3812         * gst/autoplug/gstsearchfuncs.c:
3813         * gst/autoplug/gstsearchfuncs.h:
3814         * gst/autoplug/gstspider.c:
3815         * gst/autoplug/gstspider.h:
3816         * gst/autoplug/gstspideridentity.c:
3817         * gst/autoplug/gstspideridentity.h:
3818         * gst/autoplug/spidertest.c:
3819           Die, spider, die.
3820
3821 2005-04-25  Wim Taymans  <wim@fluendo.com>
3822
3823         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3824         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3825         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3826         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3827         * gst/gstpad.h:
3828         Added stubs for unimplemented functions. 
3829
3830 2005-04-24  David Schleef  <ds@schleef.org>
3831
3832         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3833         please fix.
3834
3835 2005-04-24  David Schleef  <ds@schleef.org>
3836
3837         Convert everything from GstAtomicInt to g_atomic_int_*, and
3838         remove gstatomic.
3839         * gst/Makefile.am:
3840         * gst/gstatomic.c:
3841         * gst/gstatomic.h:
3842         * gst/gstatomic_impl.h:
3843         * gst/gstbuffer.c:
3844         * gst/gstcaps.c:
3845         * gst/gstcaps.h:
3846         * gst/gstclock.c:
3847         * gst/gstclock.h:
3848         * gst/gstdata.c:
3849         * gst/gstdata.h:
3850         * gst/gstdata_private.h:
3851         * gst/gstevent.c:
3852         * gst/gstinfo.c:
3853         * gst/gstinfo.h:
3854         * gst/gstmessage.c:
3855         * gst/gstobject.c:
3856         * gst/gstobject.h:
3857         * gst/gststructure.c:
3858         * gst/gststructure.h:
3859         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3860         * gst/gstutils.h:
3861
3862 2005-04-24  David Schleef  <ds@schleef.org>
3863
3864         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3865         make the regressions tests work.  Remove some code that is no
3866         longer true.
3867         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3868         Disable warning for pads without templates.
3869
3870 2005-04-24  David Schleef  <ds@schleef.org>
3871
3872         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3873         functions that handle filtered links.
3874         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3875         removed functions.
3876         * gst/gstutils.c: Fix/remove utility functions that handle
3877         filtered caps.
3878         * gst/gstutils.h:
3879         * gst/gstvalue.c: Add serialization/deserialization of caps
3880         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3881         requires fixing so that the filter caps notation creates
3882         a capsfilter element and sets the filter_caps property.  I
3883         think everyone probably wants to keep the shorthand notation.
3884         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3885         * docs/gst/tmpl/gstpad.sgml:
3886
3887         * gst/elements/gstelements.c: Register capsfilter element.
3888         * gst/Makefile.am: fix spacing
3889         * docs/random/ds/0.9-suggested-changes: random
3890
3891 2005-04-23  David Schleef  <ds@schleef.org>
3892
3893         * gst/elements/Makefile.am:
3894         * gst/elements/gstcapsfilter.c: New element that acts like an
3895         identity, but filters caps.  Will eventually replace filtered
3896         caps in pad linking.
3897         * gst/gstutils.c: (gst_element_create_all_pads): New function
3898         to create all the ALWAYS pads that are registered with an
3899         element class.  This functionality should eventually be
3900         merged in with GstElement initialization.
3901         * gst/gstutils.h:
3902         * testsuite/trigger/README: part of trigger test code that should
3903         have been checked in a long time ago.
3904
3905 2005-04-23  David Schleef  <ds@schleef.org>
3906
3907         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3908         needed with new versions of libtool (nobody will confirm this),
3909         and hard to carry around.
3910         * gst/autoplug/Makefile.am:
3911         * gst/base/Makefile.am:
3912         * gst/elements/Makefile.am:
3913         * gst/indexers/Makefile.am:
3914         * gst/schedulers/Makefile.am:
3915         * libs/gst/bytestream/Makefile.am:
3916         * libs/gst/control/Makefile.am:
3917         * libs/gst/dataprotocol/Makefile.am:
3918         * libs/gst/getbits/Makefile.am:
3919
3920 2005-04-21  Wim Taymans  <wim@fluendo.com>
3921
3922         * docs/design/draft-push-pull.txt:
3923         * docs/design/part-MT-refcounting.txt:
3924         * docs/design/part-TODO.txt:
3925         * docs/design/part-caps.txt:
3926         * docs/design/part-events.txt:
3927         * docs/design/part-gstbus.txt:
3928         * docs/design/part-gstpipeline.txt:
3929         * docs/design/part-messages.txt:
3930         * docs/design/part-push-pull.txt:
3931         * docs/design/part-query.txt:
3932         Some more docs.
3933
3934 2005-04-21  Wim Taymans  <wim@fluendo.com>
3935
3936         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3937         (gst_message_new), (gst_message_new_error),
3938         (gst_message_new_warning), (gst_message_new_tag),
3939         (gst_message_new_state_changed), (gst_message_new_application),
3940         (gst_message_get_structure):
3941         * gst/gstmessage.h:
3942         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3943         (gst_structure_copy_conditional):
3944         Use parent refcount in GstMessage to ensure GstStructure
3945         consistency.
3946         Cleaned up headers a bit.
3947         
3948
3949 2005-04-20  Wim Taymans  <wim@fluendo.com>
3950
3951         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3952         (gst_basesink_pad_getcaps), (gst_basesink_init),
3953         (gst_basesink_chain_unlocked):
3954         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3955         (gst_type_find_helper):
3956         * gst/elements/gsttypefindelement.c:
3957         (gst_type_find_element_have_type), (gst_type_find_element_init),
3958         (stop_typefinding), (gst_type_find_element_handle_event),
3959         (find_suggest), (gst_type_find_element_chain),
3960         (gst_type_find_element_checkgetrange),
3961         (gst_type_find_element_getrange), (do_typefind),
3962         (gst_type_find_element_activate):
3963         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3964         (gst_buffer_default_free), (gst_buffer_default_copy),
3965         (gst_buffer_set_caps):
3966         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3967         (gst_caps_replace):
3968         * gst/gstmessage.c: (gst_message_new),
3969         (gst_message_new_state_changed):
3970         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3971         (gst_pad_set_checkgetrange_function),
3972         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3973         (gst_pad_set_caps), (gst_pad_check_pull_range),
3974         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3975         * gst/gstpad.h:
3976         * gst/gsttypefind.c: (gst_type_find_register):
3977         Make gst_caps_replace() work like other _replace() functions.
3978         Use _caps_replace() where possible.
3979         Make sure _message_new() initialises its field.
3980         Add gst_static_pad_template_get_caps()
3981
3982
3983 2005-04-18  Andy Wingo  <wingo@pobox.com>
3984
3985         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3986         on the peer, not the pad. I think that was a typo. Pass an extra
3987         arg to see if random access is possible. Activate the pads as
3988         PULL_RANGE if possible.
3989
3990         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3991
3992         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3993         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3994         to PROP_....
3995
3996 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3997
3998         * docs/faq/using.xml:
3999           Add note on gstreamer-properties (#154996).
4000
4001 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4002
4003         * docs/random/bbb/optional-properties:
4004           Some analysis on optional properties.
4005
4006 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4007
4008         * docs/gst/tmpl/gstelementfactory.sgml:
4009         * gst/gstelement.h:
4010         * gst/gstelementfactory.c: (gst_element_factory_init),
4011         (gst_element_factory_cleanup), (gst_element_register),
4012         (__gst_element_factory_add_static_pad_template),
4013         (gst_element_factory_get_static_pad_templates),
4014         (gst_element_factory_can_src_caps),
4015         (gst_element_factory_can_sink_caps):
4016         * gst/registries/Makefile.am:
4017         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4018         (gst_xml_registry_class_init), (gst_xml_registry_init),
4019         (gst_xml_registry_new), (gst_xml_registry_set_property),
4020         (gst_xml_registry_get_property), (get_time), (make_dir),
4021         (gst_xml_registry_get_perms_func),
4022         (plugin_times_older_than_recurse), (plugin_times_older_than),
4023         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4024         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4025         (add_to_char_array), (read_string), (read_uint), (read_enum),
4026         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4027         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4028         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4029         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4030         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4031         (gst_xml_registry_rebuild):
4032         * gst/registries/gstlibxmlregistry.h:
4033         * tools/gst-compprep.c: (main):
4034         * tools/gst-inspect.c: (print_pad_templates_info):
4035         * tools/gst-xmlinspect.c: (print_element_info):
4036           Use libxml2 for registry parsing, use staticpadtemplates in
4037           elementfactories. Makes gst_init() +/- 10x faster.
4038
4039 2005-04-12  Wim Taymans  <wim@fluendo.com>
4040
4041         * gst/base/Makefile.am:
4042         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4043         (gst_basesink_pad_getcaps), (gst_basesink_init),
4044         (gst_basesink_event), (gst_basesink_change_state):
4045         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4046         (gst_basesrc_init), (gst_basesrc_query),
4047         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4048         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4049         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4050         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4051         (gst_basesrc_stop), (gst_basesrc_activate),
4052         (gst_basesrc_change_state):
4053         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4054         (helper_find_suggest), (gst_type_find_helper):
4055         * gst/base/gsttypefindhelper.h:
4056         * gst/elements/Makefile.am:
4057         * gst/elements/gstelements.c:
4058         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4059         (gst_fakesink_get_times), (gst_fakesink_event),
4060         (gst_fakesink_preroll), (gst_fakesink_render):
4061         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4062         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4063         (gst_fakesrc_get_property), (gst_fakesrc_create),
4064         (gst_fakesrc_start), (gst_fakesrc_stop):
4065         * gst/elements/gstfakesrc.h:
4066         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4067         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4068         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4069         (gst_filesrc_create_read), (gst_filesrc_create),
4070         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4071         (gst_filesrc_start):
4072         * gst/elements/gsttypefindelement.c:
4073         (gst_type_find_element_have_type), (gst_type_find_element_init),
4074         (start_typefinding), (stop_typefinding), (push_buffer_store),
4075         (gst_type_find_element_handle_event),
4076         (gst_type_find_element_chain),
4077         (gst_type_find_element_checkgetrange),
4078         (gst_type_find_element_getrange), (do_typefind),
4079         (gst_type_find_element_activate),
4080         (gst_type_find_element_change_state):
4081         * gst/elements/gsttypefindelement.h:
4082         * gst/gstpipeline.c: (pipeline_bus_handler):
4083         Added typefind helper.
4084         Small preroll fix in the base sink.
4085         Disable typefind code in basesrc.
4086         Crude port of typefindelement.
4087         Fakesrc cleanups.
4088
4089
4090 2005-04-11  Wim Taymans  <wim@fluendo.com>
4091
4092         * check/gst/gstbus.c: (gstbus_suite):
4093         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4094         * check/gstcheck.h:
4095           Fix up the timeout so that the test does not fail.
4096
4097 2005-04-06  Wim Taymans  <wim@fluendo.com>
4098
4099         * gst/base/README:
4100         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4101         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4102         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4103         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4104         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4105         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4106         (gst_basesrc_stop), (gst_basesrc_activate),
4107         (gst_basesrc_change_state), (basesrc_find_peek),
4108         (basesrc_find_suggest), (gst_basesrc_type_find):
4109         * gst/base/gstbasesrc.h:
4110         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4111         (gst_filesrc_class_init), (gst_filesrc_init),
4112         (gst_filesrc_finalize), (gst_filesrc_set_location),
4113         (gst_filesrc_set_property), (gst_filesrc_get_property),
4114         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4115         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4116         (gst_filesrc_create_read), (gst_filesrc_create),
4117         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4118         * gst/elements/gstfilesrc.h:
4119         * gst/gstelement.c: (gst_element_get_state_func),
4120         (gst_element_lost_state), (gst_element_pads_activate):
4121         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4122         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4123         (gst_pad_pull_range):
4124         * gst/gstpad.h:
4125         More work on the generic source base class, implement seeking,
4126         query.
4127         Make filesrc extend the base source class.
4128         Added gst_pad_set_checkgetrange_function to GstPad.
4129
4130 2005-04-06  Andy Wingo  <wingo@pobox.com>
4131
4132         * pkgconfig/gstreamer-base.pc.in:
4133         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4134
4135         * pkgconfig/Makefile.am:
4136         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4137
4138 2005-04-04  Wim Taymans  <wim@fluendo.com>
4139
4140         * gst/base/Makefile.am:
4141         * gst/base/README:
4142         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4143         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4144         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4145         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4146         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4147         (gst_basesrc_base_init), (gst_basesrc_class_init),
4148         (gst_basesrc_init), (gst_basesrc_get_formats),
4149         (gst_basesrc_get_query_types), (gst_basesrc_query),
4150         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4151         (gst_basesrc_set_property), (gst_basesrc_get_property),
4152         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4153         (gst_basesrc_loop), (gst_basesrc_activate),
4154         (gst_basesrc_change_state):
4155         * gst/base/gstbasesrc.h:
4156         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4157         (gst_fakesrc_class_init), (gst_fakesrc_init),
4158         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4159         (gst_fakesrc_get_property), (gst_fakesrc_create):
4160         * gst/elements/gstfakesrc.h:
4161         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4162         (gst_filesrc_open_file), (gst_filesrc_loop),
4163         (gst_filesrc_activate), (filesrc_find_peek),
4164         (gst_filesrc_type_find):
4165         Made base source class, make fakesrc extend it.
4166         Add comments to basesink class.
4167         Some filesrc cleanup.
4168
4169 2005-03-31  David Schleef  <ds@schleef.org>
4170
4171         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4172         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4173         expected to link against libgstreamer.
4174         * gst/base/Makefile.am: link against libgstreamer
4175         * gst/elements/Makefile.am: same
4176
4177 2005-03-31  Andy Wingo  <wingo@pobox.com>
4178
4179         * tests/instantiate/Makefile.am:
4180         * tests/instantiate/caps.c: Add test to test speed of caps copy
4181         and free.
4182
4183         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4184         GMemChunk to be fair.
4185
4186         * gst/gsttrashstack.h: Remove warning about using the fallback
4187         trash stack implementation, it's still faster than malloc.
4188
4189 2005-03-30  Andy Wingo  <wingo@pobox.com>
4190
4191         * tests/complexity.c: Add a copyright.
4192
4193 2005-03-31  Wim Taymans  <wim@fluendo.com>
4194
4195         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4196         (gst_base_transform_class_init), (gst_base_transform_init),
4197         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4198         (gst_base_transform_get_property),
4199         (gst_base_transform_sink_activate),
4200         (gst_base_transform_src_activate),
4201         (gst_base_transform_change_state):
4202         * gst/base/gstbasetransform.h:
4203         * gst/elements/gstidentity.c: (gst_identity_class_init),
4204         (gst_identity_event), (gst_identity_check_perfect),
4205         (gst_identity_transform), (gst_identity_start),
4206         (gst_identity_stop):
4207         Added start/stop methods to transform base class so subclasses 
4208         don't need to deal with state changes even.
4209
4210 2005-03-31  Wim Taymans  <wim@fluendo.com>
4211
4212         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4213         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4214         * gst/gstevent.h:
4215         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4216         (gst_pad_pull_range):
4217         Added rate to the discont event to prepare for variable speed
4218         and reverse playback.
4219
4220 2005-03-29  David Schleef  <ds@schleef.org>
4221
4222         * configure.ac:
4223         * testsuite/trigger/Makefile.am:
4224         * testsuite/trigger/trigger.c: A little example program to show
4225         how trigger-based elements can work.
4226
4227 2005-03-29  Wim Taymans  <wim@fluendo.com>
4228
4229         * gst/base/Makefile.am:
4230         * gst/base/README:
4231         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4232         (gst_basesink_base_init), (gst_basesink_class_init),
4233         (gst_basesink_pad_getcaps), (gst_basesink_init),
4234         (gst_basesink_activate), (gst_basesink_change_state):
4235         * gst/base/gstbasesink.h:
4236         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4237         (gst_base_transform_base_init), (gst_base_transform_finalize),
4238         (gst_base_transform_class_init), (gst_base_transform_init),
4239         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4240         (gst_base_transform_event), (gst_base_transform_getrange),
4241         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4242         (gst_base_transform_set_property),
4243         (gst_base_transform_get_property),
4244         (gst_base_transform_sink_activate),
4245         (gst_base_transform_src_activate),
4246         (gst_base_transform_change_state):
4247         * gst/base/gstbasetransform.h:
4248         * gst/elements/gstidentity.c: (gst_identity_finalize),
4249         (gst_identity_class_init), (gst_identity_init),
4250         (gst_identity_event), (gst_identity_check_perfect),
4251         (gst_identity_transform), (gst_identity_set_property),
4252         (gst_identity_get_property), (gst_identity_change_state):
4253         * gst/elements/gstidentity.h:
4254         * gst/gstelement.c: (gst_element_get_state_func),
4255         (gst_element_lost_state), (gst_element_pads_activate):
4256         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4257         (gst_pad_check_pull_range), (gst_pad_pull_range):
4258         * gst/gstpad.h:
4259         Simplify pad activation.
4260         Added function to check if pull_range can be performed.
4261         Error out when pulling inactive or flushing pads.
4262         Removed const from refcounted types as it does not make sense.
4263         Simplify pad templates in basesink
4264         Added base class for simple 1-to-1 transforms.
4265         Make identity subclass the base transform.
4266
4267 2005-03-29  Andy Wingo  <wingo@pobox.com>
4268
4269         * docs/libs/gstreamer-libs-overrides.txt: 
4270         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4271         really don't understand what's going on, but like whatever. I want
4272         green buildbot!
4273
4274         * docs/gst/Makefile.am:
4275         * docs/libs/Makefile.am: Dist the overrides files.
4276
4277         * check/Makefile.am (clean-local): Remove .libs directories.
4278
4279         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4280         elements to EXTRA_DIST, so po/ files are happy.
4281
4282         * po/POTFILES.in: Er, remove it here.
4283
4284         * po/POTFILES: Remove gstspider.c.
4285
4286         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4287
4288         * docs/libs/gstreamer-libs-docs.sgml: 
4289         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4290         bytestream.
4291
4292         * tests/complexity.c (main): Set the length of the preroll queue
4293         on the sinks to prevent a lockup.
4294
4295         * libs/gst/dataprotocol/Makefile.am: 
4296         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4297         the same as the one in check/gst-libs/gdp.c.
4298
4299         * po/, docs/gst/: Commit automatic changes to docs and po files.
4300
4301         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4302         the versioned libgstbase.
4303
4304         * check/Makefile.am: Depend on an unversioned gst-register, seems
4305         to make autoconf happier.
4306
4307         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4308
4309 2005-03-28  Wim Taymans  <wim@fluendo.com>
4310
4311         * configure.ac:
4312         * docs/design/part-gstelement.txt:
4313         * docs/design/part-negotiation.txt:
4314         * docs/design/part-preroll.txt:
4315         * docs/design/part-scheduling.txt:
4316         * docs/design/part-states.txt:
4317         * gst/Makefile.am:
4318         * gst/base/Makefile.am:
4319         * gst/base/README:
4320         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4321         (gst_basesink_base_init), (gst_basesink_class_init),
4322         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4323         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4324         (gst_basesink_set_pad_functions),
4325         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4326         (gst_basesink_set_property), (gst_basesink_get_property),
4327         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4328         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4329         (gst_basesink_preroll_queue_push),
4330         (gst_basesink_preroll_queue_empty),
4331         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4332         (gst_basesink_event), (gst_basesink_get_times),
4333         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4334         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4335         (gst_basesink_loop), (gst_basesink_activate),
4336         (gst_basesink_change_state):
4337         * gst/base/gstbasesink.h:
4338         * gst/elements/Makefile.am:
4339         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4340         (gst_fakesink_class_init), (gst_fakesink_init),
4341         (gst_fakesink_set_property), (gst_fakesink_get_property),
4342         (gst_fakesink_get_times), (gst_fakesink_event),
4343         (gst_fakesink_preroll), (gst_fakesink_render),
4344         (gst_fakesink_change_state):
4345         * gst/elements/gstfakesink.h:
4346         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4347         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4348         * gst/gstelement.c: (gst_element_add_pad),
4349         (gst_element_get_state_func), (gst_element_abort_state),
4350         (gst_element_commit_state), (gst_element_lost_state),
4351         (gst_element_set_state), (gst_element_pads_activate):
4352         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4353         * gst/gstpipeline.c: (gst_pipeline_send_event),
4354         (gst_pipeline_change_state):
4355         Added state change code.
4356         Added/updated docs.
4357         Added sink base class, make fakesink extend the base class.
4358         Small cleanups in GstPipeline.
4359
4360 2005-03-26  David Schleef  <ds@schleef.org>
4361
4362         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4363         is broken and should be implemented in a different library.
4364         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4365         * gst/gst.h: remove gstcpu.h
4366         * gst/gstcpu.c: remove
4367         * gst/gstcpu.h: remove
4368         * gst/Makefile.am.future: Remove this file.  It's ancient.
4369
4370 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4371
4372         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4373         (gst_bin_send_event):
4374           Add default event/set_manager handlers. The set_manager handler
4375           takes care that the manager is distributed over kids that were
4376           already in the bin before the manager was set. The event handler
4377           is a utility virtual function that sends the event over all sinks,
4378           so that gst_element_send_event (bin, event); has the expected
4379           behaviour.
4380         * gst/gstpad.c: (gst_pad_event_default):
4381           Re-install default event handling for discontinuities, so that
4382           seeking works without requiring hacks in applications or extra
4383           code in sinks.
4384         * gst/gstpipeline.c: (gst_pipeline_class_init),
4385         (gst_pipeline_send_event):
4386           Half hack, half utility: set a pipeline to PAUSED for seek events,
4387           since that is the only way we can guarantee a/v sync. Means that
4388           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4389           and it "just works".
4390
4391 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4392
4393         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4394           Lock/unlock mismatch.
4395
4396 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4397
4398         * docs/faq/gst-uninstalled:
4399           add gst-plugins-base
4400         * docs/gst/Makefile.am:
4401           don't error out until docs are fixed
4402         * docs/gst/gstreamer.types:
4403           remove thread
4404
4405 2005-03-22  Wim Taymans  <wim@fluendo.com>
4406
4407         * check/Makefile.am:
4408         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4409         * gst/gststructure.c: (gst_structure_set_valist),
4410         (gst_structure_copy_conditional):
4411         Activated more tests.
4412         Added message test.
4413         Added G_TYPE_POINTER to GstStructure.
4414         
4415
4416 2005-03-22  Wim Taymans  <wim@fluendo.com>
4417
4418         * docs/design/part-TODO.txt:
4419         * docs/design/part-events.txt:
4420         * docs/design/part-gstbin.txt:
4421         * docs/design/part-gstbus.txt:
4422         * docs/design/part-gstpipeline.txt:
4423         * docs/design/part-messages.txt:
4424         * gst/gstbus.c:
4425         * gst/gstmessage.c:
4426         Docs updates
4427
4428 2005-03-21  Wim Taymans  <wim@fluendo.com>
4429
4430         * gst/gstbus.c: (gst_bus_post):
4431         Fix copy-and-paste error.
4432
4433 2005-03-21  Wim Taymans  <wim@fluendo.com>
4434
4435         * check/Makefile.am:
4436         * gst/Makefile.am:
4437         * gst/elements/Makefile.am:
4438         * gst/elements/gstelements.c:
4439         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4440         (gst_fakesink_event), (gst_fakesink_chain):
4441         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4442         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4443         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4444         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4445         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4446         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4447         (gst_fakesrc_loop), (gst_fakesrc_activate),
4448         (gst_fakesrc_change_state):
4449         * gst/elements/gstfakesrc.h:
4450         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4451         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4452         (gst_filesrc_open_file), (gst_filesrc_loop),
4453         (gst_filesrc_activate), (gst_filesrc_change_state),
4454         (filesrc_find_peek), (filesrc_find_suggest),
4455         (gst_filesrc_type_find):
4456         * gst/elements/gstidentity.c: (gst_identity_finalize),
4457         (gst_identity_class_init), (gst_identity_init),
4458         (gst_identity_proxy_getcaps), (identity_queue_push),
4459         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4460         (gst_identity_getrange), (gst_identity_chain),
4461         (gst_identity_sink_loop), (gst_identity_src_loop),
4462         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4463         (gst_identity_set_property), (gst_identity_get_property),
4464         (gst_identity_change_state):
4465         * gst/elements/gstidentity.h:
4466         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4467         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4468         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4469         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4470         (gst_tee_sink_activate):
4471         * gst/elements/gsttee.h:
4472         * gst/gst.c: (gst_register_core_elements), (init_post):
4473         * gst/gst.h:
4474         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4475         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4476         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4477         (gst_bin_change_state):
4478         * gst/gstbin.h:
4479         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4480         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4481         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4482         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4483         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4484         (bus_watch_callback), (bus_watch_destroy),
4485         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4486         (poll_timeout), (gst_bus_poll):
4487         * gst/gstbus.h:
4488         * gst/gstcaps.h:
4489         * gst/gstdata.h:
4490         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4491         (gst_element_post_message), (gst_element_message_full),
4492         (gst_element_get_state_func), (gst_element_get_state),
4493         (gst_element_abort_state), (gst_element_commit_state),
4494         (gst_element_lost_state), (gst_element_set_state),
4495         (gst_element_pads_activate), (gst_element_change_state),
4496         (gst_element_dispose), (gst_element_set_manager_func),
4497         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4498         (gst_element_set_manager), (gst_element_get_manager),
4499         (gst_element_set_bus), (gst_element_get_bus),
4500         (gst_element_set_scheduler), (gst_element_get_scheduler):
4501         * gst/gstelement.h:
4502         * gst/gstevent.c: (gst_event_new_segment_seek),
4503         (gst_event_new_flush):
4504         * gst/gstevent.h:
4505         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4506         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4507         (gst_message_new_eos), (gst_message_new_error),
4508         (gst_message_new_warning), (gst_message_new_tag),
4509         (gst_message_new_state_changed), (gst_message_new_application),
4510         (gst_message_get_structure), (gst_message_parse_tag),
4511         (gst_message_parse_state_changed), (gst_message_parse_error),
4512         (gst_message_parse_warning):
4513         * gst/gstmessage.h:
4514         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4515         (gst_real_pad_set_property), (gst_pad_set_active),
4516         (gst_pad_is_active), (gst_pad_set_blocked_async),
4517         (gst_pad_set_blocked), (gst_pad_is_blocked),
4518         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4519         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4520         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4521         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4522         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4523         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4524         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4525         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4526         (gst_pad_set_caps), (gst_pad_configure_sink),
4527         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4528         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4529         (gst_real_pad_dispose), (gst_real_pad_finalize),
4530         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4531         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4532         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4533         * gst/gstpad.h:
4534         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4535         (pipeline_bus_handler), (gst_pipeline_change_state),
4536         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4537         * gst/gstpipeline.h:
4538         * gst/gstprobe.h:
4539         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4540         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4541         (gst_queue_link_src), (gst_queue_bufferalloc),
4542         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4543         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4544         (gst_queue_loop), (gst_queue_handle_src_event),
4545         (gst_queue_handle_src_query), (gst_queue_src_activate),
4546         (gst_queue_change_state):
4547         * gst/gstqueue.h:
4548         * gst/gstscheduler.c: (gst_scheduler_init),
4549         (gst_scheduler_dispose), (gst_scheduler_create_task),
4550         (gst_scheduler_factory_create):
4551         * gst/gstscheduler.h:
4552         * gst/gststructure.c: (gst_structure_get_type),
4553         (gst_structure_copy_conditional):
4554         * gst/gststructure.h:
4555         * gst/gsttaginterface.h:
4556         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4557         (gst_task_init), (gst_task_dispose), (gst_task_create),
4558         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4559         (gst_task_pause):
4560         * gst/gsttask.h:
4561         * gst/gstthread.c:
4562         * gst/gstthread.h:
4563         * gst/gsttypes.h:
4564         * gst/schedulers/Makefile.am:
4565         * gst/schedulers/cothreads_compat.h:
4566         * gst/schedulers/entryscheduler.c:
4567         * gst/schedulers/faircothreads.c:
4568         * gst/schedulers/faircothreads.h:
4569         * gst/schedulers/fairscheduler.c:
4570         * gst/schedulers/gstbasicscheduler.c:
4571         * gst/schedulers/gstoptimalscheduler.c:
4572         * gst/schedulers/gthread-cothreads.h:
4573         * gst/schedulers/threadscheduler.c:
4574         (gst_thread_scheduler_task_get_type),
4575         (gst_thread_scheduler_task_class_init),
4576         (gst_thread_scheduler_task_init),
4577         (gst_thread_scheduler_task_start),
4578         (gst_thread_scheduler_task_stop),
4579         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4580         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4581         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4582         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4583         (plugin_init):
4584         * libs/gst/Makefile.am:
4585         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4586         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4587         (gst_file_pad_parent_set):
4588         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4589         (gst_dp_event_from_packet):
4590         * tests/complexity.c: (main):
4591         * tests/mass_elements.c: (main):
4592         * testsuite/states/locked.c: (message_received), (main):
4593         * testsuite/states/parent.c: (main):
4594         * tools/gst-inspect.c: (print_element_flag_info),
4595         (print_implementation_info), (print_pad_info):
4596         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4597         (main):
4598         * tools/gst-md5sum.c: (event_loop), (main):
4599         * tools/gst-typefind.c: (main):
4600         * tools/gst-xmlinspect.c: (print_element_info):
4601         Next big merge.
4602         Added GstBus for mainloop integration.
4603         Added GstMessage for sending notifications on the bus.
4604         Added GstTask as an abstraction for pipeline entry points.
4605         Removed GstThread.
4606         Removed Schedulers.
4607         Simplified GstQueue for multithreaded core.
4608         Made _link threadsafe, removed old capsnego.
4609         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4610         Added pad blocking functions.
4611         Reworked scheduling functions in GstPad to prepare for
4612         scheduling updates soon.
4613         Moved events out of data stream.
4614         Simplified GstEvent types.
4615         Added return values to push/pull.
4616         Removed clocking from GstElement.
4617         Added prototypes for state change function for next merge.
4618         Removed iterate from bins and state change management.
4619         Fixed some elements, disabled others for now.
4620         Fixed -inspect and -launch.
4621         Added check for GstBus.
4622
4623 2005-03-10  Wim Taymans  <wim@fluendo.com>
4624
4625         * docs/design/part-MT-refcounting.txt:
4626         * docs/design/part-clocks.txt:
4627         * docs/design/part-gstelement.txt:
4628         * docs/design/part-gstobject.txt:
4629         * docs/design/part-standards.txt:
4630         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4631         (gst_bin_remove_func), (gst_bin_remove):
4632         * gst/gstbin.h:
4633         * gst/gstbuffer.c:
4634         * gst/gstcaps.h:
4635         * testsuite/clock/clock1.c: (main):
4636         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4637         (main):
4638         * testsuite/dlopen/loadgst.c: (do_test):
4639         * testsuite/refcounting/bin.c: (add_remove_test1),
4640         (add_remove_test2), (main):
4641         * testsuite/refcounting/element.c: (main):
4642         * testsuite/refcounting/element_pad.c: (main):
4643         * testsuite/refcounting/pad.c: (main):
4644         * tools/gst-launch.c: (sigint_handler_sighandler):
4645         * tools/gst-typefind.c: (main):
4646         Doc updates.
4647         Added doc about clock.
4648         removed gst_bin_iterate_recurse_up(), marked methods
4649         for removal.
4650         Fix more testsuites.
4651
4652 2005-03-09  Wim Taymans  <wim@fluendo.com>
4653
4654         * gst/gstpad.c: (gst_pad_get_direction),
4655         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4656         (gst_pad_collect_valist):
4657         * testsuite/bins/interface.c: (main):
4658         * testsuite/caps/audioscale.c: (test_caps):
4659         * testsuite/caps/caps.c: (test1), (test2), (test3):
4660         * testsuite/caps/deserialize.c: (main):
4661         * testsuite/caps/enumcaps.c: (main):
4662         * testsuite/caps/filtercaps.c: (main):
4663         * testsuite/caps/intersect2.c: (main):
4664         * testsuite/caps/random.c: (main):
4665         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4666         * testsuite/caps/sets.c: (check_caps):
4667         * testsuite/caps/simplify.c: (check_caps), (main):
4668         * testsuite/caps/subtract.c: (check_caps):
4669         Fix _pad_get_direction wrt ghostpads.
4670         Fix caps testsuite.
4671
4672 2005-03-09  Wim Taymans  <wim@fluendo.com>
4673
4674         * check/Makefile.am:
4675         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4676         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4677         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4678         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4679         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4680         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4681         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4682         (bin_element_is_sink), (gst_bin_iterate_sinks),
4683         (gst_bin_iterate_all_by_interface):
4684         * gst/gstbin.h:
4685         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4686         (gst_element_change_state), (gst_element_dispose),
4687         (gst_element_finalize), (gst_element_set_loop_function):
4688         * gst/gstelement.h:
4689         * gst/gstiterator.c: (find_custom_fold_func):
4690         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4691         (gst_pad_collectv), (gst_pad_collect_valist),
4692         (gst_pad_template_new):
4693         * gst/gstpipeline.c: (gst_pipeline_class_init),
4694         (gst_pipeline_dispose), (gst_pipeline_set_property),
4695         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4696         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4697         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4698         * gst/gstutils.h:
4699         * gst/schedulers/entryscheduler.c:
4700         * gst/schedulers/gstbasicscheduler.c:
4701         (gst_basic_scheduler_cothreaded_chain),
4702         (gst_basic_scheduler_chain_add_element):
4703         * testsuite/bins/interface.c: (main):
4704         Added GstBin test.
4705         Added GstSystemClock test.
4706         Implemented clock distribution code in GstBin.
4707         Implemented iterate sinks method for future use.
4708         Rearranged gstelement.h
4709         Fix GstIterator comparison bug.
4710         Moved some code to GstPipeline, mostly clocking related.
4711
4712 2005-03-09  Wim Taymans  <wim@fluendo.com>
4713
4714         * configure.ac:
4715         * gst/gst_private.h:
4716         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4717         (gst_bin_remove_func), (gst_bin_remove),
4718         (gst_bin_get_by_name_recurse_up):
4719         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4720         (gst_clock_id_compare_func), (gst_clock_id_wait),
4721         (gst_clock_id_wait_async), (gst_clock_init),
4722         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4723         * gst/gstelement.h:
4724         * gst/gstinfo.c: (_gst_debug_init):
4725         * gst/gstobject.h:
4726         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4727         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4728         * gst/gstpad.h:
4729         Bump version number, we're now 0.9.0
4730         Add future debugging category.
4731         Fix NULL _unref() in _get_by_name_recurse_up
4732         Rearrange gstpad.h.
4733         Update some docs.
4734
4735 2005-03-08  Wim Taymans  <wim@fluendo.com>
4736
4737         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4738         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4739         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4740         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4741         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4742         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4743         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4744         * gst/elements/gstidentity.c: (gst_identity_class_init):
4745         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4746         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4747         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4748         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4749         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4750         (gst_tee_link):
4751         * gst/gstelement.c: (gst_element_class_init),
4752         (gst_element_base_class_init), (gst_element_init),
4753         (gst_element_get_random_pad), (gst_element_wait_state_change),
4754         (gst_element_change_state), (gst_element_dispose),
4755         (gst_element_finalize), (gst_element_set_loop_function):
4756         * gst/gstelement.h:
4757         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4758         * gst/gstthread.c: (gst_thread_class_init),
4759         (gst_thread_release_children_locks), (gst_thread_change_state):
4760         * gst/schedulers/gstbasicscheduler.c:
4761         (gst_basic_scheduler_loopfunc_wrapper),
4762         (gst_basic_scheduler_chain_wrapper),
4763         (gst_basic_scheduler_src_wrapper),
4764         (gst_basic_scheduler_remove_element):
4765         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4766         Remove threadsafe properties. Fix elements because GObject
4767         complains when installing a property before declaring a
4768         set/get_property handler.
4769         Rearrange gstelement.h file, use STATE macros for state locks.
4770         Free mutexes in the finalize method instead of dispose.
4771
4772 2005-03-08  Wim Taymans  <wim@fluendo.com>
4773
4774         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4775         * gst/gstthread.c: (gst_thread_release_children_locks):
4776         Added parentage check.
4777         Fix build og GstThread again.
4778
4779 2005-03-08  Wim Taymans  <wim@fluendo.com>
4780
4781         * docs/design/part-MT-refcounting.txt:
4782         * docs/design/part-conventions.txt:
4783         * docs/design/part-gstobject.txt:
4784         * docs/design/part-relations.txt:
4785         * docs/design/part-standards.txt:
4786         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4787         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4788         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4789         (gst_bin_iterate_all_by_interface):
4790         * gst/gstbuffer.h:
4791         * gst/gstclock.h:
4792         * gst/gstelement.c: (gst_element_class_init),
4793         (gst_element_change_state), (gst_element_set_loop_function):
4794         * gst/gstelement.h:
4795         * gst/gstiterator.c:
4796         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4797         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4798         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4799         (gst_object_set_parent), (gst_object_unparent),
4800         (gst_object_check_uniqueness):
4801         * gst/gstobject.h:
4802         Docs updates, clean up some headers.
4803
4804 2005-03-07  Wim Taymans  <wim@fluendo.com>
4805
4806         * check/.cvsignore:
4807         * check/Makefile.am:
4808         * check/gst-libs/.cvsignore:
4809         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4810         * check/gst/.cvsignore:
4811         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4812         (START_TEST), (gstbus_suite), (main):
4813         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4814         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4815         (gst_data_suite), (main):
4816         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4817         (add_fold_func), (gstiterator_suite), (main):
4818         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4819         (thread_name_object), (thread_name_object_default),
4820         (gst_object_name_compare), (gst_object_suite), (main):
4821         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4822         (gst_pad_suite), (main):
4823         * check/gstcheck.c: (gst_check_log_message_func),
4824         (gst_check_log_critical_func), (gst_check_init):
4825         * check/gstcheck.h:
4826         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4827         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4828         Added checks.
4829
4830 2005-03-07  Wim Taymans  <wim@fluendo.com>
4831
4832         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4833         (gst_list_iterator_next), (gst_list_iterator_resync),
4834         (gst_list_iterator_free), (gst_iterator_new_list),
4835         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4836         (gst_iterator_free), (gst_iterator_push), (filter_next),
4837         (filter_resync), (filter_uninit), (filter_free),
4838         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4839         (gst_iterator_foreach), (find_custom_fold_func),
4840         (gst_iterator_find_custom):
4841         * gst/gstiterator.h:
4842         Added missing files.
4843
4844 2005-03-07  Wim Taymans  <wim@fluendo.com>
4845
4846         * Makefile.am:
4847         * configure.ac:
4848         * docs/design/part-MT-refcounting.txt:
4849         * docs/design/part-conventions.txt:
4850         * docs/design/part-gstobject.txt:
4851         * docs/design/part-relations.txt:
4852         * examples/mixer/mixer.c: (main):
4853         * examples/thread/thread.c: (eos), (main):
4854         * gst/Makefile.am:
4855         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4856         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4857         (gst_spider_plug_from_srcpad):
4858         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4859         (gst_spider_identity_change_state),
4860         (gst_spider_identity_sink_loop_type_finding):
4861         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4862         * gst/elements/gstidentity.c: (gst_identity_init):
4863         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4864         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4865         * gst/elements/gsttypefindelement.c: (free_entry):
4866         * gst/gst.c:
4867         * gst/gst.h:
4868         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4869         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4870         (gst_bin_set_index), (gst_bin_set_element_sched),
4871         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4872         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4873         (gst_bin_iterate_elements), (iterate_child_recurse),
4874         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4875         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4876         (compare_interface), (gst_bin_get_by_interface),
4877         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4878         * gst/gstbin.h:
4879         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4880         (gst_buffer_default_free), (gst_buffer_default_copy),
4881         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4882         (gst_buffer_create_sub):
4883         * gst/gstbuffer.h:
4884         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4885         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4886         (gst_caps_unref), (gst_static_caps_get),
4887         (gst_caps_remove_and_get_structure), (gst_caps_append),
4888         (gst_caps_append_structure), (gst_caps_remove_structure),
4889         (gst_caps_copy_nth), (gst_caps_set_simple),
4890         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4891         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4892         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4893         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4894         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4895         (gst_caps_structure_figure_out_union),
4896         (gst_caps_switch_structures), (gst_caps_do_simplify),
4897         (gst_caps_replace), (gst_caps_from_string),
4898         (gst_caps_copy_conditional):
4899         * gst/gstcaps.h:
4900         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4901         (_gst_clock_id_free), (gst_clock_id_unref),
4902         (gst_clock_id_compare_func), (gst_clock_id_wait),
4903         (gst_clock_id_wait_async), (gst_clock_class_init),
4904         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4905         (gst_clock_get_time), (gst_clock_set_time_adjust),
4906         (gst_clock_set_property), (gst_clock_get_property):
4907         * gst/gstclock.h:
4908         * gst/gstcompat.h:
4909         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4910         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4911         * gst/gstdata.h:
4912         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4913         (gst_element_requires_clock), (gst_element_provides_clock),
4914         (gst_element_set_clock), (gst_element_clock_wait),
4915         (gst_element_wait), (gst_element_set_time_delay),
4916         (gst_element_is_indexable), (gst_element_add_pad),
4917         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4918         (pad_compare_name), (gst_element_get_static_pad),
4919         (gst_element_request_pad), (gst_element_get_request_pad),
4920         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4921         (gst_element_class_get_pad_template_list),
4922         (gst_element_class_get_pad_template), (gst_element_error_func),
4923         (gst_element_get_random_pad), (gst_element_get_event_masks),
4924         (gst_element_send_event), (gst_element_seek),
4925         (gst_element_get_query_types), (gst_element_query),
4926         (gst_element_get_formats), (gst_element_convert),
4927         (gst_element_is_locked_state), (gst_element_set_locked_state),
4928         (gst_element_sync_state_with_parent), (gst_element_change_state),
4929         (gst_element_finalize), (gst_element_yield),
4930         (gst_element_interrupt), (gst_element_set_scheduler),
4931         (gst_element_get_scheduler), (gst_element_set_loop_function):
4932         * gst/gstelement.h:
4933         * gst/gstevent.h:
4934         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4935         (gst_format_get_by_nick), (gst_format_get_details),
4936         (gst_format_iterate_definitions):
4937         * gst/gstformat.h:
4938         * gst/gstindex.c: (gst_index_gtype_resolver):
4939         * gst/gstinfo.c:
4940         * gst/gstinfo.h:
4941         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4942         (gst_mem_chunk_free):
4943         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4944         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4945         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4946         (gst_object_dispatch_properties_changed),
4947         (gst_object_set_name_default), (gst_object_set_name),
4948         (gst_object_get_name), (gst_object_set_name_prefix),
4949         (gst_object_get_name_prefix), (gst_object_set_parent),
4950         (gst_object_get_parent), (gst_object_unparent),
4951         (gst_object_check_uniqueness), (gst_object_save_thyself),
4952         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4953         (gst_object_set_property), (gst_object_get_property),
4954         (gst_object_get_path_string):
4955         * gst/gstobject.h:
4956         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4957         (gst_real_pad_init), (gst_real_pad_get_property),
4958         (gst_pad_custom_new), (gst_pad_get_direction),
4959         (gst_pad_set_active), (gst_pad_is_active),
4960         (gst_pad_set_event_function), (gst_pad_is_linked),
4961         (gst_pad_link_free), (gst_pad_link_intersect),
4962         (gst_pad_link_fixate), (gst_pad_set_caps),
4963         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4964         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4965         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4966         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4967         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4968         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4969         (gst_pad_realize), (gst_pad_get_allowed_caps),
4970         (gst_real_pad_dispose), (gst_real_pad_finalize),
4971         (gst_pad_collectv), (gst_pad_collect_valist),
4972         (gst_pad_template_dispose), (gst_pad_template_new),
4973         (gst_pad_get_internal_links):
4974         * gst/gstpad.h:
4975         * gst/gstpipeline.c: (gst_pipeline_dispose),
4976         (gst_pipeline_change_state):
4977         * gst/gstpipeline.h:
4978         * gst/gstplugin.c:
4979         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4980         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4981         * gst/gstpluginfeature.h:
4982         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4983         * gst/gstquery.c: (_gst_query_type_initialize),
4984         (gst_query_type_register), (gst_query_type_get_by_nick),
4985         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4986         * gst/gstquery.h:
4987         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4988         * gst/gstscheduler.c: (gst_scheduler_add_element),
4989         (gst_scheduler_factory_create):
4990         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4991         (gst_structure_free), (gst_structure_set_name),
4992         (gst_structure_id_set_value), (gst_structure_set_value),
4993         (gst_structure_set_valist), (gst_structure_remove_field),
4994         (gst_structure_remove_fields),
4995         (gst_structure_remove_fields_valist),
4996         (gst_structure_remove_all_fields), (gst_structure_foreach),
4997         (gst_structure_map_in_place),
4998         (gst_caps_structure_fixate_field_nearest_int),
4999         (gst_caps_structure_fixate_field_nearest_double):
5000         * gst/gststructure.h:
5001         * gst/gstsystemclock.c: (gst_system_clock_class_init),
5002         (gst_system_clock_init), (gst_system_clock_dispose),
5003         (gst_system_clock_async_thread),
5004         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
5005         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5006         * gst/gstsystemclock.h:
5007         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5008         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5009         * gst/gsttaginterface.c:
5010         * gst/gstthread.c: (gst_thread_dispose),
5011         (gst_thread_release_children_locks), (gst_thread_change_state),
5012         (gst_thread_main_loop):
5013         * gst/gsttrashstack.h:
5014         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5015         * gst/gsttypes.h:
5016         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5017         (gst_element_request_pad), (gst_element_get_pad_from_template),
5018         (gst_element_request_compatible_pad),
5019         (gst_element_get_compatible_pad_filtered),
5020         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5021         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5022         (gst_element_link_many), (gst_element_link),
5023         (gst_element_link_pads), (gst_element_unlink_pads),
5024         (gst_element_unlink_many), (gst_element_unlink),
5025         (gst_pad_can_link_filtered), (gst_pad_can_link),
5026         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5027         (gst_object_default_error), (gst_bin_add_many),
5028         (gst_bin_remove_many), (gst_element_populate_std_props),
5029         (gst_element_class_install_std_props), (gst_buffer_merge),
5030         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5031         (link_fold_func), (gst_pad_proxy_setcaps):
5032         * gst/gstutils.h:
5033         * gst/gstvalue.c: (gst_value_deserialize_string):
5034         * gst/parse/grammar.y:
5035         * gst/schedulers/gstbasicscheduler.c:
5036         (gst_basic_scheduler_cothreaded_chain),
5037         (gst_basic_scheduler_chain_recursive_add),
5038         (gst_basic_scheduler_pad_link):
5039         * gst/schedulers/gstoptimalscheduler.c:
5040         (get_group_schedule_function),
5041         (gst_opt_scheduler_state_transition),
5042         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5043         * libs/gst/bytestream/bytestream.c:
5044         * libs/gst/dataprotocol/dataprotocol.c:
5045         (gst_dp_header_from_buffer):
5046         * po/nb.po:
5047         * po/ru.po:
5048         * tests/threadstate/threadstate2.c: (eos):
5049         * tools/gst-compprep.c: (main):
5050         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5051         (print_pad_info), (print_children_info):
5052         * tools/gst-launch.c: (idle_func), (main):
5053         * tools/gst-md5sum.c: (idle_func), (main):
5054         * tools/gst-xmlinspect.c: (print_element_info):
5055         First THREADED backport attempt, focusing on adding locks and
5056         making sure the API is threadsafe. Needs more work. More docs
5057         follow this week.
5058
5059 2005-02-24  Andy Wingo  <wingo@pobox.com>
5060
5061         * tests/bench-complexity.scm:
5062         * tests/complexity.gnuplot: New files, good for running complexity
5063         benchmarks.
5064
5065         * tests/Makefile.am:
5066         * tests/complexity.c: New test, sets up N elements, at each level
5067         teeing into M streams per element. Eeeenteresting.
5068
5069         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5070         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5071         running bench-mass_elements.scm.
5072
5073         * tests/bench-mass_elements.scm: New script, runs mass_elements
5074         for various numbers of identities, outputting the results to a
5075         file. Requires guile 1.6. Just for testing.
5076
5077 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5078
5079         * gst/schedulers/fairscheduler.c:
5080           compile with debug disabled
5081
5082 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5083
5084         * configure.ac:
5085           hunting season on 0.9 is now OPEN
5086
5087 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5088
5089         * docs/libs/tmpl/gstcontrol.sgml:
5090         * docs/libs/tmpl/gstdparam.sgml:
5091         * docs/libs/tmpl/gstdplinint.sgml:
5092         * docs/libs/tmpl/gstdpman.sgml:
5093         * docs/libs/tmpl/gstdpsmooth.sgml:
5094         * docs/libs/tmpl/gstunitconvert.sgml:
5095           more docs for the state of dparams
5096
5097 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5098
5099         * gst/gstelementfactory.c: (gst_element_factory_create):
5100         * gst/gstobject.c: (gst_object_init),
5101         (gst_object_set_name_default), (gst_object_set_name):
5102           name objects by default, not in gst_element_factory_create. Allows
5103           using elements created with g_object_new. (fixes #167283)
5104
5105 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5106
5107         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5108           make the time that debugging functions print relative to when
5109           gst_init was called
5110
5111 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5112
5113         * gst/gsttaginterface.c:
5114           Fix inline docs: tag setter vararg functions are NULL-terminated,
5115           GST_TAG_INVALID doesn't exist any more.
5116
5117 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5118
5119         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5120         Allocate the 1 byte more memory that was forgotten!!!!!
5121         fixes memory corruption on 64bit platforms
5122
5123 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5124
5125         * docs/pwg/building-pads.xml:
5126         * docs/pwg/intro-basics.xml:
5127           fixed a few typos, relabeled introductionary list of types
5128         * docs/random/ensonic/dparams.txt:
5129           more notes abut dparam changes
5130         * libs/gst/control/dparam.c: (gst_dparam_attach):
5131         * libs/gst/control/dparammanager.c:
5132         * libs/gst/control/dparammanager.h:
5133           - many comments and notes on dparam implementation
5134           - new dparams are were not initialized to the default value
5135             from param spec
5136
5137 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5138
5139         submitted by: Peter Astakhov
5140
5141         * po/LINGUAS:
5142         * po/ru.po:
5143           adding Russian translation
5144
5145 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5146
5147         * configure.ac:
5148         * docs/gst/Makefile.am:
5149         * docs/libs/Makefile.am:
5150           make sure popt is added to gtk-doc flags.  Fixes #147782.
5151
5152 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5153
5154         * docs/faq/using.xml:
5155           Fix typo in FAQ (artssink => artsdsink)
5156
5157 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5158
5159         * tools/gst-launch.1.in:
5160           Fix typo (#166699).
5161
5162 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5163
5164         * docs/faq/using.xml:
5165           Add -v argument to fakesrc/fakesink gst-launch line,
5166           so that the promised output will actually show up.
5167
5168 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5169
5170         * gst/gstthread.c: (gst_thread_change_state):
5171           Implement state-change error handling (#166073).
5172
5173 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5174
5175         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5176           Release interrupt after handling (#166250).
5177
5178 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5179
5180         * configure.ac:
5181           back to HEAD
5182
5183 === release 0.8.9 ===
5184
5185 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5186
5187         * NEWS:
5188         * RELEASE:
5189         * configure.ac:
5190           releasing 0.8.9, "Like Eating Glass"
5191
5192 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5193
5194         submitted by: Clytie Siddall
5195
5196         * po/vi.po: Added Vietnamese translation
5197
5198 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5199
5200         patch by: Tim Philipp-Müller
5201
5202         * configure.ac:
5203         * gst/gstpad.c:
5204           unref data when probe function returns FALSE.  Fixes #166362
5205
5206 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5207
5208         * gst/gst.c: (gst_init_get_popt_table):
5209           Fix typo (#166269).
5210
5211 2005-02-04  Andy Wingo  <wingo@pobox.com>
5212
5213         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5214         the debugging on whether the caps are compatible.
5215
5216 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5217
5218         * docs/manual/basics-elements.xml:
5219           Fix two typos.
5220
5221 2005-02-02  Wim Taymans  <wim@fluendo.com>
5222
5223         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5224         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5225         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5226         Remove some FIXMEs after analysing and commenting why they
5227         are not issues.
5228
5229 2005-02-02  Wim Taymans  <wim@fluendo.com>
5230
5231         * gst/schedulers/gstoptimalscheduler.c:
5232         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5233         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5234         (get_invalid_call), (chain_invalid_call),
5235         (get_group_schedule_function), (loop_group_schedule_function),
5236         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5237         (gst_opt_scheduler_state_transition),
5238         (gst_opt_scheduler_add_element),
5239         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5240         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5241         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5242         (gst_opt_scheduler_show):
5243         Added lock to protect scheduler data structures.
5244
5245 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5246
5247         * testsuite/threads/threadi.c: (cb_data):
5248           Fix buglet in test.
5249
5250 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5251
5252         * testsuite/threads/Makefile.am:
5253         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5254           On Wim's request, split the test in three separately-compiled
5255           tests that each test a very specific bug. Two of them still fail,
5256           will create bugs for those. threadi.c indicates why they fail.
5257
5258 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5259
5260         * gst/schedulers/gstoptimalscheduler.c:
5261         (get_group_schedule_function):
5262           Try to work with the threading mess that queue_link is.
5263
5264 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5265
5266         * gst/gstbin.c: (gst_bin_remove_func):
5267           Explicitely make an element release locks in a group when being
5268           remove from a bin.
5269         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5270           If there's no scheduler, always return immediately (similar to
5271           gst_element_interrupt).
5272
5273 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5274
5275         * gst/gstbin.c: (gst_bin_child_state_change_func):
5276           Remove a piece of code that could never be reached.
5277         * docs/gst/gstreamer-sections.txt:
5278         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5279         (gst_pad_call_get_function):
5280         * gst/gstpad.h:
5281         * testsuite/pad/Makefile.am:
5282           Fix #150546, enable tests.
5283
5284 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5285
5286         * docs/pwg/advanced-types.xml:
5287           Fix description for buffer-frames=0.
5288         * docs/gst/tmpl/gstbin.sgml:
5289         * gst/gstbin.c: (gst_bin_child_state_change_func),
5290         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5291         * gst/gstbin.h:
5292         * testsuite/threads/Makefile.am:
5293         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5294         (cb_state), (cb_play), (main):
5295           Fix non-recursive state changes to *really* change the state
5296           of the object, and not just call parent_class->state_change.
5297           Fix a lot of lockups caused by this. Fixes #132775. Add test
5298           for the problem. Also enable test to show #142588 (fixed).
5299         * gst/gstthread.c: (gst_thread_change_state),
5300         (gst_thread_child_state_change):
5301           Don't exit the thread if we go to NULL and are inside thread
5302           context. Instead, return control to the main thread context
5303           and exit from there.
5304         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5305           Don't unset virtual functions, since those may still be used.
5306           That's not necessarily correct, but suffices for now.
5307         * configure.ac:
5308         * testsuite/Makefile.am:
5309         * testsuite/pad/Makefile.am:
5310         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5311         (gst_test_sink_base_init), (gst_test_sink_chain),
5312         (gst_test_sink_init), (main):
5313         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5314         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5315         (main):
5316         * testsuite/pad/link.c: (gst_test_element_class_init),
5317         (gst_test_element_base_init), (gst_test_src_get),
5318         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5319         (gst_test_filter_loop), (gst_test_filter_init),
5320         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5321         (cb_error), (main):
5322           Add tests to show #150546. Pass, but should fail (currently
5323           disabled from the testsuite).
5324         * gst/gstscheduler.c: (gst_scheduler_dispose):
5325           Dereference child schedulers on dispose (#94464).
5326         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5327           Fix typo.
5328         * testsuite/threads/thread.c: (main):
5329           Add more debug.
5330
5331 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5332
5333         * gst/gstpad.c: (gst_pad_push):
5334           Oops, revert previous commit, broke testsuite...
5335
5336 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5337
5338         * gst/gstpad.c: (gst_pad_push):
5339           Add check that the pad on which the push is performed is not a
5340           get-based pad (#150546).
5341
5342 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5343
5344         * gst/elements/gsttypefindelement.c:
5345         (gst_type_find_element_handle_event):
5346           Fix buffer pushing if stream EOSes during typefinding.
5347
5348 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5349
5350         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5351
5352         * gst/gstvalue.c: (gst_string_wrap):
5353           Allow NULL-strings as argument (#165365).
5354
5355 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5356
5357         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5358
5359         * gst/schedulers/faircothreads.c:
5360         (gst_fair_scheduler_cothread_queue_show):
5361           Fix build without debug enabled.
5362
5363 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5364
5365         * docs/gst/gstreamer-sections.txt:
5366         * docs/libs/gstreamer-libs-docs.sgml:
5367         * docs/libs/gstreamer-libs-sections.txt:
5368         * docs/libs/tmpl/gstcontrol.sgml:
5369         * docs/libs/tmpl/gstdparam.sgml:
5370         * docs/libs/tmpl/gstdplinint.sgml:
5371         * docs/libs/tmpl/gstdpman.sgml:
5372         * docs/libs/tmpl/gstdpsmooth.sgml:
5373         * docs/libs/tmpl/gstputbits.sgml:
5374         * docs/libs/tmpl/gstunitconvert.sgml:
5375         * libs/gst/control/dparam.c:
5376         * libs/gst/control/dparam.h:
5377         * libs/gst/control/dparammanager.c:
5378         (gst_dpman_add_required_dparam_callback),
5379         (gst_dpman_add_required_dparam_direct),
5380         (gst_dpman_add_required_dparam_array),
5381         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5382         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5383         (gst_dpman_get_manager)
5384           restructured DParam docs
5385
5386 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5387
5388         * gst-element-check.m4:
5389           Only check for gst-inspect if we haven't already
5390           found it in previous element check runs
5391
5392 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5393
5394         * docs/gst/Makefile.am:
5395         * docs/libs/Makefile.am:
5396           fixed install rules to treat style.css as optional
5397
5398 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5399
5400         * docs/gst/Makefile.am:
5401         * docs/libs/Makefile.am:
5402           install style.css along with docs
5403         * docs/gst/tmpl/gstbin.sgml:
5404         * docs/gst/tmpl/gstclock.sgml:
5405         * docs/gst/tmpl/gstdata.sgml:
5406         * docs/gst/tmpl/gstelement.sgml:
5407         * gst/gstbin.h:
5408         * gst/gstelement.c: (gst_element_class_init):
5409         * gst/gstelement.h:
5410           fixing incomplete docs
5411
5412 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5413
5414         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5415           Don't unref seek event twice when fflush() fails
5416           
5417 2005-01-22  David Schleef  <ds@schleef.org>
5418
5419         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5420
5421 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5422
5423         * docs/gst/Makefile.am:
5424         * docs/libs/Makefile.am:
5425           added params for deprecation guards
5426         * gst/gst.c:
5427         * gst/gst.h:
5428         * gst/gsterror.c: (_gst_resource_errors_init),
5429         (_gst_stream_errors_init):
5430         * gst/gsterror.h:
5431           documented some more enums
5432
5433 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5434         * gst/autoplug/gstspideridentity.c:
5435         Cosmetic fix - spider_find_peek should be static
5436         * gst/parse/parse.l:
5437         Applying fix for #164261
5438
5439 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5440
5441         * docs/gst/gstreamer-sections.txt:
5442         * docs/gst/tmpl/gstplugin.sgml:
5443         * docs/libs/gstreamer-libs-sections.txt:
5444         * docs/libs/tmpl/gstcontrol.sgml:
5445         * gst/gstbuffer.h:
5446         * gst/gsttag.h:
5447         * gst/gstvalue.c:
5448           added docs for the TAG defines
5449
5450 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5451
5452         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5453           Only unref entry if there is an entry.
5454
5455 2005-01-17  Wim Taymans  <wim@fluendo.com>
5456
5457         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5458         (remove_from_group), (schedule_group), (normalize_group),
5459         (gst_opt_scheduler_iterate):
5460         Also ref/unref decoupled elements before iterating the
5461         group since they are not added to the list of elements.
5462
5463 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5464
5465         * docs/manual/highlevel-components.xml:
5466           Add subtitle/streamselection as new features to playbin.
5467
5468 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5469
5470         * docs/manual/manual.xml:
5471           Re-enable dataaccess docs (oops).
5472
5473 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5474
5475         * docs/pwg/advanced-types.xml:
5476         * docs/random/mimetypes:
5477           Add documentation on libsndfile types (#163309), by Steve Baker
5478           <steve@stevebaker.org>.
5479         * gst/gstelement.c: (gst_element_release_request_pad):
5480           If an element has no explicit function, just remove the pad.
5481
5482 2005-01-17  Luca Ognibene  <luogni@tin.it>
5483
5484         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5485
5486         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5487           Fix memleak (#163801).
5488
5489 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5490
5491         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5492           I think this is actually more correct...
5493
5494 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5495
5496         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5497           Another workaround for memory access while destroyed in callback.
5498           Please, someone with refcount knowledge, have a look at this.
5499
5500 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5501
5502         * docs/faq/faq.xml:
5503         * docs/faq/legal.xml:
5504           move the legal Q&A here
5505
5506 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5507
5508         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5509         (gst_tee_request_new_pad):
5510           Fix negotiation.
5511
5512 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5513
5514         * docs/random/omega/caps2:
5515         * testsuite/caps/caps_strings:
5516           replace framerate aproximations by their real value
5517           (24000/1001, 30000/1001, 60000/1001)
5518           Partially fixes bug #164049
5519
5520 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5521
5522         * docs/gst/Makefile.am:
5523           don't fail on the stupid GstPoptOption
5524
5525 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5526
5527         * gst/gstpad.h:
5528         * gst/gstprobe.c:
5529           allow probes to work on ghost pads by realizing the pad
5530           probe debugging
5531
5532 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5533
5534         * docs/gst/gstreamer-sections.txt:
5535         * docs/gst/tmpl/gstpad.sgml:
5536         * gst/gstpad.c: (gst_pad_set_active_recursive):
5537         * gst/gstpad.h:
5538           Add gst_pad_set_active_recursive().
5539
5540 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5541
5542         * docs/random/release:
5543           updates
5544         * gst/gst_private.h:
5545         * gst/gstinfo.c:
5546         * gst/gstobject.c:
5547           move deep_notify logging to a new category
5548         * gst/gstprobe.c:
5549         * gst/gstprobe.h:
5550           add stuff so bindings can wrap probes
5551
5552 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5553
5554         * gst/gstplugin.c: (gst_plugin_load):
5555           Fix plugin loading if plugin/lib was already loaded. Fixes
5556           #163383
5557
5558 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5559
5560         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5561
5562         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5563           Protect plugin loading by a mutex so it's threadsafe. Fixes
5564           #163234.
5565
5566 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5567
5568         * gst/gstevent.c: (_gst_event_copy):
5569           Reference source object when copying events, since it'll be
5570           dereferenced on event dereferencing as well.
5571
5572 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5573
5574         * docs/gst/gstreamer-sections.txt:
5575         * docs/gst/tmpl/gstevent.sgml:
5576         * gst/gstevent.c: (gst_event_new_filler_stamped),
5577         (gst_event_filler_get_duration):
5578         * gst/gstevent.h:
5579           Add two new functions for filler events (which are used to
5580           synchronize streams if one of them is not having any data
5581           for a while) without interrupting the actual data-stream.
5582           Basically a no-op.
5583         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5584         (gst_queue_link_sink), (gst_queue_link_src),
5585         (gst_queue_change_state):
5586           Allow for renegotiation while filled. Required for stream
5587           switching while playing.
5588
5589 2005-01-08  Benjamin Otte  <otte@gnome.org>
5590
5591         * gst/gstelement.c: (gst_element_link_many):
5592           fix up g_return_if_fail's
5593         * po/LINGUAS:
5594         * po/de.po:
5595           add German translation, that was somehow not included
5596
5597 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5598
5599         * docs/random/mimetypes:
5600           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5601           do not add them to riff-lib as they are not common
5602
5603 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5604
5605         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5606           Check for existence of probe after performing the probe before
5607           re-accessing it to prevent segfaults caused by removal of the
5608           probe in the callback.
5609
5610 2005-01-05  David Schleef  <ds@schleef.org>
5611
5612         * testsuite/registry/Makefile.am:
5613         * testsuite/registry/gst-print-formats.c:
5614         (print_pad_templates_info), (print_element_list),
5615         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5616         (g_list_uniqify), (get_pad_templates_info),
5617         (get_element_mime_list), (print_mime_list), (main): A little
5618         program that looks through the registry to find elements of
5619         a given type.  Not particularly interesting as a test, except
5620         that there's no other test covering the same area.
5621
5622 2005-01-05  David Schleef  <ds@schleef.org>
5623
5624         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5625         (fault_handler_sigaction), (fault_spin),
5626         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5627         in signal.h-type signal handlers by not calling forbidden functions,
5628         including gst_element_set_state().
5629
5630 2005-01-05  David Schleef  <ds@schleef.org>
5631
5632         * gst/gstvalue.h: Mark _gst_reserved[] as private
5633
5634 2005-01-05  David Schleef  <ds@schleef.org>
5635
5636         * gst/gstvalue.c: Fix doc build problem.
5637
5638 2005-01-05  David Schleef  <ds@schleef.org>
5639
5640         * gst/gstvalue.c: Add some documentation
5641
5642 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5643
5644         * docs/README:
5645           another shell oneliner for empty return value docs
5646         * gst/gstcaps.c:
5647         * gst/gstvalue.c:
5648         * libs/gst/control/dparam.c:
5649           more doc fixes (parameters and return values)
5650
5651 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5652
5653         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5654
5655         * gst/gstregistry.h:
5656         * gst/registries/gstxmlregistry.c:
5657           Fix macro's for Mingw (fixes #162276).
5658
5659 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5660
5661         * docs/README:
5662           quick shell oneliner to find undocumented members
5663         * docs/gst/tmpl/gstplugin.sgml:
5664         * docs/gst/tmpl/gstscheduler.sgml:
5665         * docs/gst/tmpl/gstthread.sgml:
5666           more enumtypes cleanup
5667         * gst/gsterror.h:
5668           activated documentation comments, now someone needs to document
5669           the enums :(
5670
5671 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5672
5673         * docs/manual/manual.xml:
5674           Add dataaccess part (doh!).
5675
5676 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5677
5678         * docs/manual/advanced-autoplugging.xml:
5679           Fix typo (intiate -> initiate).
5680
5681 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5682
5683         * docs/random/bbb/streamselection:
5684           Add some notes on how to handle multi-subtitle/-audio streams.
5685
5686 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5687
5688         * docs/gst/gstreamer-docs.sgml:
5689         * docs/gst/gstreamer-sections.txt:
5690         * docs/gst/tmpl/gstenumtypes.sgml:
5691         * docs/gst/tmpl/gsterror.sgml:
5692         * docs/gst/tmpl/gstevent.sgml:
5693         * docs/gst/tmpl/gstpad.sgml:
5694         * docs/gst/tmpl/gstpadtemplate.sgml:
5695         * docs/gst/tmpl/gstthread.sgml:
5696           removed gstenumtypes section from docs and put all the enums into
5697           their sections
5698
5699 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5700
5701         * gst/gstplugin.c:
5702           document gst_library_load a bit more (riff special case + return
5703           value if already loaded)
5704         * testsuite/bytestream/filepadsink.c:
5705           plugin name is 'gstbytestream', not 'bytestream'
5706
5707 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5708
5709         * docs/random/bbb/subtitles:
5710           Add some first mind rumblings on proper subtitle support.
5711
5712 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5713
5714         * po/ca.po:
5715         * po/sv.po:
5716           updated translations
5717
5718 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5719
5720         * docs/manual/advanced-dataaccess.xml:
5721           Add section on how to use fakesrc/fakesink/identity in your
5722           application, plus section on how to embed plugins. Also mention
5723           probes.
5724         * docs/manual/appendix-checklist.xml:
5725         * docs/manual/appendix-debugging.xml:
5726         * docs/manual/appendix-gnome.xml:
5727         * docs/manual/appendix-integration.xml:
5728           Debug -> checklist, GNOME -> integration, add sections on Linux,
5729           KDE integration and add other things useful for application
5730           development.
5731         * docs/manual/manual.xml:
5732           Remove some fixmes, update some file pointers.
5733         * docs/pwg/appendix-checklist.xml:
5734           Fix typo.
5735         * docs/pwg/building-boiler.xml:
5736           Remove ugly header and add commented fixme.
5737         * docs/pwg/pwg.xml:
5738           Add fixme.
5739         * examples/manual/Makefile.am:
5740           Add example for added docs.
5741
5742 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5743
5744         * configure.ac:
5745           back to HEAD
5746
5747 === release 0.8.8 ===
5748
5749 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5750
5751         * NEWS:
5752         * RELEASE:
5753         * configure.ac:
5754           Releasing 0.8.8, "I'll Take Care Of You"
5755
5756 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5757
5758         * configure.ac:
5759           second prerelease
5760
5761 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5762
5763         patch by: Wim Taymans
5764
5765         * gst/gstbin.c:
5766           Fix for #159852 - make iterate emission threadsafe
5767
5768 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5769
5770         * docs/faq/cvs.xml:
5771           notes about new fdo account request
5772
5773 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5774
5775         * docs/gst/gstreamer-docs.sgml:
5776         * docs/gst/tmpl/gstenumtypes.sgml:
5777         * docs/gst/tmpl/gstplugin.sgml:
5778         * docs/libs/gstreamer-libs-docs.sgml:
5779           Added missing short docs. Added ids for navigation.
5780
5781 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5782
5783         * docs/manual/advanced-autoplugging.xml:
5784         * docs/manual/advanced-schedulers.xml:
5785         * docs/manual/advanced-threads.xml:
5786           Rewrites. Remove cothreads, go a bit into opt specifically,
5787           document threads and their gotchas, and do some technical stuff
5788           on autoplugging plus add some working examples. Fixes #157395.
5789         * examples/manual/Makefile.am:
5790           Add typefind/autoplugger example (one that actually works).
5791           Remove queue example since it's a duplicate of the thread one.
5792
5793 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5794
5795         * gst/gstvalue.c: (gst_value_deserialize_string):
5796           use deprecated g_value_set_string_take_ownership to keep compatible
5797           with glib 2.2
5798
5799 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5800
5801         * gst/gstvalue.c: (gst_value_deserialize_string):
5802           revert last patch, only dom a g_utf8_validate now before accepting
5803           the string - caps parsing strips " from strings so we can't rely on
5804           them
5805         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5806           disable a test that tested the above and comment it
5807
5808 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5809
5810         Patch reviewed by David Schleef  <ds@schleef.org>
5811
5812         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5813         bug #153882)
5814         * win32/gstenumtypes.h: same
5815
5816 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5817
5818         * gst/gstpad.c: (gst_pad_query):
5819           Do query on realized pad, similar to how convert/send_event handle
5820           this. Also makes sense, since this pad belongs to the function to
5821           which this query will be sent. Fixes #158163.
5822
5823 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5824
5825         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5826
5827 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5828
5829         * docs/faq/general.xml: fix pipeline to actually work
5830
5831 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5832
5833         * gst/gstvalue.c: (gst_value_deserialize_string):
5834           check that a simple string that gets deserialized does not contain
5835           invalid characters
5836         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5837           remove a test that tested a wring behaviour
5838
5839 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5840
5841         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5842
5843         * docs/manual/intro-motivation.xml:
5844           Fix typos.
5845
5846 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5847
5848         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5849
5850         * docs/gst/tmpl/gstprobe.sgml:
5851           Fix documentation of probe callback - it is supposed to return
5852           FALSE, not TRUE, to remove data from the stream (#159087).
5853
5854 2004-12-16  Daniel Gazard  <dany42@free.fr>
5855
5856         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5857
5858         * gst/gstelementfactory.c: (gst_element_factory_create):
5859           Fix compile failure if compiling without libxml2 support (#149936).
5860
5861 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5862
5863         * docs/manual/advanced-autoplugging.xml:
5864         * docs/manual/highlevel-components.xml:
5865           Move spider from autoplugging to components. Autoplugging is for
5866           internals, not for solutions. ;-).
5867
5868 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5869
5870         * docs/random/ds/0.9-suggested-changes:
5871           Make note on device/location/uri property names.
5872
5873 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5874
5875         * docs/manual/advanced-autoplugging.xml:
5876         * docs/manual/advanced-clocks.xml:
5877         * docs/manual/advanced-interfaces.xml:
5878         * docs/manual/advanced-metadata.xml:
5879         * docs/manual/advanced-position.xml:
5880         * docs/manual/advanced-schedulers.xml:
5881         * docs/manual/advanced-threads.xml:
5882         * docs/manual/appendix-gnome.xml:
5883         * docs/manual/appendix-programs.xml:
5884         * docs/manual/appendix-quotes.xml:
5885         * docs/manual/autoplugging.xml:
5886         * docs/manual/basics-bins.xml:
5887         * docs/manual/basics-data.xml:
5888         * docs/manual/basics-elements.xml:
5889         * docs/manual/basics-helloworld.xml:
5890         * docs/manual/basics-init.xml:
5891         * docs/manual/basics-pads.xml:
5892         * docs/manual/basics-plugins.xml:
5893         * docs/manual/bins-api.xml:
5894         * docs/manual/bins.xml:
5895         * docs/manual/buffers-api.xml:
5896         * docs/manual/buffers.xml:
5897         * docs/manual/clocks.xml:
5898         * docs/manual/components.xml:
5899         * docs/manual/cothreads.xml:
5900         * docs/manual/debugging.xml:
5901         * docs/manual/dparams-app.xml:
5902         * docs/manual/dynamic.xml:
5903         * docs/manual/elements-api.xml:
5904         * docs/manual/elements.xml:
5905         * docs/manual/factories.xml:
5906         * docs/manual/gnome.xml:
5907         * docs/manual/goals.xml:
5908         * docs/manual/helloworld.xml:
5909         * docs/manual/helloworld2.xml:
5910         * docs/manual/highlevel-components.xml:
5911         * docs/manual/highlevel-xml.xml:
5912         * docs/manual/init-api.xml:
5913         * docs/manual/intro-basics.xml:
5914         * docs/manual/intro-motivation.xml:
5915         * docs/manual/intro-preface.xml:
5916         * docs/manual/intro.xml:
5917         * docs/manual/links-api.xml:
5918         * docs/manual/links.xml:
5919         * docs/manual/manual.xml:
5920         * docs/manual/motivation.xml:
5921         * docs/manual/pads-api.xml:
5922         * docs/manual/pads.xml:
5923         * docs/manual/plugins-api.xml:
5924         * docs/manual/plugins.xml:
5925         * docs/manual/programs.xml:
5926         * docs/manual/queues.xml:
5927         * docs/manual/quotes.xml:
5928         * docs/manual/schedulers.xml:
5929         * docs/manual/states-api.xml:
5930         * docs/manual/states.xml:
5931         * docs/manual/threads.xml:
5932         * docs/manual/typedetection.xml:
5933         * docs/manual/win32.xml:
5934         * docs/manual/xml.xml:
5935           Try 2. This time, include a short preface as a "general
5936           introduction", also add code blocks around all code samples
5937           so they get compiled. We still need a way to tell readers
5938           the filename of the code sample. In some cases, don't show
5939           all code in the documentation, but do include it in the generated
5940           code. This allows for focussing on specific bits in the docs,
5941           while still having a full test application available.
5942         * examples/manual/Makefile.am:
5943           Fix up examples for new ADM. Add several of the new examples that
5944           were either added or were missing from the build system.
5945         * examples/manual/extract.pl:
5946           Allow nameless blocks.
5947
5948 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5949
5950         * docs/manual/elements-api.xml:
5951         * docs/manual/helloworld.xml:
5952         * examples/manual/extract.pl:
5953           fix last example.  Add example of adding code blocks that are not
5954           shown in docbook output.
5955
5956 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5957
5958         * docs/manual/dynamic.xml:
5959         * docs/manual/elements-api.xml:
5960         * docs/manual/gnome.xml:
5961         * docs/manual/helloworld2.xml:
5962         * docs/manual/init-api.xml:
5963         * docs/manual/queues.xml:
5964         * docs/manual/threads.xml:
5965         * docs/manual/xml.xml:
5966         * examples/manual/extract.pl:
5967           Make it possible to extract example code from separate blocks.
5968           Should make Ronald happy.
5969
5970 2004-12-15  Wim Taymans  <wim@fluendo.com>
5971
5972         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5973         (remove_from_group), (group_elements_set_visited),
5974         (normalize_group), (gst_opt_scheduler_iterate):
5975         Fix bug where a flag was not updated on a decoupled entry point 
5976         because we were just checking the group element list and decoupled
5977         elements are not in that list..
5978
5979 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5980
5981         * docs/manual/advanced-autoplugging.xml:
5982         * docs/manual/advanced-clocks.xml:
5983         * docs/manual/advanced-dparams.xml:
5984         * docs/manual/advanced-interfaces.xml:
5985         * docs/manual/advanced-metadata.xml:
5986         * docs/manual/advanced-position.xml:
5987         * docs/manual/advanced-schedulers.xml:
5988         * docs/manual/advanced-threads.xml:
5989         * docs/manual/appendix-debugging.xml:
5990         * docs/manual/appendix-gnome.xml:
5991         * docs/manual/appendix-programs.xml:
5992         * docs/manual/appendix-quotes.xml:
5993         * docs/manual/appendix-win32.xml:
5994         * docs/manual/autoplugging.xml:
5995         * docs/manual/basics-bins.xml:
5996         * docs/manual/basics-data.xml:
5997         * docs/manual/basics-elements.xml:
5998         * docs/manual/basics-helloworld.xml:
5999         * docs/manual/basics-init.xml:
6000         * docs/manual/basics-pads.xml:
6001         * docs/manual/basics-plugins.xml:
6002         * docs/manual/bins-api.xml:
6003         * docs/manual/bins.xml:
6004         * docs/manual/buffers-api.xml:
6005         * docs/manual/buffers.xml:
6006         * docs/manual/clocks.xml:
6007         * docs/manual/components.xml:
6008         * docs/manual/cothreads.xml:
6009         * docs/manual/debugging.xml:
6010         * docs/manual/dparams-app.xml:
6011         * docs/manual/dynamic.xml:
6012         * docs/manual/elements-api.xml:
6013         * docs/manual/elements.xml:
6014         * docs/manual/factories.xml:
6015         * docs/manual/gnome.xml:
6016         * docs/manual/goals.xml:
6017         * docs/manual/helloworld.xml:
6018         * docs/manual/helloworld2.xml:
6019         * docs/manual/highlevel-components.xml:
6020         * docs/manual/highlevel-xml.xml:
6021         * docs/manual/init-api.xml:
6022         * docs/manual/intro-motivation.xml:
6023         * docs/manual/intro-preface.xml:
6024         * docs/manual/intro.xml:
6025         * docs/manual/links-api.xml:
6026         * docs/manual/links.xml:
6027         * docs/manual/manual.xml:
6028         * docs/manual/motivation.xml:
6029         * docs/manual/pads-api.xml:
6030         * docs/manual/pads.xml:
6031         * docs/manual/plugins-api.xml:
6032         * docs/manual/plugins.xml:
6033         * docs/manual/programs.xml:
6034         * docs/manual/queues.xml:
6035         * docs/manual/quotes.xml:
6036         * docs/manual/schedulers.xml:
6037         * docs/manual/states-api.xml:
6038         * docs/manual/states.xml:
6039         * docs/manual/threads.xml:
6040         * docs/manual/typedetection.xml:
6041         * docs/manual/win32.xml:
6042         * docs/manual/xml.xml:
6043           First try at rewriting the ADM. Needs lotsamore work, but some
6044           parts might already be somewhat useful.
6045         * docs/pwg/advanced-interfaces.xml:
6046           Remove properties interface, it never actually existed (except for
6047           on my HD...).
6048
6049 2004-12-13  David Schleef  <ds@schleef.org>
6050
6051         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6052         be NULL (bug #160220).
6053
6054 2004-12-13  David Schleef  <ds@schleef.org>
6055
6056         * configure.ac: remove all mmx stuff, because it's not used.
6057         * docs/random/ds/0.9-suggested-changes: additional notes
6058         * include/Makefile.am: we don't use these anymore
6059         * include/mmx.h: remove
6060         * include/sse.h: remove
6061
6062 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6063
6064         * docs/random/mimetypes:
6065           Add FOURCC code for h264 codec (VSSH)
6066           Add alternate FOURCC codes for h263 related codecs
6067
6068 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6069
6070         * docs/manual/programs.xml:
6071           Added more gst-launch examples.
6072
6073 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6074
6075         * gst/gstqueue.c: (gst_queue_handle_src_query):
6076           Check for availability again.
6077
6078 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6079
6080         * gst/gstcaps.c: (gst_caps_compare_structures):
6081           Simple caps go first. This has the nice side-effect of fixing an
6082           obscure warning.
6083
6084 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6085
6086         * gst/gstversion.h.in:
6087           Protect header.
6088
6089 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6090
6091         * gst/schedulers/gstoptimalscheduler.c:
6092         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6093         (gst_opt_scheduler_get_wrapper):
6094           When we're recursing into a chain run, only run the directly
6095           related group, not all queued ones. This will fix a possible
6096           deadlock in chains with more than two groups.
6097
6098 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6099
6100         * autogen.sh:
6101           remove patch if autopoint fails
6102
6103 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6104
6105         * docs/gst/gstreamer-sections.txt:
6106           Document Thomas' addition, fix build, make Luis the sheriff happy.
6107
6108 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6109
6110         * gst/gstplugin.c:
6111         * gst/gstplugin.h:
6112           add accessor for version field
6113
6114 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6115
6116         submitted by: Luca Ferretti <elle.uca@infinito.it>
6117
6118         * po/LINGUAS:
6119         * po/it.po:
6120           New tranlation added: Italian
6121
6122 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6123
6124         * gst/gstpad.c: (gst_pad_is_negotiated),
6125         (gst_pad_get_negotiated_caps):
6126           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6127           it doesn't actually check the contents), so be sure to hand it
6128           a RealPad else we'll crash.
6129
6130 2004-12-03  Wim Taymans  <wim@fluendo.com>
6131
6132         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6133         (gst_queue_link), (gst_queue_handle_src_query):
6134         Reverted to 1.110 until this makes the testsuite and various
6135         apps work.
6136
6137 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6138
6139         * docs/upload.mak: fix included CVS conflict strings
6140
6141 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6142
6143         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6144
6145         * gst/gstelement.c: (gst_element_error_full):
6146           Use g_error_new_literal because error text may have
6147           percentage signs in it. Fixes #160019.
6148
6149 2004-12-01  Benjamin Otte  <otte@gnome.org>
6150
6151         * gst/elements/gstbufferstore.c:
6152         (gst_buffer_store_add_buffer_func):
6153           don't try to make subbuffers bigger than they can be. (fixes
6154           #159970)
6155
6156 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6157
6158         * docs/gst/gstreamer-sections.txt:
6159         * docs/gst/tmpl/gstvalue.sgml:
6160           Add new function to docs to fix build.
6161
6162 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6163
6164         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6165         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6166         (_gst_pad_default_fixate_foreach):
6167         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6168         * gst/gstvalue.h:
6169           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6170           in some cases (arrays), the fixedness depends on the content.
6171         * gst/gstqueue.c: (gst_queue_handle_src_query):
6172           Check for availability before doing something.
6173
6174 2004-11-29  Wim Taymans  <wim@fluendo.com>
6175
6176         * testsuite/threads/Makefile.am:
6177         * testsuite/threads/signals.c: (gst_test_get_type),
6178         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6179         (gst_test_set_property), (gst_test_get_property),
6180         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6181         (gst_test_do_prop), (run_thread), (main):
6182         Added a bunch of testcases that show threadsafety bugs in glib.
6183
6184 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6185
6186         * docs/manual/programs.xml:
6187           Added a first batch of gst-launch examples, as provided by Ronald
6188           and others from the devel-mlist
6189
6190 2004-11-28  Benjamin Otte  <otte@gnome.org>
6191
6192         * gst/gstelement.c: (gst_element_negotiate_pads):
6193           simplify
6194         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6195         (gst_value_serialize_string), (gst_value_deserialize_string):
6196           add unwrapping of previously wrapped strings. Fix bug in wrapping
6197           while at it.
6198         * testsuite/caps/value_serialize.c: (test1),
6199         (test_string_serialization), (test_string_deserialization), (main):
6200           add tests for string (de)serialization
6201
6202 2004-11-26  Wim Taymans  <wim@fluendo.com>
6203
6204         * testsuite/threads/159566.c: (object_deep_notify), (main):
6205         * testsuite/threads/Makefile.am:
6206         Added testsuite to show bug #159566
6207
6208 2004-11-25  Wim Taymans  <wim@fluendo.com>
6209
6210         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6211         (gst_thread_child_state_change), (gst_thread_main_loop):
6212         Ref the thread object in the GThread mainloop. Break out of the
6213         thread mainloop if it holds the last ref. This properly exits
6214         the threads when disposing the thread from its own context. It
6215         also avoids possible deadlocks in the dispose function.
6216
6217 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6218
6219         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6220         it is necessary to wait.
6221
6222 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6223
6224         * docs/pwg/building-boiler.xml:
6225           Make description somewhat clearer.
6226
6227 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6228
6229         * docs/upload.mak:
6230           Apparently docs changed location on FDO's server.
6231
6232 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6233
6234         * docs/pwg/appendix-checklist.xml:
6235           Add some random notes on things to check when writing an element.
6236           This list can be extended as people see fit.
6237
6238 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6239
6240         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6241         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6242         pad. The queue will now wait until it is empty and forward the new
6243         caps to the source.
6244         * gst/gstbin.c (gst_bin_set_element_sched)
6245         (gst_bin_unset_element_sched): Make sure that all elements and
6246         links are registered and unregistered with the scheduler exactly
6247         once. This elaborates on a fix by Benjamin Otte, but
6248         guarantees that decoupled elements are also registered.
6249
6250 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6251
6252         * docs/manual/quotes.xml:
6253           add a quote
6254         * configure.ac:
6255         * gst/gst.c:
6256         * gst/gstinfo.c:
6257           add LIBDIR and move init message higher up so it's at the start
6258
6259 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6260
6261         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6262         * gstreamer.spec.in: add fair
6263
6264 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6265
6266         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6267         * gst/elements/gstidentity.c: (gst_identity_class_init):
6268           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6269           <teuf@gnome.org> (#157263).
6270         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6271         (gst_type_find_handle_src_query):
6272           Subtract size of internally stored data from position queries.
6273
6274 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6275
6276         * gst/schedulers/fairscheduler.c:
6277         * gst/schedulers/faircothreads.c:
6278         * gst/schedulers/faircothreads.h:
6279         New cothread based scheduler: Fair scheduler.
6280         * gst/schedulers/gthread-cothreads.h: 
6281         Add the standard #if around the whole file.
6282         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6283         compilation of the functions defined in this file. This is
6284         necessary to be able to use this file as a normal header.
6285         * gst/schedulers/Makefile.am: Add compiling support for fair
6286         scheduler.
6287         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6288         scheduler cothreads layer from documentation generation.
6289
6290 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6291
6292         * gst/autoplug/gstspideridentity.c:
6293         (gst_spider_identity_sink_loop_type_finding):
6294           Don't crash if that function is not implemented.
6295
6296 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6297
6298         * docs/pwg/advanced-types.xml:
6299           Another typo.
6300
6301 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6302
6303         * docs/pwg/intro-preface.xml:
6304           Hm, ok, so the brackets weren't really useful...
6305         * docs/pwg/other-ntoone.xml:
6306           Fix embarassing typo.
6307
6308 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6309
6310         * docs/pwg/intro-preface.xml:
6311           Rewrite preface.
6312
6313 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6314
6315         * docs/pwg/advanced-scheduling.xml:
6316         * docs/pwg/advanced-tagging.xml:
6317         * docs/pwg/advanced-types.xml:
6318         * docs/pwg/building-boiler.xml:
6319         * docs/pwg/building-chainfn.xml:
6320         * docs/pwg/building-signals.xml:
6321         * docs/pwg/building-state.xml:
6322         * docs/pwg/building-testapp.xml:
6323         * docs/pwg/intro-basics.xml:
6324         * docs/pwg/other-manager.xml:
6325         * docs/pwg/other-source.xml:
6326           Typo fixes.
6327         * docs/pwg/other-manager.xml:
6328           Add some first content. No example code yet.
6329         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6330           Remove double newlines.
6331
6332 2004-11-04  Wim Taymans  <wim@fluendo.com>
6333
6334         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6335         (remove_from_group), (normalize_group), (group_migrate_connected),
6336         (gst_opt_scheduler_iterate):
6337         * testsuite/schedulers/.cvsignore:
6338         * testsuite/schedulers/Makefile.am:
6339         * testsuite/schedulers/queue_link.c: (main):
6340         Added testcase for scheduler segfault.
6341         Fix scheduler segfault when removing a decoupled
6342         entry point as the last element from a group.
6343
6344 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6345
6346         * gst/gstmarshal.list: add missing marshaller, fixes build
6347
6348 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6349
6350         * docs/random/signal: added notes about using BOXED for GstBuffer
6351         signal marshallers, not POINTER
6352
6353 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6354
6355         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6356         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6357         POINTER=>BOXED changes to marshal GstBuffers
6358
6359 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6360
6361         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6362         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6363
6364 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6365
6366         * docs/gst/gstreamer-sections.txt:
6367         * docs/gst/tmpl/gstcaps.sgml:
6368         * docs/gst/tmpl/gsterror.sgml:
6369         * docs/gst/tmpl/gstinfo.sgml:
6370         * docs/gst/tmpl/gstmacros.sgml:
6371         * docs/gst/tmpl/gstutils.sgml:
6372         * docs/random/ensonic/interfaces.txt:
6373         * gst/gstinfo.h:
6374           added some more docs, removed two obsolete defines
6375
6376 2004-11-02  Kjartan Maraas <as at gnome.org>
6377
6378         reviewed by: Wim Taymans, Ronald Bultje.
6379
6380         * gst/cothreads.c: (cothread_create):
6381         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6382         (gst_bin_child_state_change_func):
6383         * gst/gstbuffer.c: (gst_buffer_span):
6384         * gst/gstelement.c: (gst_element_get_index),
6385         (gst_element_get_event_masks), (gst_element_get_query_types),
6386         (gst_element_get_formats):
6387         * gst/gsterror.c: (_gst_core_errors_init),
6388         (_gst_library_errors_init), (_gst_resource_errors_init),
6389         (_gst_stream_errors_init):
6390         * gst/gstobject.c: (gst_object_default_deep_notify):
6391         * gst/gstpad.c: (gst_pad_get_event_masks),
6392         (gst_pad_get_internal_links_default):
6393         * gst/gstplugin.c: (gst_plugin_register_func),
6394         (gst_plugin_get_module):
6395         * gst/gststructure.c: (gst_structure_get_string),
6396         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6397         (gst_structure_to_abbr):
6398         * gst/gstutils.c: (gst_print_element_args):
6399         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6400         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6401         Aplied part of patch #157127: Cleanup of issues reported by 
6402         sparse.
6403         Also do not try to use cothreads when there is no cothread
6404         context yet.
6405
6406 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6407
6408         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6409         (gst_opt_scheduler_iterate):
6410         Applied patch #154061. Running a pipeline in which an element 
6411         calls GST_ELEMENT_ERROR in the chain function, the opt 
6412         scheduler doesn't unref the chain so it never gets freed.
6413
6414 2004-11-02  Wim Taymans  <wim@fluendo.com>
6415
6416         * gst/gststructure.c: (gst_structure_get_abbrs),
6417         (gst_structure_from_abbr), (gst_structure_to_abbr):
6418         Remove that ugly if-then thing in the code that converts
6419         between strings and types.
6420
6421 2004-11-02  Wim Taymans  <wim@fluendo.com>
6422
6423         * gst/gstscheduler.c: (gst_scheduler_add_element),
6424         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6425         Aplied clock distribution patch, this should fix bug
6426         #148787.
6427
6428 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6429
6430         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6431
6432         * po/LINGUAS:
6433         * po/nb.po:
6434           Added Norwegian Bokmaal translation
6435
6436 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6437
6438         * tools/gst-inspect.c: (print_signal_info):
6439           print signal arguments as pointers if they are
6440
6441 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6442
6443         * docs/pwg/building-boiler.xml:
6444           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6445
6446 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6447
6448         * gst/parse/parse.l:
6449         * testsuite/parse/parse1.c: (main):
6450         Since parse can do 'element name=a:b' make 'a:b.' work as
6451         well. 
6452         Added testcase to verify fix.
6453
6454 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6455
6456         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6457         Use the realpad when printing the direction.
6458         Add extra \n when printing extensions of typefind factories.
6459
6460 2004-10-13  David Schleef  <ds@schleef.org>
6461
6462         * examples/manual/Makefile.am: $< isn't portable in Makefile
6463         rules.
6464
6465 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6466
6467         * docs/gst/tmpl/gstobject.sgml:
6468         * docs/gst/tmpl/gstplugin.sgml:
6469         * docs/gst/tmpl/gstpluginfeature.sgml:
6470         * docs/gst/tmpl/gstregistry.sgml:
6471         * docs/gst/tmpl/gstversion.sgml:
6472         * gst/gstbin.c:
6473           more api documentation
6474         * gst/gstplugin.c: (gst_plugin_register_func),
6475         (gst_plugin_check_file), (gst_plugin_load_file):
6476           better error signaling and logging
6477
6478 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6479
6480         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6481           Subtract current queue contents from position queries.
6482
6483 2004-10-11  Johan Dahlin  <johan@gnome.org>
6484
6485         * gst/gsturi.c (gst_uri_get_location): unescape string
6486         (gst_uri_construct): escape string.
6487
6488 2004-10-11  Benjamin Otte  <otte@gnome.org>
6489
6490         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6491         (gst_pad_try_set_caps_nonfixed):
6492           allow renegotiation of unconnected pads (as inside spider). Simply
6493           return OK if unconnected - mimic try_set_caps there.
6494
6495 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6496
6497         * gst/gstbin.c: (gst_bin_sync_children_state):
6498           Add missing break.
6499
6500 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6501
6502         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6503         Set element to EOS before sending EOS event
6504
6505 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6506
6507         * gst/elements/gsttypefindelement.c:
6508         (gst_type_find_element_handle_event):
6509         Handle EOS events when doing the transition from
6510         typefind to data passing. This should fix the
6511         infinite loops in short files.
6512
6513 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6514
6515         * gst/gstthread.c: (gst_thread_change_state),
6516         (gst_thread_child_state_change):
6517         Make sure no iteration happens while performing
6518         the state change as it could mess up the internal
6519         consistency of the thread state.
6520
6521 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6522
6523         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6524         (gst_thread_change_state), (gst_thread_child_state_change):
6525         Do not try to grab the iterate lock in the state change method
6526         when we are in the same thread as the iterate or else we
6527         could deadlock. Some other cleanups.
6528
6529 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6530
6531         * configure.ac:
6532           bump nano to cvs
6533
6534 === release 0.8.7 ===
6535
6536 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6537
6538         * configure.ac:
6539         * NEWS:
6540         * RELEASE:
6541         * configure.ac:
6542           releasing 0.8.7, "A Cruise"
6543
6544 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6545
6546         * docs/random/mimetypes:
6547         Add an entry for Sony ATRAC3 audio format with mime-type
6548         used by rmdemux et riff-read
6549
6550 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6551
6552         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6553         Push the buffer store instead of clearing it in case that
6554         the stream is not seekable.
6555
6556 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6557
6558         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6559         (gst_thread_main_loop):
6560         Lock the iteration and the state change so that automatic
6561         negotiation and fixation does not happen at the same time
6562         as the in stream negotiation.
6563
6564 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6565
6566         * configure.ac:
6567           bump nano to cvs
6568
6569 === release 0.8.6 ===
6570
6571 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6572
6573         * configure.ac:
6574         * NEWS:
6575         * RELEASE:
6576         * configure.ac:
6577           releasing 0.8.6, "Narc"
6578
6579 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6580
6581         * configure.ac:
6582           prerel bump
6583
6584 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6585
6586         patch by: Steve Lhomme
6587
6588         * gst/elements/gstfakesrc.c:
6589         * gst/elements/gstidentity.c:
6590         * gst/gstthread.c:
6591           Fix for #153881
6592
6593 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6594
6595         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6596         Fix threadsafety of the crc checking function.
6597
6598 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6599
6600         patch by: Ronald Bultje
6601
6602         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6603         (gst_type_find_element_handle_event),
6604         (gst_type_find_element_chain):
6605         * gst/elements/gsttypefindelement.h:
6606          #153657.
6607          Filter out discont event from seekable sources when typefind
6608          asks them to seek.  Fixes typefind with demuxers for
6609          avi, asf and matroska.
6610
6611 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6612
6613         * docs/gst/gstreamer-sections.txt:
6614         * gst/gstcaps.c:
6615         * gst/gstcaps.h:
6616         * gst/gstpad.c:
6617           Revert preferred caps: (#147789)
6618
6619 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6620
6621         * win32/dirent.c:
6622           fix a memory leak
6623
6624 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6625
6626         * configure.ac:
6627           bump for prerelease
6628
6629 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6630
6631         * docs/Makefile.am:
6632         * docs/manual/elements-api.xml:
6633           restructure so that common stuff is shown first
6634         * docs/manual/init-api.xml:
6635           convert to examples
6636         * docs/manual/manual.xml:
6637         * docs/manuals.mak:
6638         * docs/url.entities:
6639           link to API on the website, possibly override later in build
6640         * examples/manual/.cvsignore:
6641           ignore more
6642         * examples/manual/Makefile.am:
6643           add more examples
6644         * examples/manual/extract.pl:
6645           error out on failure
6646
6647 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6648
6649         * docs/gst/tmpl/gstthread.sgml:
6650         * docs/manual/init-api.xml:
6651         * examples/manual/Makefile.am:
6652           convert two code bits to examples
6653
6654 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6655
6656         * gst/gstelement.c: (gst_element_change_state):
6657           Well, actually, I was about to remove this insane assert when
6658           I noticed Wim already did that. A warning is nice so we can
6659           fix actual ugs (using --g-fatal-warnings and backtraces), so
6660           I added that instead.
6661
6662 2004-09-06  Wim Taymans  <wim@fluendo.com>
6663
6664         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6665         (gst_element_threadsafe_properties_post_run),
6666         (gst_element_set_state), (gst_element_change_state):
6667         Added extra refcounting around various places. 
6668
6669 2004-09-06  Wim Taymans  <wim@fluendo.com>
6670
6671         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6672         Fix debug info.
6673
6674 2004-09-06  Wim Taymans  <wim@fluendo.com>
6675
6676         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6677         (remove_from_group):
6678         Some more debug info.
6679
6680 2004-09-03  Wim Taymans  <wim@fluendo.com>
6681
6682         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6683         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6684         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6685         (gst_fakesrc_get), (gst_fakesrc_change_state):
6686         * gst/elements/gstfakesrc.h:
6687         * gst/elements/gstidentity.c: (gst_identity_class_init),
6688         (gst_identity_init), (gst_identity_chain),
6689         (gst_identity_set_property), (gst_identity_get_property),
6690         (gst_identity_change_state):
6691         * gst/elements/gstidentity.h:
6692         Added datarate properties to limit the datarate.
6693
6694 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6695
6696         * gst/autoplug/gstspider.c: (plugin_init):
6697           don't set a rank. We don't want to autoplug by inserting spiders.
6698
6699 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6700
6701         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6702         (gst_spider_identity_plug):
6703           add a template for spider's sink
6704         * gst/gst.c: (gst_register_core_elements):
6705           queue's rank should be NULL, we don't want spider to add it.
6706
6707 2004-08-18  David Schleef  <ds@schleef.org>
6708
6709         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6710         * docs/libs/Makefile.am: same
6711         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6712         * docs/random/ds/0.9-planning: random additions
6713         * docs/random/ds/0.9-suggested-changes: same
6714         * gst/gstxml.h: remove vestigal GstXMLNs definition
6715
6716         Preferred caps: (#147789)
6717         * docs/gst/gstreamer-sections.txt: Add symbols
6718         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6719         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6720         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6721         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6722         (gst_caps_get_preferred), (gst_caps_set_preferred),
6723         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6724         (gst_caps_use_preferred): Handle caps preferences
6725         * gst/gstcaps.h: Add caps preferences
6726         * gst/gstpad.c: (gst_pad_link_get_preferred),
6727         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6728         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6729         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6730         negotiation.
6731
6732 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6733
6734         * gst/autoplug/gstspideridentity.c:
6735         (gst_spider_identity_request_new_pad):
6736         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6737         (gst_aggregator_init):
6738         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6739         (gst_fakesink_init):
6740         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6741         (gst_fakesrc_init):
6742         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6743         (gst_fdsink_init):
6744         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6745         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6746         (gst_filesink_init):
6747         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6748         (gst_filesrc_init):
6749         * gst/elements/gstidentity.c: (gst_identity_base_init),
6750         (gst_identity_init):
6751         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6752         (gst_multifilesrc_init):
6753         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6754         (gst_pipefilter_init):
6755         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6756         (gst_statistics_init):
6757         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6758         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6759           s/gst_pad_new/&_from_template/
6760           register pad templates in the base_init function
6761           add static pad template definitions
6762
6763 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6764
6765         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6766         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6767         * testsuite/refcounting/pad.c: (main):
6768         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6769           s/gst_pad_new/&_from_template/
6770           prepare deprecation of gst_pad_new
6771
6772 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6773
6774         patch by: Luca Ognibene <skaboy81@virgilio.it>
6775
6776         * gst/gstcaps.c:
6777         * gst/gstelement.c:
6778         * gst/gstpad.c:
6779         * gst/gstxml.c:
6780           fix memleaks.  Fixes #150001
6781
6782 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6783
6784         * docs/random/ds/0.9-suggested-changes:
6785           add notes - mostly about pad templates
6786
6787 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6788
6789         * win32/GStreamer.vcproj:
6790           temporary locale files are .gmo not .mo
6791
6792 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6793
6794         * configure.ac: bump nano to cvs
6795
6796 === release 0.8.5 ===
6797
6798 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6799
6800         * configure.ac:
6801           releasing 0.8.5, "Stuttgart"
6802         * NEWS:
6803         * RELEASE:
6804         * configure.ac:
6805         * docs/random/release:
6806           updates for release
6807
6808 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6809
6810         patch by: Wim Taymans (wim@fluendo.com)
6811
6812         * gst/gstbuffer.c:
6813         * gst/gstindex.h:
6814         * libs/gst/dataprotocol/dataprotocol.c:
6815           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6816
6817 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6818
6819         * Makefile.am:
6820         * win32/MANIFEST:
6821           add win32 dir to the build.  Fixes #149981.
6822
6823 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6824
6825         * configure.ac:
6826           bump libtool versioning
6827         * gst/gststructure.c:
6828           mark function as static
6829         * po/af.po:
6830         * po/az.po:
6831         * po/ca.po:
6832         * po/cs.po:
6833         * po/en_GB.po:
6834         * po/fr.po:
6835         * po/nl.po:
6836         * po/sq.po:
6837         * po/sr.po:
6838         * po/sv.po:
6839         * po/tr.po:
6840         * po/uk.po:
6841           translations update
6842         * win32/README.txt:
6843           trademark protection
6844
6845 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6846
6847         * configure.ac:
6848           fix GST_ORIGIN
6849           set GST_PACKAGE to source, and distinguish between release and other
6850         * tools/gst-inspect.c:
6851           print out plugin an element factory is part of so we see this info
6852
6853 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6854
6855         * docs/gst/gstreamer-sections.txt:
6856         * docs/gst/tmpl/gstbuffer.sgml:
6857         * docs/gst/tmpl/gstschedulerfactory.sgml:
6858           reorder docs a little, make GstBuffer's more sensible.
6859         * gst/gstbuffer.h:
6860           API: added GST_BUFFER_FLAG_DELTA_UNIT
6861         * gst/gstscheduler.c:
6862           comment API addition
6863
6864 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6865
6866         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6867           work with non-regular files that can be mmapped (like /dev/zero)
6868         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6869           get rid of typefinds that require a seek when we can't seek instead
6870           of trying them over and over again
6871         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6872           return non-zero failure value when the pipeline was interrupted or
6873           an error occurred
6874
6875 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6876
6877         * win32/config.h:
6878         * win32/GStreamer.vcproj:
6879           compile and install the locales
6880
6881 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6882
6883         * gst/gstvalue.c:
6884           fix a possible memory leak under Windows
6885
6886 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6887
6888         * win32/GStreamer.vcproj:
6889           fix a memory leak that occured under Windows
6890         * win32/gstreamer.def:
6891           add gst_scheduler_register
6892
6893 2004-08-11  Benjamin Otte  <otte@gnome.org>
6894
6895         * docs/gst/gstreamer-sections.txt:
6896         * gst/gstscheduler.c: (gst_scheduler_register):
6897         * gst/gstscheduler.h:
6898           API:
6899           add gst_scheduler_register shortcut similar to gst_element_register
6900         * gst/schedulers/entryscheduler.c: (plugin_init):
6901         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6902         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6903           use it
6904
6905 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6906
6907         * gst/gstvalue.h:
6908           fix a memory leak that occured under Windows
6909
6910 2004-08-10  Colin Walters  <walters@redhat.com>
6911
6912         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6913         Don't use O_EXCL to open temporary registry.  It will prevent
6914         registry creation if a temporary one already exists, which
6915         is unnecessary.
6916
6917 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6918
6919         * docs/gst/gstreamer-sections.txt:
6920         * docs/gst/tmpl/gstvalue.sgml:
6921           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6922
6923 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6924
6925         * win32/gstbytestream.vcproj:
6926         * win32/gstelements.vcproj:
6927         * win32/gstgetbits.vcproj:
6928         * win32/gst-inspect.vcproj:
6929         * win32/gst-launch.vcproj:
6930         * win32/gstoptimalscheduler.vcproj:
6931         * win32/GStreamer.vcproj:
6932         * win32/gst-register.vcproj:
6933         * win32/gstspider.vcproj:
6934           update the include and lib dirs to fit standard libraries as
6935           described in the Win32 manual
6936
6937 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6938
6939         * win32/config.h:
6940         * win32/gstversion.h:
6941           enable NLS again, push the version number for the coming 0.8.5 release
6942
6943 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6944
6945         * gst/gstvalue.h:
6946           export gst_type_XXX for windows DLLs
6947
6948 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6949
6950         * docs/faq/gst-uninstalled:
6951           fix PKG_CONFIG_PATH and PYTHONPATH
6952         * gst/schedulers/Makefile.am:
6953           cleanup
6954         * libs/gst/bytestream/bytestream.c:
6955           remove newline
6956         * po/LINGUAS:
6957         * po/sq.po:
6958           adding Albanian translation (Laurent Dhima)
6959         * po/cs.po:
6960           updated
6961
6962 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6963
6964         * po/ca.po:
6965         * po/sv.po:
6966           updated translations
6967
6968 2004-08-04  Benjamin Otte  <otte@gnome.org>
6969
6970         * tests/mass_elements.c: (main):
6971           allow specifying src and sink element explicitly, so I can test
6972           videotestsrc instead of fakesrc
6973
6974 2004-08-04  Benjamin Otte  <otte@gnome.org>
6975
6976         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6977         (gst_structure_id_empty_new), (gst_structure_empty_new),
6978         (gst_structure_copy):
6979           add gst_structure_id_empty_new_with_size to allow preallocating
6980           value array sizes. Use this in gst_structure_copy to get rid of
6981           reallocs.
6982           don't do quark=>string=>quark when copying structures
6983
6984 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6985
6986         * docs/manual/win32.xml:
6987         * win32/README.txt:
6988           update documentation with the clean version of dependencies
6989
6990 2004-08-03  Benjamin Otte  <otte@gnome.org>
6991
6992         * gst/schedulers/entryscheduler.c:
6993         (gst_entry_scheduler_remove_element):
6994           fix for GST_DISABLE_DEBUG
6995         * tools/gst-launch.c: (print_tag):
6996           fixes for G_DISABLE_ASSERT
6997
6998 2004-08-03  Benjamin Otte  <otte@gnome.org>
6999
7000         * gst/gst.c: (gst_register_core_elements):
7001           fix for G_DISABLE_ASSERT
7002         * gst/gstinfo.c: (__gst_in_valgrind):
7003           add for GST_DISABLE_DEBUG
7004
7005 2004-08-03  Benjamin Otte  <otte@gnome.org>
7006
7007         * gst/parse/parse.l:
7008           fix for G_DISABLE_ASSERT
7009
7010 2004-08-03  Wim Taymans  <wim@fluendo.com>
7011
7012         * gst/gstbin.c: (gst_bin_get_type),
7013         (gst_bin_child_state_change_func):
7014         * gst/gstthread.c: (gst_thread_change_state):
7015         Backported some debug logging from a reverted patch
7016         Don't try to destroy the thread twice. Added some more
7017         debugging in GstThread. Unlock and signal even if we
7018         are in the thread context.
7019
7020 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7021
7022         * po/uk.po:
7023           updated translation
7024
7025 2004-07-30  David Schleef  <ds@schleef.org>
7026
7027         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7028
7029 2004-07-29  David Schleef  <ds@schleef.org>
7030
7031         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7032         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7033
7034 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7035
7036         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7037         (gst_bin_add_func), (gst_bin_remove_func),
7038         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7039         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7040         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7041         (gst_bin_sync_children_state):
7042         * gst/gstbin.h:
7043         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7044         (gst_thread_change_state):
7045         * testsuite/states/Makefile.am:
7046           revert state change patches as agreed so we can rework them
7047           gradually
7048
7049 2004-07-29  Benjamin Otte  <otte@gnome.org>
7050
7051         * libs/gst/control/Makefile.am:
7052           link to libgstreamer (fixes Debian bug 262019, see
7053           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7054
7055 2004-07-29  Wim Taymans  <wim@fluendo.com>
7056
7057         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7058         (check_from_fraction_convert), (transform_test), (main):
7059         Make the test less pedantic about float roundoff errors.
7060
7061 2004-07-29  Benjamin Otte  <otte@gnome.org>
7062
7063         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7064         (gst_filesrc_srcpad_event):
7065           make seek events to before start/after end of file not fail, but
7066           seek to start/end instead
7067         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7068           add more output
7069
7070 2004-07-29  Benjamin Otte  <otte@gnome.org>
7071
7072         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7073           check that caps are fixed
7074         * gst/gstpad.c: (gst_pad_template_new):
7075           don't try to simplify caps, costs too much time on gst_init
7076         * gst/gstplugin.c: (gst_plugin_add_feature):
7077           G_ERROR if features are added twice
7078         * gst/gsttypefind.c: (gst_type_find_register):
7079         * gst/gstelementfactory.c: (gst_element_register):
7080           don't add features twice
7081         * docs/random/ds/0.9-suggested-changes:
7082           add note about possible gst_init optimization
7083
7084 2004-07-28  David Schleef  <ds@schleef.org>
7085
7086         * testsuite/elements/Makefile.am:
7087         * testsuite/elements/struct_i386.h:
7088         * testsuite/elements/struct_size.c: (main):  A little test
7089         to keep distcheck from working if someone changes a structure
7090         size accidentally.
7091
7092 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7093
7094         * docs/libs/Makefile.am:
7095         * docs/libs/gstreamer-libs-docs.sgml:
7096         * docs/libs/gstreamer-libs-sections.txt:
7097         * docs/libs/tmpl/gstbytestream.sgml:
7098         * docs/libs/tmpl/gstcontrol.sgml:
7099         * docs/libs/tmpl/gstdataprotocol.sgml:
7100         * docs/libs/tmpl/gstgetbits.sgml:
7101         * libs/gst/bytestream/Makefile.am:
7102         * libs/gst/bytestream/bytestream.c:
7103         * libs/gst/bytestream/bytestream.h:
7104         * libs/gst/control/Makefile.am:
7105         * libs/gst/dataprotocol/Makefile.am:
7106         * libs/gst/getbits/Makefile.am:
7107         * libs/gst/getbits/getbits.h:
7108           various doc and style fixes, adding bytestream to libs docs.
7109
7110 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7111
7112         * docs/gst/gstreamer-docs.sgml:
7113         * docs/libs/Makefile.am:
7114         * docs/libs/gstreamer-libs-docs.sgml:
7115         * docs/libs/gstreamer-libs-sections.txt:
7116         * libs/gst/control/dparam.c:
7117           more doc fixes.  gst-libs docs now build the same way as gst.
7118
7119 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7120
7121         * configure.ac:
7122         * testsuite/Makefile.am:
7123         * testsuite/bins/Makefile.am:
7124         * testsuite/caps/Makefile.am:
7125         * testsuite/cleanup/Makefile.am:
7126         * testsuite/clock/Makefile.am:
7127         * testsuite/debug/Makefile.am:
7128         * testsuite/dlopen/Makefile.am:
7129         * testsuite/dynparams/Makefile.am:
7130         * testsuite/elements/.cvsignore:
7131         * testsuite/elements/Makefile.am:
7132         * testsuite/enumcaps/Makefile.am:
7133         * testsuite/enumcaps/enumcaps.c:
7134         * testsuite/ghostpads/Makefile.am:
7135         * testsuite/indexers/Makefile.am:
7136         * testsuite/negotiation/Makefile.am:
7137         * testsuite/parse/Makefile.am:
7138         * testsuite/plugin/Makefile.am:
7139         * testsuite/refcounting/Makefile.am:
7140         * testsuite/schedulers/.cvsignore:
7141         * testsuite/states/Makefile.am:
7142         * testsuite/tags/Makefile.am:
7143         * testsuite/threads/Makefile.am:
7144           fold enumcaps into caps dir
7145           clean up Makefile.am's for testsuite
7146
7147 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7148
7149         * docs/gst/Makefile.am:
7150         * docs/libs/Makefile.am:
7151           clean up docs build.  Fixes needless rebuilding of template files.
7152
7153 2004-07-28  Wim Taymans  <wim@fluendo.com>
7154
7155         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7156         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7157         Make sure that a bin state change tries to keep the children
7158         in sync. 
7159         Added debug logging to the thread.
7160
7161 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7162
7163         * win32/GStreamer.vcproj:
7164         * win32/gstreamer.def:
7165           more exports for the plugins
7166
7167 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7168
7169         * win32/gstgetbits.vcproj:
7170         * win32/gstgetbits.def:
7171         * win32/msvc71.sln:
7172           add support for the getbits plugin
7173
7174 2004-07-27  Wim Taymans  <wim@fluendo.com>
7175
7176         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7177         (gst_value_transform_fraction_double), (_gst_value_initialize):
7178         * testsuite/caps/Makefile.am:
7179         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7180         (check_from_fraction_convert), (transform_test), (main):
7181         Added transform functions between double and fraction.
7182         Added testcase to verify transforms
7183
7184 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7185
7186         * win32/GStreamer.vcproj:
7187           rename GStreamer-0.8.lib to libgstreamer.lib
7188
7189 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7190
7191         * win32/gstelements.vcproj:
7192         * win32/gstoptimalscheduler.vcproj:
7193           fixes for the Release build
7194
7195 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7196
7197         * win32/config.h:
7198           update the version number
7199
7200 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7201
7202         * win32/GStreamer.vcproj:
7203           add gstinterface to the build
7204
7205 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7206
7207         * win32/gstreamer.def:
7208           add many definitions needed by plugins,
7209           GST_CAT_DEFAULT only available in the Debug build ?
7210
7211 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7212
7213         * gst/gstelement.c: (gst_element_set_eos_recursive):
7214           various whitespace fixes.
7215           doc fix, fixes #148497
7216
7217 2004-07-25  Benjamin Otte  <otte@gnome.org>
7218
7219         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7220           don't delay links on the sink elements, it causes unnegotiated
7221           links.
7222         * gst/elements/gsttypefindelement.c:
7223         (gst_type_find_element_base_init):
7224           add our padtemplates, we indeed do have some.
7225         * gst/elements/gsttypefindelement.c:
7226         (gst_type_find_element_handle_event),
7227         (gst_type_find_element_chain):
7228           don't push data when typefinding failed.
7229         * gst/gstpad.c: (gst_pad_link_fixate):
7230           check that no fixate function returns empty caps.
7231         * gst/gstpad.c: (gst_pad_push):
7232           check that the link is negotiated before data gets pushed.
7233         * tools/gst-register.c: (main):
7234           don't assert (fixes #148283)
7235
7236 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7237
7238         * docs/gst/gstreamer-sections.txt:
7239         * docs/gst/tmpl/gstconfig.sgml:
7240           add GST_PLUGIN_EXPORT definition
7241
7242 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7243
7244         * gst/gstplugin.h:
7245         * gst/gstconfig.h.in:
7246         * win32/gstconfig.h:
7247         * win32/gstelements.def:
7248         * win32/gstelements.vcproj:
7249         * win32/gstoptimalscheduler.def:
7250         * win32/gstoptimalscheduler.vcproj:
7251         * win32/gstspider.def:
7252         * win32/gstspider.vcproj:
7253           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7254
7255 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7256
7257         * docs/gst/gstreamer-sections.txt:
7258           remove GST_CAT_DEFAULT because the type has changed
7259
7260 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7261
7262         * win32/gstbytestream.vcproj:
7263         * win32/gstelements.vcproj:
7264         * win32/gst-inspect.vcproj:
7265         * win32/gst-launch.vcproj:
7266         * win32/gstoptimalscheduler.vcproj:
7267         * win32/GStreamer.vcproj:
7268         * win32/gst-register.vcproj:
7269         * win32/gstspider.vcproj:
7270         * win32/msvc71.sln:
7271           Copy the files where needed after building, The testsuite will be
7272           built separately
7273
7274 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7275
7276         * win32/config.h:
7277         * win32/README.txt:
7278         * docs/manual/win32.xml:
7279         Fixed the plugin and GStreamer location
7280
7281 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7282
7283         * win32/gstreamer.def:
7284         More exports for the plugins
7285
7286 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7287
7288         * gst/gstinfo.h:
7289         Marc was right, we need to export literally GST_CAT_DEFAULT
7290
7291 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7292
7293         * win32/config.h:
7294         NLS crashes in gettext, disabled until this is solved
7295
7296 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7297
7298         * win32/gst-inspect.vcproj:
7299         * win32/gst-launch.vcproj:
7300         Should use NLS when available
7301
7302 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7303
7304         * gst/registries/gstxmlregistry.c:
7305         removing the file doesn't seem to be a good idea on Linux
7306
7307 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7308
7309         * gst/registries/gstxmlregistry.c:
7310         Remove the registry before renaming the tempfile (needed for Windows)
7311
7312 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7313
7314         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7315         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7316         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7317         * gst/elements/gstmultifilesrc.h:
7318         Added newmedia property so it generates newmedia events between each
7319         file when property is set, as well as fixed eos handling
7320
7321 2004-07-22  David Schleef  <ds@schleef.org>
7322
7323         * gst/gststructure.c: (gst_structure_id_empty_new),
7324         (gst_structure_empty_new):  Set type field correctly.
7325         * gst/gststructure.h: Check type field correctly.
7326         * testsuite/caps/Makefile.am:
7327         * testsuite/caps/structure.c: (test1), (main): Add a very small
7328         test for structures.
7329
7330 2004-07-22  David Schleef  <ds@schleef.org>
7331
7332         * docs/random/ds/0.9-suggested-changes: more comments
7333         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7334
7335 2004-07-22  Benjamin Otte  <otte@gnome.org>
7336
7337         * gst/gstelementfactory.c: (gst_element_register):
7338           set the factory in the class struct, so gst_element_get_factory
7339           actually works
7340         * gst/parse/grammar.y:
7341           set element to playing when it gets unlocked as we can't rely on the
7342           bin state - all elements in the bin state might still be locked in
7343           NULL)
7344
7345 2004-07-22  Benjamin Otte  <otte@gnome.org>
7346
7347         * gst/gstelement.c: (gst_element_set_state_func):
7348           make this a static function
7349
7350 2004-07-22  Wim Taymans  <wim@fluendo.com>
7351
7352         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7353         (gst_opt_scheduler_pad_link):
7354         fix 147894-2 and the group_link problem.
7355
7356 2004-07-22  Wim Taymans  <wim@fluendo.com>
7357
7358         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7359         (handoff_identity), (main):
7360         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7361         (handoff_identity), (main):
7362         * testsuite/schedulers/Makefile.am:
7363         * testsuite/schedulers/group_link.c: (main):
7364         Show bug in scheduler when linking chain and loop based element 
7365         where the chain based element was not yet in a group.
7366
7367 2004-07-21  Benjamin Otte  <otte@gnome.org>
7368
7369         * gst/.cvsignore:
7370         * gst/autoplug/.cvsignore:
7371         * gst/elements/.cvsignore:
7372         * gst/indexers/.cvsignore:
7373         * libs/gst/bytestream/.cvsignore:
7374         * libs/gst/control/.cvsignore:
7375         * libs/gst/getbits/.cvsignore:
7376         * testsuite/states/.cvsignore:
7377         * testsuite/threads/.cvsignore:
7378           keep this up to date, since I seem to be the only one who cares
7379           about not missing files on commits (editor's note: no you don't,
7380           but feel free to change them at the time you add stuff instead
7381           of later on)
7382
7383 2004-07-21  Benjamin Otte  <otte@gnome.org>
7384
7385         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7386         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7387         (gst_bin_child_state_change_func), (set_kid_state_func),
7388         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7389           make state changes work correctly and reentrant (so removing
7390           elements from bins during state changes of bins doesn't cause
7391           segfaults or even wrong states)
7392           add debugging category and debugging output to print children states
7393         * gst/gstbin.c: (gst_bin_dispose): 
7394           add some assertion checks
7395         * gst/gstbin.h:
7396         * gst/gstbin.c: (gst_bin_sync_children_state):
7397           deprecate this function - it just does gst_bin_set_state (bin,
7398           GST_STATE (bin)) 
7399         * testsuite/threads/queue.c: (main):
7400           don't use gst_bin_sync_children_state anymore
7401         * testsuite/states/Makefile.am:
7402         * testsuite/states/bin.c:
7403           test that the state changes of bins work as expected
7404         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7405           some adjustments to change states correctly, too
7406         * gst/gstthread.c: (gst_thread_change_state):
7407           don't enable/disable "threadsafe" properties, they're unused and
7408           cause random segfaults
7409         * testsuite/threads/Makefile.am:
7410           the queue check randomly passes now, ignore it
7411
7412 2004-07-21  Benjamin Otte  <otte@gnome.org>
7413
7414         * gst/gstpad.c:
7415           check if data is NULL before outputting debug info. (fixes #145100)
7416
7417 2004-07-21  Benjamin Otte  <otte@gnome.org>
7418
7419         * gst/schedulers/entryscheduler.c:
7420         (gst_entry_scheduler_loop_wrapper),
7421         (gst_entry_scheduler_chain_wrapper),
7422         (gst_entry_scheduler_get_wrapper):
7423           reset the state when the cothread starts, so we don't get assertion
7424           failures on restarting of cothreads
7425
7426 2004-07-20  Benjamin Otte  <otte@gnome.org>
7427
7428         * gst/gstelement.c: (gst_element_link_pads_filtered):
7429           use correct sinkpad, if only sinkpad is specified, but not srcpad
7430           (fixes #147889)
7431         * gst/gstelement.c: (gst_element_set_state_func),
7432         (gst_element_change_state): ref/unref the element, signal handlers
7433         could get rid of the element otherwise
7434
7435 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7436
7437         * docs/random/ds/0.9-suggested-changes:
7438           Make note about renaming fixed-list to array.
7439         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7440         (_gst_value_initialize):
7441           Add array intersections.
7442         * testsuite/caps/intersect2.c: (main):
7443           Add test for array intersections.
7444
7445 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7446
7447         * configure.ac: back to cvs
7448
7449 === release 0.8.4 ===
7450
7451 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7452
7453         * configure.ac:
7454           releasing 0.8.4, "Paella"
7455           bump libtool versioning
7456
7457 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7458
7459         * po/LINGUAS:
7460         * po/ca.po:
7461           adding Catalan translation (Jordi Mallach)
7462
7463 2004-07-20  Wim Taymans  <wim@fluendo.com>
7464
7465         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7466         (handoff_identity), (main):
7467         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7468         (handoff_identity), (main):
7469         * testsuite/schedulers/Makefile.am:
7470         Added failing testcase for variant of #147894
7471
7472 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7473
7474         patch by: David Moore
7475
7476         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7477         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7478         (group_migrate_connected):
7479         * testsuite/schedulers/Makefile.am:
7480           fix for #142813 (Deadlock in optimal scheduler)
7481
7482 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7483
7484         patch by: Wim Taymans
7485
7486         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7487         (gst_opt_scheduler_schedule_run_queue),
7488         (gst_opt_scheduler_get_wrapper), (get_group),
7489         (group_migrate_connected):
7490         * testsuite/schedulers/Makefile.am:
7491           fix for #147819 (Add some checks in the opt scheduler)
7492
7493 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7494
7495         patch by: Benjamin Otte
7496
7497         * gst/gstelementfactory.c: (__gst_element_details_set):
7498           fix for #147929: running gst-register in non-utf8 locale can cause
7499           invalid registry
7500
7501 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7502
7503         patch by: Wim Taymans
7504
7505         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7506         (group_has_element), (element_get_reachables_func),
7507         (group_migrate_connected):
7508           fix for #147894 (opt scheduler decoupled elements mismanagement)
7509         * testsuite/schedulers/Makefile.am:
7510           testsuite app now passes
7511
7512 2004-07-19  Wim Taymans  <wim@fluendo.com>
7513
7514         * testsuite/schedulers/147819.c: (handoff_identity1),
7515         (handoff_identity2), (main):
7516         * testsuite/schedulers/Makefile.am:
7517         Added testcase for bug 147819
7518
7519 2004-07-19  Wim Taymans  <wim@fluendo.com>
7520
7521         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7522         (handoff_identity), (main):
7523         * testsuite/schedulers/Makefile.am:
7524         Added testcase for bug 147894
7525
7526 2004-07-16  Wim Taymans  <wim@fluendo.com>
7527
7528         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7529         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7530         * testsuite/schedulers/Makefile.am:
7531         Added testsuite for bug 142183 in its two incarnations. Refcount
7532         is not increased for scheduled elements and threadsafe properties
7533         mutexes are not properly unlocked.
7534
7535 2004-07-16  Wim Taymans  <wim@fluendo.com>
7536
7537         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7538         (create_chain), (destroy_chain), (create_group), (destroy_group),
7539         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7540         (group_dec_link), (gst_opt_scheduler_pad_link),
7541         (group_inc_links_for_element), (group_migrate_connected):
7542         Call group_inc_link with the proper src->sink ordering -- 
7543         break this, and we break sort_chain. patch from wingo for bug
7544         147713.
7545         Partially revert patch 1.89. When adding a loop based element to 
7546         the scheduler, the links to other groups are automatically followed
7547         and incremented. This should not happen because the bin will call
7548         pad_link explicitly for those connection, resulting in them counted 
7549         twice. Results in assertion failure on pipeline cleanup.
7550
7551 2004-07-16  Wim Taymans  <wim@fluendo.com>
7552
7553         * testsuite/schedulers/143777-2.c: (main):
7554         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7555         (main):
7556         * testsuite/schedulers/Makefile.am:
7557         Added cleanup code to testcase 143777-2.
7558         Added testcase to show bug 147713, does not really show the
7559         deadlock as I can't figure out how to trigger it, but it does
7560         demonstrate bad ordering in the scheduler.
7561
7562 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7563
7564         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7565           change strndup to g_strndup.  Fixes #147707
7566
7567 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7568
7569         * po/af.po:
7570         * po/az.po:
7571         * po/cs.po:
7572         * po/en_GB.po:
7573         * po/fr.po:
7574         * po/nl.po:
7575         * po/sr.po:
7576         * po/sv.po:
7577         * po/tr.po:
7578         * po/uk.po:
7579           updated translations
7580
7581 2004-07-16  Benjamin Otte  <otte@gnome.org>
7582
7583         * gst/gstvalue.c: (gst_greatest_common_divisor):
7584           use ints and return ints, fractions only use ints, too, so this
7585           avoids accidently casting multiplications to unsigned
7586         (gst_value_lcopy_fraction): it's ints, not uint32
7587         (gst_value_set_fraction): disallow minint, multiplying and negation
7588           are broken with it
7589         (gst_value_fraction_multiply): fix to make large numbers work and get
7590         rid of the assumption that the multiplication of two ints fits an
7591         int64 - dunno if that's true for all systems
7592         * testsuite/caps/Makefile.am:
7593         * testsuite/caps/fraction-multiply-and-zero.c:
7594         (check_multiplication), (check_equal), (zero_test), (main):
7595           add tests for all the stuff above
7596         * testsuite/caps/value_compare.c: (test1):
7597           fix comment
7598         * tests/.cvsignore:
7599         * testsuite/caps/.cvsignore:
7600         * testsuite/debug/.cvsignore:
7601         * testsuite/dlopen/.cvsignore:
7602         * testsuite/states/.cvsignore:
7603           get up to date
7604
7605 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7606
7607         * docs/manual/bins-api.xml:
7608         * docs/manual/factories.xml:
7609         * docs/manual/helloworld.xml:
7610         * docs/manual/links-api.xml: 
7611           fixes for out of date info, incorrect info and grammar
7612
7613 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7614
7615         * docs/manual/pads.xml:
7616         * docs/manual/pads-api.xml: grammar fix
7617
7618 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7619
7620         * docs/manual/pads-api.xml: typo + grammar fix
7621
7622 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7623
7624         * docs/gst/gstreamer-sections.txt:
7625           add new symbols
7626         * docs/gst/tmpl/gstelement.sgml:
7627         * docs/gst/tmpl/gstpad.sgml:
7628         * docs/gst/tmpl/gsttypes.sgml:
7629         * docs/gst/tmpl/gstvalue.sgml:
7630           update docs
7631         * gst/gststructure.c: (gst_structure_set_valist),
7632         (gst_structure_from_abbr), (gst_structure_to_abbr):
7633         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7634         (gst_greatest_common_divisor), (gst_value_init_fraction),
7635         (gst_value_copy_fraction), (gst_value_collect_fraction),
7636         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7637         (gst_value_get_fraction_numerator),
7638         (gst_value_get_fraction_denominator),
7639         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7640         (gst_value_deserialize_fraction),
7641         (gst_value_transform_fraction_string),
7642         (gst_value_transform_string_fraction),
7643         (gst_value_compare_fraction), (_gst_value_initialize):
7644         * gst/gstvalue.h:
7645           adding GstFraction GValue type, get/set, and multiply
7646         * testsuite/caps/Makefile.am:
7647         * testsuite/caps/fraction.c: (test), (main):
7648         * testsuite/caps/string-conversions.c: (main):
7649         * testsuite/caps/value_compare.c: (test1), (main):
7650           add regression tests for GstFraction
7651
7652 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7653         
7654         * docs/manual/init-api.xml: Grammar fix
7655
7656 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7657
7658         * docs/manual/states.xml: Fix inconsistent information
7659
7660 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7661
7662         * gst/gstelement.c: (gst_element_set_state):
7663         * gst/gstpad.c: (gst_pad_try_set_caps):
7664         * gst/gststructure.c:
7665         * gst/gstthread.c: (gst_thread_child_state_change):
7666         * gst/gstvalue.c: (gst_value_compare_double):
7667         * gst/gstvalue.h:
7668         * testsuite/parse/parse1.c: (main):
7669           debugging additions and style cleanups
7670
7671 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7672
7673         * docs/manual/states.xml: Grammar fix
7674
7675 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7676
7677         * docs/manual/pads.xml: Grammar fix
7678
7679 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7680
7681         * docs/manual/elements.xml: Fixed image reference
7682
7683 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7684
7685         * docs/manual/goals.xml: Grammar fix
7686
7687 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7688
7689         * docs/manual/motivation.xml:
7690         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7691
7692 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7693
7694         * docs/manual/motivation.xml: Fix spelling
7695
7696 2004-07-15  Benjamin Otte  <otte@gnome.org>
7697
7698         * gst/gstelement.h: 
7699           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7700           strings.
7701         * gst/gstelement.c (gst_element_class_init):
7702           GError's are boxed, not objects
7703         * gst/gstmarshal.list:
7704           update list for the fixed error signal
7705
7706 2004-07-14  Andy Wingo  <wingo@pobox.com>
7707
7708         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7709         there all along, but the function wasn't. (guile-gstreamer's build
7710         system uses the address of the function -- I wasn't actually
7711         trying to use this.)
7712
7713 2004-07-14  Andy Wingo  <wingo@pobox.com>
7714
7715         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7716         as gst_pad_proxy_pad_link) just link to every other pad when they
7717         are called. In the case where the graph has cycles, this will mean
7718         that a call to try_set_caps will recurse. Allow this recursion
7719         and return OK, while we wait for the first try_set_caps to give a
7720         proper return value.
7721         (gst_pad_link_call_link_functions): Since this function is the
7722         only one to set the NEGOTIATING flag on a pad, if the flag is set
7723         it means that the link functions have indirectly recursed. If this
7724         happens, error out to avoid infinite recursion and an eventual
7725         SEGV.
7726         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7727         (gst_pad_proxy_getcaps): Intersect the result with the template
7728         caps to ensure that the return value is valid.
7729
7730 2004-07-14  Andy Wingo  <wingo@pobox.com>
7731
7732         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7733         one refcount, the calling function is the owner of the buffer.
7734
7735 2004-07-14  Wim Taymans  <wim@fluendo.com>
7736
7737         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7738         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7739         Fix stupid warning when an element is to be migrated but
7740         is already migrated.
7741
7742 2004-07-14  Wim Taymans  <wim@fluendo.com>
7743
7744         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7745         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7746         Make sure that a single non-loop-based element does not 
7747         end up in a group. This fixes the testsuite again.
7748
7749 2004-07-14  Wim Taymans  <wim@fluendo.com>
7750
7751         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7752         (add_to_group), (merge_groups), (schedule_group),
7753         (gst_opt_scheduler_get_wrapper), (group_elements),
7754         (group_dec_link), (gst_opt_scheduler_pad_link),
7755         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7756         (gst_opt_scheduler_iterate):
7757         move isolated groups to a new chain.
7758         Emit a warning instead of segfaulting in some error cases.
7759         Fix a bug where the link count between groups was not calculated 
7760         correctly. Fixes #144510.
7761
7762 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7763         * gst/elements/gstfilesrc.c:
7764           Binary files support under Windows now OK
7765       
7766 2004-07-13  Benjamin Otte  <otte@gnome.org>
7767
7768           compatibility fixes for Solaris 8/gcc 2.95
7769         * configure.ac:
7770           include libintl libs in LDFLAGS
7771         * gstvalue.c (gst_value_deserialize_buffer):
7772           cast isxdigit stuff to int to silence compiler warning
7773
7774 2004-07-12  Benjamin Otte  <otte@gnome.org>
7775
7776         * gst/gsttypes.h:
7777           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7778           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7779           just causes support madness
7780         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7781           make it work without this
7782         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7783         (gst_file_index_commit):
7784           glib IO channels don't want binary mode
7785         * testsuite/bytestream/filepadsink.c: (main):
7786         * testsuite/bytestream/test1.c: (read_param_file):
7787           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7788
7789 2004-07-12  Benjamin Otte  <otte@gnome.org>
7790
7791         * gst/gstelement.c: (gst_element_class_init),
7792         (gst_element_set_state), (gst_element_set_state_func):
7793           virutalize gst_element_set_state, use set_state member in class
7794           struct that was already added in 0.7 for this.
7795         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7796         (gst_bin_change_state):
7797           make gst_bin_foreach works similar to other foreach functions, plug
7798           memleaks in it. Make functions using it work with the new approach.
7799           Document gst_bin_foreach, so it can be exported if we want to
7800         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7801           use virtualized set_state to make set_state on bins set the state of
7802           all its children.
7803
7804 2004-07-12  Benjamin Otte  <otte@gnome.org>
7805
7806         * configure.ac:
7807           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7808           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7809         * gst/gstpad.c: (gst_pad_alloc_buffer):
7810           allow buffer_alloc functions to return NULL and allocate a normal
7811           buffer in that case
7812
7813 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7814         * gst/elements/gstfilesink.c:
7815         * gst/elements/gstfilesrc.c:
7816         * gst/indexers/gstfileindex.c:
7817         * gst/gsttypes.h:
7818         * testsuite/bytestream/filepadsink.c:
7819         * testsuite/bytestream/test1.c:
7820           Handle binary files under Windows
7821
7822 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7823         * docs/manual/win32.xml:
7824         * win32/config.h:
7825         * win32/gst-register.vcproj:
7826         * win32/gstreamer.def:
7827           Update to another gettext public build
7828
7829 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7830         * gst/gstplugin.c:
7831           Fix an impossible C syntax
7832         * win32/config.h:
7833           Disable i18n under Windows for the moment
7834         * win32/gst-register.vcproj:
7835           Use this configuration
7836
7837 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7838         * docs/manual/quotes.xml:
7839           Keep the quotes file alive
7840         * docs/random/ds/0.9-suggested-changes:
7841           Add the suggestion of including a 'rowstride' as part of video
7842           format caps
7843
7844 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7845
7846         * gst/gstelement.c: (gst_element_set_state),
7847         (gst_element_change_state):
7848           d'oh.  Set PENDING state correctly before forcing bin to change.
7849         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7850         (gst_structure_parse_fixed_list):
7851         * gst/schedulers/gstoptimalscheduler.c:
7852         (gst_opt_scheduler_state_transition):
7853         * testsuite/states/parent.c: (main):
7854           remove comment now that it's fixed.
7855
7856 2004-07-11  Benjamin Otte  <otte@gnome.org>
7857
7858         * gst/gstclock.h:
7859           GST_SECOND shouldn't cause a conversion to unsigned.
7860         * testsuite/clock/.cvsignore:
7861         * testsuite/clock/Makefile.am:
7862         * testsuite/clock/signedness.c: (main):
7863           make sure it never will again
7864
7865 2004-07-11  Andy Wingo  <wingo@pobox.com>
7866
7867         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7868         whose state is higher than the bin state, raise the bin state to
7869         ensure that bin state := highest child state.
7870         
7871 2004-07-11  Andy Wingo  <wingo@pobox.com>
7872
7873         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7874         procedure on the children of a bin. Assumes that the procedure can
7875         change the set of children.
7876         (set_kid_state_func): New static function.
7877         (gst_bin_change_state): Use gst_bin_foreach to call
7878         set_kid_state_func. Fixes a bug: if a child had a state-change
7879         handler that removes it from the bin, there would be a segfault.
7880         Hopefully it should also work in the case where the state-change
7881         handler on one child adds or removes other children. In any case,
7882         fixes should go to gst_bin_foreach.
7883
7884 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7885
7886         * gst/gstelement.c: (gst_element_set_state):
7887           compatibility fix for latest plugins release.  Change loop back
7888           to while {}
7889
7890 2004-07-09  Wim Taymans  <wim@fluendo.com>
7891
7892         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7893         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7894         (gst_thread_main_loop):
7895         Since remove is virtual in GstBin we must not assume the 
7896         elements GList to have anothing useful.
7897         Add some more logging to GstThread and be a bit more paranoid
7898         when resetting the scheduler.
7899         Set the state of the bin to NULL before removing the children.
7900
7901 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7902
7903         * testsuite/threads/Makefile.am:
7904         * testsuite/threads/threadg.c:
7905           added test to check if problem when removing all elements from a
7906           GstThread before setting GstThread state to NULL
7907
7908 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7909
7910         * docs/gst/tmpl/gstelement.sgml:
7911         * docs/gst/tmpl/gsttypes.sgml:
7912         * gst/gstbin.c: (gst_bin_change_state):
7913         * gst/gstelement.c: (gst_element_set_state),
7914         (gst_element_change_state):
7915           rework so that for bins we try to set the state on all children
7916           as well even if the bin is in the correct state already.
7917           change while to do so at least one iteration is done.
7918           For regular elements, we fall back to the previous behaviour for
7919           now since we first need a new plugins release.
7920         * testsuite/states/parent.c: (main):
7921           test for this case
7922           Fixes #123774
7923
7924 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7925
7926         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7927         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7928         (gst_queue_release_locks), (gst_queue_change_state),
7929         (gst_queue_set_property):
7930           add proper lock debugging.  Change dispose to finalize, since
7931           we're freeing mutexes and other stuff which should happen only once.
7932
7933 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7934
7935         * docs/gst/tmpl/gstelement.sgml:
7936         * docs/gst/tmpl/gstplugin.sgml:
7937         * docs/gst/tmpl/gsttypes.sgml:
7938         * docs/pwg/building-state.xml:
7939         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7940         * gst/gstelement.c: (gst_element_change_state):
7941         * gst/gstthread.c: (gst_thread_change_state):
7942           catch wrong state changes in element base class.
7943
7944 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7945
7946         * gst/gstinfo.h:
7947           clean up layout a little.
7948
7949 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7950
7951         * configure.ac:
7952         * testsuite/Makefile.am:
7953         * testsuite/states/Makefile.am:
7954         * testsuite/states/parent.c: (main):
7955           re-enable states testsuite dir.  Add test for state changes and
7956           parent behaviour
7957
7958 2004-07-09  Wim Taymans  <wim@fluendo.com>
7959
7960         * gst/schedulers/gstoptimalscheduler.c:
7961         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7962         (element_get_reachables_func), (element_get_reachables),
7963         (debug_element), (rechain_group), (group_migrate_connected),
7964         (gst_opt_scheduler_pad_unlink):
7965         Do not try to migrate decoupled elements to a new group since
7966         they are not added to groups.
7967
7968 2004-07-08  Benjamin Otte  <otte@gnome.org>
7969
7970         * gst/gstelement.c: (gst_element_error_func):
7971           make reentrant (= allow removing elements in error handler)
7972
7973 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7974
7975         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7976         (gst_pad_send_event), (gst_pad_call_chain_function):
7977           events sent to elements below PAUSED cannot be handled, so
7978           don't try to
7979
7980 2004-07-08  Wim Taymans  <wim@fluendo.com>
7981
7982         * gst/schedulers/gstoptimalscheduler.c:
7983         (chain_recursively_migrate_group), (create_group),
7984         (schedule_group), (gst_opt_scheduler_pad_link),
7985         (group_elements_set_visited), (element_get_reachables_func),
7986         (element_get_reachables), (group_can_reach_group), (debug_element),
7987         (rechain_group), (group_migrate_connected),
7988         (gst_opt_scheduler_pad_unlink):
7989         * testsuite/schedulers/Makefile.am:
7990         Implemented group splitting and rechaining.
7991         Fixes 143777 and 143777-2 in the testsuite.
7992
7993 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7994
7995         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7996           extra debugging
7997         * gst/gstevent.h:
7998         * gst/gstinfo.c: (gst_debug_log_default):
7999           print time nicely.  add thread pointer until someone figures out
8000           a completely portable way of getting at thread id's.
8001         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
8002         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
8003         (gst_pad_call_chain_function):
8004           extra debugging
8005         * gst/schedulers/gstoptimalscheduler.c:
8006         (get_group_schedule_function), (loop_group_schedule_function),
8007         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8008         (pad_clear_queued), (gst_opt_scheduler_iterate):
8009           rename BUFPEN and friends to DATAPEN since that's what they are.
8010
8011 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8012
8013         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8014         * gst/gstbuffer.h:
8015         * gst/gstpad.c:
8016           cleanups and debugging
8017
8018 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8019
8020         * configure.ac:
8021         * gst/gstvalue.c: (gst_value_compare_enum),
8022         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8023         (gst_value_can_compare), (gst_value_compare):
8024         * testsuite/Makefile.am:
8025         * testsuite/enumcaps/Makefile.am:
8026         * testsuite/enumcaps/enumcaps.c:
8027           Fix enum serialization, deserialization, comparison in caps, add
8028           a test to ensure that this continues working in the future.
8029
8030 2004-07-06  David Schleef  <ds@schleef.org>
8031
8032         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8033         Fix memleak.
8034
8035 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8036
8037         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8038         * gst/gstplugin.h:
8039         * gst/registries/gstxmlregistry.c:
8040         (plugin_times_older_than_recurse), (plugin_times_older_than),
8041         (gst_xml_registry_parse_padtemplate):
8042           only rebuild registry when actual plugins have a newer time than
8043           the registry.  Fixes #145520
8044
8045 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8046
8047         * docs/manual/manual.xml:
8048         * docs/manual/win32.xml:
8049           add chapter on win32 building.  fixes #142422
8050
8051 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8052
8053         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8054
8055         * gst/autoplug/gstspider.c: (gst_spider_init),
8056         (gst_spider_dispose):
8057           fix spider memleaks.  fixes #137863
8058
8059 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8060
8061         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8062
8063         * gst/schedulers/gstoptimalscheduler.c:
8064         (gst_opt_scheduler_pad_unlink):
8065           fix SIGBUS error, fixes #145338
8066
8067 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8068
8069         * gst/gstobject.c: (gst_object_replace):
8070         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8071         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8072           clean up clock lifecycle.  Fixes #109831
8073
8074 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8075
8076         * po/LINGUAS:
8077         * po/cs.po:
8078           added Czech translation (Miloslav Trmac)
8079
8080 2004-07-04  David Schleef  <ds@schleef.org>
8081
8082         * tools/Makefile.am:
8083         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8084
8085 2004-07-04  David Schleef  <ds@schleef.org>
8086
8087         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8088
8089 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8090
8091         * gst/gstbin.c: (gst_bin_restore_thyself):
8092           chain to parent restore so the bins get restored correctly
8093           in the editor
8094
8095 2004-07-03  David Schleef  <ds@schleef.org>
8096
8097         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8098         Actually do something in these functions, like before the big
8099         caps change.  (bug #145137)
8100
8101 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8102
8103         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8104         (gst_element_get_compatible_pad_filtered):
8105         * gst/gstthread.c: (gst_thread_main_loop):
8106           more debugging
8107
8108 2004-07-02  David Schleef  <ds@schleef.org>
8109
8110         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8111         * gst/gstobject.h:
8112         * gst/gstparse.h:
8113         * gst/gsttrace.h:
8114         * gst/gstxml.h:
8115
8116 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8117
8118         * gst/gstpad.c: (gst_pad_check_schedulers),
8119         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8120         (gst_pad_link_prepare):
8121           revert until testsuite is fixed
8122
8123 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8124
8125         * testsuite/Makefile.am:
8126         * testsuite/caps/filtercaps.c: (main):
8127         * testsuite/clock/clock1.c: (main):
8128         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8129           fix some more tests
8130
8131 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8132
8133         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8134         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8135         * testsuite/cleanup/cleanup4.c: (main):
8136           fix testsuite
8137
8138 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8139
8140         * libs/gst/control/control.c:
8141         * libs/gst/control/dparam.c:
8142         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8143         * libs/gst/control/dparammanager.c:
8144         * libs/gst/control/dparammanager.h:
8145         * testsuite/dynparams/Makefile.am:
8146         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8147         (gst_dptest_change_state), (gst_dptest_chain), (main):
8148           fix testcase for dparams
8149           add debugging category
8150
8151 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8152
8153         * testsuite/Rules:
8154           change path
8155
8156 2004-07-02  Benjamin Otte  <otte@gnome.org>
8157
8158         * tests/.cvsignore:
8159         * tests/Makefile.am:
8160         * tests/mass_elements.c: (gst_get_current_time), (main):
8161           add simple benchmark to test various speeds of fakesrc ! identity !
8162           identity ! ... ! fakesink.
8163           Usage: mass_elements [num_identities] [num_buffers]
8164           If not specified they default to 1000.
8165
8166 2004-07-02  Benjamin Otte  <otte@gnome.org>
8167
8168         * gst/gstpad.c: (gst_pad_check_schedulers),
8169         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8170         (gst_pad_link_prepare):
8171           check that pads that get linked belong to the same manager. The old
8172           code allowed linking elements before putting them into bins, so it
8173           worked to link them and then put them in different threads, which
8174           lead to weird behaviour.
8175           Since this effectively disallows linking elements before putting
8176           them in a bin, some applications might not work after this and error
8177           out. If these applications are too critical, we might need to revert
8178           that patch. Please test this before the next release...
8179
8180 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8181
8182         * gst/gstpad.c: (gst_pad_get_caps):
8183           throw an error if the getcaps function does not return a subset of
8184           the template caps.
8185         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8186           make disconts without position info an error in debugging
8187         * tests/spidey_bench.c: (handoff), (main):
8188           don't count first try when averaging
8189
8190 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8191
8192         * gst/gstplugin.c: (gst_plugin_load_file):
8193           figure out problem with dynamic test
8194
8195 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8196
8197         * docs/gst/Makefile.am:
8198           fix docs build
8199
8200 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8201
8202         * po/POTFILES.in:
8203         * po/af.po:
8204         * po/az.po:
8205         * po/en_GB.po:
8206         * po/fr.po:
8207         * po/nl.po:
8208         * po/sr.po:
8209         * po/sv.po:
8210         * po/tr.po:
8211         * po/uk.po:
8212         * tools/gst-register.c: (plugin_added_func), (main):
8213           i18n-ize -register, fix plural
8214
8215 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8216
8217         * gst/elements/gstidentity.c: (gst_identity_class_init),
8218         (gst_identity_init), (gst_identity_chain),
8219         (gst_identity_set_property), (gst_identity_get_property):
8220         * gst/elements/gstidentity.h:
8221           check for perfect stream
8222
8223 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8224
8225         * gst/elements/gstidentity.c: (gst_identity_chain):
8226           print offset_end
8227
8228 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8229
8230         * docs/gst/Makefile.am:
8231         * docs/gst/gstreamer-docs.sgml:
8232           doc fixes
8233
8234 2004-06-24  David Schleef  <ds@schleef.org>
8235
8236         * autogen.sh:  Remove call to env, since the buildbot isn't
8237         broken anymore.
8238
8239 2004-06-24  Wim Taymans  <wim@fluendo.com>
8240
8241         * gst/elements/Makefile.am:
8242         * gst/elements/gstelements.c:
8243         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8244         (gst_multifdsink_class_init), (gst_multifdsink_init),
8245         (gst_multifdsink_add), (gst_multifdsink_remove),
8246         (gst_multifdsink_clear), (gst_multifdsink_chain),
8247         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8248         * gst/elements/gstmultifdsink.h:
8249         Added an element that writes to multiple filedescriptors at once.
8250
8251 2004-06-24  Benjamin Otte  <otte@gnome.org>
8252
8253         * gst/parse/grammar.y:
8254           don't try to link elements before they have been added to bins
8255
8256 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8257
8258         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8259         (gst_file_pad_get_length):
8260         * libs/gst/bytestream/filepad.h:
8261           add 2 new functions
8262
8263 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8264
8265         * docs/gst/gstreamer-sections.txt:
8266         remove from docs, the define that Benjamin removed from gstelement.h
8267
8268 2004-06-22  Benjamin Otte  <otte@gnome.org>
8269
8270         * gst/gstelement.h:
8271           remove define that referenced a nonexisting GstElement struct member
8272
8273 2004-06-20  Benjamin Otte  <otte@gnome.org>
8274
8275         * gst/gstdata.c: (gst_data_is_writable):
8276           whoops, return values were wrong, so writable data was marked as
8277           non-writable and vice versa. (fixes #143953, spotted by Francis
8278           Labonte)
8279           Shows how rarely we need to copy data ;)
8280
8281 2004-06-20  Benjamin Otte  <otte@gnome.org>
8282
8283         * testsuite/schedulers/.cvsignore:
8284         * testsuite/schedulers/Makefile.am:
8285         * testsuite/schedulers/143777-2.c: (main):
8286           add test for opt breakage in bug #143777
8287
8288 2004-06-20  Benjamin Otte  <otte@gnome.org>
8289
8290         * gst/gstpad.c: (gst_pad_call_chain_function):
8291           check for if we were unlinked while inside the chainfunction (fixes
8292           entrygthread having issues with #143777)
8293         * testsuite/schedulers/143777.c: (main):
8294         * testsuite/schedulers/Makefile.am:
8295           add a test for that fix
8296
8297 2004-06-20  Benjamin Otte  <otte@gnome.org>
8298
8299         * gst/gstvalue.c: (gst_value_set_int_range):
8300           test that start is smaller then end
8301         * libs/gst/bytestream/Makefile.am:
8302         * libs/gst/bytestream/filepad.c: 
8303         * libs/gst/bytestream/filepad.h:
8304           add GstFilePad - a pad that behaves like a FILE*
8305         * testsuite/bytestream/.cvsignore:
8306         * testsuite/bytestream/Makefile.am:
8307         * testsuite/bytestream/filepadsink.c: 
8308           test for the GstFilePad
8309
8310 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8311
8312         * gst/elements/gstidentity.c: (gst_identity_class_init),
8313         (gst_identity_init), (gst_identity_set_clock),
8314         (gst_identity_chain), (gst_identity_set_property),
8315         (gst_identity_get_property):
8316         * gst/elements/gstidentity.h:
8317         * gst/gstclock.c: (gst_clock_id_wait):
8318           add a "sync" property to sync to the clock
8319
8320 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8321
8322         * gst/gstelementfactory.c: (gst_element_factory_create):
8323           make the freakin "elementfactory bla has no type" message more
8324           useful. So we actually can do something when someone shows up
8325           complaining about it.
8326
8327 2004-06-15  Johan Dahlin  <johan@gnome.org>
8328
8329         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8330         found. This matches the old behavior better. Thanks to Thomas for
8331         pointing out.
8332
8333 2004-06-14  David Schleef  <ds@schleef.org>
8334
8335         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8336         -fomit-frame-pointer.  Appears to generate correct code in
8337         other cases as well.
8338
8339 2004-06-14  Johan Dahlin  <johan@gnome.org>
8340
8341         * tools/gst-inspect.c (main): Add two new command line options: -a
8342         to print all elements and -n to print the name on each line. Also
8343         fix some error reporting.
8344         (main): Simplify, remove -n and always print names if -a is specified
8345
8346 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8347
8348         * win32/gstconfig.h:
8349         * win32/GSTreamer.vcproj:
8350         * win32/Makefile:
8351         * gst/gstconfig.h.in:
8352         * gst/gst.h:
8353         * gst/gstbin.h:
8354         * gst/gstelement.h:
8355         * gst/gstevent.h:
8356         * gst/gstobject.h:
8357         * gst/gstpad.h:
8358         * docs/gst/gstreamer-sections.txt:
8359         * docs/gst/tmpl/gstconfig.sgml:
8360           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8361
8362 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8363         * docs/gst/gstreamer-sections.txt:
8364         * docs/gst/tmpl/gstconfig.sgml:
8365         Add the GSTREAMER_EXPORT macro to the docs
8366
8367 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8368
8369         * tools/gst-compprep.c: (handle_xmlerror), (main):
8370         Add a check for the version that introduced SetStructuredError to fix
8371         the build on FC1
8372
8373 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8374
8375         * win32/msvc71.sln:
8376         * win32/testsuite/:
8377           prepare to compile the testsuite with MSVC
8378
8379 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8380
8381         * docs/manual/win32.xml:
8382           attempt to transform the Win32 README into an XML doc
8383
8384 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8385
8386         * gst/gst.c:
8387         * gst/gstbin.*:
8388         * gst/config.h.in:
8389         * gst/gstelement.*:
8390         * gst/gstevent.h:
8391         * gst/gstobject.*:
8392         * gst/gstpad.h:
8393         * tools/gst-register.c:
8394         * win32/gstreamer.def:
8395           extern symbols are now exported for the Windows DLL
8396
8397 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8398
8399         * gst/gstinfo.h:
8400           fix a problem to enable/disable DEBUG under MSVC
8401
8402 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8403
8404         * win32/:
8405           enable more debug code in DEBUG build
8406
8407 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8408
8409         * win32/config.h:
8410         * gst/gst-i18n-app.h:
8411           enable NLS under Windows
8412
8413 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8414         * tools/gst-compprep.c: (handle_xmlerror), (main):
8415           Make an error that baffled me a bit clearer
8416
8417 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8418
8419         * gst/gstqueue.c:
8420           don't use g_queue_get_length () because it's 2.4, use ->length
8421
8422 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8423
8424         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8425
8426         * tools/gst-inspect.c: (print_signal_info):
8427           don't free random data twice. (fixes #144185)
8428
8429 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8430
8431         * gst/gstqueue.c:
8432         * gst/gstqueue.h:
8433           fix removing from the wrong queue on event timeout
8434           fix disposing of the event queue by casting correctly
8435           add mutexes for handling the event queue
8436           someone was sleeping when fixing queue last time around :)
8437
8438 2004-06-10  Johan Dahlin  <johan@gnome.org>
8439
8440         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8441         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8442
8443 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8444
8445         * docs/random/gdp:
8446         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8447         * libs/gst/dataprotocol/dataprotocol.c:
8448         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8449         (gst_dp_buffer_from_header):
8450         * libs/gst/dataprotocol/dataprotocol.h:
8451         * libs/gst/dataprotocol/dp-private.h:
8452           rev version to 0.1, add buffer flags and copy them
8453
8454 2004-06-09  Johan Dahlin  <johan@gnome.org>
8455
8456         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8457         the flags from the buffer we're copying.
8458
8459 2004-06-09  Wim Taymans  <wim@fluendo.com>
8460
8461         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8462         * gst/elements/gstidentity.c: (gst_identity_init),
8463         (gst_identity_chain):
8464         Print more buffer info in fakesink.
8465         Make identity output similar to fakesink.
8466
8467 2004-06-07  Daniel Gazard  <dany42@free.fr>
8468
8469         reviewed by Benjamin Otte  <otte@gnome.org>
8470
8471         * configure.ac:
8472           fix cross compiling not working. (fixes #143741)
8473
8474 2004-06-07  Benjamin Otte  <otte@gnome.org>
8475
8476         * gst/gstelement.c: (gst_element_set_time_delay):
8477           add failure check
8478         * gst/gstinfo.h:
8479           put brackets around macro arguments of GST_TIME_ARGS, add note to
8480           move it to correct header in 0.9
8481
8482 2004-06-07  Benjamin Otte  <otte@gnome.org>
8483
8484         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8485         (gst_file_index_load), (_file_index_id_save_entries),
8486         (gst_file_index_commit), (gst_file_index_add_association),
8487         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8488         (gst_file_index_plugin_init):
8489           make debugging use a default category
8490
8491 2004-06-06  David Moore  <dcm@acm.org>
8492
8493         reviewed by Benjamin Otte  <otte@gnome.org>
8494
8495         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8496         (gst_fdsrc_change_state):
8497           reset offset counter when going READY => PAUSED. (fixes #142903)
8498
8499 2004-06-06  ed@catmur.co.uk
8500
8501         reviewed by Benjamin Otte  <otte@gnome.org>
8502
8503         * gst/registries/gstxmlregistry.c:
8504         (gst_xml_registry_rebuild_recurse):
8505           don't rely on g_dir_open to figure out if a file is a directory, use
8506           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8507           directories. (fixes #142850)
8508
8509 2004-06-06  Benjamin Otte  <otte@gnome.org>
8510
8511         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8512           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8513         * libs/gst/bytestream/adapter.c:
8514         * libs/gst/bytestream/adapter.h:
8515           fix copyright in header and typo in debugging category name
8516
8517 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8518
8519         * configure.ac:
8520           bump nano to cvs
8521
8522 === release 0.8.3 ===
8523
8524 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8525
8526         * configure.ac:
8527           update libtool versioning
8528           do a new release
8529         * docs/gst/tmpl/gstelement.sgml:
8530         * docs/gst/tmpl/gsttypes.sgml:
8531         * gst/gstinfo.c: (_gst_debug_init):
8532           put back GST_CAT_DATAFLOW to fix API breakage
8533
8534 2004-06-04  David Schleef  <ds@schleef.org>
8535
8536         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8537
8538 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8539
8540         * configure.ac:
8541           bump nano to cvs
8542
8543 === release 0.8.2 ===
8544
8545 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8546
8547         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8548           check GST_DEBUG environment variable which is parsed the same way
8549           as --gst-debug=
8550
8551 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8552
8553         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8554                             gstmd5sink.c gstshaper.c gsttee.c
8555                             gsttypefindelement.c
8556         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8557
8558           - removing trailing commas at end of enums
8559             it is correct C99 code but C90 compilers would complain
8560             (AIX, Forte, ...)
8561             ('should' fix #143290, at least partially)
8562
8563 2004-05-27  Wim Taymans  <wim@fluendo.com>
8564
8565         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8566         (chain_group_set_enabled), (create_group), (add_to_group),
8567         (merge_groups), (setup_group_scheduler), (group_elements),
8568         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8569         Don't try to follow the pad connections with other groups
8570         when a loop based element is added to the scheduler because
8571         the bin will inform the scheduler about the pad links a little
8572         later.
8573
8574 2004-05-27  Wim Taymans  <wim@fluendo.com>
8575
8576         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8577         (remove_from_chain), (chain_group_set_enabled),
8578         (setup_group_scheduler), (group_element_set_enabled),
8579         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8580         (gst_opt_scheduler_show):
8581         Elements without a group can do a state change as well, just wait
8582         with the setup of the scheduling function when it is added to a
8583         chain.
8584
8585 2004-05-27  Wim Taymans  <wim@fluendo.com>
8586
8587         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8588         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8589         (merge_groups), (setup_group_scheduler),
8590         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8591         (gst_opt_scheduler_show):
8592         Fixes to maintain internal consistency of the scheduler data
8593         structures. 
8594          - adding an enabled group to a chain should increment the
8595            number of enabled elements in that chain.
8596          - removing an enabled group from a chain could disable the
8597            chain.
8598          - removing a disabled group from a chain could enable the
8599            chain.
8600          - add g_assert when internal inconsistency is detected.
8601          - adding an element to a group could increase the number of
8602            links this group has with other groups.
8603          - merging two groups also merges the chains.
8604          - also show group links in the _show method.
8605            
8606
8607 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8608
8609         * gst/gstcaps.c: (gst_caps_structure_simplify):
8610           don't print error messages when there is no error
8611         * gst/gstvalue.c: (gst_value_compare_int_range):
8612           compare the second value, too
8613         * testsuite/caps/Makefile.am:
8614         * testsuite/caps/random.c: (assert_on_error), (main):
8615           add tests to make sure the two things above are checked for
8616
8617 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8618
8619         * configure.ac:
8620         * libs/gst/dataprotocol/Makefile.am:
8621         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8622         * libs/gst/dataprotocol/dataprotocol.h:
8623           wrap header in GST_ENABLE_NEW.  make code use it
8624
8625 2004-05-23  Johan Dahlin  <johan@gnome.org>
8626
8627         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8628         so verbose and print GstElement signal names all the time.
8629
8630 2004-05-22  David Schleef  <ds@schleef.org>
8631
8632         * gst/registries/gstxmlregistry.c:
8633         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8634         (bug #142957)
8635
8636 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8637
8638         * configure.ac:
8639           scrub cflags for glib2 so gcc doesn't complain when glib is in
8640           /usr/local
8641
8642 2004-05-21  Johan Dahlin  <johan@gnome.org>
8643
8644         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8645         __GNUC__, patch from Brian Cameron, fixes bug #142804
8646
8647 2004-05-20  David Schleef  <ds@schleef.org>
8648
8649         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8650         comparison code.  (bug #142819)
8651
8652 2004-05-20  Wim Taymans  <wim@fluendo.com>
8653
8654         * gst/gstbuffer.c: (gst_buffer_default_copy):
8655         * gst/gstbuffer.h:
8656         Added Comment to a flag.
8657         copy relevant flags in _buffer_copy.
8658
8659 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8660
8661         reviewed by: Wim Taymans <wim at fluendo dot com>
8662
8663         * gst/gstbuffer.h:
8664           add GST_BUFFER_IN_CAPS buffer flag
8665         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8666         (gst_structure_parse_any_list), (gst_structure_parse_list),
8667         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8668         * gst/gstvalue.c: (gst_value_serialize_any_list),
8669         (gst_value_transform_any_list_string),
8670         (gst_value_list_prepend_value), (gst_value_list_append_value),
8671         (gst_value_list_get_size), (gst_value_list_get_value),
8672         (gst_value_transform_list_string),
8673         (gst_value_transform_fixed_list_string),
8674         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8675         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8676         (_gst_value_initialize):
8677         * gst/gstvalue.h:
8678           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8679           < , > as a format.
8680         * testsuite/caps/string-conversions.c: (main):
8681           add regression tests for < >
8682
8683 2004-05-20  Johan Dahlin  <johan@gnome.org>
8684
8685         * docs/gst/Makefile.am (all-local): Re-add
8686
8687 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8688
8689         * docs/gst/Makefile.am:
8690         * docs/gst/gstreamer-docs.sgml:
8691         * docs/libs/Makefile.am:
8692         * docs/libs/gstreamer-libs-docs.sgml:
8693           fix distcheck issues
8694
8695 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8696
8697         * libs/gst/dataprotocol/Makefile.am:
8698           add to autotest
8699
8700 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8701
8702         * libs/gst/dataprotocol/Makefile.am:
8703         * libs/gst/dataprotocol/dataprotocol.c:
8704         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8705         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8706         * libs/gst/dataprotocol/dp-private.h:
8707           use GST macros to read/write fixed length ints
8708           add some more asserts
8709
8710 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8711
8712         * docs/libs/gstreamer-libs-docs.sgml:
8713         * docs/libs/gstreamer-libs-sections.txt:
8714           remove idct and putbits
8715         * configure.ac:
8716         * docs/libs/tmpl/gstdataprotocol.sgml:
8717         * libs/gst/Makefile.am:
8718         * libs/gst/dataprotocol/Makefile.am:
8719         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8720         (buffer_test), (caps_test), (event_test), (main):
8721         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8722         (gst_dp_dump_byte_array), (gst_dp_init),
8723         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8724         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8725         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8726         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8727         (gst_dp_validate_header), (gst_dp_validate_payload),
8728         (gst_dp_validate_packet), (plugin_init):
8729         * libs/gst/dataprotocol/dataprotocol.h:
8730         * libs/gst/dataprotocol/dp-private.h:
8731           add dataprotocol
8732
8733 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8734
8735         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8736           fix int variable deserialization and add a helper so we can actually
8737           debug this.
8738
8739 2004-05-18  David Schleef  <ds@schleef.org>
8740
8741         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8742           argv[0].  Calling yourself is probably not the best way to
8743           construct a test like this, btw.
8744
8745 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8746
8747         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8748           don't claim to be more intelligent than a scheduler when the
8749           scheduler claims the pipeline is stopped
8750         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8751         (safe_cothread_destroy),
8752         (gst_entry_scheduler_remove_all_cothreads),
8753         (gst_entry_scheduler_reset), (_remove_cothread),
8754         (gst_entry_scheduler_state_transition):
8755           hold off cothread destruction if we're not in main cothread
8756         * configure.ac:
8757         * testsuite/Makefile.am:
8758           add new test dir
8759         * testsuite/schedulers/.cvsignore:
8760         * testsuite/schedulers/Makefile.am:
8761           add tests
8762         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8763           check relinking and adding/removing elements from a running pipeline
8764         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8765           check unlinking in a running pipeline
8766         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8767           check unreffing a running pipeline
8768         * testsuite/schedulers/useless_iteration.c: (main):
8769           check iterating a pipeline that contains running threads works
8770
8771 2004-05-18  David Schleef  <ds@schleef.org>
8772
8773         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8774           is false.
8775
8776 2004-05-18  Wim Taymans  <wim@fluendo.com>
8777
8778         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8779         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8780         Fixed an error introduced with patch for 1.63. When setting
8781         a get based element as the entry point in a group, make sure
8782         to mark the group as GET based.
8783
8784 2004-05-18  Wim Taymans  <wim@fluendo.com>
8785
8786         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8787         (setup_group_scheduler), (loop_group_schedule_function),
8788         (gst_opt_scheduler_pad_link):
8789         Added some more debug info and fixed a bug where the group
8790         type was set to LOOP but it was in fact unknown.
8791
8792 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8793
8794         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8795           make resetting scheduler work twice in a row
8796
8797 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8798
8799         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8800         (CREATE_USERIALIZATION), (_gst_value_initialize),
8801         (gst_value_compare_float), (gst_value_serialize_float),
8802         (gst_value_deserialize_float), (gst_value_compare_enum),
8803         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8804           add serialization and comparison functions for long, int64, enum and
8805           float values
8806         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8807           use best serialization function in type hierarchy instead of only a
8808           matching one. This is required for enums to work.
8809         * gst/parse/grammar.y:
8810           use gst_caps_deserialize
8811         * testsuite/parse/Makefile.am:
8812           parse1 now works
8813         * testsuite/parse/parse1.c: (main):
8814           remove aggregator check, aggregator is broken, this test works now
8815           but fails because of bug #138012
8816         * testsuite/parse/parse2.c: (main):
8817           s/xvideosink/xvimagesink - this test looks a lot like we should
8818           disable it
8819
8820 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8821
8822         * gst/gstelement.c: (gst_element_class_init):
8823           whoops, store the signal id correctly
8824         * gst/schedulers/gstbasicscheduler.c:
8825         (gst_basic_scheduler_chain_wrapper):
8826           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8827           chain function isn't linked
8828
8829 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8830         * configure.ac:
8831         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8832         support until we decide where the flags should be used
8833         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8834         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8835         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8836         Output refused caps in the debug info
8837
8838 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8839
8840         * gst/elements/gstidentity.c: (gst_identity_chain):
8841           add duration debug
8842         * gst/gstinfo.c: (gst_debug_log_default):
8843           add timestamp
8844
8845 2004-05-13  Benjamin Otte  <otte@gnome.org>
8846
8847         * gst/gstpipeline.c: (gst_pipeline_dispose),
8848         (gst_pipeline_change_state):
8849           call gst_scheduler_reset on dispose (fixes #141416)
8850
8851 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8852
8853         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8854           compute mapsize correctly
8855         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8856           use correct datatypes when calling a varargs function
8857         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8858           push a DISCONT event as first thing
8859         * gst/gst_private.h:
8860         * gst/gstinfo.c: (_gst_debug_init):
8861           remove GST_DATAFLOW debugging category
8862         * gst/gstbin.c: (gst_bin_iterate):
8863           use GST_SCHEDULING category
8864         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8865         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8866         (gst_pad_call_get_function):
8867           add GST_DATAFLOW to easily track flow of buffers or events.
8868         * gst/gstqueue.c: (gst_queue_get_type),
8869         (gst_queue_handle_pending_events), (gst_queue_chain),
8870         (gst_queue_get), (gst_queue_handle_src_event):
8871           use own static debugging category GST_DATAFLOW for dataflow,
8872           use DEBUG category for showing which path events go, use LOG
8873           category for buffers.
8874
8875 2004-05-10  David Schleef  <ds@schleef.org>
8876
8877         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8878
8879 2004-05-10  David Schleef  <ds@schleef.org>
8880
8881         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8882         symbols, because otherwise we don't know what they are.  Thanks,
8883         the GStreamer team.
8884         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8885
8886 2004-05-10  David Schleef  <ds@schleef.org>
8887
8888         (from Steve Lhomme)
8889         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8890         are deleted.  Fix.
8891         * win32/Makefile.inspect:
8892         * win32/Makefile.launch:
8893         * win32/Makefile.register:
8894
8895 2004-05-10  David Schleef  <ds@schleef.org>
8896
8897         * gst/gstinfo.h: Add missing inline function.
8898         * gst/gsttrace.c: add include
8899         * gst/parse/grammar.y: remove unused code
8900         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8901         more portable.
8902         * tools/gst-register.c: wrap unistd.h
8903         
8904         More additions/fixes from Steve for the MSVC build.
8905         * win32/GStreamer.vcproj:
8906         * win32/Makefile:
8907         * win32/Makefile.inspect:
8908         * win32/Makefile.launch:
8909         * win32/Makefile.register:
8910         * win32/README.txt:
8911         * win32/gst-inspect.vcproj:
8912         * win32/gst-launch.vcproj:
8913         * win32/gst-register.vcproj:
8914         * win32/gstbytestream.def:
8915         * win32/gstbytestream.vcproj:
8916         * win32/gstconfig.h:
8917         * win32/gstelements.def:
8918         * win32/gstelements.vcproj:
8919         * win32/gstenumtypes.c:
8920         * win32/gstenumtypes.h:
8921         * win32/gstoptimalscheduler.def:
8922         * win32/gstoptimalscheduler.vcproj:
8923         * win32/gstreamer.def:
8924         * win32/gstspider.def:
8925         * win32/gstspider.vcproj:
8926         * win32/gstversion.h:
8927         * win32/msvc71.sln:
8928
8929 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8930
8931         * gst/gstelement.c: (gst_element_class_init),
8932         (gst_element_no_more_pads):
8933         * gst/gstelement.h:
8934           add gst_element_no_more_pads and the "no-more-pads" signal
8935
8936 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8937
8938         * gst/gstregistry.c: (gst_registry_add_plugin):
8939           refuse to add plugins when a plugin with same name is already
8940           registered. Fixes a bunch of "How to remove plugins?" issues.
8941           May lead to other problems though, let's test
8942
8943 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8944
8945         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8946         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8947         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8948
8949 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8950
8951         * tests/Makefile.am: fix am16 issue
8952
8953 2004-05-09  Benjamin Otte  <otte@gnome.org>
8954
8955         * libs/gst/bytestream/Makefile.am:
8956           we should indeed add .c files to makefiles or they won't be built
8957           (d'oh)
8958
8959 2004-05-08  Benjamin Otte  <otte@gnome.org>
8960
8961         * gst/gstpad.c: (gst_pad_proxy_fixate):
8962           really reduce the set of caps
8963
8964 2004-05-08  Benjamin Otte  <otte@gnome.org>
8965
8966         * tests/Makefile.am:
8967         * tests/spidey_bench.c: (handoff), (main):
8968           add benchmark to test how long spider needs to create a pipeline
8969
8970 2004-05-08  Benjamin Otte  <otte@gnome.org>
8971
8972         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8973           mark links as unengaged when unnegotiating instead of deactivating.
8974           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8975
8976 2004-05-08  Benjamin Otte  <otte@gnome.org>
8977
8978         * docs/manual/helloworld.xml:
8979           s/audiosink/osssink (patch by Patrick Guimond)
8980
8981 2004-05-07  David Schleef  <ds@schleef.org>
8982
8983         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8984         since it contains important stuff.
8985
8986 2004-05-07  David Schleef  <ds@schleef.org>
8987
8988         * testsuite/caps/caps.c: (test3), (main): A check for appending
8989         ANY caps.
8990
8991 2004-05-07  David Schleef  <ds@schleef.org>
8992
8993         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8994         which may contain commas.  Fixes detection of -Wa,-mregnames
8995
8996 2004-05-06  David Schleef  <ds@schleef.org>
8997
8998         Changes to handle compilers that don't have variadic macro
8999         support.  In particular, glib headers define some inlines
9000         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
9001         builds.
9002         * gst/Makefile.am:
9003         * gst/cothreads.c:
9004         * gst/elements/gstfdsink.c:
9005         * gst/elements/gstfdsrc.c:
9006         * gst/elements/gstfilesink.c:
9007         * gst/elements/gstfilesrc.c:
9008         * gst/gst_private.h:
9009         * gst/gstatomic.c:
9010         * gst/gstcaps.c: (gst_caps_append):
9011         * gst/gstcpu.c: (gst_cpuid_i386):
9012         * gst/gstelement.c:
9013         * gst/gsterror.c:
9014         * gst/gstfilter.c:
9015         * gst/gstinfo.h:
9016         * gst/gstprobe.c:
9017         * gst/gstquery.c:
9018         * gst/gstregistry.c:
9019         * gst/gststructure.c:
9020         * gst/gsttaginterface.c:
9021         * gst/gsttrace.c: (gst_trace_new):
9022         * gst/gsttrashstack.c:
9023         * gst/gsturi.c:
9024         * gst/gstvalue.c:
9025         * gst/parse/grammar.y:
9026         * gst/parse/parse.l:
9027         * tools/gst-inspect.c: (main):
9028         * tools/gst-launch.c: (main):
9029         * tools/gst-xmlinspect.c: (PUT_STRING):
9030
9031 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9032
9033         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9034         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9035         * gst/elements/gstfilesrc.h:
9036           send NEW_MEDIA events correctly
9037         * gst/elements/gsttypefindelement.c: (start_typefinding),
9038         (gst_type_find_element_handle_event):
9039           restart typefinding when we get a NEW_MEDIA event
9040         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9041         (gst_bin_dispose):
9042           don't die when someone removes elements in callbacks
9043         * gst/gstelement.c: (gst_element_change_state):
9044           improve debugging
9045         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9046           we need a NEW_MEDIA event to engage a link
9047         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9048           don't g_print debugging stuff
9049         * testsuite/caps/simplify.c: (check_caps):
9050
9051 2004-05-04  Benjamin Otte  <otte@gnome.org>
9052
9053         * gst/parse/grammar.y:
9054           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9055
9056 2004-05-04  Benjamin Otte  <otte@gnome.org>
9057
9058         * testsuite/caps/renegotiate.c: (main):
9059           improve output in error case
9060
9061 2004-05-04  Benjamin Otte  <otte@gnome.org>
9062
9063         * gst/parse/grammar.y:
9064           fix assert to not trigger when there's no error argument
9065         * gst/parse/parse.l:
9066           fix definition of caps to allow more than two structures
9067         * testsuite/caps/Makefile.am:
9068         * testsuite/caps/renegotiate.c: (main):
9069           it's sinesrc and works in that case
9070
9071 2004-05-04  Wim Taymans  <wim@fluendo.com>
9072
9073         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9074         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9075         when removing an element from a group, we always need to
9076         decrement the link count that this group had with other 
9077         groups through the element.
9078         added an extra assert to catch inconsistencies when decrementing
9079         the link count.
9080
9081 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9082
9083         * configure.ac:
9084         * docs/gst/Makefile.am:
9085         * docs/gst/gstreamer-sections.txt:
9086         * docs/gst/tmpl/gstcompat.sgml:
9087         * examples/appreader/Makefile.am:
9088         * examples/cutter/Makefile.am:
9089         * examples/events/Makefile.am:
9090         * examples/helloworld/Makefile.am:
9091         * examples/helloworld2/Makefile.am:
9092         * examples/launch/Makefile.am:
9093         * examples/manual/Makefile.am:
9094         * examples/mixer/Makefile.am:
9095         * examples/pingpong/Makefile.am:
9096         * examples/plugins/Makefile.am:
9097         * examples/queue/Makefile.am:
9098         * examples/queue2/Makefile.am:
9099         * examples/queue3/Makefile.am:
9100         * examples/queue4/Makefile.am:
9101         * examples/retag/Makefile.am:
9102         * examples/thread/Makefile.am:
9103         * examples/typefind/Makefile.am:
9104         * examples/xml/Makefile.am:
9105         * gst/Makefile.am:
9106         * gst/autoplug/Makefile.am:
9107         * gst/elements/Makefile.am:
9108         * gst/gstcompat.h:
9109         * gst/indexers/Makefile.am:
9110         * gst/parse/Makefile.am:
9111         * gst/registries/Makefile.am:
9112         * gst/schedulers/Makefile.am:
9113         * libs/gst/bytestream/Makefile.am:
9114         * libs/gst/control/Makefile.am:
9115         * libs/gst/getbits/Makefile.am:
9116         * po/af.po:
9117         * po/az.po:
9118         * po/en_GB.po:
9119         * po/fr.po:
9120         * po/nl.po:
9121         * po/sr.po:
9122         * po/sv.po:
9123         * po/tr.po:
9124         * po/uk.po:
9125         * tests/Makefile.am:
9126         * tests/bufspeed/Makefile.am:
9127         * tests/instantiate/Makefile.am:
9128         * tests/memchunk/Makefile.am:
9129         * tests/muxing/Makefile.am:
9130         * tests/negotiation/Makefile.am:
9131         * tests/probes/Makefile.am:
9132         * tests/sched/Makefile.am:
9133         * tests/seeking/Makefile.am:
9134         * tests/threadstate/Makefile.am:
9135         * testsuite/caps/Makefile.am:
9136         * testsuite/cleanup/Makefile.am:
9137         * testsuite/dlopen/Makefile.am:
9138         * testsuite/dynparams/Makefile.am:
9139         * testsuite/plugin/Makefile.am:
9140         * testsuite/states/Makefile.am:
9141         * tools/Makefile.am:
9142           reorganize compile/link flags to be consistent
9143           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9144
9145 2004-05-04  David Schleef  <ds@schleef.org>
9146
9147         The "once more, with feeling" check-in.
9148         * testsuite/caps/Makefile.am: dist caps_strings
9149         * testsuite/caps/renegotiate.c: (main): This test triggers a
9150           segfault in the core.  Marking as failing.
9151
9152 2004-05-03  David Schleef  <ds@schleef.org>
9153
9154         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9155           by the build bots.
9156         * testsuite/caps/renegotiate.c: (main): Same.
9157
9158 2004-05-03  David Schleef  <ds@schleef.org>
9159
9160         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9161
9162 2004-05-03  David Schleef  <ds@schleef.org>
9163
9164         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9165           variable to find our source file.
9166
9167 2004-05-03  David Schleef  <ds@schleef.org>
9168
9169         * configure.ac:  Link plugins with libgstreamer and dependent
9170           libraries
9171         * testsuite/caps/Makefile.am:
9172         * testsuite/caps/caps_strings:
9173         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9174           through a file of caps strings and test each one
9175
9176 2004-05-04  Benjamin Otte  <otte@gnome.org>
9177
9178         * libs/gst/bytestream/Makefile.am:
9179         * libs/gst/bytestream/adapter.c: 
9180         * libs/gst/bytestream/adapter.h:
9181           add GstAdapter, similar to bytestream, but doesn't require ugly event
9182           handling or uglier loopbased elements
9183
9184 2004-05-03  David Schleef  <ds@schleef.org>
9185
9186         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9187         * testsuite/caps/erathostenes.c:
9188         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9189
9190 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9191
9192         * docs/pwg/pwg.xml:
9193           remove hardcoded stylesheet path (duh)
9194         * docs/random/release:
9195         * docs/gst/gstreamer-sections.txt:
9196         * gst/Makefile.am:
9197         * gst/gst.h:
9198         * gst/gst_private.h:
9199         * gst/gstcaps.c:
9200         * gst/gstevent.c:
9201         * gst/gstformat.c:
9202         * gst/gstinfo.c:
9203         * gst/gstinfo.h:
9204         * gst/gstinterface.c:
9205         * gst/gstmemchunk.c:
9206         * gst/gstprobe.c:
9207         * gst/gstquery.c:
9208         * gst/gstregistry.c:
9209         * gst/gstregistrypool.c:
9210         * gst/gststructure.c:
9211         * gst/gsttaginterface.c:
9212         * gst/gstthread.c:
9213         * gst/gsttrace.c:
9214         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9215         * gst/gsturi.c:
9216         * gst/gstvalue.c:
9217           deprecate gst_info; remove gstlog.h
9218    
9219
9220 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9221
9222         * Makefile.am:
9223         * po/en_GB.po:
9224         * po/sv.po:
9225         * po/uk.po:
9226           updated translations
9227
9228 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9229
9230         * gst/gstbin.c: (gst_bin_dispose):
9231           better debugging
9232
9233 2004-05-03  Johan Dahlin  <johan@gnome.org>
9234
9235         * gst/schedulers/gstoptimalscheduler.c
9236         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9237         really is a GstElement. Avoids critical when running gst-launch -v
9238         and a oggdemux/decoding pipeline.
9239
9240 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9241
9242         * docs/gst/tmpl/gstpipeline.sgml :
9243         * docs/manual/elements-api.xml :
9244                 doc fix by Patrick Guimond (Protector) from devel ML
9245                 reviewed by ronald
9246
9247 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9248
9249         * docs/gst/Makefile.am :
9250         * docs/libs/Makefile.am :
9251                 apply a patch from Arwed v. Merkatz so that gtk-doc
9252                 generated docs install (same for .devhelp file)
9253                 (fixes part 1 of #138836)
9254
9255 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9256
9257         * docs/faq/dependencies.xml: typo
9258         * docs/faq/getting.xml :
9259             - fix download URL for new gstreamer site
9260             - hide sf.net download page as latest version aren't there
9261             - fix apt URLs
9262             - fill "get via CVS" paragraph (link to dev page on the site)
9263         * docs/faq/general.xml:
9264             hide status tables as they no more exists
9265             change case on plugins license file to reflect reality
9266         * docs/faq/troubleshooting.xml:
9267             remove the wiki question/answer as there is no more wiki
9268
9269 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9270
9271         * gst/gsterror.h:
9272           include the headers needed for declarations used in this header
9273
9274 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9275
9276         * docs/random/uraeus/gstreamer_and_midi.txt :
9277           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9278           (fixes #132288)
9279
9280 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9281
9282         reviewed by Benjamin Otte  <otte@gnome.org>
9283
9284         * gst/schedulers/gthread-cothreads.h:
9285           free allocated data for main cothread, too when destroying context
9286           (fixes #141417)
9287
9288 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9289
9290         * docs/manual/goals.xml : remove duplicated paragraph at end 
9291         of doc page (fixes #141448)
9292
9293 2004-04-29  David Schleef  <ds@schleef.org>
9294
9295         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9296         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9297
9298 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9299
9300         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9301           fix property
9302         * gst/gstcaps.c:
9303           fix doc string
9304         * po/POTFILES.in:
9305           rename typefind source file
9306
9307 2004-04-28  David Schleef  <ds@schleef.org>
9308
9309         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9310         * win32/GStreamer.vcproj:
9311         * win32/Makefile:
9312         * win32/config.h:
9313         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9314         (_trewinddir), (_ttelldir), (_tseekdir):
9315         * win32/dirent.h:
9316         * win32/gst-inspect.vcproj:
9317         * win32/gst-launch.vcproj:
9318         * win32/gst-register.vcproj:
9319         * win32/gstbytestream.vcproj:
9320         * win32/gstelements.vcproj:
9321         * win32/gstoptimalscheduler.vcproj:
9322         * win32/gstspider.vcproj:
9323         * win32/gtchar.h:
9324         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9325         * win32/mman.h:
9326         * win32/mman.inl:
9327         * win32/msvc71.sln:
9328
9329 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9330
9331         * gst/gst.c: (init_post):
9332         * gst/gstinfo.c:
9333           remove useless _gst_progname stuff
9334         * tools/gst-inspect.c: (print_field), (print_caps):
9335           improve caps output
9336
9337 2004-04-28  David Schleef  <ds@schleef.org>
9338
9339         Disable parsing of a lot of files that aren't part of the
9340         exported API.  Move corresponding template files to old/,
9341         waiting for removal when they don't contain anything
9342         interesting.
9343         * docs/gst/Makefile.am:
9344         * docs/gst/gstreamer-sections.txt:
9345         * docs/gst/tmpl/cothreads.sgml:
9346         * docs/gst/tmpl/cothreads_compat.sgml:
9347         * docs/gst/tmpl/gettext.sgml:
9348         * docs/gst/tmpl/gobject2gtk.sgml:
9349         * docs/gst/tmpl/grammar.tab.sgml:
9350         * docs/gst/tmpl/gst-i18n-app.sgml:
9351         * docs/gst/tmpl/gst-i18n-lib.sgml:
9352         * docs/gst/tmpl/gst_private.sgml:
9353         * docs/gst/tmpl/gstaggregator.sgml:
9354         * docs/gst/tmpl/gstarch.sgml:
9355         * docs/gst/tmpl/gstatomic_impl.sgml:
9356         * docs/gst/tmpl/gstbufferstore.sgml:
9357         * docs/gst/tmpl/gstdata_private.sgml:
9358         * docs/gst/tmpl/gstdisksink.sgml:
9359         * docs/gst/tmpl/gstdisksrc.sgml:
9360         * docs/gst/tmpl/gstelementfactory.sgml:
9361         * docs/gst/tmpl/gstextratypes.sgml:
9362         * docs/gst/tmpl/gstfakesink.sgml:
9363         * docs/gst/tmpl/gstfakesrc.sgml:
9364         * docs/gst/tmpl/gstfdsink.sgml:
9365         * docs/gst/tmpl/gstfdsrc.sgml:
9366         * docs/gst/tmpl/gstfilesink.sgml:
9367         * docs/gst/tmpl/gstfilesrc.sgml:
9368         * docs/gst/tmpl/gsthttpsrc.sgml:
9369         * docs/gst/tmpl/gstidentity.sgml:
9370         * docs/gst/tmpl/gstindexfactory.sgml:
9371         * docs/gst/tmpl/gstmarshal.sgml:
9372         * docs/gst/tmpl/gstmd5sink.sgml:
9373         * docs/gst/tmpl/gstmultidisksrc.sgml:
9374         * docs/gst/tmpl/gstmultifilesrc.sgml:
9375         * docs/gst/tmpl/gstpadtemplate.sgml:
9376         * docs/gst/tmpl/gstpipefilter.sgml:
9377         * docs/gst/tmpl/gstschedulerfactory.sgml:
9378         * docs/gst/tmpl/gstsearchfuncs.sgml:
9379         * docs/gst/tmpl/gstshaper.sgml:
9380         * docs/gst/tmpl/gstspider.sgml:
9381         * docs/gst/tmpl/gstspideridentity.sgml:
9382         * docs/gst/tmpl/gststatistics.sgml:
9383         * docs/gst/tmpl/gsttee.sgml:
9384         * docs/gst/tmpl/gsttimecache.sgml:
9385         * docs/gst/tmpl/gsttypefind.sgml:
9386         * docs/gst/tmpl/gsttypefindfactory.sgml:
9387         * docs/gst/tmpl/gstxmlregistry.sgml:
9388         * docs/gst/tmpl/gthread-cothreads.sgml:
9389         * docs/gst/tmpl/old/cothreads.sgml:
9390         * docs/gst/tmpl/old/cothreads_compat.sgml:
9391         * docs/gst/tmpl/old/gettext.sgml:
9392         * docs/gst/tmpl/old/gobject2gtk.sgml:
9393         * docs/gst/tmpl/old/grammar.tab.sgml:
9394         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9395         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9396         * docs/gst/tmpl/old/gst_private.sgml:
9397         * docs/gst/tmpl/old/gstaggregator.sgml:
9398         * docs/gst/tmpl/old/gstarch.sgml:
9399         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9400         * docs/gst/tmpl/old/gstbufferstore.sgml:
9401         * docs/gst/tmpl/old/gstdata_private.sgml:
9402         * docs/gst/tmpl/old/gstdisksink.sgml:
9403         * docs/gst/tmpl/old/gstdisksrc.sgml:
9404         * docs/gst/tmpl/old/gstelementfactory.sgml:
9405         * docs/gst/tmpl/old/gstextratypes.sgml:
9406         * docs/gst/tmpl/old/gstfakesink.sgml:
9407         * docs/gst/tmpl/old/gstfakesrc.sgml:
9408         * docs/gst/tmpl/old/gstfdsink.sgml:
9409         * docs/gst/tmpl/old/gstfdsrc.sgml:
9410         * docs/gst/tmpl/old/gstfilesink.sgml:
9411         * docs/gst/tmpl/old/gstfilesrc.sgml:
9412         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9413         * docs/gst/tmpl/old/gstidentity.sgml:
9414         * docs/gst/tmpl/old/gstindexfactory.sgml:
9415         * docs/gst/tmpl/old/gstmarshal.sgml:
9416         * docs/gst/tmpl/old/gstmd5sink.sgml:
9417         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9418         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9419         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9420         * docs/gst/tmpl/old/gstpipefilter.sgml:
9421         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9422         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9423         * docs/gst/tmpl/old/gstshaper.sgml:
9424         * docs/gst/tmpl/old/gstspider.sgml:
9425         * docs/gst/tmpl/old/gstspideridentity.sgml:
9426         * docs/gst/tmpl/old/gststatistics.sgml:
9427         * docs/gst/tmpl/old/gsttee.sgml:
9428         * docs/gst/tmpl/old/gsttimecache.sgml:
9429         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9430         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9431         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9432         * docs/gst/tmpl/old/types.sgml:
9433         * docs/gst/tmpl/types.sgml:
9434
9435         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9436         gtkdoc-scan doesn't like files with the same name in different
9437         directories.
9438         * gst/elements/Makefile.am:
9439         * gst/elements/gstelements.c:
9440         * gst/elements/gsttypefind.c: 
9441         * gst/elements/gsttypefind.h:
9442         * gst/elements/gsttypefindelement.c:
9443         * gst/elements/gsttypefindelement.h:
9444
9445 2004-04-28  David Schleef  <ds@schleef.org>
9446
9447         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9448         patch (bug #141317):
9449         * gst/gst-i18n-lib.h: Allow disabling gettext.
9450         * gst/gstatomic_impl.h: disable warning when it's dumb.
9451         * gst/gstclock.c: fix include
9452         * gst/gstcompat.h: fix variadic macro
9453         * gst/gstinfo.c: fix include
9454         * gst/gstmacros.h: add defines for inlines on MSVC
9455         * gst/gstplugin.c: fix includes
9456         * gst/gstregistry.c: fix includes
9457         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9458         * gst/gstsystemclock.c: fix include
9459         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9460         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9461         * gst/registries/gstxmlregistry.c:
9462         (gst_xml_registry_parse_element_factory): fix use of non-portable
9463         functions
9464         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9465         * libs/gst/control/dparammanager.h: same
9466
9467 2004-04-28  David Schleef  <ds@schleef.org>
9468
9469         Move a bunch of unused files to old/ with names that are
9470         not case-insensitive-unique.  These files still contain some
9471         useful information that needs to be merged into gstbin.sgml,
9472         etc., so they shouldn't be deleted yet.
9473         * docs/gst/tmpl/GstBin.sgml:
9474         * docs/gst/tmpl/GstBuffer.sgml:
9475         * docs/gst/tmpl/GstCaps.sgml:
9476         * docs/gst/tmpl/GstClock.sgml:
9477         * docs/gst/tmpl/GstCompat.sgml:
9478         * docs/gst/tmpl/GstData.sgml:
9479         * docs/gst/tmpl/GstElement.sgml:
9480         * docs/gst/tmpl/GstEvent.sgml:
9481         * docs/gst/tmpl/GstIndex.sgml:
9482         * docs/gst/tmpl/GstStructure.sgml:
9483         * docs/gst/tmpl/GstTag.sgml:
9484         * docs/gst/tmpl/old/GstBin.sgml:
9485         * docs/gst/tmpl/old/GstBuffer.sgml:
9486         * docs/gst/tmpl/old/GstCaps.sgml:
9487         * docs/gst/tmpl/old/GstClock.sgml:
9488         * docs/gst/tmpl/old/GstCompat.sgml:
9489         * docs/gst/tmpl/old/GstData.sgml:
9490         * docs/gst/tmpl/old/GstElement.sgml:
9491         * docs/gst/tmpl/old/GstEvent.sgml:
9492         * docs/gst/tmpl/old/GstIndex.sgml:
9493         * docs/gst/tmpl/old/GstStructure.sgml:
9494         * docs/gst/tmpl/old/GstTag.sgml:
9495
9496 2004-04-28  David Schleef  <ds@schleef.org>
9497
9498         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9499         (gst_caps_append), (gst_caps_append_structure),
9500         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9501         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9502         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9503         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9504         (gst_caps_intersect), (gst_caps_normalize),
9505         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9506         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9507         * gst/gstcaps.h: use GST_IS_CAPS().
9508
9509 2004-04-26  David Schleef  <ds@schleef.org>
9510
9511         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9512         assembly.  gcc doesn't handle it correctly. (bug #141083)
9513         * gst/gsttrashstack.h: same
9514
9515 2004-04-25  Benjamin Otte  <otte@gnome.org>
9516
9517         * gst/gstelement.c: (gst_element_change_state):
9518           fix assertion to do an int comparison
9519
9520 2004-04-25  Benjamin Otte  <otte@gnome.org>
9521
9522         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9523           better debugging output on error
9524
9525 2004-04-25  Benjamin Otte  <otte@gnome.org>
9526
9527         * gst/gstcaps.c: (gst_caps_subtract):
9528           fix memleak
9529
9530 2004-04-23  Benjamin Otte  <otte@gnome.org>
9531
9532         * gst/gstvalue.c: (gst_value_compare_buffer),
9533         (_gst_value_initialize):
9534           add comparison function for buffers
9535
9536 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9537
9538         * docs/pwg/pwg.xml:
9539           Just found out that this so-called "ima-wav" format is really
9540           just "dvi adpcm" (according to the MS WAV documentation). So
9541           renaming it. We didn't use it yet anyway.
9542
9543 2004-04-23  Benjamin Otte  <otte@gnome.org>
9544
9545         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9546           call gst_caps_is_subset
9547
9548 2004-04-23  Benjamin Otte  <otte@gnome.org>
9549
9550         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9551         (gst_caps_is_subset):
9552           add documentation
9553
9554 2004-04-23  Benjamin Otte  <otte@gnome.org>
9555           
9556         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9557         (gst_caps_structure_subtract), (gst_caps_subtract),
9558         (gst_caps_structure_figure_out_union),
9559         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9560           fix simplifying and subtracting not working correctly with optional
9561           properties
9562           solve assorted problems that make it now simplify ebven more
9563         * docs/gst/tmpl/gstcaps.sgml:
9564         * gst/gstcaps.h:
9565           make gst_caps_do_simplify return a bool to indicate if it simplified
9566         * testsuite/caps/simplify.c: (main):
9567           add more checks. The tests is quite a bit useless right now because
9568           the core is heavily simplifying itself.
9569         * testsuite/caps/caps.h:
9570           fix caps to contain all optional properties
9571
9572 2004-04-22  Benjamin Otte  <otte@gnome.org>
9573
9574         * docs/gst/tmpl/gstcaps.sgml:
9575         * docs/gst/tmpl/gstfilesrc.sgml:
9576         * docs/gst/tmpl/gststructure.sgml:
9577         * docs/gst/tmpl/gstvalue.sgml:
9578           update for recent API changes
9579         * gst/gstcaps.c: (gst_caps_do_simplify):
9580           fix to stop trying with a freed structure
9581         * gst/gstpad.c: (gst_pad_link_fixate):
9582           simplify caps
9583         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9584           remove C++ comment
9585         * gst/gstpad.h:
9586           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9587         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9588         (gst_structure_to_string):
9589           keep the correct type when using lists of ranges
9590         * gst/gstvalue.c: (gst_value_list_prepend_value),
9591         (gst_value_list_append_value):
9592           copy the value before adding to the list (d'oh)
9593         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9594         (gst_value_subtract_int_range_int_range):
9595           handle overflows correctly
9596         * gst/gstvalue.c: (gst_value_subtract_from_list):
9597           fix memleak
9598         * testsuite/caps/caps.h:
9599           add a caps that caused segfaults
9600
9601 2004-04-22  Benjamin Otte  <otte@gnome.org>
9602
9603         * testsuite/refcounting/pad.c: (main):
9604           fix test
9605
9606 2004-04-22  Benjamin Otte  <otte@gnome.org>
9607
9608         * gst/gstcaps.c: (gst_caps_subtract):
9609           allow subtracting ANY and EMPTY from ANY caps
9610
9611 2004-04-22  Benjamin Otte  <otte@gnome.org>
9612
9613         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9614         (gst_caps_union):
9615           only simplify in functions that create new caps. Simplifying in
9616           gst_caps_append breaks tests.
9617
9618 2004-04-22  Benjamin Otte  <otte@gnome.org>
9619
9620         * gst/gstcaps.c: (gst_caps_structure_simplify):
9621           unset GValue after use
9622         * gst/gstcaps.c: (gst_caps_append), 
9623         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9624           use gst_caps_simplify (reduces registry size by 30%)
9625         * gst/gstpad.c: (gst_pad_template_new):
9626           don't allow NULL caps
9627
9628 2004-04-22  Benjamin Otte  <otte@gnome.org>
9629
9630         * docs/gst/gstreamer-sections.txt:
9631           add gst_caps_do_simplify
9632         * gst/gstcaps.c:
9633           add documentation for gst_caps_do_simplify
9634         * gst/gstvalue.h:
9635           fix typo in gst_value_register_subtract_func declaration for gst-doc
9636
9637 2004-04-22  Benjamin Otte  <otte@gnome.org>
9638
9639         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9640           fix bug when converting from empty string.
9641         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9642         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9643           use gst_caps_new_empty to allocate a new caps. Only that function
9644           allocates memory for caps now.
9645         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9646         (gst_caps_remove_structure):
9647           add ability to remove one structure (but not to header yet)
9648         * gst/gstcaps.c: (gst_caps_compare_structures),
9649         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9650         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9651         * gst/gstcaps.h:
9652           add gst_caps_do_simplify that tries to simplify a caps in place.
9653           Deprecate old gst_caps_simplify function.
9654         * testsuite/caps/caps.h:
9655           add caps.h containing a common set of caps to test against.
9656         * testsuite/caps/sets.c: (check_caps), (main):
9657           use it.
9658         * testsuite/caps/.cvsignore:
9659         * testsuite/caps/Makefile.am:
9660         * testsuite/caps/simplify.c: (check_caps), (main):
9661           add test to check correctness and efficency of caps simplification.
9662
9663 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9664
9665         reviewed by Benjamin Otte  <otte@gnome.org>
9666
9667         * gst/gstparse.c: (_gst_parse_escape):
9668           Free the GString used in _gst_parse_escape()
9669
9670 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9671
9672         * gst/gstpad.c: (gst_pad_link_negotiate):
9673           refuse to link if the link is not possible
9674         * configure.ac:
9675         * testsuite/Makefile.am:
9676         * testsuite/negotiation/.cvsignore:
9677         * testsuite/negotiation/Makefile.am:
9678         * testsuite/negotiation/pad_link.c: (main):
9679           add test that checks the above behaviour
9680
9681 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9682
9683         * docs/gst/gstreamer-sections.txt:
9684           add newly added API
9685
9686 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9687
9688         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9689         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9690         (gst_filesrc_open_file), (gst_filesrc_close_file),
9691         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9692         * gst/elements/gstfilesrc.h:
9693           add support for non-regular files (#140734)
9694
9695 2004-04-21  Benjamin Otte  <otte@gnome.org>
9696
9697         * gst/gstpad.c: (gst_pad_link_fixate):
9698           add sophisticated error checking code to see if fixation functions
9699           did their fixation right
9700
9701 2004-04-21  Benjamin Otte  <otte@gnome.org>
9702
9703         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9704           check for ANY caps before appending/unioning
9705         * gst/gstcaps.c: (gst_caps_is_subset),
9706         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9707         (gst_caps_structure_subtract), (gst_caps_subtract):
9708         * gst/gstcaps.h:
9709           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9710           the API. deprecate gst_caps_is_equal_fixed
9711         * gst/gstpad.c: (gst_pad_try_set_caps):
9712         * gst/gstqueue.c: (gst_queue_link):
9713           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9714         * gst/gststructure.c: (gst_structure_get_name_id):
9715         * gst/gststructure.h:
9716           add function gst_structure_get_name_id
9717         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9718         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9719         (gst_value_subtract_int_range_int_range),
9720         (gst_value_subtract_double_double_range),
9721         (gst_value_subtract_double_range_double),
9722         (gst_value_subtract_double_range_double_range),
9723         (gst_value_subtract_from_list), (gst_value_subtract_list),
9724         (gst_value_can_intersect), (gst_value_subtract),
9725         (gst_value_can_subtract), (gst_value_register_subtract_func),
9726         (_gst_value_initialize):
9727         * gst/gstvalue.h:
9728           add support for subtracting values from each other. Note that
9729           subtracting means subtracting as in set theory. Required for caps
9730           stuff above.
9731         * testsuite/caps/.cvsignore:
9732         * testsuite/caps/Makefile.am:
9733         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9734         * testsuite/caps/sets.c: (check_caps), (main):
9735         * testsuite/caps/subtract.c: (check_caps), (main):
9736           add tests for subtraction and equality code.
9737
9738 2004-04-20  David Schleef  <ds@schleef.org>
9739
9740         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9741         * gst/indexers/Makefile.am:
9742         * gst/schedulers/Makefile.am:
9743         * libs/gst/bytestream/Makefile.am:
9744         * libs/gst/control/Makefile.am:
9745         * libs/gst/getbits/Makefile.am:
9746
9747 2004-04-20  David Schleef  <ds@schleef.org>
9748
9749         * common/as-libtool.mak: Fine-tune DLL building.
9750         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9751         (like gst-plugins)
9752         * examples/plugins/Makefile.am: remove plugindir
9753         * gst/autoplug/Makefile.am: DLL building fixes
9754         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9755         Windows.
9756         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9757         * gst/indexers/Makefile.am: DLL building fixes
9758         * gst/schedulers/Makefile.am: DLL building fixes.
9759         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9760         * libs/gst/control/Makefile.am: same
9761         * libs/gst/getbits/Makefile.am: same
9762         * testsuite/Makefile.am: New dlopen directory
9763         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9764         when dlopened.
9765         * testsuite/dlopen/dlopen_gst.c: (main): same
9766         * testsuite/dlopen/loadgst.c: (do_test): same
9767
9768 2004-04-20  David Schleef  <ds@schleef.org>
9769
9770         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9771         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9772
9773 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9774
9775         * gst/gstelement.c: (gst_element_wait),
9776         (gst_element_set_time_delay), (gst_element_change_state):
9777           Use GST_TIME_*
9778
9779 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9780
9781         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9782         (gst_spider_identity_plug):
9783           improve debugging messages
9784         * gst/gstbin.c: (gst_bin_remove_func):
9785           make sure the state_change function is only called with simple state
9786           transitions
9787
9788 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9789
9790         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9791         (gst_fakesink_set_property), (gst_fakesink_chain):
9792         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9793         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9794         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9795         * gst/elements/gstidentity.c: (gst_identity_chain),
9796         (gst_identity_set_property):
9797         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9798         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9799           add warnings to _set_property for unknown arguments
9800           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9801
9802 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9803
9804         * Makefile.am:
9805         * docs/manuals.mak:
9806           add .po file download snippet
9807           fix a bug in the doc makefile
9808
9809 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9810
9811         * Makefile.am:
9812         * po/LINGUAS:
9813         * po/en_GB.po:
9814           Added en_GB translation (Gareth Owen)
9815
9816 2004-04-20  Johan Dahlin  <johan@gnome.org>
9817
9818         * gst/gstpad.c (_invent_event): Clean up
9819
9820 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9821
9822         * testsuite/caps/filtercaps.c: (main):
9823           fix test to test things correctly (caps are complicated)
9824
9825 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9826
9827         * testsuite/caps/Makefile.am:
9828         * testsuite/caps/filtercaps.c: (main):
9829           add test (that doesn't work right now, but should)
9830
9831 2004-04-19  David Schleef  <ds@schleef.org>
9832
9833         * configure.ac: Add test for allowing unaligned access.  Add define
9834         to put in gstconfig.h.
9835         * docs/gst/gstreamer-sections.txt: New symbols
9836         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9837         * docs/gst/tmpl/gstfilesrc.sgml:
9838         * docs/gst/tmpl/gstparse.sgml:
9839         * docs/gst/tmpl/gsttypes.sgml:
9840         * docs/gst/tmpl/gstutils.sgml:
9841         * docs/gst/tmpl/gstvalue.sgml:
9842         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9843         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9844         on most !i386/!powerpc architectures.  From Daniel Gazard
9845         <daniel.gazard@free.fr>.  (bug #140156)
9846         * po/af.po: Check in changes made by gettext.
9847         * po/az.po:
9848         * po/fr.po:
9849         * po/nl.po:
9850         * po/sr.po:
9851         * po/sv.po:
9852
9853 2004-04-20  Benjamin Otte  <otte@gnome.org>
9854
9855         * gst/schedulers/entryscheduler.c: 
9856         (gst_entry_scheduler_yield):
9857           refuse to yield when decoupled elements insist on doing that.
9858           At least it's better than crashing
9859
9860 2004-04-19  David Schleef  <ds@schleef.org>
9861
9862         * docs/libs/Makefile.am: Change sinclude to include
9863         * docs/gst/Makefile.am: same
9864         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9865
9866 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9867
9868         * po/LINGUAS:
9869         * po/uk.po:
9870           Added Ukrainian translation (Maxim V. Dziumanenko)
9871
9872 2004-04-19  Johan Dahlin  <johan@gnome.org>
9873
9874         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9875         checking here, do it before calling the function.
9876         Clean up, use for loops instead of while loops while iterating
9877         over lists.
9878
9879         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9880         in debug message.
9881         (gst_spider_create_and_plug): Improve debug message.
9882         General: Replace while loops which iterates over GLists with for
9883         loops. Which are much cleaner, improves readability, especially
9884         for gst_spider_identity_plug
9885
9886         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9887         fixes bug 140477
9888
9889 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9890
9891         * po/LINGUAS:
9892         * po/tr.po:
9893           Added Turkish translation (Baris Cicek)
9894
9895 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9896
9897         * docs/faq/troubleshooting.xml:
9898           Mention gst-register in the FAQ (fixes 139045).
9899
9900 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9901
9902         * docs/gst/gstreamer-sections.txt:
9903
9904 2004-04-17  Benjamin Otte  <otte@gnome.org>
9905
9906         * gst/gstelement.c: (gst_element_dispose):
9907           simplify
9908         * gst/gstpad.c: (gst_pad_call_chain_function):
9909           don't create loads of events due to bad macro usage
9910
9911 2004-04-16  David Schleef  <ds@schleef.org>
9912
9913         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9914         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9915         * gst/gstvalue.c: (gst_value_serialize_buffer),
9916         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9917         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9918         to indicate types that are fixed wrt caps or not.  Switching to
9919         this function fixes (bug #140298).
9920         * gst/gstvalue.h:
9921
9922 2004-04-16  David Schleef  <ds@schleef.org>
9923
9924         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9925         for GST_UNALIGNED_ACESS, since we essentially know which archs
9926         are ok.
9927
9928 2004-04-17  Benjamin Otte  <otte@gnome.org>
9929
9930         * docs/gst/Makefile.am:
9931           ignore gst/parse directory when building docs (fixes #140205)
9932
9933 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9934
9935         * testsuite/refcounting/mem.c: (vmsize):
9936           do error checking
9937
9938 2004-04-16  Johan Dahlin  <johan@gnome.org>
9939
9940         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9941         and gst_pad_call_get_function.
9942
9943 2004-04-15  David Schleef  <ds@schleef.org>
9944
9945         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9946         checks if we can access unaligned memory.
9947         * configure.ac: Use it.
9948
9949 2004-04-16  Benjamin Otte  <otte@gnome.org>
9950
9951         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9952         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9953         * gst/elements/gstfilesrc.h:
9954           s/seek_happened/need_discont/ and require discont before sending any
9955           data
9956
9957 2004-04-15  David Schleef  <ds@schleef.org>
9958
9959         * gst/gstvalue.c: (gst_value_serialize_buffer),
9960         (gst_value_deserialize_buffer), (_gst_value_initialize):
9961         Register these types as fundamental types. (bug #140015)
9962
9963 2004-04-16  Benjamin Otte  <otte@gnome.org>
9964
9965         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9966         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9967         (gst_pad_pull):
9968           implement enforcing discont events before buffers are passed. This
9969           allows state changes of only some elements and later correctly going
9970           on where they left off (or in short: you can now set audio sinks to
9971           NULL to release the device when the pipeline is paused)
9972         * gst/gstpad.c: (gst_pad_call_chain_function),
9973         (gst_pad_call_get_function):
9974         * gst/gstpad.h:
9975           add gst_pad_call_chain_function and gst_pad_call_get_function for
9976           scheduler interaction. They are required because of the changes
9977           above.
9978         * gst/schedulers/entryscheduler.c: (get_buffer),
9979         (gst_entry_scheduler_chain_wrapper),
9980         (gst_entry_scheduler_get_wrapper),
9981         (gst_entry_scheduler_state_transition),
9982         (gst_entry_scheduler_pad_link):
9983         * gst/schedulers/gstbasicscheduler.c:
9984         (gst_basic_scheduler_chain_wrapper),
9985         (gst_basic_scheduler_src_wrapper),
9986         (gst_basic_scheduler_chainhandler_proxy),
9987         (gst_basic_scheduler_gethandler_proxy),
9988         (gst_basic_scheduler_cothreaded_chain),
9989         (gst_basic_scheduler_chain_elements):
9990         * gst/schedulers/gstoptimalscheduler.c:
9991         (get_group_schedule_function), (pad_clear_queued),
9992         (gst_opt_scheduler_pad_link):
9993           use the new functions instead of calling get/chain-functions
9994           directly.
9995
9996 2004-04-15  David Schleef  <ds@schleef.org>
9997
9998         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9999         * docs/gst/tmpl/gstinfo.sgml: same
10000         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
10001         gtk-doc put here.
10002         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
10003         * examples/queue/queue.c: (main):  We iterate pipelines, not
10004         bins.  (bug #139996)
10005
10006 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10007
10008         * docs/pwg/advanced-types.xml:
10009           Add MS RLE support. Also document Qt RLE although I have no sample
10010           files for that yet. And document an extra property for ADPCM.
10011
10012 2004-04-15  David Schleef  <ds@schleef.org>
10013
10014         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10015         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10016         Windows.
10017
10018 2004-04-15  David Schleef  <ds@schleef.org>
10019
10020         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10021         symbol names to not conflict with new gstinfo.h symbols.
10022         * gst/gstinfo.h: Add inline functions for all those crazy
10023         compilers that don't know how to handle variadic macros (MSVC).
10024
10025 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10026
10027         * configure.ac: bump nano to 1
10028
10029 === release 0.8.1 ===
10030
10031 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10032
10033         * NEWS:
10034         * RELEASE:
10035         * configure.ac:
10036           releasing 0.8.1, "Snow Brigade"
10037
10038 2004-04-14  David Schleef  <ds@schleef.org>
10039
10040         * testsuite/Makefile.am: define tests_ignore
10041         * testsuite/Rules: Added new tests_ignore, which get compiled,
10042         but not run (generally because they're inconsistent or have
10043         heisenbugs).  Now we can ensure all the .c files compile in
10044         testsuite/.
10045         * testsuite/bins/Makefile.am: define tests_ignore
10046         * testsuite/bytestream/Makefile.am:
10047         * testsuite/caps/Makefile.am:
10048         * testsuite/clock/Makefile.am:
10049         * testsuite/debug/Makefile.am:
10050         * testsuite/debug/global.c: (gst_debug_log_one),
10051         (gst_debug_log_two): Fix compilation problem.
10052         * testsuite/dynparams/Makefile.am:
10053         * testsuite/elements/Makefile.am:
10054         * testsuite/ghostpads/Makefile.am:
10055         * testsuite/indexers/Makefile.am:
10056         * testsuite/parse/Makefile.am:
10057         * testsuite/plugin/Makefile.am:
10058         * testsuite/refcounting/Makefile.am:
10059         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10060         results, because it's not calculated correctly.
10061         * testsuite/refcounting/pad.c: (main): same
10062         * testsuite/states/Makefile.am:
10063         * testsuite/tags/Makefile.am:
10064         * testsuite/threads/Makefile.am:
10065
10066 2004-04-14  David Schleef  <ds@schleef.org>
10067
10068         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10069         generating bad code around the cpu detection asm code.
10070
10071 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10072
10073         * tools/gst-inspect.c: (print_element_info):
10074           print numeric version of rank as well, since we added some - 1
10075           rank values to elements
10076
10077 2004-04-13  David Schleef  <ds@schleef.org>
10078
10079         * configure.ac:  Disable various code when compiling for MinGW.
10080         * gst/elements/Makefile.am:
10081         * gst/elements/gstelements.c:
10082         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10083         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10084         * gst/registries/gstxmlregistry.c: (make_dir):
10085
10086 2004-04-13  David Schleef  <ds@schleef.org>
10087
10088         * gst/Makefile.am:
10089         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10090         assembly.
10091         * gst/gstcpuid_i386.s: remove
10092
10093 2004-04-13  David Schleef  <ds@schleef.org>
10094
10095         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10096         seems to think it needs to be done.
10097         * docs/gst/tmpl/gstfakesink.sgml:
10098         * docs/gst/tmpl/gstfakesrc.sgml:
10099         * docs/gst/tmpl/gstfdsink.sgml:
10100         * docs/gst/tmpl/gstfdsrc.sgml:
10101         * docs/gst/tmpl/gstfilesink.sgml:
10102         * docs/gst/tmpl/gstfilesrc.sgml:
10103         * docs/gst/tmpl/gstidentity.sgml:
10104         * docs/gst/tmpl/gstmd5sink.sgml:
10105         * docs/gst/tmpl/gstmultifilesrc.sgml:
10106         * docs/gst/tmpl/gstpipefilter.sgml:
10107         * docs/gst/tmpl/gstshaper.sgml:
10108         * docs/gst/tmpl/gstspider.sgml:
10109         * docs/gst/tmpl/gstspideridentity.sgml:
10110         * docs/gst/tmpl/gststatistics.sgml:
10111         * docs/gst/tmpl/gsttee.sgml:
10112         * docs/gst/tmpl/gsttypefind.sgml:
10113         * docs/gst/tmpl/gstutils.sgml:
10114
10115 2004-04-13  David Schleef  <ds@schleef.org>
10116
10117         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10118         and to build DLLs on Windows.
10119         * gst/Makefile.am:
10120         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10121         (gst_filesrc_open_file):
10122         * gst/schedulers/Makefile.am:
10123
10124 2004-04-13  David Schleef  <ds@schleef.org>
10125
10126         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10127         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10128         fixating lists.
10129
10130 2004-04-12  David Schleef  <ds@schleef.org>
10131
10132         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10133         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10134         to using it.
10135         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10136         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10137         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10138         * gst/gststructure.c: (gst_structure_set_valist),
10139         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10140         support for buffers.
10141         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10142         intended to be const.
10143         * gst/gsttag.h: same
10144         * gst/gstvalue.c: (gst_value_serialize_buffer),
10145         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10146         to (de)serialize buffers.
10147         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10148         * testsuite/caps/string-conversions.c: (main):
10149         * testsuite/caps/value_serialize.c: add new test
10150
10151 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10152
10153         * docs/pwg/advanced-types.xml:
10154           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10155
10156 2004-04-11  Benjamin Otte  <otte@gnome.org>
10157
10158         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10159           rename categories to basic_*
10160         * gst/schedulers/gstbasicscheduler.c: 
10161         (gst_basic_scheduler_chain_wrapper),
10162         (gst_basic_scheduler_chainhandler_proxy),
10163         (gst_basic_scheduler_gethandler_proxy),
10164         (gst_basic_scheduler_eventhandler_proxy):
10165           debugging category fixes - put common stuff in log category
10166         * gst/schedulers/gstbasicscheduler.c: 
10167         (gst_basic_scheduler_chain_elements):
10168           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10169           active and linking two active chains
10170
10171 2004-04-10  Benjamin Otte  <otte@gnome.org>
10172
10173         * docs/pwg/intro-preface.xml:
10174           fix dead links and remove reference to Wiki
10175
10176 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10177
10178         * gst/schedulers/gstbasicscheduler.c:
10179           make sure we can switch back to the main function if we're still in
10180           the main function (supposed to fix #139617)
10181         * gst/schedulers/gthread-cothreads.h:
10182           don't throw an error when switching to the same cothread
10183
10184 2004-04-09  Benjamin Otte  <otte@gnome.org>
10185
10186         * gst/gstbin.c: (gst_bin_get_type):
10187         * gst/gstclock.c: (gst_clock_get_type):
10188         * gst/gstindex.c: (gst_index_get_type):
10189         * gst/gstobject.c: (gst_object_get_type),
10190         (gst_signal_object_get_type):
10191         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10192         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10193         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10194         * gst/gstqueue.c: (gst_queue_get_type):
10195         * gst/gstregistry.c: (gst_registry_get_type):
10196         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10197         * gst/gstthread.c: (gst_thread_get_type):
10198           don't use memchunks for these objects, use malloc instead
10199
10200 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10201
10202         * docs/gst/.cvsignore:
10203         * docs/gst/Makefile.am:
10204         * docs/gst/gstreamer-sections.txt:
10205         * docs/gst/tmpl/gstaggregator.sgml:
10206         * docs/gst/tmpl/gstbuffer.sgml:
10207         * docs/gst/tmpl/gstclock.sgml:
10208         * docs/gst/tmpl/gstelement.sgml:
10209         * docs/gst/tmpl/gstfakesink.sgml:
10210         * docs/gst/tmpl/gstfakesrc.sgml:
10211         * docs/gst/tmpl/gstfdsink.sgml:
10212         * docs/gst/tmpl/gstfdsrc.sgml:
10213         * docs/gst/tmpl/gstfilesink.sgml:
10214         * docs/gst/tmpl/gstfilesrc.sgml:
10215         * docs/gst/tmpl/gstidentity.sgml:
10216         * docs/gst/tmpl/gstindex.sgml:
10217         * docs/gst/tmpl/gstinfo.sgml:
10218         * docs/gst/tmpl/gstmd5sink.sgml:
10219         * docs/gst/tmpl/gstmultifilesrc.sgml:
10220         * docs/gst/tmpl/gstpad.sgml:
10221         * docs/gst/tmpl/gstpipefilter.sgml:
10222         * docs/gst/tmpl/gstpipeline.sgml:
10223         * docs/gst/tmpl/gstpluginfeature.sgml:
10224         * docs/gst/tmpl/gstqueue.sgml:
10225         * docs/gst/tmpl/gstregistry.sgml:
10226         * docs/gst/tmpl/gstscheduler.sgml:
10227         * docs/gst/tmpl/gstshaper.sgml:
10228         * docs/gst/tmpl/gstspider.sgml:
10229         * docs/gst/tmpl/gstspideridentity.sgml:
10230         * docs/gst/tmpl/gststatistics.sgml:
10231         * docs/gst/tmpl/gstsystemclock.sgml:
10232         * docs/gst/tmpl/gsttee.sgml:
10233         * docs/gst/tmpl/gstthread.sgml:
10234         * docs/gst/tmpl/gsttypefind.sgml:
10235         * docs/gst/tmpl/gstutils.sgml:
10236           further doc build fixes
10237
10238 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10239
10240         * docs/gst/Makefile.am:
10241           make docs exit on scanning problems
10242           fix nonsrcdir build issues
10243         * docs/gst/gstreamer-sections.txt:
10244           adding stuff from -unused
10245         * gst/gstqueue.h:
10246           create GstQueueSize
10247         * gst/schedulers/cothreads_compat.h:
10248           fix cothread warnings
10249
10250 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10251
10252         * docs/gst/gstreamer-sections.txt:
10253           remove defines deprecated by Benjamin
10254
10255 2004-04-07  Benjamin Otte  <otte@gnome.org>
10256
10257         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10258           when the buffer is complete, don't check if other buffers are needed
10259         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10260           check that the offset is >0 so we don't try to read before the
10261           beginning of the file
10262         * gst/gstpad.c: (gst_pad_set_pad_template):
10263           sink the template, so we don't end up with 130k pad templates
10264
10265 2004-04-06  Benjamin Otte  <otte@gnome.org>
10266
10267         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10268           don't ref the element, adding already reffed it. And we didn't unref
10269           it later anyway... (huge memleak when you used many spider elements)
10270         * gst/gstelement.c: (gst_element_base_class_finalize):
10271         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10272         (gst_element_register):
10273         * gst/gsturi.c: (gst_element_make_from_uri):
10274           use gst_object_(un)ref instead of g_object(un)ref
10275
10276 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10277
10278         * gst/gstbuffer.h:
10279           remove macro that wouldn't work anymore because struct member has
10280           been removed.
10281         * gst/schedulers/entryscheduler.c: (schedule_forward):
10282           fix segfault for unconnected pads
10283         
10284 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10285
10286         reviewed by David Schleef <ds@schleef.org>
10287
10288         * gst/gstinfo.h:
10289           *_FORMAT modifiers should require putting a % in front of them for
10290           consistency reasons.
10291
10292 2004-04-05  Colin Walters  <walters@redhat.com>
10293
10294         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10295         space.
10296
10297 2004-04-05  Benjamin Otte  <otte@gnome.org>
10298
10299         * configure.ac:
10300         * gst/Makefile.am:
10301         * gst/gst_private.h:
10302         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10303           add support for detecting if GStreamer runs inside valgrind.
10304           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10305           print a big message in valgrind that GStreamer has detected it's
10306           running inside and might now use different code.
10307         * gst/gstmemchunk.c: (populate), (free_area),
10308         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10309         (gst_mem_chunk_free):
10310           flag memchunks for valgrind, so it can detect leaking of chunks.
10311           This allows detecting leaks of GstBuffer and GstEvent correctly
10312           inside valgrind.
10313
10314 2004-04-05  David Schleef  <ds@schleef.org>
10315
10316         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10317           jensgr@gmx.net (Jens Granseuer)
10318
10319 2004-04-05  David Schleef  <ds@schleef.org>
10320
10321         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10322         (gst_buffer_default_free), (gst_buffer_default_copy),
10323         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10324         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10325         structures in one place.
10326
10327 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10328
10329         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10330           (GST_TIME_FORMAT, GST_TIME_ARGS)
10331
10332 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10333
10334         * testsuite/elements/Makefile.am:
10335           disable test until it stops breaking make distcheck
10336
10337 2004-04-05  Johan Dahlin  <johan@gnome.org>
10338
10339         * po/sv.po: Updated translation
10340
10341 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10342
10343         * gst/gstplugin.c: (gst_plugin_load_file):
10344           fix segfault for when original plugin was loaded statically
10345
10346 2004-04-05  Benjamin Otte  <otte@gnome.org>
10347
10348         * testsuite/debug/category.c: (main):
10349         * testsuite/debug/commandline.c: (main):
10350         * testsuite/debug/output.c: (main):
10351           fix tests to work again with debugging enabled
10352
10353 2004-04-05  Benjamin Otte  <otte@gnome.org>
10354
10355         * gst/schedulers/gstbasicscheduler.c:
10356         (gst_basic_scheduler_pad_link):
10357           fix to work with recent scheduling changes
10358
10359 2004-04-05  Benjamin Otte  <otte@gnome.org>
10360
10361         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10362         prepareChangeLog doesn't work when cvs indents):
10363           don't throw an error when no element can be scheduled, there's too
10364           many weird reasons why it doesn't work. Return STOPPED instead.
10365           decoupled elemts' schedulability doesn't depend on bufpens.
10366
10367 2004-04-04  Benjamin Otte  <otte@gnome.org>
10368
10369         * gst/schedulers/gstbasicscheduler.c:
10370         (gst_basic_scheduler_pad_select):
10371           fix uninitialized variable warnings
10372
10373 2004-04-04  Benjamin Otte  <otte@gnome.org>
10374
10375         * gst/gstpad.c: (gst_pad_collect_valist):
10376           fix uninitialized variable warning
10377         * gst/schedulers/entryscheduler.c: (schedule_forward):
10378           fix shadowed variable
10379
10380 2004-04-04  Benjamin Otte  <otte@gnome.org>
10381
10382         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10383         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10384         (gst_pad_select):
10385         * gst/gstpad.h:
10386         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10387         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10388         * gst/gstscheduler.h:
10389           implement gst_pad_collect as replacement for gst_pad_select.
10390           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10391           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10392           new pad_select, lock and unlock calls.
10393         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10394         * gst/cothreads.h:
10395         * gst/schedulers/cothreads_compat.h:
10396         * gst/schedulers/gthread-cothreads.h:
10397           remove unused cothread_lock and cothread_unlock calls
10398         * gst/schedulers/entryscheduler.c:
10399         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10400         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10401         (gst_entry_scheduler_pad_select):
10402           update to new API
10403         * gst/schedulers/gstbasicscheduler.c:
10404         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10405         (gst_basic_scheduler_pad_select):
10406           remove useless lock and unlock calls, update pad_select to new API
10407           (untested)
10408         * gst/schedulers/gstoptimalscheduler.c:
10409         (gst_opt_scheduler_class_init):
10410           remove useless select, lock and unlock function calls
10411         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10412           use gst_pad_collect instead of gst_pad_select
10413
10414 2004-04-04  Benjamin Otte  <otte@gnome.org>
10415
10416         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10417         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10418         (schedule_next_element), (print_entry):
10419           add can_schedule_pad to handle element states.
10420           add schedule_forward to select the correct entry to schedule next
10421
10422 2004-04-03  Benjamin Otte  <otte@gnome.org>
10423
10424         * gst/schedulers/entryscheduler.c: 
10425           remove unused variable, fix error inside Rb, fix compile warning in
10426           unreachable code
10427
10428 2004-04-03  Benjamin Otte  <otte@gnome.org>
10429
10430         * gst/schedulers/entryscheduler.c:
10431           completely revamp the inner workings, so it's a lot easier to
10432           understand and extend
10433
10434 2004-04-03  Andy Wingo  <wingo@pobox.com>
10435
10436         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10437         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10438         This allows better introspection of pipeline topology.
10439         (add_to_chain): Don't do trickery to put loop elements first;
10440         rather, queue a chain sort by marking the chain as dirty.
10441         (remove_from_chain): Mark the chain dirty.
10442         (sort_chain): New function. Sorts the group list so that terminal
10443         sinks are first. This means elements on the sink side will be
10444         preferentially sscheduled before elements on the src side of the
10445         pipeline.
10446         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10447         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10448         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10449         (group_inc_link): Change argument and variable names to match the
10450         new link structure member names (src and sink).
10451         (group_dec_link): Add some description
10452
10453 2004-04-03  Benjamin Otte  <otte@gnome.org>
10454
10455         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10456         * gst/gstinfo.h:
10457         * testsuite/debug/category.c: (main):
10458         * testsuite/debug/commandline.c: (main):
10459         * testsuite/debug/output.c: (main):
10460         * testsuite/debug/printf_extension.c: (main):
10461           fix to successfully build and test with --disable-gst-debug
10462           configure switch (fixes #138705)
10463
10464 2004-04-03  Benjamin Otte  <otte@gnome.org>
10465
10466         * docs/pwg/building-boiler.xml:
10467           add cvs login line and s/anonymous/anoncvs/
10468
10469 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10470
10471         reviewed by Benjamin Otte  <otte@gnome.org>
10472
10473         * gst/gststructure.c: (gst_structure_free):
10474           memleak fix: free fields array (partial fix for #134839)
10475
10476 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10477
10478         * docs/random/ds/0.9-suggested-changes:
10479           Add a note to change handoff use in fakesrc to be usable in
10480           a more generic way (fakesrc should be renamed to appsrc or so).
10481         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10482           Change signal type to scope, so we can fill the buffer in the
10483           handoff handler (that's the whole use of this signal...).
10484
10485 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10486
10487         * docs/pwg/other-ntoone.xml:
10488           Document muxers and n-to-1 elements.
10489
10490 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10491
10492         * gst/registries/gstxmlregistry.c
10493         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10494         determine if a file is a G_MODULE. The old one discards paths
10495         containing "so" somewhere in the middle. My home directory is
10496         called "soto". Go figure...
10497
10498 2004-03-31  David Schleef  <ds@schleef.org>
10499
10500         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10501         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10502         * gst/gstbuffer.h:
10503
10504 2004-03-31  David Schleef  <ds@schleef.org>
10505
10506         * gst/gstvalue.c: (gst_value_union_int_int_range),
10507         (gst_value_union_int_range_int_range), (gst_value_can_union),
10508         (gst_value_union), (_gst_value_initialize):  Add some union
10509         implementations.  We didn't have any previously.
10510         * testsuite/caps/Makefile.am:
10511         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10512         (gst_audioscale_getcaps), (test_caps), (main): A little test
10513         that is the same as the caps manipulation in audioscale.
10514
10515 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10516
10517         * docs/faq/general.xml:
10518           add entry about "does gst support format X?"
10519
10520 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10521
10522         * gst/gstthread.c:
10523           fix docs
10524         * gst/gstutils.h:
10525           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10526
10527 2004-03-30  Benjamin Otte  <otte@gnome.org>
10528
10529         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10530           set the offset of the buffer to the requested offset
10531         * gst/elements/gsttypefind.c: (stop_typefinding):
10532           revert patch 1.18 (which I unfortunately don't know the reason for).
10533           This is needed to allow downstream elements to seek. Otherwise
10534           typefind might overwrite a previous seek by downstream elements.
10535           This lead to errors with id3tag and typefind on some mp3s.
10536         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10537         (gst_entry_scheduler_iterate):
10538           be more verbose when debugging
10539
10540 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10541
10542         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10543           make sure we don't get NULL strings
10544
10545 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10546
10547         * gst/gstcaps.c:
10548         * gst/gstelement.c:
10549         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10550         * gst/gstindex.c: (gst_index_resolver_get_type),
10551         (gst_index_get_type), (gst_index_factory_get_type):
10552         * gst/gstinfo.c:
10553         * gst/gstpad.c:
10554         * gst/gstplugin.c:
10555         * gst/gsturi.c: (gst_uri_handler_get_type):
10556         * gst/gstvalue.c:
10557           first batch of documentation fixes
10558
10559 2004-03-29  David Schleef  <ds@schleef.org>
10560
10561         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10562         * docs/gst/gstreamer-docs.sgml:  More hacking
10563         * docs/gst/gstreamer-sections.txt:
10564         * docs/gst/tmpl/cothreads_compat.sgml:
10565         * docs/gst/tmpl/gstcaps.sgml:
10566         * docs/gst/tmpl/gstclock.sgml:
10567         * docs/gst/tmpl/gstelement.sgml:
10568         * docs/gst/tmpl/gstevent.sgml:
10569         * docs/gst/tmpl/gstpad.sgml:
10570         * docs/gst/tmpl/gstutils.sgml:
10571         * docs/gst/tmpl/gstxml.sgml:
10572         * docs/gst/tmpl/gthread-cothreads.sgml:
10573         * docs/random/ds/0.9-suggested-changes:
10574         * gst/elements/gstfakesink.h: doc fixes
10575         * gst/elements/gstfakesrc.h: doc fixes
10576         * gst/gstcaps.c: doc fixes
10577         * gst/gstcaps.h: doc fixes
10578         * gst/gstelement.c: doc fixes
10579         * gst/gstelement.h: doc fixes
10580         * gst/gstindex.c: doc fixes
10581         * gst/gstinfo.c: doc fixes
10582         * gst/gstpad.c: doc fixes
10583         * gst/gstpad.h: doc fixes
10584         * gst/gstplugin.c: doc fixes
10585         * gst/gsttypefind.h: doc fixes
10586         * gst/gsturi.c: doc fixes
10587         * gst/gstvalue.c: doc fixes
10588
10589 2004-03-29  Colin Walters  <walters@redhat.com>
10590
10591         * gst/registries/gstxmlregistry.c (get_time)
10592         (plugin_times_older_than_recurse):
10593         Use the result of stat to determine whether a path is a file,
10594         so we don't attempt to opendir() files.
10595
10596 2004-03-29  Benjamin Otte  <otte@gnome.org>
10597
10598         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10599           print caps in debugging output when setting caps failed
10600         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10601         (schedule_next_element), (get_buffer), (run_chainhandler),
10602         (element_may_start), (gst_entry_scheduler_chain_handler),
10603         (gst_entry_scheduler_get_handler),
10604         (gst_entry_scheduler_state_transition),
10605         (gst_entry_scheduler_pad_link):
10606           make this scheduler a testcase for mandatory
10607           discont-before-first-buffer which is needed if we want to allow apps
10608           to release the sound device.
10609           add SCHED_ASSERT macro to print scheduler state before an assertion
10610           triggers.
10611
10612 2004-03-29  Benjamin Otte  <otte@gnome.org>
10613
10614         * COPYING:
10615           replace by LGPL (former COPYING.LIB). The core is completely
10616           licensed LGPL.
10617         * COPYING.LIB:
10618           remove
10619
10620 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10621
10622         * po/af.po:
10623         * po/sv.po:
10624           updated Afrikaans and Swedish
10625
10626 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10627
10628         * po/LINGUAS:
10629         * po/az.po:
10630           adding Azerbaijani (Mətin Əmirov)
10631
10632 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10633
10634         * gst/gstelement.h: 
10635         * gst/gstelement.c (gst_element_set_time_delay): New function for
10636         setting element time taking into account a hardware buffering
10637         delay.
10638         (gst_element_set_time): Now just an invocation of
10639         gst_element_set_time_delay.
10640         * gst/gstclock.h: 
10641         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10642         allowing to set event times in the future.
10643         (gst_clock_get_event_time): Now just an invocation of
10644         gst_clock_get_event_time_delay.
10645
10646 2004-03-28  Benjamin Otte  <otte@gnome.org>
10647
10648         * gst/gstbin.c: (gst_bin_set_element_sched),
10649         (gst_bin_unset_element_sched):
10650           don't add decoupled elements to schedulers - otherwise it's
10651           impossible to control if a link to a decoupled element was already
10652           removed from a scheduler or not.
10653         * gst/schedulers/cothreads_compat.h:
10654         * gst/schedulers/gthread-cothreads.h:
10655           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10656           is no "unused" warning.
10657         * gst/schedulers/Makefile.am:
10658         * gst/schedulers/entryscheduler.c:
10659           add new scheduler, based on ideas from talking to David and Martin.
10660           It's supposed to be small and correct. Currently it's also slow (but
10661           it's not noticable)
10662         * examples/retag/retag.c: (main):
10663         * testsuite/bytestream/test1.c: (main):
10664           fix missing NULLs at end of variadic functions
10665         * testsuite/elements/.cvsignore:
10666           update
10667
10668 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10669
10670         * gst/gstevent.h:
10671         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10672
10673 2004-03-25  David Schleef  <ds@schleef.org>
10674
10675         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10676         * docs/gst/tmpl/gstaggregator.sgml:
10677         * docs/gst/tmpl/gstautoplugfactory.sgml:
10678         * docs/gst/tmpl/gstbin.sgml:
10679         * docs/gst/tmpl/gstbuffer.sgml:
10680         * docs/gst/tmpl/gstbufferstore.sgml:
10681         * docs/gst/tmpl/gstfakesink.sgml:
10682         * docs/gst/tmpl/gstfakesrc.sgml:
10683         * docs/gst/tmpl/gstmd5sink.sgml:
10684         * docs/gst/tmpl/gstreamer-unused.sgml:
10685         * docs/gst/tmpl/gstsearchfuncs.sgml:
10686         * docs/gst/tmpl/gstshaper.sgml:
10687         * docs/gst/tmpl/gstspider.sgml:
10688         * docs/gst/tmpl/gsttee.sgml:
10689         * docs/gst/tmpl/gstutils.sgml:
10690         * docs/gst/tmpl/gstvalue.sgml:
10691         * docs/gst/tmpl/gstxml.sgml:
10692         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10693         and we don't support it.
10694         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10695         (gst_use_threads), (gst_has_threads): same
10696         * gst/gstthreaddummy.c: same
10697         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10698         * gst/autoplug/gstspider.h: same
10699         * gst/elements/gstaggregator.h: Remove bogus function from header
10700         * gst/elements/gstfakesink.h: same
10701         * gst/elements/gstfakesrc.h: same
10702         * gst/elements/gstmd5sink.h: same
10703         * gst/elements/gstshaper.h: same
10704         * gst/elements/gsttee.h: same
10705         * gst/gstbin.c: doc fixes
10706         * gst/gstbin.h: Remove unused definition.
10707         * gst/gstbuffer.c: doc fixes
10708         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10709         * gst/gstfilter.c: doc fixes
10710         * gst/gsttag.c: doc fixes
10711         * gst/gstvalue.c: doc fixes
10712
10713 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10714
10715         * docs/pwg/advanced-types.xml:
10716           Document typefinding.
10717         * docs/pwg/other-oneton.xml:
10718           Document one-to-n elements, demuxers and parsers.
10719
10720 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10721
10722         reviewed by: David Schleef  <ds@schleef.org>
10723
10724         * configure.ac: Check bison version (bug #127838)
10725
10726 2004-03-25  David Schleef  <ds@schleef.org>
10727
10728         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10729         * docs/gst/gstreamer-sections.txt:
10730         * docs/gst/tmpl/gstautoplug.sgml:
10731         * docs/gst/tmpl/gststaticautoplug.sgml:
10732         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10733         * docs/gst/tmpl/gstutils.sgml:
10734         * docs/gst/tmpl/gstxml.sgml:
10735
10736 2004-03-24  David Schleef  <ds@schleef.org>
10737
10738         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10739         manual being such complete crap, that I decided to do major
10740         hacking of it.  This checkin replaces any fine tuning that
10741         may have been done previously, with the benefit of actually
10742         being complete for much of the API that was changed since
10743         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10744         * docs/gst/gstreamer-sections.txt:
10745         * docs/gst/tmpl/GstBin.sgml:
10746         * docs/gst/tmpl/GstBuffer.sgml:
10747         * docs/gst/tmpl/GstCaps.sgml:
10748         * docs/gst/tmpl/GstClock.sgml:
10749         * docs/gst/tmpl/GstCompat.sgml:
10750         * docs/gst/tmpl/GstData.sgml:
10751         * docs/gst/tmpl/GstElement.sgml:
10752         * docs/gst/tmpl/GstEvent.sgml:
10753         * docs/gst/tmpl/GstIndex.sgml:
10754         * docs/gst/tmpl/GstStructure.sgml:
10755         * docs/gst/tmpl/GstTag.sgml:
10756         * docs/gst/tmpl/cothreads.sgml:
10757         * docs/gst/tmpl/cothreads_compat.sgml:
10758         * docs/gst/tmpl/gettext.sgml:
10759         * docs/gst/tmpl/grammar.tab.sgml:
10760         * docs/gst/tmpl/gst-i18n-app.sgml:
10761         * docs/gst/tmpl/gst-i18n-lib.sgml:
10762         * docs/gst/tmpl/gst.sgml:
10763         * docs/gst/tmpl/gst_private.sgml:
10764         * docs/gst/tmpl/gstaggregator.sgml:
10765         * docs/gst/tmpl/gstarch.sgml:
10766         * docs/gst/tmpl/gstatomic.sgml:
10767         * docs/gst/tmpl/gstatomic_impl.sgml:
10768         * docs/gst/tmpl/gstbin.sgml:
10769         * docs/gst/tmpl/gstbuffer.sgml:
10770         * docs/gst/tmpl/gstbufferstore.sgml:
10771         * docs/gst/tmpl/gstcaps.sgml:
10772         * docs/gst/tmpl/gstclock.sgml:
10773         * docs/gst/tmpl/gstcompat.sgml:
10774         * docs/gst/tmpl/gstconfig.sgml:
10775         * docs/gst/tmpl/gstcpu.sgml:
10776         * docs/gst/tmpl/gstdata.sgml:
10777         * docs/gst/tmpl/gstdata_private.sgml:
10778         * docs/gst/tmpl/gstelement.sgml:
10779         * docs/gst/tmpl/gstenumtypes.sgml:
10780         * docs/gst/tmpl/gsterror.sgml:
10781         * docs/gst/tmpl/gstevent.sgml:
10782         * docs/gst/tmpl/gstfakesink.sgml:
10783         * docs/gst/tmpl/gstfakesrc.sgml:
10784         * docs/gst/tmpl/gstfilesink.sgml:
10785         * docs/gst/tmpl/gstfilter.sgml:
10786         * docs/gst/tmpl/gstindex.sgml:
10787         * docs/gst/tmpl/gstinfo.sgml:
10788         * docs/gst/tmpl/gstinterface.sgml:
10789         * docs/gst/tmpl/gstlog.sgml:
10790         * docs/gst/tmpl/gstmacros.sgml:
10791         * docs/gst/tmpl/gstmarshal.sgml:
10792         * docs/gst/tmpl/gstmd5sink.sgml:
10793         * docs/gst/tmpl/gstmultifilesrc.sgml:
10794         * docs/gst/tmpl/gstobject.sgml:
10795         * docs/gst/tmpl/gstpad.sgml:
10796         * docs/gst/tmpl/gstparse.sgml:
10797         * docs/gst/tmpl/gstpipeline.sgml:
10798         * docs/gst/tmpl/gstplugin.sgml:
10799         * docs/gst/tmpl/gstpluginfeature.sgml:
10800         * docs/gst/tmpl/gstqueue.sgml:
10801         * docs/gst/tmpl/gstreamer-unused.sgml:
10802         * docs/gst/tmpl/gstregistry.sgml:
10803         * docs/gst/tmpl/gstregistrypool.sgml:
10804         * docs/gst/tmpl/gstscheduler.sgml:
10805         * docs/gst/tmpl/gstsearchfuncs.sgml:
10806         * docs/gst/tmpl/gstshaper.sgml:
10807         * docs/gst/tmpl/gstspider.sgml:
10808         * docs/gst/tmpl/gstspideridentity.sgml:
10809         * docs/gst/tmpl/gststructure.sgml:
10810         * docs/gst/tmpl/gstsystemclock.sgml:
10811         * docs/gst/tmpl/gsttag.sgml:
10812         * docs/gst/tmpl/gsttaginterface.sgml:
10813         * docs/gst/tmpl/gsttee.sgml:
10814         * docs/gst/tmpl/gstthread.sgml:
10815         * docs/gst/tmpl/gsttrace.sgml:
10816         * docs/gst/tmpl/gsttrashstack.sgml:
10817         * docs/gst/tmpl/gsttypefind.sgml:
10818         * docs/gst/tmpl/gsttypes.sgml:
10819         * docs/gst/tmpl/gsturi.sgml:
10820         * docs/gst/tmpl/gsturitype.sgml:
10821         * docs/gst/tmpl/gstutils.sgml:
10822         * docs/gst/tmpl/gstvalue.sgml:
10823         * docs/gst/tmpl/gstversion.sgml:
10824         * docs/gst/tmpl/gstxml.sgml:
10825         * docs/gst/tmpl/gstxmlregistry.sgml:
10826         * docs/gst/tmpl/gthread-cothreads.sgml:
10827         * docs/gst/tmpl/types.sgml:
10828
10829 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10830
10831         * docs/pwg/other-sink.xml:
10832         * docs/pwg/other-source.xml:
10833           Documentation on how to write source and sink elements. Other
10834           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10835           manager, autoplugger) are all still pending.
10836
10837 2004-03-25  Benjamin Otte  <otte@gnome.org>
10838
10839         * testsuite/elements/Makefile.am:
10840         * testsuite/elements/gst-compprep-check:
10841           add check to make sure gst-compprep works
10842         * testsuite/elements/gst-inspect-check.in:
10843           improve initialization output
10844         * testsuite/Makefile.am:
10845         * testsuite/gst-inspect-check:
10846           remove old file
10847
10848 2004-03-24  David Schleef  <ds@schleef.org>
10849
10850         * testsuite/elements/Makefile.am:
10851         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10852         to the testsuite.
10853
10854 2004-03-24  Benjamin Otte  <otte@gnome.org>
10855
10856         * libs/gst/control/dparam.c: (gst_dparam_attach),
10857         (gst_dparam_detach):
10858         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10859           fix lvalue casts for real
10860
10861 2004-03-24  Benjamin Otte  <otte@gnome.org>
10862
10863         * gst/schedulers/gstbasicscheduler.c:
10864         (gst_basic_scheduler_src_wrapper):
10865         * gst/schedulers/gstoptimalscheduler.c:
10866         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10867         (pad_clear_queued), (gst_opt_scheduler_add_element),
10868         (gst_opt_scheduler_remove_element):
10869           fix GStreamer to not have issues with lvalue casts anymore (fixes
10870           #136841)
10871
10872 2004-03-24  Benjamin Otte  <otte@gnome.org>
10873
10874         * gst/gstelement.c:
10875           add documentation about a gobject quirk where the object hasn't the
10876           correct class pointer set on initialization
10877         * gst/schedulers/gstbasicscheduler.c:
10878         (gst_basic_scheduler_src_wrapper):
10879           make sure to not run into an infinite loop
10880
10881 2004-03-22  Benjamin Otte  <otte@gnome.org>
10882
10883         * gst/gstutils.c: (gst_util_dump_mem):
10884         * gst/gstutils.h:
10885           first argument of gst_util_dump_mem should be const
10886
10887 2004-03-22  Johan Dahlin  <johan@gnome.org>
10888
10889         * gst/gstvalue.h: Clean up a little bit.
10890
10891 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10892
10893         reviewed by Benjamin Otte  <otte@gnome.org>
10894
10895         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10896         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10897         (gst_aggregator_class_init), (gst_aggregator_init):
10898         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10899         (gst_filesrc_dispose), (gst_filesrc_set_location):
10900         * gst/elements/gstidentity.c: (gst_identity_finalize),
10901         (gst_identity_class_init), (gst_identity_chain):
10902         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10903         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10904         (gst_statistics_class_init):
10905         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10906         (gst_tee_get_property):
10907           clean up used memory in this elements correctly on teardown (closes
10908           #137279)
10909
10910 2004-03-20  Colin Walters  <walters@redhat.com>
10911
10912         * gst/registries/gstxmlregistry.c:
10913         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10914         registry saving atomic.
10915
10916 2004-03-20  Colin Walters  <walters@redhat.com>
10917
10918         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10919         Just use
10920         access() instead of actually creating and deleting files.
10921
10922 2004-03-18  David Schleef  <ds@schleef.org>
10923
10924         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10925         (bug #137625)
10926
10927 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10928
10929         * po/sv.po: updated translation (Christian Rose)
10930
10931 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10932
10933         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10934         (gst_filesink_get_query_types), (_do_init),
10935         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10936           return FALSE silently
10937         * po/af.po: updated translation (Petri Jooste)
10938
10939 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10940
10941         * Makefile.am:
10942         * configure.ac:
10943           dist common properly
10944         * po/af.po:
10945         * po/fr.po:
10946         * po/nl.po:
10947         * po/sr.po:
10948         * po/sv.po:
10949           refreshing translations
10950
10951 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10952
10953         * po/LINGUAS:
10954         * po/sv.po:
10955         * po/af.po:
10956           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10957
10958 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10959
10960         * Makefile.am: use common/release.mak
10961
10962 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10963
10964         * docs/faq/gst-uninstalled:
10965           adding gst-monkeysaudio to the list of possible plugin dirs
10966
10967 2004-03-16  David Schleef  <ds@schleef.org>
10968
10969         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10970         (gst_init_check_with_popt_table):  Fix some gettext strings to
10971         make them easier to translate.  Required making the strings
10972         non-const.
10973
10974 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10975
10976         * configure.ac: bump nano to 1
10977
10978 === release 0.8.0 ===
10979
10980 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10981
10982         * configure.ac: release 0.8.0, "Executive Slacks"
10983
10984 2004-03-16  Johan Dahlin  <johan@gnome.org>
10985
10986         * gst/schedulers/gstoptimalscheduler.c
10987         (gst_opt_scheduler_pad_unlink): Remove double ;,
10988         spotted by Scott Wheeler
10989
10990 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10991
10992         * configure.ac: bump libtool version
10993
10994 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10995
10996         * gst/gstcaps.h:
10997         * gst/gststructure.h:
10998           add reserved padding
10999
11000 2004-03-15  Benjamin Otte  <otte@gnome.org>
11001
11002         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11003           set the first parameter for select call correctly.
11004           (fixes #137230)
11005
11006 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11007
11008         * *.c,*.h: don't mix tabs and spaces
11009
11010 2004-03-15  Johan Dahlin  <johan@gnome.org>
11011
11012         * gst/schedulers/gstoptimalscheduler.c
11013         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11014         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11015
11016         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11017         
11018 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11019
11020         * testsuite/Rules:
11021           fix gst-register rules
11022
11023 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11024
11025         * testsuite/Rules:
11026           use versioned gst-register
11027
11028 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11029
11030         * docs/libs/gstreamer-libs-sections.txt:
11031           remove </SUBSECTION>
11032         * gst/gstplugin.c:
11033         * gst/gstregistry.c: (gst_registry_add_plugin):
11034         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11035         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11036           add debugging and fix some comment blocks
11037
11038 2004-03-15  Johan Dahlin  <johan@gnome.org>
11039
11040         * *.h: Revert indent changes.
11041         
11042 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11043
11044         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11045           g_error_free the g_error
11046         * tools/gst-feedback-m.m:
11047           check for other versions of gstreamer
11048         * tools/gst-indent:
11049           use sh, not bash
11050
11051 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11052
11053         * tools/gst-register.c: do not spill paths when registries are not
11054           writable, until we fix the "user running gst-register" case.
11055
11056 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11057
11058         * *.c, *.h: commit of gst-indent run on core
11059
11060 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11061
11062         * tools/gst-indent:
11063         * tools/Makefile.am:
11064           add our indentation style as a script
11065
11066 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11067
11068         * po/sr.po:
11069         * po/LINGUAS:
11070           added Serbian translation
11071
11072 2004-03-13  Benjamin Otte  <otte@gnome.org>
11073
11074         * gst/gstelement.c:
11075           add documentation note about gst_element_found_tags_for_pad not
11076           being usable in getfunctions. (see #137042)
11077
11078 2004-03-12  David Schleef  <ds@schleef.org>
11079
11080         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11081         change API right now!  Readd gst_caps_is_simple() macro.
11082         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11083         uninitialized variable.  I'd bet this caused crashes.
11084         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11085
11086 2004-03-12  Johan Dahlin  <johan@gnome.org>
11087
11088         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11089         * gst/gstcaps.h: Clean up
11090
11091         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11092         _gst_caps_initalize()
11093
11094         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11095         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11096
11097         * gst/gststructure.c (gst_structure_get_type): Ditto
11098
11099         * gst/gststructure.h: Ditto
11100         
11101 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11102
11103         * gst/gstqueue.c: (gst_queue_init):
11104           Reset default max. values in queues. Reason is simply to avoid
11105           braindead use. If you want wider values, use the properties. The
11106           default is supposed to always work. Wider values would make this
11107           beast a memory hog by default (250 full-PAL RGB32 video frames?
11108           That's 440 MB! No thank you).
11109
11110 2004-03-10  David Schleef  <ds@schleef.org>
11111
11112         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11113         were found.  (bug #136793)
11114
11115 2004-03-10  Johan Dahlin  <johan@gnome.org>
11116
11117         * gst/schedulers/gstoptimalscheduler.c
11118         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11119         links to elements within the same group, so we can finally remove
11120         that annoying warning. Refactor the code a little bit
11121         (group_dec_links_for_element): Split out
11122
11123 2004-03-09  David Schleef  <ds@schleef.org>
11124
11125         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11126         (bug #134863)
11127
11128 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11129
11130         * configure.ac: first bug fix due to major/minor bump
11131
11132 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11133
11134         * configure.ac: bump nano to 1
11135
11136 === release 0.7.6 ===
11137
11138 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11139
11140         * NEWS:
11141         * RELEASE:
11142         * configure.ac:
11143           releasing 0.7.6, "Almost"
11144         * po/fr.po:
11145         * po/nl.po:
11146         * tools/Makefile.am:
11147         * tools/gst-feedback-m.m:
11148           unversioned source
11149
11150 2004-03-09  Johan Dahlin  <johan@gnome.org>
11151
11152         Reviewed by: Thomas Vander Stichele
11153
11154         * gst/gstelement.c (gst_element_class_init): register second
11155         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11156         language bindings can (de)marshall correctly.
11157
11158         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11159
11160         * gst/gsterror.c (gst_g_error_get_type): New function
11161
11162         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11163         with VOID:OBJECT,OBJECT,STRING 
11164
11165 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11166
11167         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11168         Free a leaked g_timer on early returns.
11169
11170 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11171
11172         * docs/pwg/advanced-types.xml:
11173           Add cinepak description.
11174
11175 2004-03-07  David Schleef  <ds@schleef.org>
11176
11177         * docs/random/mimetypes:  Added cinepak description
11178
11179 2004-03-07  Andy Wingo  <wingo@pobox.com>
11180
11181         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11182
11183         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11184         there are no links to other groups when a group is destroyed.
11185         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11186         removed from a group, make sure the link count to elements linked
11187         to other pads is appropriately decremented. This really fixes
11188         #135672.
11189
11190         The 1.60->1.61 patch has been reapplied in light of this fix.
11191
11192         * gst/gstelement.c (gst_element_dispose): Really protect against
11193         multiple invocations this time.
11194
11195 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11196
11197         * docs/gst/gstreamer-sections.txt:
11198         * docs/gst/tmpl/gsttag.sgml:
11199           remove some deprecated functions, document some existing ones
11200         * gst/gsttag.c: (gst_tag_get_flag):
11201         * gst/gsttag.h:
11202           add accessor function
11203
11204 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11205
11206         * docs/gst/gstreamer-sections.txt:
11207         * docs/gst/tmpl/gsttag.sgml:
11208         * docs/gst/tmpl/gstxml.sgml:
11209         * gst/gsttag.c: (gst_tag_get_flag):
11210         * gst/gsttag.h:
11211
11212 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11213
11214         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11215         leak
11216
11217 2004-03-05  David Schleef  <ds@schleef.org>
11218
11219         * REQUIREMENTS: Add bison and flex.
11220         * configure.ac: Fix comment about bison.
11221         * docs/random/ds/0.9-suggested-changes: yer ma
11222         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11223
11224 2004-03-05  Benjamin Otte  <otte@gnome.org>
11225
11226         * gst/gstelement.c: (gst_element_error_full):
11227           revert recent recursive state changing commit - messing with other
11228           elements' states is evil and should be done by apps only.
11229
11230 2004-03-05  Benjamin Otte  <otte@gnome.org>
11231
11232         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11233           check for empty intersection instead of NULL caps
11234         (gst_element_get_compatible_pad_filtered):
11235           remove old workaround that is only a bug nowadays
11236
11237 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11238
11239         * gst/gstelement.c: (gst_element_error_full):
11240           make elements try to recursively change state to PAUSED on all
11241           parents after an error to suppress ensuing warnings
11242         * gst/parse/grammar.y:
11243           make it check if it was able to sync the state, and throw an error
11244           if not, so stuff like
11245           oggdemux ! vorbisdec ! osssink gets caught
11246
11247 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11248
11249         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11250           it contains lib64; use AS_AC_EXPAND to handle it properly
11251
11252 2004-03-05  David Schleef  <ds@schleef.org>
11253
11254         * gst/gstcpuid_i386.s:  Remove unused code
11255         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11256         (gst_getbits_newbuf): Remove MMX code
11257         * libs/gst/getbits/getbits.h: Remove MMX code
11258
11259 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11260
11261         * debian/.cvsignore:
11262         * debian/README.Debian:
11263         * debian/changelog:
11264         * debian/control:
11265         * debian/control.in:
11266         * debian/copyright:
11267         * debian/gstreamer-core-libs-dev.files:
11268         * debian/gstreamer-core-libs.files:
11269         * debian/gstreamer-core.files:
11270         * debian/gstreamer-core.postinst:
11271         * debian/gstreamer-core.postrm:
11272         * debian/gstreamer-doc.files:
11273         * debian/gstreamer-doc.links:
11274         * debian/gstreamer-doc.lintian:
11275         * debian/gstreamer-runtime.files:
11276         * debian/gstreamer-runtime.manpages:
11277         * debian/gstreamer-runtime.postinst:
11278         * debian/gstreamer-runtime.postrm:
11279         * debian/gstreamer-tools.files:
11280         * debian/gstreamer-tools.manpages:
11281         * debian/libgstreamer-dev.files:
11282         * debian/libgstreamer0.4.1.files:
11283         * debian/libgstreamerVERSION.files:
11284         * debian/rules:
11285         Debian package info not maintained here.
11286
11287 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11288
11289         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11290         * gst/gstbin.c: (gst_bin_class_init):
11291         * gst/gstelement.c: (gst_element_class_init):
11292         * gst/gstindex.c: (gst_index_class_init):
11293         * gst/gstobject.c: (gst_object_class_init),
11294         (gst_signal_object_class_init):
11295         * gst/gstpad.c: (gst_pad_template_class_init):
11296         * gst/gstregistry.c: (gst_registry_class_init):
11297         * gst/gsturi.c: (gst_uri_handler_base_init):
11298         * gst/gstxml.c: (gst_xml_class_init):
11299         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11300         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11301           make all signal names use dashes instead of underscore
11302
11303 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11304
11305         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11306
11307 2004-03-03  Benjamin Otte  <otte@gnome.org>
11308
11309         * gst/schedulers/gstoptimalscheduler.c:
11310           revert last commit by Andy Wingo. It causes segfaults on unreffing
11311           in Rhythmbox. (see bug #135672)
11312
11313 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11314
11315         * po/fr.po: fix typo
11316
11317 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11318
11319         * tools/gst-inspect.c: (main): 
11320         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11321
11322 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11323
11324         * configure.ac:
11325           get GLIB_ONLY and POPT flags for the nonversioned binaries
11326         * tools/Makefile.am:
11327           use them
11328
11329 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11330
11331         * gst/gst.c: (init_post):
11332           change so that GST_REGISTRY now is where the global registry gets
11333           saved, since that is where plugins now get attached to first, and
11334           spilled over to the user registry.  Note that in the case of using
11335           GST_REGISTRY env var, we don't want to affect any real registries
11336           beyond the one given by this var, and thus we don't set a user
11337           registry to spill to.  So make sure GST_REGISTRY is writable.
11338
11339 2004-03-01  David Schleef  <ds@schleef.org>
11340
11341         * AUTHORS:  Added some names.  Add yourself if you're missing.
11342
11343 2004-03-01  David Schleef  <ds@schleef.org>
11344
11345         * MAINTAINERS: Add
11346
11347 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11348
11349         * configure.ac:
11350           remove whitespace
11351         * docs/gst/tmpl/gstbuffer.sgml:
11352         * docs/gst/tmpl/gstdata.sgml:
11353         * docs/gst/tmpl/gstreamer-unused.sgml:
11354         * docs/gst/tmpl/gstxml.sgml:
11355           doc update
11356         * docs/manuals.mak:
11357           add a FIXME
11358         * docs/pwg/intro-preface.xml:
11359         * docs/pwg/pwg.xml:
11360           remove GNOME
11361         * gst/gst.c: (init_post):
11362           try GST_PLUGIN_PATH paths for the _global_registry first
11363         * gst/gstelement.h:
11364           add the error message as well, otherwise (null) debug info doesn't
11365           make much sense
11366         * tools/gst-register.c: (main):
11367           spill paths to next registry if this registry is not writable
11368         * po/fr.po:
11369         * po/nl.po:
11370           translation updates
11371
11372 2004-03-01  Johan Dahlin  <johan@gnome.org>
11373
11374         * gst/gstbuffer.c (_gst_buffer_initialize): 
11375         * gst/gstdata.c (gst_data_get_type): 
11376         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11377         instead of ref, since some applications that uses GBoxed
11378         routines depends on a function that actually returns a copy.
11379
11380 2004-02-27  Benjamin Otte  <otte@gnome.org>
11381
11382         * gst/gstbuffer.h:
11383           remove gst_buffer_free, use gst_data_unref
11384         * gst/gstdata.c: (gst_data_get_type):
11385           use refcounting in GstData GBoxed registration
11386         * gst/gstdata.h:
11387           remove gst_data_free, use gst_data_unref
11388
11389 2004-02-27  Johan Dahlin  <johan@gnome.org>
11390
11391         * gst/gstdata.c (gst_data_get_type): New function, register
11392         GstData as a GBoxed type.
11393
11394         * gst/gstdata.h (GST_TYPE_DATA): New macro
11395
11396 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11397
11398         * Makefile.am:
11399         * gstreamer.spec.in:
11400           put back RELEASE
11401         * gst/Makefile.am:
11402           clean up non-disting of built files
11403         * testsuite/debug/commandline.c:
11404           test fix for option rename
11405
11406 2004-02-26  David Schleef  <ds@schleef.org>
11407
11408         * configure.ac:  We don't really need glib-2.3.  Also remove
11409         some unneeded checks for library functions.
11410         * gst/Makefile.am:  Instead, we need to not dist files created
11411         by glib-genmarshal.
11412
11413 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11414
11415         * configure.ac:
11416           bump glib required version to 2.3.0 for g_value_takes_boxed
11417
11418  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11419
11420         * common/m4/gst-docs.m4
11421         change flavour text from enable to disable as enable is our default
11422         closes bug Bug 135304
11423
11424 === release 0.7.5 ===
11425  
11426  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11427  
11428         * NEWS:
11429           instate NEWS file
11430         * Makefile.am:
11431         * gstreamer.spec.in:
11432         * RELEASE:
11433           put back release
11434         * configure.ac:
11435         * docs/random/release:
11436           more updates
11437
11438 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11439
11440         * gst/gsttag.c: (_gst_tag_initialize):
11441         * po/fr.po:
11442         * po/nl.po:
11443           remove hyphen from codec tags
11444
11445 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11446
11447         * gst/parse/Makefile.am:
11448           fix dependency so that a make from a clean build works the first
11449           time
11450
11451 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11452
11453         * docs/random/release:
11454           update release strategy
11455         * po/fr.po:
11456           auto-update po file
11457         * po/nl.po:
11458           update dutch translation
11459
11460 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11461
11462         * docs/manual/debugging.xml:
11463         fix manual for new debugging system
11464
11465 2004-02-25  Andy Wingo  <wingo@pobox.com>
11466
11467         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11468         gst_pad_link_prepare. Please email the list with specific reasons
11469         for reverting.
11470
11471 2004-02-24  Andy Wingo  <wingo@pobox.com>
11472
11473         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11474         invocations.
11475
11476         * gst/schedulers/gstoptimalscheduler.c:
11477         I added a mess of prototypes at the top of the file by way of
11478         documentation. Some of the operations on chains and groups were
11479         re-organized.
11480
11481         (create_group): Added a type argument so if the group is enabled,
11482         the setup_group_scheduler knows what to do.
11483         (group_elements): Added a type argument here, too, to be passed on
11484         to create_group.
11485         (group_element_set_enabled): If an unlinked PLAYING element is
11486         added to a bin, we have to create a new group to hold the element,
11487         and this function will be called before the group is added to the
11488         chain. Thus we have a valid case for group->chain==NULL. Instead
11489         of calling chain_group_set_enabled, just set the flag on the group
11490         (the chain's status will be set when the group is added to it).
11491         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11492         Setup the group scheduler when the group is enabled, not
11493         specifically when an element goes PAUSED->PLAYING. This means
11494         PLAYING elements can be added, linked, and scheduled into a
11495         PLAYING pipeline, as was intended.
11496         (add_to_group): Don't ref the group twice. I don't know when this
11497         double-ref got in here. Removing it has the potential to cause
11498         segfaults if other parts of the scheduler are buggy. If you find
11499         that the scheduler is segfaulting for you, put in an extra ref
11500         here and see if that hacks over the underlying issue. Of course,
11501         then find out what code is unreffing a group it doesn't own...
11502         (create_group): Make the extra refcount floating, and remove it
11503         after adding the element. This means that...
11504         (unref_group): Destroy when the refcount reaches 0, not 1, like
11505         every other refcounted object in the known universe.
11506         (remove_from_group): When a group becomes empty, set it to be not
11507         active, and remove it from its chain. Don't unref it again,
11508         there's no floating reference any more.
11509         (destroy_group): We have to remove the group from the chain in
11510         remove_from_group (rather than here) to break refcounting cycles
11511         (the chain always has a ref on the group). So assert that
11512         group->chain==NULL.
11513         (ref_group_by_count): Removed, it was commented out anyway.
11514         (merge_chains): Use the remove_from_chain and add_to_chain
11515         primitives to do the reparenting, instead of rolling our own
11516         implementation.
11517         (add_to_chain): The first non-disabled group in the chain's group
11518         list will be the entry point for the chain. Because buffers can
11519         accumulate in loop elements' peer bufpens, we preferentially
11520         schedule loop groups before get groups to avoid unnecessary
11521         execution of get-based groups when the bufpens are already full.
11522         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11523         (get_group_schedule_function): Ditto.
11524         (loop_group_schedule_function): Ditto.
11525         (gst_opt_scheduler_loop_wrapper): Ditto.
11526         (gst_opt_scheduler_iterate): Ditto.
11527
11528         I understand the opt scheduler now, yippee!
11529
11530         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11531         (gst_pad_get_name, gst_pad_set_chain_function) 
11532         (gst_pad_set_get_function, gst_pad_set_event_function) 
11533         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11534         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11535         (gst_pad_set_query_function, gst_pad_get_query_types) 
11536         (gst_pad_get_query_types_default) 
11537         (gst_pad_set_internal_link_function) 
11538         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11539         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11540         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11541         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11542         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11543         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11544         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11545         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11546         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11547         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11548         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11549         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11550         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11551         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11552         argument checks, and some doc fixes.
11553
11554         (gst_pad_custom_new_from_template): Um, does anyone
11555         use these functions? Actually make a custom pad instead of a
11556         normal one.
11557         (gst_pad_try_set_caps): Transpose some checks.
11558         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11559         the pad is in negotiation.
11560         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11561         
11562         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11563
11564         * gst/gstelement.h: 
11565         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11566         on the list.
11567
11568 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11569
11570         * gst/gstbin.c: (gst_bin_add):
11571           add error for not being able to add elements
11572
11573 2004-02-22  Julien MOUTTE <julien@moutte.net>
11574
11575         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11576         audio-codec and video-codec.
11577
11578 2004-02-22  Benjamin Otte  <otte@gnome.org>
11579
11580         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11581
11582         * autogen.sh:
11583           replace test -e with test -x for mkinstalldirs to be more portable.
11584           (fixes #134816)
11585
11586 2004-02-22  Benjamin Otte  <otte@gnome.org>
11587
11588         * gst/gstpad.c:
11589           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11590           too noisy
11591         * gst/gsttag.c: (_gst_tag_initialize):
11592         * gst/gsttag.h:
11593           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11594         * libs/gst/control/dparam.c: (gst_dparam_attach):
11595         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11596           check that types for attached dparams match
11597
11598 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11599
11600         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11601         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11602         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11603           fix errors
11604
11605 2004-02-20  Andy Wingo  <wingo@pobox.com>
11606
11607         * gst/gstbin.c:
11608         * gst/gstbuffer.c:
11609         * gst/gstplugin.c:
11610         * gst/registries/gstxmlregistry.c: 
11611         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11612
11613         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11614         (gst_element_add_pad): DEBUG->INFO, some fixes.
11615         (gst_element_get_compatible_pad_template): Just see if the
11616         templates' caps intersect, not if one is a strict subset of the
11617         other. This conforms more to what gst_pad_link_intersect() does.
11618         (gst_element_class_add_pad_template): Don't memcpy the pad
11619         template, just ref it.
11620         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11621
11622         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11623         (gst_pad_link_filtered): Debug changes.
11624         (gst_pad_link_prepare): New function, consolidated from
11625         can_link_filtered and link_filtered.
11626
11627         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11628         look more like that of the functions in gstelement.c
11629
11630         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11631         object, and return the empty string if object is NULL.
11632
11633         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11634         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11635         LOG, not DEBUG. We still get flex info on debug.
11636
11637         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11638         debug string more verbose.
11639         (plugin_times_older_than): DEBUG->LOG.
11640
11641 2004-02-20  Julien MOUTTE <julien@moutte.net>
11642
11643         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11644         will emit found_tag for each stream they demux with the codec.
11645
11646 2004-02-20  Benjamin Otte  <otte@gnome.org>
11647
11648         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11649           copy navigation event correctly. Check freeing tag lists. 
11650         * gst/gstthread.c: (gst_thread_change_state):
11651           don't abort() on state changing mess - it might happen because of
11652           bugs.
11653         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11654           use boxed functions
11655         * gst/gstvalue.h:
11656           fix GST_VALUE_HOLDS_CAPS
11657
11658 2004-02-19  David Schleef  <ds@schleef.org>
11659
11660         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11661         and use it for GST_FUNCTION.  (bug #134750)
11662
11663 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11664
11665         * po/fr.po:
11666         * po/nl.po:
11667           updating translations
11668
11669 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11670
11671         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11672
11673 2004-02-18  kost@imn.htwk-leipzig.de
11674
11675         reviewed by: David Schleef  <ds@schleef.org>
11676
11677         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11678         for libgstcontrol.
11679
11680 2004-02-18  David Schleef  <ds@schleef.org>
11681
11682         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11683         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11684         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11685         * tools/gst-inspect.c: (print_element_info): Support dumping of
11686         double dparam information.
11687
11688 2004-02-17  David Schleef  <ds@schleef.org>
11689
11690         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11691         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11692         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11693         Use GST_TYPE_CAPS in signal prototype.
11694         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11695         Convert GST_TYPE_CAPS to boxed.
11696         * gst/gstelement.c: (gst_element_class_init):
11697         Use GST_TYPE_TAG_LIST in signal prototype.
11698         * gst/gstindex.c: (gst_index_class_init):
11699         * gst/gstindex.h:
11700         Add GST_TYPE_INDEX_ENTRY type.
11701         * gst/gstmarshal.list:
11702         Add necessary marshal types.
11703         * gst/gstpad.c: (gst_real_pad_class_init),
11704         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11705         (gst_pad_recover_caps_error):
11706         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11707         * gst/gststructure.c: (_gst_structure_initialize),
11708         (gst_structure_copy), (_gst_structure_copy_conditional):
11709         * gst/gststructure.h:
11710         Convert GST_TYPE_STRUCTURE to boxed.
11711         * gst/gsttag.c: (gst_tag_list_get_type):
11712         * gst/gsttag.h:
11713         Add GST_TYPE_TAG_LIST type.
11714
11715 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11716
11717         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11718         to what we agreed with david.
11719         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11720
11721 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11722
11723         * po/nl.po: update translation
11724
11725 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11726
11727         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11728           throw an error if spider is trying to play a mime type there is
11729           no decoder for
11730         * po/POTFILES.in:
11731           add gst/autoplug/gstspider.c for translation
11732
11733 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11734
11735         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11736         silently when the pad is negotiating.
11737
11738 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11739
11740         * docs/faq/Makefile.am:
11741           add script to run gstreamer uninstalled 
11742         * docs/faq/faq.xml:
11743         * docs/faq/developing.xml:
11744         * docs/faq/gst-uninstalled:
11745           extract script to run gstreamer uninstalled
11746         * docs/manuals.mak:
11747           add EXTRA_SOURCES variable for Makefile.am's to set to
11748           use additional SOURCE files for the doc build
11749
11750 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11751
11752         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11753
11754 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11755
11756         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11757         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11758         an error was thrown by osssink. Basically a state change failure for
11759         an element in a different scheduling group was considered as
11760         successful, which means that caps nego was going on and weird stuff
11761         happened. Like I wrote in the comment there, if someone wants to
11762         revert that please drop me a mail explaining why because I really see
11763         no point in keeping that broken behaviour there.
11764         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11765         be empty, we then return NULL which will trigger a nice error when 
11766         pulling from the pad.
11767
11768 2004-02-13  David Schleef  <ds@schleef.org>
11769
11770         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11771         (gst_dparam_get_property), (gst_dparam_set_property),
11772         (gst_dparam_do_update_default):
11773         * libs/gst/control/dparam.h:
11774         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11775         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11776         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11777         (gst_dpsmooth_do_update_double):
11778         * libs/gst/control/dparam_smooth.h:
11779         * libs/gst/control/dparammanager.c:
11780         (gst_dpman_inline_direct_update):
11781         Add support for double dparams.
11782
11783 2004-02-13  David Schleef  <ds@schleef.org>
11784
11785         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11786         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11787
11788 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11789
11790         reviewed by: David Schleef  <ds@schleef.org>
11791
11792         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11793         (gst_fdsrc_init), (gst_fdsrc_set_property),
11794         (gst_fdsrc_get_property), (gst_fdsrc_get):
11795         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11796         and sends an EOS event if file descriptor reading times out.
11797
11798 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11799
11800         * configure.ac:
11801           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11802
11803 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11804
11805         * configure.ac: pass required libxml version as argument
11806         (bug reported by Christophe Fergeau)
11807
11808 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11809   
11810         * docs/gst/gstreamer-docs.sgml:
11811         * docs/gst/tmpl/gstxml.sgml:
11812         * docs/libs/gstreamer-libs-docs.sgml:
11813           version API docs
11814
11815 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11816
11817         * gst/gstinfo.c:
11818         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11819         (gst_registry_pool_feature_filter):
11820         * gst/gstthread.c: (gst_thread_class_init):
11821         * gst/gstvalue.c:
11822           add includes exposed by building without libxml
11823         * gst/indexers/Makefile.am:
11824           do not build fileindex when LOADSAVE disabled; we should have
11825           a better libxml check later since fileindex depends on xml, not
11826           LOADSAVE or REGISTRY
11827         * libs/gst/control/Makefile.am:
11828           link with m
11829         * tools/Makefile.am:
11830           fix wrong source code for gst-xmlinspect
11831
11832 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11833
11834         * configure.ac:
11835           fix gcov help output
11836           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11837         * docs/random/release:
11838           some updated releasing notes
11839         * gstreamer.spec.in:
11840           more updates
11841
11842 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11843
11844         * docs/faq/faq.xml:
11845         * docs/manual/manual.xml:
11846         * docs/pwg/pwg.xml:
11847         * docs/pwg/titlepage.xml:
11848           put version in documentation
11849
11850 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11851
11852         * tools/Makefile.am: fix man page installation
11853
11854 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11855
11856         * configure.ac:
11857           don't check for libxml when load/save and registry disabled (#105844)
11858         * gstreamer.spec.in:
11859           sync with fedora candidate spec
11860
11861 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11862
11863         * po/fr.po:
11864         * po/nl.po:
11865           replace multidisksrc with multifilesrc
11866
11867 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11868
11869         * po/POTFILES.in:
11870           update to multidisksrc => multifilesrc file renaming (#134145)
11871
11872 2004-02-11  David Schleef  <ds@schleef.org>
11873
11874         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11875         * docs/gst/tmpl/gstpadtemplate.sgml: same
11876         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11877         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11878         fixing dance.
11879         * gst/gstutils.c: Remove disabled code that uses GstProps.
11880         * gst/registries/gstxmlregistry.h: same
11881         * docs/random/ds/0.9-suggested-changes: random notes
11882
11883 2004-02-11  kost@imn.htwk-leipzig.de
11884
11885         reviewed by: David Schleef  <ds@schleef.org>
11886
11887         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11888         initialisation of clock (bug #134128)
11889
11890 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11891
11892         * configure.ac:
11893         * gst/elements/Makefile.am:
11894         * gst/elements/gstelements.c:
11895         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11896         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11897         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11898         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11899         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11900         * gst/elements/gstmultifilesrc.h:
11901           rename multidisksrc to multifilesrc (part of #122200)
11902
11903 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11904
11905         * docs/manuals.mak:
11906           fix automake complaints
11907         * gst-element-check.m4:
11908           fix unquotedness
11909
11910 2004-02-11  David Schleef  <ds@schleef.org>
11911
11912         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11913         * gst/gstatomic_impl.h: Disable sparc implementation.
11914
11915 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11916
11917         * gst-element-check.m4:
11918           fix underquoted macros as reported by automake 1.8.x (#133800)
11919         * configure.ac:
11920           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11921           by autopoint (fixes #132996)
11922
11923 2004-02-10  Andy Wingo  <wingo@pobox.com>
11924
11925         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11926         way to do inheritance.
11927         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11928         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11929         Routine docs.
11930         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11931         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11932         doc.
11933         (gst_pad_unlink, gst_pad_is_linked): Docs.
11934         (gst_pad_renegotiate): A brief description of capsnego.
11935         (gst_pad_try_set_caps): Document.
11936         (gst_pad_try_set_caps_nonfixed): Document.
11937         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11938         (gst_pad_set_parent): Deprecated (although not out of the API).
11939         (gst_pad_get_parent): Deprecated, although many plugins use this.
11940         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11941         are private and will go away in 0.9.
11942         (gst_pad_perform_negotiate): Doc.
11943         (gst_pad_link_unnegotiate): I think this is meant to be static.
11944         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11945         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11946         (gst_pad_get_peer): Doc updates.
11947         (gst_pad_caps_change_notify): Doc.
11948         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11949         (gst_ghost_pad_new): Doc fixes.
11950
11951         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11952         (gst_object_check_uniqueness): 
11953
11954         * gst/gstelement.c (gst_element_add_pad) 
11955         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11956         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11957         (gst_element_get_static_pad, gst_element_get_pad_list) 
11958         (gst_element_class_get_pad_template_list) 
11959         (gst_element_class_get_pad_template): Work on the docs.
11960         (gst_element_get_pad_template_list): Uses the class method.
11961         (gst_element_get_compatible_pad_template): Docs, and consolidate
11962         some test conditions. 
11963         (gst_element_get_pad_from_template): New static function.
11964         (gst_element_request_compatible_pad): Docs, and work with
11965         non-request compatible templates. 
11966         (gst_element_get_compatible_pad_filtered): Docs and remove
11967         redundant checks.
11968         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11969         (gst_element_link_filtered, gst_element_link_many) 
11970         (gst_element_link, gst_element_link_pads) 
11971         (gst_element_unlink_many): Docs.
11972
11973 2004-02-05  Andy Wingo  <wingo@pobox.com>
11974
11975         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11976         s/pointer/boxed/.
11977
11978         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11979
11980         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11981         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11982         with the type=GST_TYPE_CAPS. This allows language bindings to know
11983         what kind of data they're dealing with.
11984
11985         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11986         to NULL when g_value_init is called. GstCaps, which rolls its own
11987         type implementation, now does the same instead of allocating empty
11988         caps.
11989         (_gst_caps_initialize, _gst_caps_collect_value,
11990         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11991         table methods. This allows G_VALUE_COLLECT to work.
11992
11993 2004-02-05  Andy Wingo  <wingo@pobox.com>
11994
11995         * configure.ac:
11996         * testsuite/Makefile.am (SUBDIRS): 
11997         * testsuite/ghostpads/Makefile.am: 
11998         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11999
12000         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
12001         These two routines are the only ones that set
12002         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
12003         pad template. They should be made static, depending on ABI needs.
12004         (gst_real_pad_dispose): Handle the case of ghost pads without a
12005         parent. Assert after dealing with ghost pads that the ghost pad
12006         list is empty.
12007         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12008         set after creation.
12009         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12010         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12011         functions. set_property will call add_ghost_pad/remove_ghost_pad
12012         as appropriate.
12013         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12014
12015         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12016         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12017         (gst_element_remove_pad): Handle ghost pads as well.
12018         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12019         depending on API-stability needs).
12020
12021 2004-02-05  Andy Wingo  <wingo@pobox.com>
12022
12023         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12024         of course they're const
12025
12026 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12027
12028         * tools/Makefile.am:
12029         * tools/gst-feedback:
12030         * tools/gst-feedback-0.7:
12031           make gst-feedback versioned too for consistency
12032
12033 2004-02-11  David Schleef  <ds@schleef.org>
12034
12035         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12036         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12037
12038 2004-02-10  Julien MOUTTE <julien@moutte.net>
12039
12040         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12041         the structure does not contain a valid tag list. Adding a safety check
12042         to remove a noisy warning in that case.
12043
12044 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12045
12046         * gst/gst.c: fix name to be in line with others
12047
12048 2004-02-09  Julien MOUTTE <julien@moutte.net>
12049
12050         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12051         not shout that loud when len is 0. Just return 0 silently.
12052
12053 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12054
12055         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12056         because data_unref has one and I prefer the debug to be symetric.
12057         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12058         were refed when added to the queue and unrefed only once when the queue
12059         was flushed. Now the flush handler unref the buffers two times : first
12060         unref for the ref added when pushing in the queue's tail and second
12061         unref to destroy the flushed buffer.
12062
12063 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12064
12065         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12066
12067 2004-02-06  David Schleef  <ds@schleef.org>
12068
12069         * docs/random/ds/0.9-suggested-changes: Random ramblings
12070         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12071         to int before printing.
12072         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12073         * gst/parse/parse.l: same.  See bug #129600
12074
12075 2004-02-06  David Schleef  <ds@schleef.org>
12076
12077         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12078         (gst_index_add_entry), (gst_index_add_associationv),
12079         (gst_index_add_association): Add gst_index_add_associationv()
12080         and clean up gst_index_add_association(). #127133
12081
12082 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12083
12084         * autogen.sh: check out common with right tag if CVS/Tag exists
12085
12086 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12087
12088         * testsuite/ghostpads/ghostpads.c: (main):
12089           fix testsuite from segfaulting
12090
12091 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12092
12093         * Makefile.am: add release target
12094         * configure.ac: bump nano to 1
12095         * docs/random/release:
12096
12097 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12098
12099         * gst/gstcaps.h:
12100         * gst/gstelement.c: (gst_element_base_class_init),
12101         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12102         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12103         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12104         (gst_real_pad_dispose):
12105         * gst/gststructure.c: (gst_structure_free),
12106         (gst_structure_from_string):
12107           put reverted patch back in
12108         * gst/gstelement.c: (gst_element_remove_pad):
12109           free explicit caps if they're set
12110         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12111           copy the structure when fixating
12112
12113 2004-02-05  David Schleef  <ds@schleef.org>
12114
12115         * gst/gstmarshal.list:
12116         * gst/gstpad.c: (gst_real_pad_class_init),
12117         (_gst_real_pad_fixate_accumulator):
12118         Revert POINTER->BOXED change in signal marshaller.
12119
12120 === release 0.7.4 ===
12121                                                                                 
12122 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12123                                                                                 
12124         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12125         * configure.ac: changed for release
12126
12127 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12128
12129         * gstreamer.spec.in:
12130           bump required version of gtk-doc
12131
12132 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12133
12134         * gst/gstcaps.h:
12135         * gst/gstelement.c: (gst_element_base_class_init),
12136         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12137         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12138         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12139         (gst_real_pad_dispose):
12140         * gst/gststructure.c: (gst_structure_free),
12141         (gst_structure_from_string):
12142           revert patch that breaks applications, reapply after release
12143           to get this fixed properly
12144
12145 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12146
12147         * gst/gsttag.c: (_gst_tag_initialize):
12148         * gst/gsttag.h:
12149           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12150
12151 2004-02-04  David Schleef  <ds@schleef.org>
12152
12153         Fix some memleaks:
12154         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12155         (gst_spider_plug_from_srcpad):
12156         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12157
12158 2004-02-04  David Schleef  <ds@schleef.org>
12159
12160         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12161         a GstRealPad before accessing its structure members.
12162
12163 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12164
12165         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12166         (gst_clock_get_speed):
12167         * gst/gstclock.h:
12168           reset padding, remove unused fields
12169
12170 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12171
12172         * gst/autoplug/gstspideridentity.c:
12173         (gst_spider_identity_sink_loop_type_finding):
12174           use get_allowed_caps, not get_caps (fixes #132519)
12175         * gst/elements/gsttypefind.c: (stop_typefinding):
12176           use correct order when sending buffers and seeking
12177
12178 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12179
12180         * configure.ac:
12181         * gst/gstelement.h:
12182         * gst/gstpad.h:
12183         * gst/gstqueue.h:
12184           upgrade libtool CURRENT, reset padding
12185
12186 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12187
12188         * configure.ac:
12189           bump to prerelease
12190           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12191
12192 2004-02-04  David Schleef  <ds@schleef.org>
12193
12194         * docs/random/ds/0.9-suggested-changes: random notes
12195         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12196         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12197         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12198         expansion.
12199         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12200         (gst_filesink_get_query_types): same
12201         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12202         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12203         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12204         to use new GST_PTR_FORMAT.
12205         * gst/gstelement.h: deprecate function factory macros
12206         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12207         These are our last variadic macros that can't be replaced with
12208         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12209         attempting to deprecate gst_element_clock_wait().
12210         * gst/gstevent.h: same
12211         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12212         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12213         * gst/gstpad.h: deprecate function factory macros similar to above.
12214
12215 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12216
12217         * configure.ac:
12218         * tools/Makefile.am:
12219         * tools/gst-run.c: (popt_callback), (hash_print_key),
12220         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12221         (get_candidates), (main):
12222           add new source file to generate non-versioned wrapper binaries
12223           for our tools.
12224
12225 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12226
12227         * gst/gstevent.c: (_gst_event_free):
12228           actually break; inside the switch statement
12229         * gst/parse/grammar.y:
12230           fix memleak where GValues weren't unset
12231
12232 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12233
12234         * gst/gststructure.c: (gst_structure_from_string):
12235           fix huge memleak
12236         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12237         (new_entry), (gst_type_find_element_chain):
12238         * gst/gstelement.c: (gst_element_base_class_init),
12239         (gst_element_class_set_details):
12240         * gst/gstpad.c: (gst_pad_can_link_filtered):
12241           fix smaller memleaks
12242         * gst/gstpad.c: (gst_real_pad_dispose):
12243           check that explicit caps are gone
12244         * gst/gststructure.c: (gst_structure_free):
12245           actually free the structure
12246         * gst/gstelement.c: (gst_element_clear_pad_caps):
12247           unset explicit caps
12248
12249 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12250
12251         * tools/Makefile.am:
12252           use AM_CFLAGS since all the CFLAGS are the same
12253           use AM_LDFAGS
12254
12255 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12256
12257         * docs/manual/gnome.xml:
12258           expand example a little
12259         * gst/gst.c: (gst_init_with_popt_table),
12260         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12261           make sure popt option displays are done with right textdomain
12262           use GstPoptOption type
12263         * gst/gst.h:
12264           create GstPoptOption type
12265
12266 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12267
12268         * gst/gsterror.c: (_gst_stream_errors_init):
12269         * gst/gsterror.h:
12270           adding error type for no codec
12271         * po/POTFILES.in:
12272           add gst-inspect
12273         * po/nl.po:
12274           update dutch translation
12275         * tools/gst-inspect.c: (print_element_list), (main):
12276           do proper internationalization
12277         * tools/gst-launch.c: (idle_func):
12278           remove commented out function call
12279
12280 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12281
12282         * docs/README:
12283           add some error fixing notes
12284         * docs/gst/gstreamer-sections.txt:
12285           remove double entries
12286         * docs/gst/tmpl/gstbin.sgml:
12287         * docs/gst/tmpl/gstclock.sgml:
12288           remove override
12289         * docs/gst/tmpl/gstelement.sgml:
12290         * docs/gst/tmpl/gstindex.sgml:
12291         * docs/gst/tmpl/gstobject.sgml:
12292         * docs/gst/tmpl/gstpadtemplate.sgml:
12293         * docs/gst/tmpl/gstreamer-unused.sgml:
12294         * docs/gst/tmpl/gsttag.sgml:
12295         * docs/gst/tmpl/gstthread.sgml:
12296         * docs/gst/tmpl/gstxml.sgml:
12297         * gst/gsttag.h:
12298           sync header prototypes with c decls
12299         * gst/gsttaginterface.c:
12300           fix doc headers
12301
12302 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12303
12304         * gst/parse/Makefile.am:
12305         * gst/gstobject.h:
12306           get rid of gstmarshal.h dependency. It's not needed.
12307         * gst/gst.h:
12308         * gst/elements/gstfakesink.c:
12309         * gst/elements/gstfakesrc.c:
12310         * gst/elements/gstidentity.c:
12311         * gst/gstbin.c:
12312         * gst/gstelement.c:
12313         * gst/gstindex.c:
12314         * gst/gstobject.c:
12315         * gst/gstpad.c:
12316         * gst/gstthread.c:
12317         * gst/gstxml.c:
12318         * libs/gst/control/dparam.c:
12319         * libs/gst/control/dparammanager.c:
12320           include gstmarshal.h.
12321         Fixes #132045
12322
12323 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12324
12325         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12326         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12327         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12328         * gst/elements/gstfilesrc.h:
12329           don't ref the filesrc when creating mmaped buffers. Don't keep a
12330           list of not-yet-destroyed buffers.
12331         * gst/gstbuffer.h:
12332           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12333
12334 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12335
12336         * gst/gst.c: (init_pre):
12337           remove textdomain
12338
12339 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12340
12341         * docs/pwg/advanced-events.xml:
12342         * docs/pwg/advanced-scheduling.xml:
12343         * docs/pwg/intro-basics.xml:
12344         * docs/pwg/other-manager.xml:
12345         * docs/pwg/other-nton.xml:
12346         * docs/pwg/other-ntoone.xml:
12347         * docs/pwg/other-oneton.xml:
12348         * docs/pwg/pwg.xml:
12349           All sort of documentation... Forgot what. Point is that I want this
12350           in before I leave. The 'other-*' will be the last section and will
12351           explain issues specific to these type of elements.
12352
12353 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12354
12355         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12356         (gst_filesrc_get_read):
12357           set all the values on buffers that we can
12358
12359 2004-02-02  David Schleef  <ds@schleef.org>
12360
12361         Change usage of isblah() to g_ascii_isblah() to be more locale
12362         independent.  (#133076)
12363         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12364         * gst/gstutils.c:
12365         * gst/parse/parse.l:
12366
12367 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12368
12369         reviewed by: David Schleef  <ds@schleef.org>
12370
12371         Fix memory leaks:
12372         * gst/gstcaps.c: (gst_caps_to_string):
12373         * gst/registries/gstxmlregistry.c:
12374         (gst_xml_registry_add_path_list_func),
12375         (gst_xml_registry_parse_padtemplate):
12376
12377 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12378
12379         * gst/gstelement.c: (gst_element_default_error):
12380           suffix error messages with period
12381
12382 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12383
12384         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12385         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12386         * gst/gsterror.c: (gst_error_get_message):
12387           Suffix with dots
12388         * po/fr.po:
12389         * po/nl.po:
12390           Update translation files
12391
12392 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12393
12394         * gst/autoplug/gstspideridentity.c:
12395         (gst_spider_identity_sink_loop_type_finding):
12396         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12397         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12398         (gst_filesink_close_file), (gst_filesink_handle_event),
12399         (gst_filesink_chain):
12400         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12401         (gst_filesrc_get_read), (gst_filesrc_open_file):
12402         * gst/elements/gstidentity.c: (gst_identity_chain):
12403         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12404         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12405         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12406         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12407         * gst/gsterror.c: (_gst_core_errors_init),
12408         (_gst_library_errors_init), (_gst_resource_errors_init),
12409         (_gst_stream_errors_init), (gst_error_get_message):
12410         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12411         (gst_pad_recover_caps_error), (gst_pad_pull):
12412         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12413         * gst/schedulers/gstbasicscheduler.c:
12414         (gst_basic_scheduler_chainhandler_proxy),
12415         (gst_basic_scheduler_gethandler_proxy),
12416         (gst_basic_scheduler_cothreaded_chain):
12417           Suffix error messages with period.
12418           Use (NULL) instead of NULL
12419
12420 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12421
12422         * docs/gst/tmpl/gstelement.sgml:
12423         * docs/gst/tmpl/gstxml.sgml:
12424         * gst/gstelement.c: (gst_element_error_full):
12425           add element path to error
12426
12427 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12428
12429         * docs/random/mimetypes:
12430           update raw int/float info
12431         * gst/gsttag.c: (_gst_tag_initialize):
12432         * gst/gsttag.h:
12433           add GST_TAG_ENCODER
12434
12435 2004-01-30  David Schleef  <ds@schleef.org>
12436
12437         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12438           missing (#132991)
12439
12440 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12441
12442         reviewed by Benjamin Otte 
12443           parts of the patch submitted in bug #113913
12444
12445         * configure.ac:
12446           use AC_C_INLINE. Use = instead of == with test
12447         * examples/plugins/example.c:
12448         * gst/autoplug/gstspideridentity.c:
12449         * gst/elements/gstfdsrc.c:
12450         * gst/elements/gstfilesrc.c:
12451         * gst/elements/gstidentity.c:
12452         * gst/elements/gstmultidisksrc.c:
12453         * gst/elements/gststatistics.c:
12454         * gst/gstelement.c:
12455         * gst/gstobject.c:
12456         * gst/gstpad.c:
12457         * gst/gstpipeline.c:
12458         * gst/gstthread.c:
12459           don't end enums with a comma
12460         * gst/gstindex.c: (gst_index_compare_func):
12461           do explicit casting to gint
12462         * gst/gsttrace.c: (gst_trace_text_flush):
12463           #define strsize as a macro
12464
12465 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12466
12467         * docs/README:
12468         * docs/gst/gstreamer-docs.sgml:
12469         * docs/gst/gstreamer-sections.txt:
12470         * docs/gst/tmpl/gstelement.sgml:
12471         * docs/gst/tmpl/gsterror.sgml:
12472         * docs/gst/tmpl/gstinterface.sgml:
12473         * docs/gst/tmpl/gstreamer-unused.sgml:
12474         * docs/gst/tmpl/gststructure.sgml:
12475         * docs/gst/tmpl/gsttag.sgml:
12476         * docs/gst/tmpl/gsttaginterface.sgml:
12477         * docs/gst/tmpl/gstvalue.sgml:
12478         make sure all API ends up in the built docs
12479         * gst/gstinterface.c:
12480         * gst/gststructure.c: (gst_structure_id_set_value),
12481         (gst_structure_set_value), (gst_structure_id_get_value):
12482         * gst/gststructure.h:
12483         * gst/gstvalue.h:
12484         sync .h with .c declarations
12485
12486 2004-01-30  Julien Moutte  <julien@moutte.net>
12487
12488         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12489         Ronald will fix riffread.
12490
12491 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12492
12493         * docs/pwg/advanced-interfaces.xml:
12494           Added tuner interface docs.
12495
12496 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12497
12498         * docs/random/mimetypes:
12499           correct Theora information
12500         * gst/gstelement.h:
12501           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12502
12503 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12504
12505         * gst/gstelement.c: (gst_element_error_full):
12506         * gst/gstelement.h:
12507           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12508
12509 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12510
12511         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12512         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12513         again and even before DISCONT.
12514         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12515         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12516         bytestream so that it's not stopping to fill the bytestream if events
12517         different than EOS or DISCONT are received. Instead it process them so
12518         that they go downstream.
12519
12520 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12521
12522         * docs/gst/tmpl/gstelement.sgml:
12523         * docs/gst/tmpl/gstreamer-unused.sgml:
12524         * docs/gst/tmpl/gstxml.sgml:
12525         * gst/autoplug/gstspideridentity.c:
12526         (gst_spider_identity_sink_loop_type_finding):
12527         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12528         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12529         (gst_filesink_close_file), (gst_filesink_handle_event),
12530         (gst_filesink_chain):
12531         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12532         (gst_filesrc_get_read), (gst_filesrc_open_file):
12533         * gst/elements/gstidentity.c: (gst_identity_chain):
12534         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12535         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12536         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12537         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12538         * gst/gstelement.h:
12539         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12540         (gst_pad_recover_caps_error), (gst_pad_pull):
12541         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12542         * gst/schedulers/gstbasicscheduler.c:
12543         (gst_basic_scheduler_chainhandler_proxy),
12544         (gst_basic_scheduler_gethandler_proxy),
12545         (gst_basic_scheduler_cothreaded_chain):
12546           gst_element_error -> GST_ELEMENT_ERROR
12547
12548 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12549
12550         * docs/Makefile.am:
12551         * docs/gst/tmpl/gstelement.sgml:
12552         * docs/gst/tmpl/gstxml.sgml:
12553         * docs/manuals.mak:
12554         * docs/pwg/advanced-request.xml:
12555         * docs/pwg/advanced-scheduling.xml:
12556         * docs/pwg/advanced-tagging.xml:
12557           fix non-validating docbook using CDATA
12558           make sure make check-local gets run first to check if it validates
12559
12560 2004-01-29  Julien MOUTTE <julien@moutte.net>
12561
12562         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12563         handling (up and downstream).
12564         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12565         my_filter thing.
12566
12567 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12568
12569         * docs/pwg/advanced-tagging.xml:
12570           Add docs about tag writing.
12571
12572 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12573
12574         * docs/pwg/advanced-tagging.xml:
12575           Add a part about tag reading and application signalling... Tag
12576           writing still needs to be documented.
12577         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12578           We can set file locations in READY, too.
12579
12580 2004-01-29  Julien MOUTTE <julien@moutte.net>
12581
12582         * docs/random/ds/element-checklist: Adding some notes about src
12583         events.
12584
12585 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12586
12587         * docs/random/mimetypes:
12588           Update docs to point to correct elements for various mimetypes, and
12589           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12590           <stephane.loeuillet@tiscali.fr>.
12591
12592 2004-01-28  David Schleef  <ds@schleef.org>
12593
12594         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12595
12596 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12597
12598         * docs/random/mimetypes:
12599           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12600           undefined"
12601         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12602           make it only work in NULL.
12603         * gst/gstcaps.c:
12604           don't posion NULL caps
12605         * gst/gstelement.c: (gst_element_set_time):
12606           add debugging statement
12607         * gst/gstelement.c: (gst_element_emit_found_tag),
12608         (gst_element_found_tag_func), (gst_element_found_tags):
12609         * gst/gstelement.h:
12610           These functions take const taglists
12611         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12612           fix memleak
12613         * gst/gstpad.c: (gst_pad_event_default):
12614           make more effort on handling discont and clocks, g_warn if everything
12615           fails
12616         * gst/gststructure.c: (gst_structure_remove_fields),
12617         (gst_structure_remove_fields_valist):
12618         * gst/gststructure.h:
12619           add gst_structure_remove_fields(_valist)
12620         * gst/gsttag.c:
12621           fix doc glitch
12622
12623 2004-01-28  David Schleef  <ds@schleef.org>
12624
12625         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12626         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12627         Fix memory leakage of gst_caps_to_string().
12628
12629         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12630         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12631         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12632         (gst_spider_identity_sink_loop_type_finding):
12633         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12634         (find_suggest):
12635         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12636         (gst_pad_set_explicit_caps):
12637         * gst/parse/grammar.y:
12638
12639 2004-01-28  David Schleef  <ds@schleef.org>
12640
12641         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12642         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12643         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12644         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12645         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12646         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12647         (gst_debug_log_default), (_gst_info_printf_extension),
12648         (_gst_info_printf_extension_arginfo):  Add printf extension.
12649         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12650         * gst/gststructure.c: (gst_structure_to_string),
12651         (_gst_structure_parse_value): Use gst_value_deserialize() and
12652         remove old code.
12653         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12654         (gst_value_deserialize_boolean), (gst_strtoi),
12655         (gst_value_deserialize_int), (gst_value_deserialize_double),
12656         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12657         a bunch of deserialize functions and gst_value_deserialize.
12658         * gst/gstvalue.h: er, _de_serialize, not unserialize
12659         * testsuite/caps/string-conversions.c: (main): We don't currently
12660         handle (float) in caps, so convert these to (double).
12661         * testsuite/debug/Makefile.am: Add new test for the printf extension
12662         * testsuite/debug/printf_extension.c: (main): same
12663
12664 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12665
12666         * docs/random/company/time:
12667           Add some docs about clocking and time
12668
12669 2004-01-28  Julien MOUTTE <julien@moutte.net>
12670
12671         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12672
12673 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12674
12675         * docs/pwg/advanced-clock.xml:
12676         * docs/pwg/advanced-dparams.xml:
12677         * docs/pwg/advanced-events.xml:
12678         * docs/pwg/advanced-interfaces.xml:
12679         * docs/pwg/advanced-midi.xml:
12680         * docs/pwg/advanced-request.xml:
12681         * docs/pwg/advanced-scheduling.xml:
12682         * docs/pwg/advanced-tagging.xml:
12683         * docs/pwg/advanced-types.xml:
12684         * docs/pwg/appendix-checklist.xml:
12685         * docs/pwg/building-boiler.xml:
12686         * docs/pwg/building-chainfn.xml:
12687         * docs/pwg/building-filterfactory.xml:
12688         * docs/pwg/building-pads.xml:
12689         * docs/pwg/building-props.xml:
12690         * docs/pwg/building-signals.xml:
12691         * docs/pwg/building-state.xml:
12692         * docs/pwg/building-testapp.xml:
12693         * docs/pwg/intro-basics.xml:
12694         * docs/pwg/intro-preface.xml:
12695         * docs/pwg/other-autoplugger.xml:
12696         * docs/pwg/other-sink.xml:
12697         * docs/pwg/other-source.xml:
12698         * docs/pwg/titlepage.xml:
12699           fix up id's
12700
12701 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12702
12703         * docs/95NonPath:
12704         * docs/HACKING:
12705         * docs/README:
12706         * docs/building-the-docs-on-debian:
12707           collect relevant bits of doc info
12708
12709 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12710
12711         * docs/pwg/advanced_tagging.xml:
12712           Half-assed commit so Thomas can re-arrange document IDs here to be
12713           consistent, too.
12714
12715 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12716
12717         * docs/manual/autoplugging.xml:
12718         * docs/manual/bins-api.xml:
12719         * docs/manual/bins.xml:
12720         * docs/manual/buffers-api.xml:
12721         * docs/manual/buffers.xml:
12722         * docs/manual/clocks.xml:
12723         * docs/manual/components.xml:
12724         * docs/manual/cothreads.xml:
12725         * docs/manual/debugging.xml:
12726         * docs/manual/dparams-app.xml:
12727         * docs/manual/dynamic.xml:
12728         * docs/manual/elements-api.xml:
12729         * docs/manual/elements.xml:
12730         * docs/manual/factories.xml:
12731         * docs/manual/gnome.xml:
12732         * docs/manual/goals.xml:
12733         * docs/manual/helloworld.xml:
12734         * docs/manual/helloworld2.xml:
12735         * docs/manual/init-api.xml:
12736         * docs/manual/intro.xml:
12737         * docs/manual/links-api.xml:
12738         * docs/manual/links.xml:
12739         * docs/manual/manual.xml:
12740         * docs/manual/motivation.xml:
12741         * docs/manual/pads-api.xml:
12742         * docs/manual/pads.xml:
12743         * docs/manual/plugins-api.xml:
12744         * docs/manual/plugins.xml:
12745         * docs/manual/programs.xml:
12746         * docs/manual/queues.xml:
12747         * docs/manual/quotes.xml:
12748         * docs/manual/schedulers.xml:
12749         * docs/manual/states-api.xml:
12750         * docs/manual/states.xml:
12751         * docs/manual/threads.xml:
12752         * docs/manual/typedetection.xml:
12753         * docs/manual/xml.xml:
12754           use chapter, part, section or misc as id starts for all bits
12755
12756 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12757
12758         * docs/gst/gstreamer-sections.txt:
12759           Fix up TITLE of the sections
12760
12761 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12762
12763         * docs/pwg/advanced_interfaces.xml:
12764           Add documentation on propertyprobing.
12765         * docs/pwg/advanced_events.xml:
12766         * docs/pwg/advanced_tagging.xml:
12767         * docs/pwg/building_boiler.xml:
12768         * docs/pwg/building_filterfactory.xml:
12769         * docs/pwg/pwg.xml:
12770           Move filterfactory and tagging into their own chapter, add a chapter
12771           on events. all these are empty placeholders that will be filled in
12772           some day.
12773
12774 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12775
12776         * docs/pwg/advanced_interfaces.xml:
12777           Docs for mixer interface. Also a check for website uploading.
12778
12779 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12780
12781         * docs/HACKING:
12782         * docs/Makefile.am:
12783         * docs/faq/Makefile.am:
12784         * docs/gst/Makefile.am:
12785         * docs/gst/tmpl/gstelement.sgml:
12786         * docs/gst/tmpl/gstplugin.sgml:
12787         * docs/gst/tmpl/gstreamer-unused.sgml:
12788         * docs/libs/Makefile.am:
12789         * docs/manual/Makefile.am:
12790         * docs/manuals.mak:
12791         * docs/pwg/Makefile.am:
12792         * docs/upload.mak:
12793           Separate out upload target and make it similar for
12794           both docbook and gtk-doc docs
12795
12796 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12797
12798         * docs/manuals.mak:
12799           Fix upload target to work with freedesktop
12800
12801 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12802
12803         * docs/pwg/advanced_types.xml:
12804           Add notes on creating your own types.
12805         * docs/pwg/building_boiler.xml:
12806         * docs/pwg/building_pads.xml:
12807         * docs/pwg/building_state.xml:
12808           Add some stuff about how to retrieve values from structures, how
12809           that relates to types and change layout slightly again to be almost
12810           perfect.
12811
12812 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12813
12814         * docs/pwg/advanced_dparams.xml:
12815         * docs/pwg/advanced_scheduling.xml:
12816           Change index layout slightly.
12817
12818 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12819
12820         * docs/pwg/advanced_clock.xml:
12821         * docs/pwg/advanced_interfaces.xml:
12822         * docs/pwg/advanced_midi.xml:
12823           General placeholders for now.
12824         * docs/pwg/advanced_request.xml:
12825           Explanation about sometimes and request pads.
12826         * docs/pwg/advanced_scheduling.xml:
12827           Concept of bytestream, loopfunctions and schedulers.
12828         * docs/pwg/building_boiler.xml:
12829           Add something about plugin-init.
12830
12831 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12832
12833         * docs/pwg/building_pads.xml:
12834           Fix broken docbook
12835
12836 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12837
12838         * docs/pwg/advanced_interfaces.xml:
12839         * docs/pwg/pwg.xml:
12840           Add as a placeholder for future filling-in.
12841         * docs/pwg/basics_autoplugging.xml:
12842         * docs/pwg/basics_buffers.xml:
12843         * docs/pwg/basics_elements.xml:
12844         * docs/pwg/basics_events.xml:
12845         * docs/pwg/basics_plugins.xml:
12846         * docs/pwg/basics_types.xml:
12847           Remove, because unused (this is all in intro_basics.xml).
12848         * docs/pwg/building_signals.xml:
12849           Short intro to signals + reference to GObject docs - we really
12850           shouldn't go into these sort of things to deply because we don't
12851           use them that extensively anyway.
12852         * docs/pwg/building_state.xml:
12853           Explanation of states. Benjamin, please check.
12854         * docs/pwg/building_testapp.xml:
12855           Put everything in one page - putting only a few lines of content
12856           per page doesn't really make sense.
12857
12858           Time to get into the advanced topics. ;).
12859
12860 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12861
12862         * docs/pwg/advanced_types.xml:
12863           Finish documenting the current state of mimetypes.
12864         * docs/pwg/building_boiler.xml:
12865         * docs/pwg/building_chainfn.xml:
12866         * docs/pwg/building_pads.xml:
12867         * docs/pwg/building_props.xml:
12868         * docs/pwg/building_testapp.xml:
12869           Start documenting the "how to build a simple audio filter" part
12870           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12871           states and (maybe?) a short introduction to capsnego in the chapter
12872           on pads (building_pads.xml). Capsnego should probably be explained
12873           fully in advanced_capsnego.xml or so.
12874
12875 2004-01-26  David Schleef  <ds@schleef.org>
12876
12877         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12878         * gst/gstpad.h: Add new function to allow element to (somewhat)
12879         specify non-fixed caps on a pad.
12880         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12881         that I added a few weeks ago.
12882
12883 2004-01-26  David Schleef  <ds@schleef.org>
12884
12885         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12886           making try_set_caps() work with non-fixed caps.
12887
12888 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12889
12890         * docs/pwg/advanced_types.xml:
12891         * docs/pwg/intro_basics.xml:
12892         * docs/pwg/intro_preface.xml:
12893         * docs/pwg/pwg.xml:
12894         * docs/pwg/titlepage.xml:
12895           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12896           in here (docs/random/mimetypes), and will from there on work on both
12897           updating outdated parts and adding missing parts.
12898           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12899
12900 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12901
12902         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12903           policy is set
12904
12905 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12906
12907         * gst/gstelement.h:
12908           remove gst_element_factory_get_version. It doesn't exist anymore.
12909         * gst/gstplugin.c:
12910         * gst/gstplugin.h:
12911           remove gst_plugin_set_name and change gst_plugin_get_longname to
12912           gst_plugin_get_description to match code.
12913         * gst/gsterror.h:
12914           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12915         * gst/gstpad.c: (gst_pad_try_set_caps):
12916           make it work with nonfixed caps.
12917           Note that even in the nonfixed case the link function of the pad
12918           that tries to set caps isn't called.
12919
12920 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12921
12922         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12923           fix bug where buffer was not assembled correctly
12924         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12925           silence by default
12926         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12927           only seek if there's no more buffers that could work without seeking
12928
12929 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12930
12931         * gst/gsttag.c: (_gst_tag_initialize):
12932         * gst/gsttag.h:
12933           Add application tag (for encoding/muxing app).
12934
12935 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12936
12937         * autogen.sh:
12938           make autopoint force, and libtoolize not copy
12939         * common/m4/as-docbook.m4:
12940           added docbook xml catalog setup check
12941         * common/m4/gst-doc.m4:
12942           use docbook check
12943
12944 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12945
12946         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12947         * gst/gsttag.h:
12948           add GstTagFlag
12949
12950 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12951
12952         * docs/gst/gstreamer-sections.txt:
12953         * docs/gst/tmpl/gst.sgml:
12954         * docs/gst/tmpl/gstbuffer.sgml:
12955         * docs/gst/tmpl/gstclock.sgml:
12956         * docs/gst/tmpl/gstelement.sgml:
12957         * docs/gst/tmpl/gstreamer-unused.sgml:
12958         * docs/gst/tmpl/gstxml.sgml:
12959           sync latest API changes to docs
12960
12961 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12962
12963         * gst/gstpluginfeature.c:
12964           fix doc snippet
12965         * tools/gst-inspect.c: (print_element_list):
12966           fix output of typefind
12967           add GPL header
12968         * tools/gst-launch.c:
12969           add GPL header
12970
12971 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12972
12973         * gst/elements/Makefile.am:
12974         * gst/elements/gstelements.c:
12975         * gst/elements/gsttypefindelement.c:
12976         * gst/elements/gsttypefindelement.h:
12977         * po/POTFILES.in:
12978         * po/fr.po:
12979         * po/nl.po:
12980           renamed gsttypefindelement to gsttypefind, conserving CVS history
12981
12982 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12983
12984         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12985         * gst/gsttag.h:
12986           add some tags used in ogg as well
12987           fix _ in replaygain tags
12988
12989 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12990
12991         * gst/gsterror.h:
12992           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12993
12994 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12995
12996         * gst/gstelement.c: (gst_element_error_full):
12997         * gst/gstelement.h:
12998           change _extended to _full
12999
13000 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13001
13002         reviewed by: <delete if not using a buddy>
13003
13004         * docs/gst/tmpl/gst.sgml:
13005         * docs/gst/tmpl/gstbuffer.sgml:
13006         * docs/gst/tmpl/gstclock.sgml:
13007         * docs/gst/tmpl/gstelement.sgml:
13008         * docs/gst/tmpl/gstreamer-unused.sgml:
13009         * docs/gst/tmpl/gstxml.sgml:
13010         * gst/gstelement.c: (gst_element_error_full):
13011         * gst/gstelement.h:
13012
13013 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13014
13015         * gst/gstelement.h: fix _gst_element_error_printf prototype
13016
13017 2004-01-20  David Schleef  <ds@schleef.org>
13018
13019         * gst/gststructure.c: (gst_structure_to_string):
13020         Convert function to use gst_value_serialize().
13021         * gst/gstvalue.c: (gst_value_serialize_list),
13022         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13023         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13024         (gst_value_serialize_int), (gst_value_serialize_double),
13025         (gst_string_wrap), (gst_value_serialize_string),
13026         (gst_value_serialize), (gst_value_deserialize):
13027         * gst/gstvalue.h:
13028         Add implementations for serialize.
13029
13030 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13031
13032         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13033         we want to keep that one in the future or change xvidenc.c to use 
13034         another error.
13035
13036 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13037
13038         * gst/gstelement.c: (_gst_element_error_printf):
13039         * gst/gstelement.h:
13040           privatise function
13041
13042 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13043
13044         * docs/random/error:
13045           doc explaining error system
13046         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13047           cleanup
13048
13049 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13050
13051         * gst/gst-i18n-app.h:
13052         * gst/gst-i18n-lib.h:
13053           remove inclusion of config.h
13054         * po/POTFILES.in:
13055         * po/nl.po:
13056           add gst/gstelement.c
13057
13058 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13059
13060         * po/nl.po: updated Dutch translation
13061
13062 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13063
13064         * gst/gsterror.c: (_gst_core_errors_init),
13065         (_gst_library_errors_init), (_gst_resource_errors_init),
13066         (_gst_stream_errors_init):
13067         remove ending punctuation dots
13068
13069 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13070
13071         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13072         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13073         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13074         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13075         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13076         use GST_ERROR_SYSTEM
13077
13078 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13079
13080         * gst/gstelement.c: (gst_element_error_printf),
13081         (gst_element_error_extended):
13082         * gst/gstelement.h:
13083           add a helper printf function so we can have NULL values passed.
13084
13085 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13086
13087         * gst/gstelement.h:
13088           add G_STMT macros to gst_element_error, which isn't strictly
13089           necessary but people tell me to anyway.
13090
13091 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13092
13093         * gst/Makefile.am:
13094         * gst/autoplug/gstspideridentity.c:
13095         (gst_spider_identity_sink_loop_type_finding):
13096         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13097         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13098         (gst_filesink_close_file), (gst_filesink_handle_event),
13099         (gst_filesink_chain):
13100         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13101         (gst_filesrc_map_region), (gst_filesrc_get_read),
13102         (gst_filesrc_open_file):
13103         * gst/elements/gstidentity.c: (gst_identity_chain):
13104         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13105         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13106         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13107         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13108         * gst/gst.h:
13109         * gst/gst_private.h:
13110         * gst/gstelement.c: (gst_element_class_init),
13111         (gst_element_default_error), (gst_element_error_func),
13112         (gst_element_error_extended):
13113         * gst/gstelement.h:
13114         * gst/gsterror.c: (_gst_core_errors_init),
13115         (_gst_library_errors_init), (_gst_resource_errors_init),
13116         (_gst_stream_errors_init), (gst_error_get_message):
13117         * gst/gsterror.h:
13118         * gst/gstinfo.c: (_gst_debug_init):
13119         * gst/gstmarshal.list:
13120         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13121         (gst_pad_recover_caps_error), (gst_pad_pull):
13122         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13123         * gst/schedulers/gstbasicscheduler.c:
13124         (gst_basic_scheduler_chainhandler_proxy),
13125         (gst_basic_scheduler_gethandler_proxy),
13126         (gst_basic_scheduler_cothreaded_chain):
13127         * po/POTFILES.in:
13128         * po/fr.po:
13129         * po/nl.po:
13130           change error signal
13131           add error categories
13132
13133 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13134
13135         * gst/gsttag.c: (_gst_tag_initialize):
13136         * gst/gsttag.h:
13137         Add replaygain tag
13138
13139 2004-01-18  Colin Walters  <walters@verbum.org>
13140
13141         * examples/retag/retag.c: Call gst_init before processing
13142         program args.  Add g_assert to _link_many call.
13143
13144 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13145
13146         * gst/gstpad.c: (gst_pad_alloc_buffer):
13147           Return a newly allocated buffer when the pad has no peer.
13148
13149 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13150
13151         * gst/gstclock.c: (gst_clock_get_time):
13152           make it compile with gcc 2.95 again.
13153           Patch by Scott Wheeler
13154
13155 2004-01-15  David Schleef  <ds@schleef.org>
13156
13157         * gst/gstcaps.h:
13158         Added gst_caps_is_simple() macro.
13159         * testsuite/caps/caps.c: (test1):
13160         * testsuite/caps/intersect2.c: (main):
13161         * testsuite/caps/intersection.c: (main):
13162         Fixes to make 'make check' work again after removing
13163         gst_caps_is_chained().
13164
13165 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13166
13167         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13168         and additions to the MIDI document.
13169
13170 2004-01-15  David Schleef  <ds@schleef.org>
13171
13172         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13173         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13174         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13175
13176 2004-01-15  David Schleef  <ds@schleef.org>
13177
13178         * gst/gstqueue.c:
13179         * gst/gstqueue.h:
13180         Fix the spelling of "treshold" and make min_threshold actually
13181         affect the queue.
13182
13183 2004-01-15  David Schleef  <ds@schleef.org>
13184
13185         * gst/gstcaps.c:
13186         Add lots of documentation.
13187         * gst/gstcaps.h:
13188         Deprecate a few functions.
13189         * gst/gstpad.c:
13190         Removed use of deprecated functions.
13191
13192 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13193
13194         * gst/gstpad.c: (gst_pad_is_linked):
13195         * gst/gstpad.h:
13196           implement gst_pad_is_linked
13197         * gst/gstelement.h:
13198           reserve space for initiate_state_change
13199
13200 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13201
13202         * gst/autoplug/gstspideridentity.c:
13203         (gst_spider_identity_sink_loop_type_finding):
13204           break infinite loop by just returning instead of looping
13205         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13206           set event time difference correctly. Set it to 1 second instead
13207           of 100ms to be more tolerant
13208         * gst/gstelement.c: (gst_element_set_time):
13209           add debugging output
13210
13211 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13212
13213         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13214           query if buffers are inside the pool, ignore events
13215
13216 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13217
13218         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13219         (gst_clock_set_speed), (gst_clock_set_active),
13220         (gst_clock_is_active), (gst_clock_reset),
13221         (gst_clock_handle_discont):
13222         * gst/gstclock.h:
13223           deprecate old interface and disable functions that aren't in use
13224           anymore.
13225         * gst/gstelement.h:
13226         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13227         (gst_element_set_time), (gst_element_adjust_time):
13228           add concept of "element time" and functions to get/set this time.
13229         * gst/gstelement.c: (gst_element_change_state):
13230           update element time correctly.
13231         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13232           This is a debug message, not a g_critical.
13233         * gst/gstpad.c: (gst_pad_event_default):
13234           handle discontinuous events right with element time.
13235         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13236           update to clocking fixes.
13237           set clocks on elements in READY=>PAUSED. The old behaviour caused
13238           a wrong element time on the first element that started playing.
13239         * gst/schedulers/gstbasicscheduler.c:
13240         (gst_basic_scheduler_class_init):
13241         * gst/schedulers/gstoptimalscheduler.c:
13242         (gst_opt_scheduler_class_init):
13243           remove code that just implements the default behaviour.
13244         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13245           update to use new clocking functions
13246         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13247         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13248           update to test new element time.
13249         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13250           use _get_allowed_caps instead of _get_caps. This catches filtered
13251           caps correctly.
13252         * testsuite/debug/commandline.c:
13253           update for new GST_DEBUG syntax.
13254         * testsuite/threads/Makefile.am:
13255           disable a test that only works sometimes.
13256
13257 2004-01-13  Julien MOUTTE <julien@moutte.net>
13258
13259         * po/LINGUAS: Adding fr.
13260         * po/fr.po: Adding french translation.
13261
13262 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13263
13264         * gst/parse/grammar.y:
13265         * po/POTFILES.in:
13266         * po/nl.po:
13267         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13268           translate parsing error messages
13269
13270 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13271
13272         * po/POTFILES.in: adding gst-launch
13273         * po/nl.po: updated translation, all 99 strings translated
13274         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13275         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13276           fix strings for translation
13277
13278 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13279
13280         * gst/gst.c:
13281           - capitalize beginnings of popt options
13282           - fix strings for translation
13283           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13284
13285 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13286
13287         * po/README: add some notes on how to update translations
13288
13289 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13290
13291         * ABOUT-NLS: removed, is autogenerated from autopoint
13292         * autogen.sh: add autopoint stuff
13293         * configure.ac: fix up gettext stuff
13294         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13295         * gst/elements/gsttypefindelement.c: add header include
13296         * gst/gettext.h: add header, copy from system-installed header
13297         * gst/gst-i18n-app.h: to be included by each app having translations
13298         * gst/gst-i18n-lib.h: to be included by each lib having translations
13299         * gst/gst.c: (init_pre): fix up gettext calls
13300         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13301         * po/LINGUAS: the new way to specify translations present
13302         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13303         * po/Makevars: the variables filled in for GStreamer
13304         * po/POTFILES.in: added new files with translations
13305         * po/de.po: has new strings
13306         * po/nl.po: readded, has new strings
13307
13308 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13309
13310         * gst/gsttag.c: fix some strings marked for translation
13311
13312 2004-01-13  Iain <iain@prettypeople.org>
13313
13314         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13315         group when we add an element to it, cos we unref it when we remove one
13316
13317 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13318
13319         * testsuite/debug/commandline.c: (debug_not_reached):
13320         * testsuite/debug/output.c: (check_message):
13321           fix testsuite
13322
13323 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13324
13325         * examples/cutter/.cvsignore:
13326         * examples/helloworld/.cvsignore:
13327         * examples/launch/.cvsignore:
13328         * examples/manual/.cvsignore:
13329         * examples/mixer/.cvsignore:
13330         * examples/pingpong/.cvsignore:
13331         * examples/plugins/.cvsignore:
13332         * examples/queue/.cvsignore:
13333         * examples/queue2/.cvsignore:
13334         * examples/queue3/.cvsignore:
13335         * examples/queue4/.cvsignore:
13336         * examples/retag/.cvsignore:
13337         * examples/thread/.cvsignore:
13338         * examples/typefind/.cvsignore:
13339         * examples/xml/.cvsignore:
13340         * gst/.cvsignore:
13341         * gst/autoplug/.cvsignore:
13342         * gst/elements/.cvsignore:
13343         * gst/indexers/.cvsignore:
13344         * gst/parse/.cvsignore:
13345         * gst/registries/.cvsignore:
13346         * gst/schedulers/.cvsignore:
13347         * libs/gst/bytestream/.cvsignore:
13348         * libs/gst/control/.cvsignore:
13349         * libs/gst/getbits/.cvsignore:
13350         * tests/.cvsignore:
13351         * tests/bufspeed/.cvsignore:
13352         * tests/instantiate/.cvsignore:
13353         * tests/memchunk/.cvsignore:
13354         * tests/muxing/.cvsignore:
13355         * tests/sched/.cvsignore:
13356         * tests/seeking/.cvsignore:
13357         * tests/threadstate/.cvsignore:
13358         * testsuite/.cvsignore:
13359         * testsuite/caps/.cvsignore:
13360         * testsuite/cleanup/.cvsignore:
13361         * testsuite/dynparams/.cvsignore:
13362         * testsuite/plugin/.cvsignore:
13363         * tools/.cvsignore:
13364           update - this is huge, because it includes *.bb, *.bbg and *.da files
13365           which are generated for gcov.
13366
13367 2004-01-11  David Schleef  <ds@schleef.org>
13368
13369         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13370         a function to parse integers in ways that strto[u]l() does not.
13371
13372 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13373
13374         * tools/gst-inspect.c: (print_caps):
13375           improve output of caps a bit
13376
13377 2004-01-11  David Schleef  <ds@schleef.org>
13378
13379         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13380         inherit correct flags (READONLY and DONTKEEP).
13381
13382 2004-01-11  David Schleef  <ds@schleef.org>
13383
13384         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13385         (gst_filesrc_map_region):
13386         * gst/gstbuffer.c: (_gst_buffer_initialize),
13387         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13388         (gst_buffer_new), (gst_buffer_create_sub),
13389         (gst_buffer_is_span_fast), (gst_buffer_span):
13390         * gst/gstbuffer.h:
13391         Change GstBuffer private structure element names. (all files)
13392         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13393         (gst_queue_link):
13394         * gst/gstqueue.h:
13395         Implement getcaps/pad_link functions that handle the case where
13396         there are data in the queue.
13397
13398 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13399
13400         * gst/elements/gstbufferstore.c:
13401           initialize debugging structure correctly
13402         * gst/elements/gsttee.c: (gst_tee_set_property):
13403           g_object_notify when property was changed
13404         * gst/elements/gsttypefindelement.c:
13405         (gst_type_find_element_change_state):
13406           clear caps correctly
13407
13408 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13409
13410         * gst/gstqueue.c: (gst_queue_init):
13411           Use better defaults for when a queue should block. This
13412           gets rid of jerky playback for quite a few files.
13413           It takes more memory.
13414
13415 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13416
13417         (gst_xml_registry_parse_padtemplate):
13418           make critical message slightly more useful
13419
13420 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13421
13422         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13423         (gst_debug_message_get), (gst_debug_log_default):
13424         * gst/gstinfo.h:
13425           Change gst_debug_log(_valist) to take a const format string.
13426           Change prototype of log function and functions using those to 
13427           take a GstDebugMessage instead of a string that requires using
13428           gst_debug_message_get.
13429
13430 2004-01-08  David Schleef  <ds@schleef.org>
13431
13432         * Makefile.am:
13433         * configure.ac:
13434         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13435         and -ftest-coverage, which allows gcov to show information about
13436         testsuite coverage.
13437
13438 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13439
13440         * gst/gstutils.h:
13441           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13442           GST_PARENT_CALL_WITH_DEFAULT
13443         * gst/elements/gstaggregator.c: 
13444         * gst/elements/gstbufferstore.c: 
13445         * gst/elements/gstfakesink.c: 
13446         * gst/elements/gstfakesrc.c: 
13447         * gst/elements/gstfdsink.c: 
13448         * gst/elements/gstfdsrc.c: 
13449         * gst/elements/gstfilesink.c: 
13450         * gst/elements/gstfilesrc.c: 
13451         * gst/elements/gstidentity.c: 
13452         * gst/elements/gstmd5sink.c: 
13453         * gst/elements/gstmultidisksrc.c:
13454         * gst/elements/gstpipefilter.c: 
13455         * gst/elements/gstshaper.c:
13456         * gst/elements/gststatistics.c:
13457         * gst/elements/gsttee.c:
13458         * gst/elements/gsttypefindelement.c:
13459           use them.
13460
13461 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13462
13463         * docs/gst/gstreamer-docs.sgml: remove props
13464         * docs/gst/gstreamer-sections.txt: remove props
13465         * docs/gst/tmpl/gst.sgml:
13466         * docs/gst/tmpl/gstbin.sgml:
13467         * docs/gst/tmpl/gstbuffer.sgml:
13468         * docs/gst/tmpl/gstcaps.sgml:
13469         * docs/gst/tmpl/gstclock.sgml:
13470         * docs/gst/tmpl/gstelement.sgml:
13471         * docs/gst/tmpl/gstindex.sgml:
13472         * docs/gst/tmpl/gstobject.sgml:
13473         * docs/gst/tmpl/gstpad.sgml:
13474         * docs/gst/tmpl/gstpadtemplate.sgml:
13475         * docs/gst/tmpl/gstreamer-unused.sgml:
13476         * docs/gst/tmpl/gstthread.sgml:
13477         * docs/gst/tmpl/gstxml.sgml:
13478           sync with code reorganization
13479
13480 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13481
13482         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13483         Make the 'Could not find compatible pad' message more informative.
13484
13485 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13486                                                                                 
13487         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13488           Fix for if we pass NULL as property to location.
13489         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13490         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13491           Fix for instantiate-test (see below).
13492         * gst/gststructure.c: (_gst_structure_parse_value):
13493           Fix compile error on gcc-2.96.
13494         * configure.ac:
13495         * tests/Makefile.am:
13496         * tests/instantiate/Makefile.am:
13497         * tests/instantiate/create.c: (create_all_elements), (main):
13498           Add a test that instantiates all elements. This makes it easy to
13499           track dead code for old API/design (like setting event functions
13500           on sink pads and so on).
13501
13502 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13503
13504         * gst/gstcaps.c: (gst_caps_append_structure):
13505           Move the poisoning to allow a NULL structure
13506         * gst/gstevent.c: (_gst_event_free):
13507           When freeing a navigation event, free the structure
13508           also
13509
13510 2004-01-04  David Schleef  <ds@schleef.org>
13511
13512         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13513         Remove usage of gst_pad_proxy_fixate.
13514         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13515         (gst_caps_split_one), (gst_caps_replace):
13516         Add poisoning code.
13517         * gst/gstmarshal.list:
13518         Add pointer__pointer for fixate signal
13519         * gst/gstpad.c: (gst_real_pad_class_init),
13520         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13521         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13522         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13523         Add poisoning code. Add fixate signal on RealPad. Change
13524         set_explicit_caps() to take const GstCaps, like try_set_caps().
13525         * gst/gstpad.h:
13526         * testsuite/caps/Makefile.am:
13527         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13528
13529 2004-01-03  David Schleef  <ds@schleef.org>
13530
13531         * gst/elements/gsttypefindelement.c:
13532         (gst_type_find_element_have_type), (gst_type_find_element_init):
13533         Use gst_pad_use_explicit_caps for src pad.
13534         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13535         before using it.
13536
13537 2004-01-03  David Schleef  <ds@schleef.org>
13538
13539         * gst/gstelement.c: (gst_element_link_pads_filtered),
13540         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13541         that linking was successful.
13542         * gst/gstpad.c: (gst_pad_link_free),
13543         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13544         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13545         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13546         GstPadLinkReturn correctly between functions, and don't fail
13547         when DELAYED is used (DELAYED is very important).  Better
13548         cleanup on unlinking and unnegotiation.  Should fix some spider
13549         bugs.
13550
13551 2004-01-02  David Schleef  <ds@schleef.org>
13552
13553         * gst/gstelement.c: (gst_element_class_init),
13554         (gst_element_base_class_init): ->padtemplates should be cleared
13555         in base_init, since we need to have a fresh list for every
13556         class.  (Alternately, we chould copy the list and share the
13557         actual pad templates (not the list), but that would require
13558         changing every plugin to move pad template registration from
13559         base_init to class_init.)
13560
13561 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13562
13563         * gst/gstelement.c: (gst_element_class_add_pad_template):
13564           Refuse registering a pad template if another pad template
13565           with the same name already exists (#114715).
13566
13567 2004-01-02  David Schleef  <ds@schleef.org>
13568
13569         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13570         (gst_caps_is_equal_fixed): Add new function.
13571         * gst/gstcaps.h: ditto.
13572         * gst/gstpad.c: (gst_real_pad_class_init),
13573         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13574         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13575         check new caps against existing caps -- if they're the same, return
13576         OK without renegotiating.  caps-nego-failed signal fixed so that
13577         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13578         to save an extra caps copy.  Don't complete negotiation if a pad
13579         link function returns DELAYED.
13580
13581 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13582
13583         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13584           Fix wrong g_return_if_fail
13585
13586 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13587
13588         * gst/gstbin.c: (gst_bin_class_init):
13589         Change the marshalling of element_added/element_removed
13590         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13591         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13592
13593 2004-01-01  David Schleef  <ds@schleef.org>
13594
13595         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13596         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13597         (gst_pad_use_explicit_caps):
13598         * gst/gstpad.h:
13599         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13600         to use an internal getcaps and link fuction so that negotiation
13601         always results in the explicitly set caps.
13602         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13603         are particularly useful for decoders.
13604
13605 2003-12-31  David Schleef  <ds@schleef.org>
13606
13607         * gst/elements/gstidentity.c: (gst_identity_class_init),
13608         (gst_identity_init), (gst_identity_chain),
13609         (gst_identity_set_property), (gst_identity_get_property):
13610         * gst/elements/gstidentity.h:
13611         * gst/gstqueue.c: (gst_queue_init):
13612           Negotiation fixes.
13613
13614 2003-12-31  David Schleef  <ds@schleef.org>
13615
13616         * gst/gstcaps.c: (gst_caps_intersect),
13617         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13618           Implement gst_caps_normalize().
13619         * testsuite/caps/normalisation.c: (main):
13620           Add an additional test
13621
13622 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13623
13624         * gst/gstqueue.c: (gst_queue_init):
13625           use gst_pad_proxy_getcaps()
13626
13627 2003-12-31  David Schleef  <ds@schleef.org>
13628
13629         * gst/elements/gstshaper.c: (gst_shaper_link):
13630         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13631         * gst/gstqueue.c: (gst_queue_link):
13632           Negotiation fixes.
13633
13634 2003-12-31  David Schleef  <ds@schleef.org>
13635
13636         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13637         * gst/gstpad.h: Add functions that are useful as default pad
13638         link and fixate functions for elements.
13639
13640 2003-12-30  David Schleef  <ds@schleef.org>
13641
13642         * gst/gstpad.c: (gst_pad_link_try):
13643           Fix segfault when attempting to return to old caps
13644
13645 2003-12-29  David Schleef  <ds@schleef.org>
13646
13647         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13648         (gst_caps_structure_simplify), (gst_caps_simplify):
13649         * gst/gstcaps.h:
13650           Add simplify function
13651         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13652         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13653         * gst/gstpad.h:
13654           Copy over srcnotify, sinknotify when calling old pad_link
13655           functions.  Add new is_negotiated() function.
13656         * gst/gststructure.c: (gst_structure_copy):
13657           Fix an incredibly stupid bug that should have been noticed
13658           weeks ago.  _copy() returned the argument, not the new copy.
13659
13660 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13661
13662         * gst/gstcaps.c: (gst_caps_append):
13663           add sanity checks
13664         * gst/gstcaps.h: (gst_caps_debug):
13665           remove, it doesn't exist anymore.
13666         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13667         (gst_element_threadsafe_properties_post_run):
13668           make debugging messages not clutter up THREAD debug category
13669         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13670         (gst_element_change_state):
13671           update to new caps API
13672         * gst/gstinterface.c: (gst_implements_interface_cast):
13673           don't put vital code in g_return_if_fail
13674         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13675         (gst_pad_link_filtered):
13676           add pst_pad_try_link and use it.
13677         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13678           implement correctly, deprecate first one.
13679         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13680           add and implement.
13681         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13682           implement.
13683         (gst_pad_get_negotiated_caps):
13684           add and implement. Make GST_PAD_CAPS call this function.
13685         (gst_pad_get_caps):
13686           remove unneeded check..
13687         (gst_pad_recover_caps_error):
13688           disable, always return FALSE.
13689         (gst_real_pad_dispose):
13690           don't free caps and appfilter anymore, they're unused.
13691         * gst/gstpad.h:
13692           Reflect changes mentioned above.
13693         * gst/gstsystemclock.c: (gst_system_clock_wait):
13694           Make 'clock is way behind' a debugging message.
13695         * gst/gstthread.c: (gst_thread_change_state):
13696           Fix debugging message
13697
13698 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13699
13700         * gst/gstinfo.h:
13701           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13702         * docs/gst/tmpl/gstreamer-unused.sgml:
13703           removed all traces of cvs conflicts
13704
13705 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13706
13707         * configure.ac:
13708         * gst/schedulers/cothreads_compat.h:
13709         * libs/Makefile.am:
13710           remove last instances of wingo cothread usage
13711
13712 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13713
13714         * gst/gstplugin.c:
13715         * gst/gstversion.h.in:
13716         * gst/parse/grammar.y:
13717           change comment block from /** to /* when not gtk-doc comments
13718
13719 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13720
13721         * gst/gst.c: whitespace and doc style fixes
13722
13723 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13724
13725         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13726
13727 2003-12-24  Colin Walters  <walters@verbum.org>
13728
13729         * gst/elements/gsttypefindelement.c:
13730           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13731           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13732           Don't double-free caps.
13733
13734 2003-12-23  David Schleef  <ds@schleef.org>
13735
13736         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13737           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13738           Many little fixes and additions of debug statements to
13739           get rhythmbox working.
13740
13741 2003-12-23  Colin Walters  <walters@verbum.org>
13742
13743         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13744         Use GST_PAD_LINK_SUCCESSFUL.
13745
13746 2003-12-23  David Schleef  <ds@schleef.org>
13747
13748         * gst/elements/gstaggregator.c:
13749         * gst/elements/gsttee.c:
13750           Use gst_pad_proxy_getcaps().
13751         * gst/gstpad.c:
13752         * gst/gstpad.h:
13753           Add gst_pad_proxy_getcaps(), which filter elements can use
13754           as a generic getcaps implementation.
13755           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13756           was advertised.
13757
13758 2003-12-23  David Schleef  <ds@schleef.org>
13759
13760         * gst/gstpad.c:
13761           Rearrange/rewrite much of the pad negotiation code, since it
13762           resembled pasta.  This actually changes the way some
13763           negotiation works, since the previous code was inconsistent
13764           depending on how it was invoked.  Add (internal) structure
13765           GstPadLink, which is used to hold some information (more in
13766           the future) about the link between two pads.  Fixes a number
13767           of bugs, including random lossage of filter caps when the
13768           initial negotiation is delayed.  A few functions are still
13769           unimplemented.
13770         * gst/gstpad.h:
13771           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13772           these when testing GstPadLinkReturn values instead of comparing
13773           directly.
13774
13775 2003-12-23  David Schleef  <ds@schleef.org>
13776
13777         * gst/gstvalue.c: 
13778         * gst/gstvalue.h:
13779           Rearrange lots of code.  Change registration of compare function
13780           into registration of compare/serialize/deserialize functions.
13781           Doesn't include implementation of gst_value_[de]serialize(),
13782           but that should be easy.
13783
13784 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13785
13786         * docs/gst/gstreamer-sections.txt:
13787         * docs/gst/tmpl/gstprops.sgml: removed
13788         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13789           David removed props and caps code, so let's remove their docs as well.
13790           Removed all no longer existing symbols from gstreamer-sections.txt
13791           
13792 2003-12-22  Colin Walters  <walters@verbum.org>
13793
13794         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13795           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13796           of tags directly.
13797
13798 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13799
13800         * gst/elements/gstelements.c:
13801           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13802         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13803           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13804           gst_caps (peer).
13805
13806 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13807
13808         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13809         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13810         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13811         (gst_spider_identity_sink_loop_type_finding):
13812         * gst/autoplug/gstspideridentity.h:
13813           Fix autoplugging in spider element, so it works with new caps.
13814           This was mainly caused by identifying empty caps incorrectly.
13815
13816 2003-12-22  David Schleef  <ds@schleef.org>
13817
13818         * gststructure.c, gstvalue.c, gstvalue.h: Add
13819           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13820           using g_value_copy()
13821
13822 2003-12-21  David Schleef  <ds@schleef.org>
13823
13824         * many, many files: Merge CAPS branch.  This includes:
13825           - implemention of GstValue and several GstValue types
13826           - implemention of GstStructure
13827           - entire rewrite of GstCaps
13828           - removal of GstProps
13829           - many changes to GstPad to compensate for new caps paradigm
13830           - removal of GstBufferpool
13831         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13832         gstvalue.h, gst/gstcaps[2]*.[ch]:
13833           - rename gstcaps2.[ch] to gstcaps.[ch]
13834
13835 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13836
13837         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13838         (gst_queue_chain), (gst_queue_handle_src_event):
13839           implement timeout for sending events. Workaround for if the
13840           pipeline on this queue is not passing any data.
13841
13842 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13843                                                                                 
13844         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13845         * moved CVS to freedesktop.org