gst/base/gstbasetransform.c: Fix a pretty good memleak.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2
3         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
4           Fix a pretty good memleak.
5
6 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
7
8         * gst/gstiterator.h:
9           Fix wrong include and 'make distcheck'.
10
11 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12
13         * gst/gstbin.c: (bin_bus_handler):
14           Use gst_element_post_message() instead.
15
16 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
17
18         * gst/base/gstadapter.h:
19         * gst/base/gstbasesink.h:
20         * gst/base/gstbasesrc.h:
21         * gst/base/gstbasetransform.h:
22         * gst/base/gstcollectpads.h:
23         * gst/base/gstpushsrc.h:
24         * gst/gstiterator.h:
25           Add padding to our base elements' class and instance structs and
26           to GstIterator (you will need to rebuild all plugins and apps!)
27
28 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
29
30         * gst/gstbin.c: (bin_bus_handler):
31           Make default message forwarding from child->bus to bin->bus
32           threadsafe and make it not emit warnings if the parent has no bus.
33
34 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
35
36         * gst/gstelement.c: (activate_pads):
37           On paused->ready, set pad->caps to NULL, as is the documented
38           behaviour in this state change. Fixes playback of series of
39           media files when visualization is enabled in Totem.
40
41 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
42
43         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
44           Allow NULL as filter-caps (which means "any").
45
46 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
47
48         * docs/libs/gstreamer-libs-sections.txt:
49         * libs/gst/controller/gst-controller.c:
50         * libs/gst/controller/gst-controller.h:
51         * libs/gst/controller/gst-helper.c:
52           adding more entries to the docs and fix small doc-bugs
53
54 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
55
56         * docs/gst/gstreamer-docs.sgml:
57         * docs/gst/gstreamer-sections.txt:
58         * docs/gst/gstreamer.types:
59         * docs/gst/tmpl/gstbasesink.sgml:
60         * docs/gst/tmpl/gstbasesrc.sgml:
61         * docs/gst/tmpl/gstbasetransform.sgml:
62         * docs/gst/tmpl/gstfakesrc.sgml:
63         * gst/base/gstcollectpads.c:
64         * gst/base/gstcollectpads.h:
65         * libs/gst/controller/gst-controller.c:
66         * libs/gst/controller/gst-controller.h:
67         * libs/gst/controller/gst-helper.c:
68         * libs/gst/controller/gst-interpolation.c:
69         * libs/gst/controller/lib.c:
70           added long/short desc for controller docs
71           added collectpads base class docs
72           added correct includes to base-class docs
73
74 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
75
76         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
77         (gst_test_mono_source_set_property),
78         (gst_test_mono_source_class_init), (GST_START_TEST),
79         (gst_controller_suite):
80         * docs/gst/gstreamer-docs.sgml:
81         * docs/gst/gstreamer-sections.txt:
82         * docs/gst/gstreamer.types:
83         * docs/libs/gstreamer-libs-docs.sgml:
84         * docs/libs/gstreamer-libs-sections.txt:
85         * gst/base/gstadapter.c:
86         * libs/gst/controller/gst-controller.c:
87         (gst_controlled_property_new), (gst_controlled_property_free),
88         (gst_controller_new_valist),
89         (gst_controller_remove_properties_valist),
90         (gst_controller_sink_values), (_gst_controller_finalize):
91         * libs/gst/controller/gst-controller.h:
92         * libs/gst/controller/gst-helper.c:
93         (gst_object_control_properties), (gst_object_uncontrol_properties),
94         (gst_object_get_controller), (gst_object_set_controller),
95         (gst_object_sink_values), (gst_object_get_value_arrays),
96         (gst_object_get_value_array):
97           more tests (and fixes) for the controller
98           more docs for the controller
99           integrated companies docs for the adapter 
100
101 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
102
103         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
104         (GST_START_TEST), (fakesrc_suite):
105           add tests for sizetype
106
107 2005-08-04  Andy Wingo  <wingo@pobox.com>
108
109         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
110         fixes buffer_alloc proxying among other things.
111
112         * gst/base/gstbasetransform.c:
113         * gst/base/gstbasetransform.h:
114         Revert patch to gstbasetransform from 7-28 removing
115         delay_configure.
116
117         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
118         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
119         Semantics changed, should return not the size of the output buffer
120         but the byte size of a buffer with a given caps.
121
122         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
123         debug object.
124         (gst_base_transform_configure_caps): Don't set out_size here: (in,
125         out) are not the pad caps until setcaps finishes.
126         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
127         not-in-place case as well. Deal with changing from in-place to
128         not-in-place within calling pad_alloc_buffer. Still a bit
129         concerned about the overhead here...
130
131 2005-08-03  Andy Wingo  <wingo@pobox.com>
132
133         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
134         fixating is an error.
135
136 2005-08-04  Edward Hervey  <edward@fluendo.com>
137
138         * gst/base/gstadapter.h: 
139         Added gst_adapter_get_type() to the header
140
141 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
142
143         * check/Makefile.am:
144         * check/gst-libs/controller.c:
145         * libs/gst/controller/gst-controller.c:
146         (gst_controller_new_valist):
147           added check test suite for the controller
148         * gst/base/gstpushsrc.c:
149           fixed a doc typo
150
151 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
152
153         * docs/gst/Makefile.am:
154         * docs/gst/gstreamer-docs.sgml:
155         * docs/gst/gstreamer-sections.txt:
156         * docs/gst/gstreamer.types:
157         * docs/gst/tmpl/gstfakesrc.sgml:
158         * gst/base/README:
159         * gst/base/gstbasesink.c:
160         * gst/base/gstbasesink.h:
161         * gst/base/gstbasesrc.c:
162         * gst/base/gstbasesrc.h:
163         * gst/base/gstbasetransform.c:
164         * gst/base/gstpushsrc.c:
165         * gst/base/gstpushsrc.h:
166           add short/long description docs to base classes
167           add pushsrc to the docs
168           remove consolidated doc fragments
169
170 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
171
172         * configure.ac:
173         * docs/libs/Makefile.am:
174         * docs/libs/gstreamer-libs-docs.sgml:
175         * docs/libs/gstreamer-libs-sections.txt:
176         * docs/libs/gstreamer-libs.types:
177         * examples/Makefile.am:
178         * examples/controller/.cvsignore:
179         * examples/controller/Makefile.am:
180         * examples/controller/audio-example.c: (main):
181         * libs/gst/Makefile.am:
182         * libs/gst/controller/.cvsignore:
183         * libs/gst/controller/Makefile.am:
184         * libs/gst/controller/gst-controller.c:
185         (on_object_controlled_property_changed), (gst_timed_value_compare),
186         (gst_timed_value_find),
187         (gst_controlled_property_set_interpolation_mode),
188         (gst_controlled_property_new), (gst_controlled_property_free),
189         (gst_controller_find_controlled_property),
190         (gst_controller_new_valist), (gst_controller_new),
191         (gst_controller_remove_properties_valist),
192         (gst_controller_remove_properties), (gst_controller_set),
193         (gst_controller_set_from_list), (gst_controller_unset),
194         (gst_controller_get), (gst_controller_get_all),
195         (gst_controller_sink_values), (gst_controller_get_value_arrays),
196         (gst_controller_get_value_array),
197         (gst_controller_set_interpolation_mode),
198         (_gst_controller_finalize), (_gst_controller_init),
199         (_gst_controller_class_init), (gst_controller_get_type):
200         * libs/gst/controller/gst-controller.h:
201         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
202         (g_object_uncontrol_properties), (g_object_get_controller),
203         (g_object_set_controller), (g_object_sink_values),
204         (g_object_get_value_arrays), (g_object_get_value_array):
205         * libs/gst/controller/gst-interpolation.c:
206         (gst_controlled_property_find_timed_value_node),
207         (interpolate_none_get), (interpolate_trigger_get),
208         (interpolate_trigger_get_value_array):
209         * libs/gst/controller/lib.c: (gst_controller_init):
210         * pkgconfig/Makefile.am:
211         * pkgconfig/gstreamer-control-uninstalled.pc.in:
212         * pkgconfig/gstreamer-control.pc.in:
213         * testsuite/Makefile.am:
214         * testsuite/controller/.cvsignore:
215         * testsuite/controller/Makefile.am:
216         * testsuite/controller/interpolator.c: (main):
217           added controller code
218           removed dparam pc files
219
220 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
221         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
222         (gst_collectpads_stop):
223           Broadcast the condition when shutting down, to make sure we wake all
224           threads up. Shut down pads on finalize, for safety.
225
226 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
227         * gst/base/gstbasetransform.c: (gst_base_transform_init),
228         (gst_base_transform_handle_buffer),
229         (gst_base_transform_change_state):
230           Handle PAUSED->READY->PAUSED transition after negotiation
231           occurred already.
232         * gst/gstmessage.c: (gst_message_init):
233           Extra piece of debug for new messages.
234
235 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
236
237         * configure.ac:
238         * docs/gst/tmpl/gstbasesrc.sgml:
239         * docs/gst/tmpl/gstelement.sgml:
240         * docs/gst/tmpl/gstevent.sgml:
241         * docs/gst/tmpl/gstfakesrc.sgml:
242         * docs/gst/tmpl/gstformat.sgml:
243         * docs/gst/tmpl/gstghostpad.sgml:
244         * docs/gst/tmpl/gstpad.sgml:
245         * docs/gst/tmpl/gstquery.sgml:
246         * docs/gst/tmpl/gststructure.sgml:
247         * docs/gst/tmpl/gsttaglist.sgml:
248         * docs/gst/tmpl/gstvalue.sgml:
249         * docs/libs/gstreamer-libs-docs.sgml:
250         * docs/libs/gstreamer-libs-sections.txt:
251         * docs/libs/gstreamer-libs.types:
252         * libs/gst/Makefile.am:
253         * libs/gst/control/.cvsignore:
254         * libs/gst/control/Makefile.am:
255         * libs/gst/control/control.c:
256         * libs/gst/control/control.h:
257         * libs/gst/control/dparam.c:
258         * libs/gst/control/dparam.h:
259         * libs/gst/control/dparam_smooth.c:
260         * libs/gst/control/dparam_smooth.h:
261         * libs/gst/control/dparamcommon.h:
262         * libs/gst/control/dparammanager.c:
263         * libs/gst/control/dparammanager.h:
264         * libs/gst/control/dplinearinterp.c:
265         * libs/gst/control/dplinearinterp.h:
266         * libs/gst/control/unitconvert.c:
267         * libs/gst/control/unitconvert.h:
268         * testsuite/Makefile.am:
269         * testsuite/dynparams/.cvsignore:
270         * testsuite/dynparams/Makefile.am:
271         * testsuite/dynparams/dparamstest.c:
272         * tools/Makefile.am:
273         * tools/gst-inspect.c: (print_element_info), (main):
274         * tools/gst-xmlinspect.c: (print_element_info), (main):
275           deactivate and remove dparams (libgstcontrol)
276
277 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
278
279         * gst/elements/gsttypefindelement.c:
280         (gst_type_find_element_have_type), (gst_type_find_element_init),
281         (stop_typefinding), (gst_type_find_element_handle_event),
282         (gst_type_find_element_chain), (gst_type_find_element_getrange):
283         * gst/elements/gsttypefindelement.h:
284           Set caps on all outgoing buffers, not just the first one.
285
286 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
287
288         * gst/elements/gsttypefindelement.c:
289         (gst_type_find_element_have_type),
290         (gst_type_find_element_check_set_buffer_caps),
291         (gst_type_find_element_init), (stop_typefinding),
292         (gst_type_find_element_handle_event),
293         (gst_type_find_element_chain), (gst_type_find_element_getrange):
294         * gst/elements/gsttypefindelement.h:
295           Set caps on first outgoing buffer when we've found the type.
296
297 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
298
299         * docs/gst/gstreamer-docs.sgml:
300         * docs/gst/gstreamer-sections.txt:
301         * docs/gst/tmpl/gstscheduler.sgml:
302         * docs/gst/tmpl/gstschedulerfactory.sgml:
303           Remove some old cruft from docs.
304
305 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
306
307         * gst/gstpad.h:
308           Fix inline docs for GstPadLinkReturn.
309           
310         * gst/gststructure.c: (gst_structure_has_name):
311         * gst/gststructure.h:
312         * docs/gst/gstreamer-sections.txt:
313           New API: gst_structure_has_name().
314
315 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
316
317         * configure.ac:
318           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
319           and _LARGEFILE_SOURCE in config.h as required. Do not 
320           export those flags in our .pc files any longer (#142209).
321
322           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
323
324         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
325         (gst_file_sink_do_seek), (gst_file_sink_event),
326         (gst_file_sink_get_current_offset), (gst_file_sink_render):
327           Redo seek/tell calls with large file support in mind; add some
328           debugging messages; add log message that tells us when large
329           file support is unavailable or not enabled for some reason.
330
331         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
332           Add log message that tells us when large file support 
333           is unavailable or not enabled for some reason.
334
335 2005-07-29  Wim Taymans  <wim@fluendo.com>
336
337         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
338         Added test for removing an element with ghostpad from a bin.
339         Fixed test as current implementation does the right thing.
340
341         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
342         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
343         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
344         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
345         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
346         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
347         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
348         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
349         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
350         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
351         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
352         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
353         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
354         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
355         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
356         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
357         * gst/gstghostpad.h:
358         Clean up ghostpads, remove properties for internal stuff.
359         Make threadsafe.
360         Fix refcounting.
361         Prepare for switching targets, not all use cases work yet.
362
363 2005-07-29  Wim Taymans  <wim@fluendo.com>
364
365         * docs/design/part-gstghostpad.txt:
366         Small update.
367
368         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
369         (gst_bin_remove_func):
370         Unlinking pads while holding the bin LOCK is not a good
371         idea.
372
373         * gst/gstpad.c: (gst_pad_class_init),
374         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
375         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
376         No prob setting template after creating the pad.
377
378 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
379
380         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
381         (gst_bus_peek), (gst_bus_source_dispatch),
382         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
383         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
384           gst_bus_poll may be called from other threads. Handle
385           this nicely by not making poll_data disappear off the
386           stack once gst_bus_poll returns.
387           gst_bus_peek now increments the refcount on the returned
388           message.
389
390 2005-07-29  Wim Taymans  <wim@fluendo.com>
391
392         * docs/design/part-gstghostpad.txt:
393         Overview of current GhostPad datastructures and use
394         cases for changing the target.
395
396 2005-07-28  Wim Taymans  <wim@fluendo.com>
397
398         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
399         Added checks for hierarchy consistency whan adding linked
400         elements to bins.
401
402         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
403         Added check to test element scheduling without bin/pipeline.
404
405         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
406         First add elements to bin, then link.
407         
408         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
409         (gst_bin_remove_func):
410         Unlink pads from elements added/removed from bin to maintain
411         hierarchy consistency.
412
413 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
414
415         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
416         (gst_base_transform_handle_buffer):
417         * gst/base/gstbasetransform.h:
418           Remove broken delay_configure (fixes renegotiation of software
419           scaling pipelines); remove some leftover printf()s.
420
421 2005-07-28  Wim Taymans  <wim@fluendo.com>
422
423         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
424         Added some more tests for wrong hierarchy
425
426         * docs/design/part-overview.txt:
427         Some updates.
428
429         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
430         Cleanups.
431
432         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
433         (gst_element_dispose):
434         Some more cleanups.
435
436         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
437         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
438         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
439         (gst_pad_set_caps), (gst_pad_send_event):
440         Check for correct hierarchy when linking pads. Moving to
441         strict requirement for ghostpads when linking elements in
442         different bins.
443
444         * gst/gstpad.h:
445         Clean ups. Added WRONG_HIERARCHY return value.
446
447 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
448
449         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
450           Better debug if no transform is possible.
451
452 2005-07-27  Wim Taymans  <wim@fluendo.com>
453
454         * docs/random/wtay/network-transp:
455         Some old doc I had.
456
457 2005-07-27  Wim Taymans  <wim@fluendo.com>
458
459         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
460         (gst_dp_event_from_packet):
461         Fix serialization of seek events.
462
463 2005-07-27  Wim Taymans  <wim@fluendo.com>
464
465         * check/gst-libs/gdp.c: (GST_START_TEST):
466         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
467         Fix compilation and fix event serialization.
468
469 2005-07-27  Wim Taymans  <wim@fluendo.com>
470
471         * CHANGES-0.9:
472         * docs/design/part-TODO.txt:
473         * docs/design/part-events.txt:
474         Some docs updates
475
476         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
477         (gst_base_sink_event), (gst_base_sink_do_sync),
478         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
479         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
480         (gst_base_src_do_seek), (gst_base_src_event_handler),
481         (gst_base_src_loop):
482         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
483         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
484         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
485         (gst_base_transform_event), (gst_base_transform_handle_buffer),
486         (gst_base_transform_set_passthrough),
487         (gst_base_transform_is_passthrough):
488         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
489         * gst/elements/gstfilesink.c: (gst_file_sink_event):
490         Event updates.
491
492         * gst/gstbuffer.h:
493         Use faster casts.
494
495         * gst/gstelement.c: (gst_element_seek):
496         * gst/gstelement.h:
497         Update gst_element_seek.
498
499         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
500         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
501         (gst_event_new_flush_start), (gst_event_new_flush_stop),
502         (gst_event_new_eos), (gst_event_new_newsegment),
503         (gst_event_parse_newsegment), (gst_event_new_tag),
504         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
505         (gst_event_parse_qos), (gst_event_new_seek),
506         (gst_event_parse_seek), (gst_event_new_navigation):
507         * gst/gstevent.h:
508         Make GstEvent use GstStructure. Add parsing code, make sure the
509         API is sufficiently generic.
510         Mark possible directions of events and serialization.
511
512         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
513         (_gst_message_copy), (gst_message_new_segment_start),
514         (gst_message_new_segment_done), (gst_message_new_custom),
515         (gst_message_parse_segment_start),
516         (gst_message_parse_segment_done):
517         Small cleanups.
518
519         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
520         (gst_pad_set_caps), (gst_pad_send_event):
521         Update for new events. 
522         Catch events sent in wrong directions.
523
524         * gst/gstqueue.c: (gst_queue_link_src),
525         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
526         (gst_queue_handle_src_query):
527         Event updates.
528
529         * gst/gsttag.c:
530         * gst/gsttag.h:
531         Remove event code from this file.
532
533         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
534         (gst_dp_event_from_packet):
535         Event updates.
536
537 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
538
539         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
540         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
541         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
542           Make debugging actually useful.
543
544 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
545
546         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
547         (gst_pad_fixate_caps):
548           Implement default fixation once again, so that gst_pad_fixate()
549           actually does anything at all. This probably needs to be some
550           sort of a last resort, and use profile-based fixation first, but
551           since that doesn't exist yet, this is the best we have. Fixes
552           visualization in Totem.
553
554 2005-07-22  Wim Taymans  <wim@fluendo.com>
555
556         * docs/design/part-events.txt:
557         Small update.
558
559         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
560         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
561         (gst_base_sink_activate_pull):
562         Some more comments.
563
564         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
565         (gst_fake_src_create):
566         Fix handoff marshall.
567
568         * gst/elements/gstidentity.c: (gst_identity_class_init),
569         (gst_identity_transform_ip):
570         We're a real inplace element.
571
572         * gst/gstbus.c: (gst_bus_post):
573         Added some comments.
574
575         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
576         * tests/muxing/case1.c: (main):
577         * tests/sched/dynamic-pipeline.c: (main):
578         * tests/sched/interrupt1.c: (main):
579         * tests/sched/interrupt2.c: (main):
580         * tests/sched/interrupt3.c: (main):
581         * tests/sched/runxml.c: (main):
582         * tests/sched/sched-stress.c: (main):
583         * tests/seeking/seeking1.c: (event_received), (main):
584         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
585         (main):
586         * tests/threadstate/threadstate3.c: (main):
587         * tests/threadstate/threadstate4.c: (main):
588         * tests/threadstate/threadstate5.c: (main):
589         Fix the tests.
590
591 2005-07-21  Wim Taymans  <wim@fluendo.com>
592
593         * docs/design/part-seeking.txt:
594         Some small additions.
595
596         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
597         (gst_base_sink_get_times), (gst_base_sink_do_sync),
598         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
599         * gst/base/gstbasesink.h:
600         discont values are gint64, handle the math correctly.
601
602         * gst/base/gstbasesrc.c: (gst_base_src_loop):
603         Make the basesrc report error if the source pad is not linked.
604
605         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
606         (gst_queue_loop), (gst_queue_handle_src_query),
607         (gst_queue_src_activate_push):
608         Make queue collect data even if the srcpad is not linked.
609         Start pushing out data as soon as it is linked.
610
611         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
612         * gst/gstutils.h:
613         Added gst_flow_get_name() to ease error reporting.
614
615 2005-07-20  Wim Taymans  <wim@fluendo.com>
616
617         * gst/gstmessage.c: (gst_message_new_segment_start),
618         (gst_message_new_segment_done), (gst_message_parse_segment_start),
619         (gst_message_parse_segment_done):
620         * gst/gstmessage.h:
621         Added a bunch of messages for advanced seeking.
622
623         * gst/parse/grammar.y:
624         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
625         (gst_dpman_state_changed):
626         Fix some new-pad -> pad-added signals
627
628 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
629
630         * docs/manual/appendix-porting.xml:
631         * docs/pwg/appendix-porting.xml:
632           Document new-pad/state-change signal renames and the FixedList
633           type rename.
634
635 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
636
637         * docs/manual/advanced-autoplugging.xml:
638         * docs/manual/basics-helloworld.xml:
639         * docs/manual/basics-pads.xml:
640         * docs/random/ds/0.9-suggested-changes:
641         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
642         * gst/gstelement.h:
643         * gst/gstevent.h:
644         * gst/gstformat.h:
645         * gst/gstquery.h:
646         * gst/gststructure.c: (gst_structure_value_get_generic_type),
647         (gst_structure_parse_array), (gst_structure_parse_value):
648         * gst/gstvalue.c: (gst_type_is_fixed),
649         (gst_value_list_prepend_value), (gst_value_list_append_value),
650         (gst_value_list_get_size), (gst_value_list_get_value),
651         (gst_value_transform_array_string), (gst_value_serialize_array),
652         (gst_value_deserialize_array), (gst_value_intersect_array),
653         (gst_value_is_fixed), (_gst_value_initialize):
654         * gst/gstvalue.h:
655           GstElement::new-pad -> pad-added, GstElement::state-change ->
656           state-changed, GstValueFixedList -> GstValueArray, add format and
657           flags as their own arguments in gst_element_seek() (should improve
658           "bindeability"), remove function generators since they don't work
659           under a whole bunch of compilers (they were deprecated already
660           anyway).
661
662 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
663
664         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
665         (_gst_debug_register_funcptr):
666         * gst/gstinfo.h:
667           Fix illegal cast on some platforms (#309253).
668
669 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
670
671         * gst/gstmessage.c: (gst_message_new_custom):
672         * gst/gstmessage.h:
673           Add _new_custom, make _new_application a macro to _new_custom.
674
675 2005-07-20  Wim Taymans  <wim@fluendo.com>
676
677         * gst/base/gstbasesrc.c: (gst_base_src_init),
678         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
679         * gst/base/gstbasesrc.h:
680         Add a gboolean to decide when to push out a discont.
681
682         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
683         (gst_queue_loop), (gst_queue_handle_src_query),
684         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
685         (gst_queue_set_property), (gst_queue_get_property):
686         Some cleanups.
687
688         * tests/threadstate/threadstate1.c: (main):
689         Make a thread test compile and run... very silly..
690
691
692 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
693
694         * docs/manual/appendix-porting.xml:
695           Mention removal of libgstgconf-0.9.la and existence of gconf
696           elements.
697
698 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
699
700         * docs/pwg/advanced-clock.xml:
701         * docs/pwg/appendix-porting.xml:
702         * docs/pwg/intro-preface.xml:
703         * docs/pwg/other-base.xml:
704         * docs/pwg/other-manager.xml:
705         * docs/pwg/other-nton.xml:
706         * docs/pwg/other-ntoone.xml:
707         * docs/pwg/other-oneton.xml:
708         * docs/pwg/pwg.xml:
709           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
710           demuxer), remove n-to-n (was never written), fix some code examples
711           and links and update the porting section to include all this.
712
713 2005-07-19  Wim Taymans  <wim@fluendo.com>
714
715         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
716         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
717         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
718         (gst_queue_src_activate_push), (gst_queue_change_state),
719         (gst_queue_get_property):
720         * gst/gstqueue.h:
721         Propagate GstFlowReturn more intelligently upstream and output
722         an ERROR/EOS when streaming stopped due to fatal error.
723
724 2005-07-19  Wim Taymans  <wim@fluendo.com>
725
726         * tools/gst-launch.c: (check_intr), (event_loop), (main):
727         Don't block forever for the state change to complete, the
728         pipeline already did with a sensible timeout.
729
730 2005-07-19  Wim Taymans  <wim@fluendo.com>
731
732         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
733         Make sure we never call the create function is we
734         got deactivated.
735
736 2005-07-19  Andy Wingo  <wingo@pobox.com>
737
738         * gst/parse/parse.l: Attempt to solve bug #172815.
739
740 2005-07-19  Wim Taymans  <wim@fluendo.com>
741
742         * docs/design/part-clocks.txt:
743         * docs/design/part-events.txt:
744         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
745         Small docs updates.
746         Only update the seeking values when we are not
747         busy streaming.
748
749 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
750
751         * gst/base/gstbasesrc.c: (gst_base_src_loop):
752           Oops, ignore the result of gst_pad_push_event here.
753
754 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
755
756         * gst/base/gstbasesrc.c: (gst_base_src_loop),
757         (gst_base_src_activate_push):
758           Send discont event from the loop function, as pads
759           aren't activated yet in the activate_push handler.
760
761         * gst/gstbin.c: (bin_bus_handler):
762           Don't leak element name.
763
764 2005-07-18  Andy Wingo  <wingo@pobox.com>
765
766         * configure.ac: Use AS_LIBTOOL_TAGS.
767
768 2005-07-18  Wim Taymans  <wim@fluendo.com>
769
770         * docs/gst/gstreamer.types:
771         Remove deleted types.
772
773 2005-07-18  Wim Taymans  <wim@fluendo.com>
774
775         * check/elements/gstfakesrc.c: (GST_START_TEST):
776         * configure.ac:
777         * gst/Makefile.am:
778         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
779         (init_popt_callback):
780         * gst/gst.h:
781         * gst/gst_private.h:
782         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
783         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
784         * gst/gstbin.h:
785         * gst/gstbus.h:
786         * gst/gstconfig.h.in:
787         * gst/gstelement.c: (gst_element_class_init),
788         (gst_element_set_base_time), (gst_element_get_base_time),
789         (iterator_fold_with_resync), (gst_element_change_state),
790         (gst_element_dispose), (gst_element_get_bus):
791         * gst/gstelement.h:
792         * gst/gstelementfactory.h:
793         * gst/gsterror.c: (_gst_core_errors_init):
794         * gst/gsterror.h:
795         * gst/gstevent.h:
796         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
797         * gst/gstindex.c:
798         * gst/gstinfo.c: (_gst_debug_init):
799         * gst/gstmessage.c: (_gst_message_copy):
800         * gst/gstmessage.h:
801         * gst/gstminiobject.h:
802         * gst/gstobject.c:
803         * gst/gstobject.h:
804         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
805         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
806         * gst/gstpad.h:
807         * gst/gstparse.h:
808         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
809         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
810         (gst_pipeline_get_last_stream_time):
811         * gst/gstpipeline.h:
812         * gst/gstpluginfeature.h:
813         * gst/gstquery.h:
814         * gst/gstscheduler.c:
815         * gst/gstscheduler.h:
816         * gst/gststructure.h:
817         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
818         (gst_task_finalize), (gst_task_func), (gst_task_create),
819         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
820         (gst_task_stop), (gst_task_pause):
821         * gst/gsttask.h:
822         * gst/gsttypefind.h:
823         * gst/gsttypes.h:
824         * gst/registries/gstlibxmlregistry.c: (load_feature),
825         (gst_xml_registry_load), (gst_xml_registry_save_feature):
826         * gst/registries/gstxmlregistry.c:
827         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
828         * gst/schedulers/threadscheduler.c:
829         * libs/gst/control/dparammanager.h:
830         * tools/gst-inspect.c: (print_element_list),
831         (print_plugin_features), (print_element_features):
832         * tools/gst-xmlinspect.c: (print_element_list),
833         (print_plugin_info), (main):
834         Removed plugable schedulers.
835         Removed Scheduler/Manager from elements.
836         Removed gsttypes.h, rearranged includes.
837         Removed dependency pad<->element, element<>pipeline, and
838         various others,  fix includes.
839         implement gst_pad_get_parent() with gst_object_get_parent()
840         Make GstTask sefcontained.
841         Fix _get_state() on GstBin, it did not return ASYNC with a 0
842         timeout.
843         Fix endless loop in iterator_fold_with_resync.
844
845
846 2005-07-18  Wim Taymans  <wim@fluendo.com>
847
848         * gst/Makefile.am:
849         * gst/gstarch.h:
850         Remove old file.
851
852 2005-07-18  Wim Taymans  <wim@fluendo.com>
853
854         * gst/Makefile.am:
855         No more cothreads.h
856
857 2005-07-18  Wim Taymans  <wim@fluendo.com>
858
859         * gst/cothreads.c:
860         * gst/cothreads.h:
861         Let's remove these.
862
863 2005-07-18  Wim Taymans  <wim@fluendo.com>
864
865         * docs/design/part-dynamic.txt:
866         * docs/design/part-events.txt:
867         * docs/design/part-seeking.txt:
868         Some more docs in the works.
869
870         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
871         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
872         (gst_base_transform_setcaps), (gst_base_transform_get_size),
873         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
874         (gst_base_transform_handle_buffer),
875         (gst_base_transform_sink_activate_push),
876         (gst_base_transform_src_activate_pull),
877         (gst_base_transform_set_passthrough),
878         (gst_base_transform_is_passthrough):
879         Refcounting fixes.
880
881         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
882         Cleanups.
883
884         * gst/gstevent.c: (gst_event_finalize):
885         Set SRC to NULL.
886
887         * gst/gstutils.c: (gst_element_unlink),
888         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
889         (gst_pad_proxy_setcaps):
890         * gst/gstutils.h:
891         Add _get_parent_element() to get a pads parent as an element.
892
893 2005-07-18  Wim Taymans  <wim@fluendo.com>
894
895         * check/gst/gstbin.c: (GST_START_TEST):
896         Remove bogus test.
897
898 2005-07-18  Wim Taymans  <wim@fluendo.com>
899
900         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
901         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
902         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
903         (gst_base_sink_event), (gst_base_sink_do_sync),
904         (gst_base_sink_chain), (gst_base_sink_loop),
905         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
906         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
907         Refcounting fixes.
908         Fix logic for returning ASYNC when not prerolled.
909
910 2005-07-18  Wim Taymans  <wim@fluendo.com>
911
912         * gst/gstqueue.c: (gst_queue_handle_sink_event):
913         Fix nasty refcount bug.
914
915 2005-07-16 Philippe Khalaf <burger@speedy.org>
916         * gst/elements/gstfdsrc.c:
917         * gst/elements/gstfdsrc.h:
918         * gst/elements/gstelements.c:
919         * gst/elements/Makefile.am:
920         Ported fdsrc to 0.9.
921
922 2005-07-16  Wim Taymans  <wim@fluendo.com>
923
924         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
925         (gst_base_sink_do_sync):
926         Fix compile error.
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_event), (gst_base_sink_get_times),
932         (gst_base_sink_do_sync), (gst_base_sink_change_state):
933         * gst/base/gstbasesink.h:
934         Store and use discont values when syncing buffers as described
935         in design docs.
936         
937         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
938         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
939         (gst_base_src_activate_push):
940         Push discont event when starting.
941
942         * gst/elements/gstidentity.c: (gst_identity_transform):
943         Small cleanups.
944
945         * gst/gstbin.c: (gst_bin_change_state):
946         Small cleanups in base_time  distribution.
947
948         * gst/gstelement.c: (gst_element_set_base_time),
949         (gst_element_get_base_time), (gst_element_change_state):
950         * gst/gstelement.h:
951         Added methods for the base_time of the element.
952         Some MT fixes.
953
954         * gst/gstpipeline.c: (gst_pipeline_send_event),
955         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
956         (gst_pipeline_get_last_stream_time):
957         * gst/gstpipeline.h:
958         MT fixes.
959         Handle seeking as described in design doc, remove stream_time
960         hack.
961         Cleanups clock and stream_time selection code. Added accessors
962         for the stream_time.
963         
964
965 2005-07-16  Andy Wingo  <wingo@pobox.com>
966
967         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
968         (#305291).
969
970 2005-07-16  Wim Taymans  <wim@fluendo.com>
971
972         * check/gst/gstbin.c: (GST_START_TEST):
973         Make elements silent as the deep_notify refs the
974         parent, which might make the test fail.
975
976         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
977         Don't hold the lock for too long.
978
979 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
980
981         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
982           Don't unref the caps we passed to gst_caps_make_writable() after
983           passing them. gst_caps_make_writable() will do that for us.
984
985 2005-07-15  Andy Wingo  <wingo@pobox.com>
986
987         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
988         (#157311).
989
990         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
991         own marshalling function for the handoff signal. Properly type the
992         buffer as a buffer. Fixes some warnings. Should do a more general
993         solution.
994         (gst_identity_class_init): Plug into the right marshaller.
995
996 2005-07-15  Wim Taymans  <wim@fluendo.com>
997
998         * docs/design/part-TODO.txt:
999         * docs/design/part-clocks.txt:
1000         * docs/design/part-element-sink.txt:
1001         * docs/design/part-events.txt:
1002         * docs/design/part-gstpipeline.txt:
1003         Updated docs, mostly DISCONT related.
1004
1005 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1006
1007         * docs/pwg/building-pads.xml:
1008           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1009
1010 2005-07-15  Andy Wingo  <wingo@pobox.com>
1011
1012         * tools/gst-typefind.c: Update, add copyright block.
1013
1014         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1015         Normalize and truncate caps before fixation.
1016
1017         * gst/gstcaps.h:
1018         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1019         discards all but the first structure from its argument.
1020
1021 2005-07-15  Wim Taymans  <wim@fluendo.com>
1022
1023         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1024         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1025         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1026         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1027         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1028         (gst_base_transform_chain), (gst_base_transform_change_state),
1029         (gst_base_transform_set_passthrough),
1030         (gst_base_transform_is_passthrough):
1031         * gst/base/gstbasetransform.h:
1032         Make passthrough work using the bufferpools.
1033         Changed API a bit, subclasses have to write into a buffer
1034         provided by the base class.
1035         More debug info in nego functions.
1036         
1037         * gst/elements/gstidentity.c: (gst_identity_init),
1038         (gst_identity_transform):
1039         Port to new base class.
1040
1041 2005-07-15  Wim Taymans  <wim@fluendo.com>
1042
1043         * gst/gstmessage.c: (gst_message_new_state_changed):
1044         * tools/gst-launch.c: (event_loop), (main):
1045         Totally dump messages in -launch with the -m option.
1046         Fix message name for State messages,
1047
1048 2005-07-14  Wim Taymans  <wim@fluendo.com>
1049
1050         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1051         Post error messages on errors.
1052
1053 2005-07-14  Wim Taymans  <wim@fluendo.com>
1054
1055         * gst/gstcaps.c: (gst_caps_do_simplify):
1056         Remove debug info.
1057
1058         * gst/gsterror.h:
1059         Define error for stream stopped.
1060
1061         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1062         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1063         Do proper return values.
1064
1065         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1066         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1067         (gst_pad_get_range):
1068         Better return values.
1069
1070         * gst/gstpad.h:
1071         Reorganise return values, add macro to check for fatal errors.
1072
1073         * gst/gstqueue.c: (gst_queue_chain):
1074         Return proper GstFlowReturn values,
1075
1076 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1077
1078         * docs/gst/gstreamer-sections.txt:
1079         * docs/gst/gstreamer.types:
1080         * docs/gst/tmpl/gst.sgml:
1081         * docs/gst/tmpl/gstbasesink.sgml:
1082         * docs/gst/tmpl/gstbasesrc.sgml:
1083         * docs/gst/tmpl/gstbasetransform.sgml:
1084         * docs/gst/tmpl/gstbin.sgml:
1085         * docs/gst/tmpl/gstbuffer.sgml:
1086         * docs/gst/tmpl/gstcaps.sgml:
1087         * docs/gst/tmpl/gstclock.sgml:
1088         * docs/gst/tmpl/gstcompat.sgml:
1089         * docs/gst/tmpl/gstconfig.sgml:
1090         * docs/gst/tmpl/gstelement.sgml:
1091         * docs/gst/tmpl/gstelementdetails.sgml:
1092         * docs/gst/tmpl/gstelementfactory.sgml:
1093         * docs/gst/tmpl/gstenumtypes.sgml:
1094         * docs/gst/tmpl/gsterror.sgml:
1095         * docs/gst/tmpl/gstevent.sgml:
1096         * docs/gst/tmpl/gstfakesink.sgml:
1097         * docs/gst/tmpl/gstfakesrc.sgml:
1098         * docs/gst/tmpl/gstfilesink.sgml:
1099         * docs/gst/tmpl/gstfilesrc.sgml:
1100         * docs/gst/tmpl/gstfilter.sgml:
1101         * docs/gst/tmpl/gstformat.sgml:
1102         * docs/gst/tmpl/gstghostpad.sgml:
1103         * docs/gst/tmpl/gstimplementsinterface.sgml:
1104         * docs/gst/tmpl/gstindex.sgml:
1105         * docs/gst/tmpl/gstindexfactory.sgml:
1106         * docs/gst/tmpl/gstinfo.sgml:
1107         * docs/gst/tmpl/gstiterator.sgml:
1108         * docs/gst/tmpl/gstmacros.sgml:
1109         * docs/gst/tmpl/gstmemchunk.sgml:
1110         * docs/gst/tmpl/gstminiobject.sgml:
1111         * docs/gst/tmpl/gstobject.sgml:
1112         * docs/gst/tmpl/gstpad.sgml:
1113         * docs/gst/tmpl/gstpadtemplate.sgml:
1114         * docs/gst/tmpl/gstparse.sgml:
1115         * docs/gst/tmpl/gstpipeline.sgml:
1116         * docs/gst/tmpl/gstplugin.sgml:
1117         * docs/gst/tmpl/gstpluginfeature.sgml:
1118         * docs/gst/tmpl/gstquery.sgml:
1119         * docs/gst/tmpl/gstqueue.sgml:
1120         * docs/gst/tmpl/gstregistry.sgml:
1121         * docs/gst/tmpl/gstregistrypool.sgml:
1122         * docs/gst/tmpl/gstscheduler.sgml:
1123         * docs/gst/tmpl/gstschedulerfactory.sgml:
1124         * docs/gst/tmpl/gststructure.sgml:
1125         * docs/gst/tmpl/gstsystemclock.sgml:
1126         * docs/gst/tmpl/gsttaglist.sgml:
1127         * docs/gst/tmpl/gsttagsetter.sgml:
1128         * docs/gst/tmpl/gsttrace.sgml:
1129         * docs/gst/tmpl/gsttrashstack.sgml:
1130         * docs/gst/tmpl/gsttypefind.sgml:
1131         * docs/gst/tmpl/gsttypefindfactory.sgml:
1132         * docs/gst/tmpl/gsttypes.sgml:
1133         * docs/gst/tmpl/gsturihandler.sgml:
1134         * docs/gst/tmpl/gsturitype.sgml:
1135         * docs/gst/tmpl/gstutils.sgml:
1136         * docs/gst/tmpl/gstvalue.sgml:
1137         * docs/gst/tmpl/gstversion.sgml:
1138         * docs/gst/tmpl/gstxml.sgml:
1139         * docs/libs/tmpl/gstcontrol.sgml:
1140         * docs/libs/tmpl/gstdataprotocol.sgml:
1141         * docs/libs/tmpl/gstdparam.sgml:
1142         * docs/libs/tmpl/gstdplinint.sgml:
1143         * docs/libs/tmpl/gstdpman.sgml:
1144         * docs/libs/tmpl/gstdpsmooth.sgml:
1145         * docs/libs/tmpl/gstgetbits.sgml:
1146         * docs/libs/tmpl/gstunitconvert.sgml:
1147         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1148         (gst_push_src_base_init), (gst_push_src_class_init),
1149         (gst_push_src_init), (gst_push_src_create):
1150         * gst/base/gstpushsrc.h:
1151         * gst/elements/gstelements.c:
1152         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1153         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1154         (gst_fake_sink_init), (gst_fake_sink_set_property),
1155         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1156         (gst_fake_sink_event), (gst_fake_sink_preroll),
1157         (gst_fake_sink_render), (gst_fake_sink_change_state):
1158         * gst/elements/gstfakesink.h:
1159         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1160         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1161         (gst_fake_src_base_init), (gst_fake_src_class_init),
1162         (gst_fake_src_init), (gst_fake_src_event_handler),
1163         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1164         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1165         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1166         (gst_fake_src_create_buffer), (gst_fake_src_create),
1167         (gst_fake_src_start), (gst_fake_src_stop):
1168         * gst/elements/gstfakesrc.h:
1169         * gst/elements/gstfilesink.c: (_do_init),
1170         (gst_file_sink_base_init), (gst_file_sink_class_init),
1171         (gst_file_sink_init), (gst_file_sink_dispose),
1172         (gst_file_sink_set_location), (gst_file_sink_set_property),
1173         (gst_file_sink_get_property), (gst_file_sink_open_file),
1174         (gst_file_sink_close_file), (gst_file_sink_query),
1175         (gst_file_sink_event), (gst_file_sink_render),
1176         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1177         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1178         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1179         * gst/elements/gstfilesink.h:
1180         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1181         (gst_file_src_class_init), (gst_file_src_init),
1182         (gst_file_src_finalize), (gst_file_src_set_location),
1183         (gst_file_src_set_property), (gst_file_src_get_property),
1184         (gst_file_src_map_region), (gst_file_src_map_small_region),
1185         (gst_file_src_create_mmap), (gst_file_src_create_read),
1186         (gst_file_src_create), (gst_file_src_is_seekable),
1187         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1188         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1189         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1190         (gst_file_src_uri_handler_init):
1191         * gst/elements/gstfilesrc.h:
1192           more autistic cleanliness in functions/names/defines
1193
1194 2005-07-13  Andy Wingo  <wingo@pobox.com>
1195
1196         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1197         source couldn't negotiate.
1198
1199         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1200         connections again.
1201
1202         * gst/gstutils.h:
1203         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1204         function. I am channeling Hades. Put your boots on suckers!!!
1205
1206 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1207
1208         * testsuite/caps/Makefile.am:
1209         * testsuite/caps/value_compare.c:
1210         * testsuite/caps/value_intersect.c:
1211         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1212           move two testsuite apps over to the check dir
1213
1214 2005-07-12  Wim Taymans  <wim@fluendo.com>
1215
1216         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1217         Added more debug info in the negotiate process.
1218
1219         * gst/gstmessage.h:
1220         Prepare for segment playback.
1221
1222         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1223         Better debugging.
1224
1225         * gst/gstutils.c:
1226         Some more docs.
1227
1228         * tools/gst-launch.c: (main):
1229         NULL pipeline on errors.
1230
1231 2005-07-12  Andy Wingo  <wingo@pobox.com>
1232
1233         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1234         not it comes from a malloc region. Make sure our copy gets freed.
1235
1236 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1237
1238         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1239         * check/gst/gstmessage.c: (GST_START_TEST):
1240         * check/gst/gststructure.c: (GST_START_TEST),
1241         (gst_structure_suite), (main):
1242           more testing
1243         * gst/gstelement.c: (gst_element_message_full):
1244           clean up GError and debug string now that they get copied
1245         * gst/gstmessage.c: (gst_message_new_error),
1246         (gst_message_new_warning), (gst_message_parse_error),
1247         (gst_message_parse_warning):
1248           use GST_TYPE_G_ERROR for structure_new, and take copies of
1249           arguments, so that we don't mess up refcounting
1250
1251 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1252
1253         * check/Makefile.am:
1254           add per-test valgrind targets
1255         * check/gst-libs/gdp.c: (GST_START_TEST),
1256         (gst_data_protocol_suite), (main):
1257           clean up
1258
1259 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1260
1261         * check/Makefile.am:
1262           instate more valgrindable tests
1263         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1264         (GST_START_TEST), (fakesrc_suite):
1265         * check/gst/gstpad.c: (GST_START_TEST):
1266         * check/gst/gststructure.c: (GST_START_TEST):
1267           fix test leaks
1268         * docs/gst/tmpl/gstminiobject.sgml:
1269         * gst/gstpad.c: (gst_pad_finalize):
1270           fix the static mutex leak
1271
1272 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1273
1274         * check/Makefile.am:
1275           add two more tests for valgrinding
1276         * check/gst/gstvalue.c: (GST_START_TEST):
1277           test refcount of deserialized buffer, found a leak
1278         * docs/gst/gstreamer-docs.sgml:
1279         * docs/gst/gstreamer-sections.txt:
1280         * docs/gst/gstreamer.types:
1281         * docs/gst/tmpl/gstminiobject.sgml:
1282           add miniobject to docs
1283         * gst/gstminiobject.c:
1284           add some docs
1285         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1286         (gst_string_unwrap):
1287           fix a hard-to-find invalid write for one of the tests
1288           fix a leak for deserialized buffers
1289
1290 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1291
1292         * docs/pwg/advanced-events.xml:
1293         * docs/pwg/advanced-request.xml:
1294         * docs/pwg/advanced-scheduling.xml:
1295         * docs/pwg/appendix-porting.xml:
1296         * docs/pwg/building-boiler.xml:
1297         * docs/pwg/intro-preface.xml:
1298         * docs/pwg/other-ntoone.xml:
1299           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1300           of example code and explanation for pad activation, loop() and
1301           getrange() functions and a bit more. Remove old comments pointing
1302           to loop-functions.
1303         * examples/pwg/Makefile.am:
1304           Add loop/getrange examples.
1305
1306 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1307
1308         * configure.ac:
1309           check for valgrind binary + some fixes
1310         * check/gst.supp:
1311           valgrind suppressions for the tests
1312         * check/Makefile.am:
1313           add a valgrind: target that valgrinds the unit tests
1314         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1315         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1316         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1317         * check/gst/gstghostpad.c:
1318           added some cleanup
1319         * check/gst/gstdata.c:
1320           removed
1321         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1322         (thread_unref), (gst_mini_object_suite), (main):
1323           added
1324         * gst/gst.c: (gst_deinit):
1325         * gst/gst.h:
1326           add a method to clean up.
1327         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1328         (gst_system_clock_obtain):
1329           allow for disposing the system clock.
1330         * tools/gst-launch.c: (main):
1331           deinit
1332
1333 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1334
1335         * docs/gst/tmpl/gstbasesrc.sgml:
1336         * docs/gst/tmpl/gstfakesrc.sgml:
1337         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1338         (gst_base_src_init), (gst_base_src_set_property),
1339         (gst_base_src_get_property), (gst_base_src_get_range),
1340         (gst_base_src_start):
1341         * gst/base/gstbasesrc.h:
1342           add num-buffers property
1343         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1344         (gst_fakesrc_init), (gst_fakesrc_set_property),
1345         (gst_fakesrc_get_property), (gst_fakesrc_create),
1346         (gst_fakesrc_start):
1347           remove num-buffers property
1348
1349 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1350
1351         * docs/gst/gstreamer-sections.txt:
1352         * docs/gst/tmpl/gstbasesink.sgml:
1353         * docs/gst/tmpl/gstbasesrc.sgml:
1354         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1355         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1356         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1357         (gst_base_sink_set_property), (gst_base_sink_get_property),
1358         (gst_base_sink_handle_object), (gst_base_sink_event),
1359         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1360         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1361         (gst_base_sink_loop), (gst_base_sink_deactivate),
1362         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1363         (gst_base_sink_change_state):
1364         * gst/base/gstbasesink.h:
1365         * gst/base/gstbasesrc.h:
1366         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1367         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1368         (gst_filesink_init):
1369           more macro splitting
1370
1371 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1372
1373         * gst/gstelement.c: (gst_element_get_bus):
1374           add debug
1375         * tools/gst-launch.c: (check_intr), (event_loop):
1376           fix bus leaks
1377
1378 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1379
1380         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1381           fix a caps leak
1382
1383 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1384
1385         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1386         (gst_base_src_finalize):
1387           add finalize method and clean up properly
1388         * gst/gstpipeline.c: (gst_pipeline_dispose):
1389           add debug
1390
1391 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1392
1393         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1394         (gst_bin_suite):
1395           add more things to check
1396         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1397         * gst/gstelement.c:
1398           more debug
1399
1400 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1401
1402         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1403         (GST_START_TEST), (fakesrc_suite):
1404         * check/gst-libs/gdp.c: (GST_START_TEST):
1405         * check/gst/gst.c: (GST_START_TEST):
1406         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1407         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1408         * check/gst/gstbus.c: (GST_START_TEST):
1409         * check/gst/gstcaps.c: (GST_START_TEST):
1410         * check/gst/gstdata.c: (GST_START_TEST):
1411         * check/gst/gstelement.c: (GST_START_TEST):
1412         * check/gst/gstghostpad.c: (GST_START_TEST):
1413         * check/gst/gstiterator.c: (GST_START_TEST):
1414         * check/gst/gstmessage.c: (GST_START_TEST):
1415         * check/gst/gstobject.c: (GST_START_TEST):
1416         * check/gst/gstpad.c: (GST_START_TEST):
1417         * check/gst/gststructure.c: (GST_START_TEST):
1418         * check/gst/gstsystemclock.c: (GST_START_TEST),
1419         (gst_systemclock_suite):
1420         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1421         * check/gst/gstvalue.c: (GST_START_TEST):
1422         * check/pipelines/cleanup.c: (GST_START_TEST):
1423         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1424         * check/states/sinks.c: (GST_START_TEST):
1425         * check/gstcheck.c: (gst_check_init):
1426         * check/gstcheck.h:
1427           add debugging category
1428           use GST_START_TEST now, so we add a debug line
1429
1430 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1431
1432         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1433           add test for state change message on a bin
1434         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1435           add another test
1436         * gst/gstbin.c: (gst_bin_init):
1437         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1438         * gst/gstelement.c: (gst_element_post_message),
1439         (gst_element_set_state):
1440         * gst/gstelementfactory.c: (gst_element_factory_create):
1441         * gst/gstmessage.c: (gst_message_new):
1442         * gst/gstscheduler.c:
1443           various debugging additions and cleanups
1444
1445 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1446
1447         * check/Makefile.am:
1448         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1449         (main):
1450           adding tests for elements
1451         * gst/gstelement.c: (gst_element_dispose):
1452
1453 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1454
1455         * gst/registries/gstlibxmlregistry.c: (load_feature):
1456           plug more leaks.  A simple gst_init() now is leakfree, yay.
1457
1458 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1459
1460         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1461         (gst_xml_registry_load):
1462           plug another memleak
1463
1464 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1465
1466         * configure.ac:
1467           use GST_SET_ERROR_CFLAGS
1468         * docs/faq/cvs.xml:
1469           change to ERROR_CFLAGS
1470
1471 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1472
1473         * configure.ac:
1474           make GST_ERROR_CFLAGS overridable and re-enable Werror
1475         * docs/faq/cvs.xml:
1476           add a note about error CFLAGS
1477         * docs/gst/tmpl/gstfakesrc.sgml:
1478         * gst/elements/gstfakesrc.c:
1479           comment out some unused code
1480         * gst/gst.c: (split_and_iterate):
1481         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1482         (load_feature):
1483           plug some memleaks
1484
1485 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1486
1487         * common/Makefile.am:
1488         * common/gtk-doc.mak:
1489         * docs/gst/Makefile.am:
1490           factor out gtk-doc.mak
1491
1492 2005-07-07  Wim Taymans  <wim@fluendo.com>
1493
1494         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1495         (gst_thread_scheduler_dispose):
1496         Unlock the STREAM_LOCK completely.
1497
1498 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1499
1500         * check/Makefile.am:
1501         * check/elements/.cvsignore:
1502         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1503         (START_TEST), (fakesrc_suite), (main):
1504         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1505         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1506         (gst_fakesrc_create), (gst_fakesrc_start):
1507         * gst/elements/gstfakesrc.h:
1508           adding a first element test
1509
1510 2005-07-07  Andy Wingo  <wingo@pobox.com>
1511
1512         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1513         debug message.
1514
1515 2005-07-07  Wim Taymans  <wim@fluendo.com>
1516
1517         * gst/gstquery.c:
1518         * gst/gstquery.h:
1519         Remove old types
1520
1521 2005-07-07  Wim Taymans  <wim@fluendo.com>
1522
1523         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1524         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1525         Allow subclasses to implement their own negotiation.
1526
1527 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1528
1529         * docs/design/part-gstbin.txt:
1530         * docs/design/part-gstpipeline.txt:
1531           Update design notes to reflect the movement of
1532           responsibility for bus handling from GstPipeline to
1533           GstBin
1534
1535 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1536
1537         * configure.ac:
1538           Remove unnecessary queue2/3/4 examples.
1539
1540 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1541
1542         * examples/Makefile.am:
1543         * examples/helloworld/helloworld.c: (event_loop), (main):
1544         * examples/queue/queue.c: (event_loop), (main):
1545         * examples/queue2/queue2.c: (main):
1546           Update a couple of the examples to work again.
1547
1548         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1549         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1550          Spelling corrections and extra debug.
1551         
1552         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1553         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1554         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1555         * gst/gstbin.h:
1556         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1557         (gst_pipeline_change_state):
1558         * gst/gstpipeline.h:
1559           Move the bus handler for children to the GstBin, and create a
1560           separate bus for receiving messages from children to the one the
1561           bus sends 'upwards' on.
1562
1563 2005-07-06  Wim Taymans  <wim@fluendo.com>
1564
1565         * gst/base/README:
1566         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1567         (gst_base_sink_handle_object), (gst_base_sink_loop),
1568         (gst_base_sink_change_state):
1569         * gst/base/gstbasesink.h:
1570         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1571         (gst_base_src_init), (gst_base_src_setcaps),
1572         (gst_base_src_getcaps), (gst_base_src_loop),
1573         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1574         (gst_base_src_start), (gst_base_src_change_state):
1575         * gst/base/gstbasesrc.h:
1576         Make basesrc negotiate.
1577         Handle the case where preroll fails in basesink.
1578         Update README.
1579
1580 2005-07-06  Wim Taymans  <wim@fluendo.com>
1581
1582         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1583         Implement the fixate function.
1584         Clean up acceptcaps.
1585
1586 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1587
1588         * docs/pwg/building-filterfactory.xml:
1589         * docs/pwg/pwg.xml:
1590           Remove never-written filter-factory chapter; I'll add the various
1591           base classes to part 4 ("other element types") later on.
1592
1593 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1594
1595         * docs/pwg/advanced-negotiation.xml:
1596         * docs/pwg/building-boiler.xml:
1597         * docs/pwg/building-pads.xml:
1598         * docs/pwg/pwg.xml:
1599         * examples/pwg/Makefile.am:
1600           Add a chapter on caps negotiation, simplify the original code
1601           samples a bit w.r.t. caps negotiation, add link to the advanced
1602           section. Add a bunch of examples showing different use cases of
1603           different types of caps negotiation. Upstream renegotiation isn't
1604           fully documented yet since nobody knows how that works.
1605
1606 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1607
1608         * check/gst/gstpad.c:
1609         * check/gstcheck.c:
1610         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1611           if pad has no parent, return NULL as list of internal links
1612
1613 2005-07-05  Andy Wingo  <wingo@pobox.com>
1614
1615         * gst/elements/gstfilesrc.c:
1616         * gst/elements/gstfakesrc.c: 
1617         * gst/base/gstpushsrc.c:
1618         * gst/base/gstbasesrc.h: 
1619         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1620         
1621 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1622
1623         * Makefile.am:
1624           better report generation target (lcov needs a patch)
1625
1626 2005-07-05  Andy Wingo  <wingo@pobox.com>
1627
1628         * gst/elements, testsuite: Null if we got it...
1629
1630 2005-07-05  Wim Taymans  <wim@fluendo.com>
1631
1632         * configure.ac:
1633         * libs/gst/dataprotocol/Makefile.am:
1634         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1635         * libs/gst/dataprotocol/dataprotocol.h:
1636         * pkgconfig/Makefile.am:
1637         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1638         * pkgconfig/gstreamer-dataprotocol.pc.in:
1639         Ported dataprotol to 0.9. 
1640         Added pkgconfig files.
1641
1642 2005-07-05  Andy Wingo  <wingo@pobox.com>
1643
1644         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1645         Default to returning TRUE for the case when tranform_caps returns
1646         a fixed caps, like for identity or volume.
1647
1648         * check/gst/gstbus.c (pound_bus_with_messages): 
1649         * check/gst/gstmessage.c (START_TEST): 
1650         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1651         message API change.
1652
1653         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1654         logic weaks here: always run transform_caps, trying passthrough
1655         operation only if the original caps intersects with the transform.
1656
1657         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1658         source and sink caps.
1659
1660         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1661         Intersect the peer caps with the pad template before going into
1662         transform_caps.
1663         (gst_base_transform_transform_caps): More debugging.
1664
1665         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1666         src argument.
1667
1668 2005-07-04  Edward Hervey  <edward@fluendo.com>
1669
1670         * gst/gstutils.c:
1671         * gst/gstutils.h:
1672         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1673         in bindings.
1674
1675 2005-07-04  Andy Wingo  <wingo@pobox.com>
1676
1677         * check/gst/gstpad.c: Only set explicit caps on pads.
1678
1679 2005-07-01  Andy Wingo  <wingo@pobox.com>
1680
1681         * tests/network-clock.scm: Commentary update.
1682
1683         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1684         Didn't really make sense, not implementable with basetransform,
1685         etc.
1686         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1687         attempt at implementing the sync property, needs an unlock method.
1688
1689         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1690         New func, by default returns the same caps (the identity
1691         transformation).
1692         (gst_base_transform_getcaps): Uses transform_caps to return
1693         something sensible.
1694         (gst_base_transform_setcaps): Complicated logic to get caps on
1695         both pads, even if they are different, and to call set_caps once
1696         for every time both pads get their caps set.
1697         (gst_base_transform_handle_buffer): Give the ref to the transform
1698         function. Allows in-place modification of the buffer.
1699
1700         * gst/base/gstbasetransform.h (transform_caps): New class method.
1701         Given caps on one side, what can I do on the other.
1702         (set_caps): Take two caps, one for each side of the element.
1703
1704         * gst/gstpad.h:
1705         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1706         caps in place. This is safe because we can check the mutability of
1707         the caps, and a good idea because fixate functions are just called
1708         as a matter of last resort. (Not actually implemented.)
1709         (gst_pad_set_caps): If the caps we're setting is actually the same
1710         as the existing pad caps, just update the pointer without calling
1711         setcaps. Assert that caps is either NULL or fixed, as per the
1712         docs.
1713
1714         * gst/gstghostpad.c: Update for fixate changes.
1715
1716 2005-07-02  Andy Wingo  <wingo@pobox.com>
1717
1718         * gst/gstcaps.c:
1719         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1720         two refcounts makes it immutable, which is enough. Doc more.
1721
1722 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1723
1724         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1725           Put the mini_object into GValue as a mini_object,
1726           not a gpointer, since that's how we declared
1727           the signal.
1728
1729 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1730
1731         * examples/pwg/Makefile.am:
1732           Fix buildbot again.
1733
1734 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1735
1736         * docs/pwg/building-testapp.xml:
1737           Add extra check.
1738         * examples/pwg/Makefile.am:
1739           Fix buildbot.
1740
1741 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1742
1743         * configure.ac:
1744         * examples/Makefile.am:
1745         * examples/pwg/Makefile.am:
1746         * examples/pwg/extract.pl:
1747           Enable building the PWG examples.
1748         * docs/pwg/advanced-interfaces.xml:
1749           Add URI interface stub.
1750         * docs/pwg/advanced-types.xml:
1751         * docs/pwg/other-autoplugger.xml:
1752         * docs/pwg/appendix-porting.xml:
1753         * docs/pwg/pwg.xml:
1754           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1755         * docs/pwg/building-boiler.xml:
1756         * docs/pwg/building-chainfn.xml:
1757         * docs/pwg/building-pads.xml:
1758         * docs/pwg/building-props.xml:
1759         * docs/pwg/building-state.xml:
1760         * docs/pwg/building-testapp.xml:
1761           Update the building-*.xml parts for 0.9 changes. All examples
1762           code blocks compile in examples/pwg/*.
1763
1764 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1765
1766         * docs/manual/advanced-autoplugging.xml:
1767         * docs/manual/appendix-checklist.xml:
1768         * docs/manual/appendix-integration.xml:
1769         * docs/manual/highlevel-components.xml:
1770           Fix playbin/decodebin examples, update docs a bit, mention bus
1771           instead of signals in various places, mention kmplayer and
1772           kaffeine since they have a working GStreamer backend in the KDE
1773           section.
1774
1775 2005-06-30  Wim Taymans  <wim@fluendo.com>
1776
1777         * CHANGES-0.9:
1778         * docs/design/draft-ghostpads.txt:
1779         * docs/design/draft-push-pull.txt:
1780         * docs/design/draft-query.txt:
1781         * docs/design/part-TODO.txt:
1782         * docs/design/part-query.txt:
1783         Added CHANGES-0.9 doc, updated status of other docs.
1784         
1785         * gst/gstquery.h:
1786         Remove "hmm" macro
1787
1788 2005-06-30  Wim Taymans  <wim@fluendo.com>
1789
1790         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1791         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1792         (gst_base_sink_change_state):
1793         * gst/base/gstbasesink.h:
1794         Some tweaks, only EOS and a buffer complete a preroll.
1795
1796 2005-06-30  Andy Wingo  <wingo@pobox.com>
1797
1798         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1799         activate_push down to the internal pad as well.
1800
1801 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1802
1803         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1804
1805         * gst/gsttaginterface.c:
1806           Some documentation fixes (#307394 and #307397).
1807
1808 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1809
1810         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1811
1812         * gst/gstvalue.c: (gst_value_intersect_list):
1813           Fix memleak (#309125).
1814
1815 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1816
1817         * docs/manual/advanced-dataaccess.xml:
1818           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1819         * docs/manual/basics-pads.xml:
1820           Add reference for filtered caps to above chapter.
1821
1822 2005-06-30  Wim Taymans  <wim@fluendo.com>
1823
1824         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1825         (gst_bin_change_state):
1826         Probes are gone.
1827         Lame attempt at making the state change function a bit
1828         more readable.
1829
1830 2005-06-30  Wim Taymans  <wim@fluendo.com>
1831
1832         * docs/design/part-clocks.txt:
1833         * docs/design/part-element-sink.txt:
1834         * docs/design/part-events.txt:
1835         * docs/design/part-preroll.txt:
1836         * docs/design/part-states.txt:
1837         Some more tweeks and additions to the docs.
1838
1839 2005-06-30  Wim Taymans  <wim@fluendo.com>
1840
1841         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1842         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1843         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1844         (gst_pad_check_pull_range), (gst_pad_get_range),
1845         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1846         * gst/gstpad.h:
1847         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1848         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1849         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1850         (gst_pad_remove_buffer_probe):
1851         Removed atomic operations, use existing LOCK.
1852         Move exception handling out of main code path.
1853
1854 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1855
1856         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1857         (silly_return_true_function), (gst_pad_class_init),
1858         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1859         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1860         (gst_pad_send_event):
1861           Fix accumulator, add default value by using _emitv() instead
1862           of _emit() for signal emission.
1863
1864 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1865
1866         * docs/manual/advanced-dataaccess.xml:
1867         * examples/manual/Makefile.am:
1868           Add probe example.
1869         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1870           Make work (??).
1871
1872 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1873
1874         * gst/elements/gstfilesink.c: (gst_filesink_render):
1875           Simplify code so that we don't have to handle short
1876           writes and return GST_FLOW_ERROR if an error occured.
1877
1878 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1879
1880         * docs/gst/gstreamer-docs.sgml:
1881           Remove probes more.
1882
1883 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1884
1885         * docs/gst/gstreamer-sections.txt:
1886         * docs/gst/tmpl/gstpad.sgml:
1887         * docs/gst/tmpl/gstprobe.sgml:
1888         * gst/Makefile.am:
1889         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1890         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1891         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1892         (gst_pad_push_event), (gst_pad_send_event):
1893         * gst/gstpad.h:
1894         * gst/gstutils.c: (gst_pad_add_data_probe),
1895         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1896         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1897         (gst_pad_remove_buffer_probe):
1898         * gst/gstutils.h:
1899           Remove old probes, add new g-signal-based probes and some utility
1900           functions.
1901
1902 2005-06-29  Edward Hervey  <edward@fluendo.com>
1903
1904         * gst/gstelementfactory.c:
1905         * gst/gstutils.h:
1906         * gst/gstutils.c:
1907         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1908         the definition to the header file.
1909
1910 2005-06-29  Andy Wingo  <wingo@pobox.com>
1911
1912         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1913         plugins from the source directory.
1914
1915 2005-06-29  Wim Taymans  <wim@fluendo.com>
1916
1917         * docs/gst/tmpl/gstbuffer.sgml:
1918         * docs/gst/tmpl/gstclock.sgml:
1919         Some fixings for blantently wrong text.
1920
1921 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1922
1923         * check/Makefile.am:
1924         * gst/gst.c: (add_path_func), (init_pre):
1925         * gst/gstregistry.c: (gst_registry_add_path):
1926           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1927           only scan the GST_PLUGIN_PATH locations, and not add
1928           system locations
1929
1930 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1931
1932         * docs/gst/gstreamer-sections.txt:
1933         * docs/gst/tmpl/gstbasesrc.sgml:
1934         * gst/gstelement.c:
1935         * gst/gstelement.h:
1936         * gst/gstevent.c:
1937         * gst/gstutils.c:
1938           doc fixes
1939
1940 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1941
1942         * docs/manual/advanced-autoplugging.xml:
1943           Fix autoplugging example.
1944
1945 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1946
1947         * docs/manual/advanced-autoplugging.xml:
1948         * docs/manual/mime-world.fig:
1949           Try to get autoplugging working, fix type detection. Fix text
1950           in hello-world image.
1951
1952 2005-06-29  Wim Taymans  <wim@fluendo.com>
1953
1954         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1955         (gst_base_sink_change_state):
1956         Small debug line.
1957
1958         * gst/gstclock.h:
1959         map SIGNAL and BROADCAST to the right function.
1960
1961         * gst/gstobject.h:
1962         Remove redundant braces.
1963
1964         * gst/gstpad.c: (gst_pad_set_caps):
1965         Don't call setcaps function when reseting caps to NULL.
1966
1967         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1968         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1969         (gst_system_clock_id_unschedule):
1970         Use BROADCAST as this is what we do.
1971
1972 2005-06-29  Wim Taymans  <wim@fluendo.com>
1973
1974         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1975         We are actually prerolling before commiting the state
1976         change. 
1977
1978 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1979
1980         * docs/manual/advanced-clocks.xml:
1981         * docs/manual/advanced-interfaces.xml:
1982         * docs/manual/advanced-metadata.xml:
1983         * docs/manual/advanced-position.xml:
1984         * docs/manual/advanced-schedulers.xml:
1985         * docs/manual/advanced-threads.xml:
1986         * docs/manual/appendix-porting.xml:
1987         * docs/manual/basics-bins.xml:
1988         * docs/manual/basics-bus.xml:
1989         * docs/manual/basics-elements.xml:
1990         * docs/manual/basics-helloworld.xml:
1991         * docs/manual/basics-pads.xml:
1992         * docs/manual/highlevel-components.xml:
1993         * docs/manual/manual.xml:
1994         * docs/manual/thread.fig:
1995           Update (until threads/scheduling) Application Development Manual;
1996           remove GstThread, add GstBus, add simple porting checklist, add
1997           documentation for tag writing, clocks, make all examples until this
1998           part compile and run.
1999         * examples/manual/Makefile.am:
2000           Update from changes to Application Development Manual; add bus
2001           example, remove thread example.
2002
2003 2005-06-28  Wim Taymans  <wim@fluendo.com>
2004
2005         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2006         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2007         (gst_bus_source_dispatch):
2008         Add debugging messages.
2009         Make internal methods static.
2010         Handle the case where the bus is flushed in the handler.
2011         
2012         * gst/gstelement.c: (gst_element_get_bus):
2013         Fix refcount in _get_bus();
2014
2015         * gst/gstpipeline.c: (gst_pipeline_change_state),
2016         (gst_pipeline_get_clock_func):
2017         Clock refcounting fixes.
2018         Handle the case where preroll timed out more gracefully.
2019         
2020         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2021         Clean up the internal thread in dispose. This is needed
2022         for subclasses that actually get disposed.
2023         
2024         * gst/schedulers/threadscheduler.c:
2025         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2026         (gst_thread_scheduler_dispose):
2027         Free thread pool in dispose.
2028
2029 2005-06-28  Andy Wingo  <wingo@pobox.com>
2030
2031         * tests/network-clock-utils.scm (debug, print-event): New utils.
2032
2033         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2034         (*packet-loss*): Unified loss probability.
2035         (network-time): Report out-of-band events.
2036
2037         * tests/plot-data: Add support for out-of-band events. Hack it
2038         into this script instead of passing it down the pipe; should fix
2039         this later.
2040
2041 2005-06-28  Wim Taymans  <wim@fluendo.com>
2042
2043         * docs/gst/gstreamer.types:
2044         * docs/gst/tmpl/gstbasesrc.sgml:
2045         * docs/gst/tmpl/gstpad.sgml:
2046         Docs fixes.
2047
2048 2005-06-28  Wim Taymans  <wim@fluendo.com>
2049
2050         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2051         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2052         (gst_proxy_pad_do_fixatecaps):
2053         Correctly proxy the check_pull_range function.
2054
2055 2005-06-28  Andy Wingo  <wingo@pobox.com>
2056
2057         * tests/network-clock.scm: Removed need for slib.
2058         
2059 2005-06-28  Wim Taymans  <wim@fluendo.com>
2060
2061         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2062         (gst_basesink_preroll_queue_flush):
2063         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2064         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2065         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2066         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2067         (gst_proxy_pad_set_property):
2068         * gst/gstpad.c:
2069         * gst/gstpad.h:
2070         * gst/gstqueue.c: (gst_queue_init):
2071         The deprecated pad loop function is removed now.
2072
2073 2005-06-28  Andy Wingo  <wingo@pobox.com>
2074
2075         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2076         New parameters, simulate network packet loss.
2077
2078         * tests/network-clock-utils.scm: Initialize the RNG.
2079
2080 2005-06-28  Wim Taymans  <wim@fluendo.com>
2081
2082         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2083         (gst_basesink_event), (gst_basesink_deactivate):
2084         Flushing the preroll queue always needs to unlock the waiters.
2085
2086 2005-06-28  Edward Hervey  <edward@fluendo.com>
2087
2088         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2089         Wheen a seek was successful on a pipeline, set the stream_time to the
2090         seek offset in order to have a synchronized stream_time.
2091
2092 2005-06-28  Wim Taymans  <wim@fluendo.com>
2093
2094         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2095         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2096         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2097         (gst_proxy_pad_do_fixatecaps):
2098         Call wrapper function instead of just calling the function
2099         pointers. This takes care of any locking and whatmore.
2100
2101 2005-06-28  Wim Taymans  <wim@fluendo.com>
2102
2103         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2104         (gst_pad_pull_range):
2105         * gst/gstpad.h:
2106         CONNECTED -> LINKED.
2107
2108 2005-06-28  Andy Wingo  <wingo@pobox.com>
2109
2110         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2111         source-munging commit!!!
2112
2113         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2114         (gst_object_sink): Take gpointer arguments, not GstObject --
2115         avoids casts. Like GLib.
2116
2117         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2118         activate.
2119
2120 2005-06-27  Andy Wingo  <wingo@pobox.com>
2121
2122         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2123         remaining buffer.
2124
2125         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2126         returns a sorted copy of the trace list.
2127         (gst_alloc_trace_print_live): New API, only prints traces with
2128         live objects. Sort the list.
2129         (gst_alloc_trace_print_all): Sort the list.
2130         (gst_alloc_trace_print): Align columns.
2131
2132         * gst/elements/gstttypefindelement.c:
2133         * gst/elements/gsttee.c:
2134         * gst/base/gstbasesrc.c:
2135         * gst/base/gstbasesink.c:
2136         * gst/base/gstbasetransform.c:
2137         * gst/gstqueue.c: Adapt for pad activation changes.
2138
2139         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2140         sched.
2141         (gst_pipeline_dispose): Drop ref on sched.
2142
2143         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2144         (gst_pad_activate_default): Push mode by default.
2145         (pre_activate_switch, post_activate_switch): New stubs, things to
2146         do before and after switching activation modes on pads.
2147         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2148         the pad's activate function to choose which mode to activate.
2149         Shortcut on deactivation and call the right function directly.
2150         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2151         mode.
2152         (gst_pad_activate_push): New API, same for push mode.
2153         (gst_pad_set_activate_function) 
2154         (gst_pad_set_activatepull_function) 
2155         (gst_pad_set_activatepush_function): Setters for new API.
2156
2157         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2158         Trace all miniobjects.
2159         (gst_mini_object_make_writable): Unref the arg if we copy, like
2160         gst_caps_make_writable.
2161
2162         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2163
2164         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2165         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2166         Adapt for new pad API.
2167
2168         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2169
2170         * gst/gstelement.h:
2171         * gst/gstelement.c (gst_element_iterate_src_pads) 
2172         (gst_element_iterate_sink_pads): New API functions.
2173         
2174         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2175         should fold into gstiterator.c in some form.
2176         (gst_element_pads_activate): Simplified via use of fold and
2177         delegation of decisions to gstpad->activate.
2178
2179         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2180         help in debugging.
2181
2182         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2183         class once in init, like gstmessage. Didn't run into this issue
2184         but it seems correct. Don't initialize a trace, gstminiobject does
2185         that.
2186
2187         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2188         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2189         to the bus.
2190         (assert_live_count): New util function, uses alloc traces to check
2191         cleanup.
2192
2193         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2194         To be modified when unlink drops the internal pad.
2195
2196 2005-06-27  Wim Taymans  <wim@fluendo.com>
2197
2198         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2199         (gst_bin_change_state):
2200         Cleanup the get_state() function a little, make sure it
2201         iterates the same set of elements.
2202         Added stub iterate_state_order().
2203
2204 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2205
2206         * docs/gst/gstreamer-docs.sgml:
2207         * docs/gst/gstreamer-sections.txt:
2208         * docs/gst/gstreamer.types:
2209         * docs/gst/tmpl/gstbasesink.sgml:
2210         * docs/gst/tmpl/gstbasesrc.sgml:
2211         * docs/gst/tmpl/gstbasetransform.sgml:
2212         * docs/gst/tmpl/gstelement.sgml:
2213         * docs/gst/tmpl/gstiterator.sgml:
2214         * gst/base/gstbasesrc.c:
2215         * gst/base/gstbasesrc.h:
2216         * gst/base/gstbasetransform.h:
2217         * gst/gstelement.c:
2218         * gst/gstiterator.h:
2219           adding basetransform and iterator docs
2220
2221 2005-06-27  Andy Wingo  <wingo@pobox.com>
2222
2223         * docs/design/part-activation.txt: Notes on how activation should
2224         work -- not quite implemented yet.
2225
2226 2005-06-25  Wim Taymans  <wim@fluendo.com>
2227
2228         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2229         At least get the chain function correct, needs more
2230         fixing.
2231
2232 2005-06-25  Wim Taymans  <wim@fluendo.com>
2233
2234         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2235         (gst_basesink_handle_object), (gst_basesink_event),
2236         (gst_basesink_do_sync), (gst_basesink_handle_event),
2237         (gst_basesink_change_state):
2238         * gst/gsttask.h:
2239         Right, two problems here: ghostpads don't take locks and
2240         glib _rec_mutex_lock_full() with depth==0 still locks.
2241         Catch illegal locking and g_warn them.
2242
2243 2005-06-25  Wim Taymans  <wim@fluendo.com>
2244
2245         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2246         Have to check for completion now...
2247
2248 2005-06-25  Wim Taymans  <wim@fluendo.com>
2249
2250         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2251         (gst_basesink_handle_object), (gst_basesink_event),
2252         (gst_basesink_do_sync), (gst_basesink_handle_event),
2253         (gst_basesink_change_state):
2254         * gst/gstpad.h:
2255         Unlock STREAM_LOCK whatever the recursion was.
2256
2257 2005-06-25  Wim Taymans  <wim@fluendo.com>
2258
2259         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2260         (gst_basesink_preroll_queue_empty),
2261         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2262         (gst_basesink_event), (gst_basesink_do_sync),
2263         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2264         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2265         (gst_basesink_change_state):
2266         Reworked the base sink, handle event and buffer serialisation
2267         correctly and removed possible deadlock.
2268         Handle EOS correctly.
2269
2270 2005-06-25  Wim Taymans  <wim@fluendo.com>
2271
2272         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2273         (gst_pipeline_change_state):
2274         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2275         Allow elements to post EOS in the state change function.
2276         Fix up -launch, make it exit the poll loop when the
2277         pipeline actually changed state.
2278         Fix up warning parsing in -launch.
2279
2280 2005-06-25  Wim Taymans  <wim@fluendo.com>
2281
2282         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2283         (gst_tee_sink_activate):
2284         Core takes STREAM_LOCK for us now.
2285
2286 2005-06-25  Wim Taymans  <wim@fluendo.com>
2287
2288         * gst/gstelement.c: (gst_element_get_state_func),
2289         (gst_element_set_state):
2290         * gst/gstelement.h:
2291         * gst/gstmessage.c: (gst_message_parse_error),
2292         (gst_message_parse_warning):
2293         Keep track of current target state while performing a state
2294         change so that subclasses can do something interesting.
2295         Fix parsing of warning/error messages when GError is NULL.
2296
2297 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2298
2299         * docs/gst/Makefile.am:
2300         * docs/gst/gstreamer-docs.sgml:
2301         * docs/gst/gstreamer-sections.txt:
2302         * docs/gst/gstreamer.types:
2303         * docs/gst/tmpl/gstbasesink.sgml:
2304         * docs/gst/tmpl/gstbasesrc.sgml:
2305         * docs/gst/tmpl/gstbin.sgml:
2306         * docs/gst/tmpl/gstcompat.sgml:
2307         * docs/gst/tmpl/gstfakesink.sgml:
2308         * docs/gst/tmpl/gstfakesrc.sgml:
2309         * docs/gst/tmpl/gstfilesink.sgml:
2310         * docs/gst/tmpl/gstfilesrc.sgml:
2311         * docs/gst/tmpl/gstindex.sgml:
2312         * docs/manual/appendix-quotes.xml:
2313         * gst/base/gstbasesrc.h:
2314         * gst/elements/gstfakesrc.h:
2315         * gst/gstmessage.h:
2316           start pulling in base classes and elements in our docs
2317
2318 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2319
2320         * docs/gst/Makefile.am:
2321         * docs/libs/Makefile.am:
2322           fixed make distcheck with gtk-doc 1.3
2323
2324 2005-06-23  Wim Taymans  <wim@fluendo.com>
2325
2326         * gst/gstelement.c: (gst_element_get_state_func),
2327         (gst_element_set_state), (gst_element_change_state):
2328         When the state did not change, also report NO_PREROLL
2329         when it matters.
2330
2331 2005-06-23  Wim Taymans  <wim@fluendo.com>
2332
2333         * gst/gstpad.c: (gst_pad_event_default):
2334         * gst/gstqueue.c: (gst_queue_loop):
2335         No unsafe task pausing please.
2336
2337 2005-06-23  Wim Taymans  <wim@fluendo.com>
2338
2339         * gst/schedulers/threadscheduler.c:
2340         (gst_thread_scheduler_task_start),
2341         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2342         Ref the task before pushing it on the threadpool. This
2343         makes sure that we have a ref when the threadfunction is
2344         actually called.
2345
2346 2005-06-23  Andy Wingo  <wingo@pobox.com>
2347
2348         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2349         offset is greater than the file's size.
2350
2351         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2352         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2353         * gst/gstobject.c (gst_object_class_init): Make the class lock
2354         recursive. Wim won't let me drop deep_notify. Decodebin works
2355         again, whoopdy doo.
2356
2357         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2358         internal pad, and hacks accordingly. Doesn't do it on the target
2359         pad because we change its caps. Probably catches all cases of
2360         interest tho.
2361         (gst_ghost_pad_set_property): Connect to notify::caps as
2362         appropritate.
2363
2364         * tests/network-clock.scm (plot-simulation): Pipe data to the
2365         elite python skript.
2366
2367         * tests/network-clock-utils.scm (define-parameter): New macro,
2368         defines a parameter that can be set via the command line.
2369         (set-parameter!, parse-parameter-arguments): Command line args
2370         parser.
2371
2372         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2373         stdin.
2374
2375 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2376
2377         * gst/elements/gsttypefindelement.c:
2378         (gst_type_find_element_handle_event):
2379           Don't restart typefinding on a discont.
2380         * gst/gstelement.c: (gst_element_set_state):
2381           Debug spelling fix.
2382         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2383           Allow changing mode of an active pad.
2384           Debug output fixes.
2385         * gst/registries/gstlibxmlregistry.c: (load_feature):
2386           Don't cast a static pad template to a normal pad template.
2387
2388 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2389
2390         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2391         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2392           remove gst_strtoll completely, since it didn't actually do
2393           anything more than what g_ascii_strtoull already does.
2394           check for range errors when deserializing
2395           do a cast for the unsigned cases; but further fixing needs
2396           a decision on what the interpretation of "(int)" and
2397           deserialization should be for values that fall outside the
2398           type's boundaries (ie, refuse, or interpret as casting)
2399
2400 2005-06-23  Wim Taymans  <wim@fluendo.com>
2401
2402         * check/Makefile.am:
2403         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2404         * docs/design/part-live-source.txt:
2405         * docs/design/part-states.txt:
2406         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2407         (gst_basesrc_set_live), (gst_basesrc_is_live),
2408         (gst_basesrc_get_range), (gst_basesrc_activate),
2409         (gst_basesrc_change_state):
2410         * gst/base/gstbasesrc.h:
2411         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2412         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2413         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2414         * gst/gstelement.c: (gst_element_get_state_func),
2415         (gst_element_set_state):
2416         * gst/gstelement.h:
2417         * gst/gsttypes.h:
2418         * tools/gst-launch.c: (event_loop), (main):
2419         Added support for live sources and other elements that
2420         cannot do preroll.
2421         Updated design docs, added live-source design doc.
2422         Implemented live source functionality in basesrc
2423         Fix error condition in _bin_get_state()
2424         Implement live source handling in -launch.
2425         Added check for live sources.
2426         Fixed case in GstBin where elements were changed state
2427         multiple times.
2428
2429
2430 2005-06-23  Andy Wingo  <wingo@pobox.com>
2431
2432         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2433         borken refcounting.
2434
2435         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2436         gst_caps_replace takes care of this for us.
2437
2438         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2439         gst_pad_set_caps on the target, not just its setcaps() function.
2440
2441         * tests/network-clock.scm: 
2442         * tests/network-clock-utils.scm: A network clock simulator.
2443         Something of an algorithmic testbed before doing something in C.
2444
2445 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2446
2447         * check/Makefile.am:
2448         * check/gst/capslist.h:
2449           copy over from 0.8, and add two with bitmasks specified with
2450           (int) 0xFF...
2451         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2452           add test to parse everything from capslist.h
2453         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2454         (main):
2455           add test for structure deserialization
2456         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2457           add tests for deserialization of strings to int types
2458         * gst/gststructure.c: (gst_structure_nth_field_name):
2459         * gst/gststructure.h:
2460           add a way to get the name of a field referenced by index
2461         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2462           instead of checking if the resulting long long lies between
2463           min and max, we check if the long long would fit into
2464           a number of bytes for the final type.
2465           This fixes cases where a string represents 2^32 - 1, which
2466           when cast to int would be the (valid) -1, but is bigger than
2467           G_MAXINT
2468
2469 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2470
2471         * gst/parse/grammar.y:
2472           add a log line for type deserialization
2473
2474 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2475
2476         * check/gst/gstvalue.c: (START_TEST):
2477         * gst/gstvalue.c: (gst_value_deserialize):
2478           return long long, not int, so gint64 deserialization actually
2479           works.  Is there any flag that makes the compiler check this ?
2480           Fixes #308559
2481
2482 2005-06-22  Wim Taymans  <wim@fluendo.com>
2483
2484         * gst/gstbuffer.h:
2485         Added convenience macros for setting buffers in GValue.
2486
2487 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2488
2489         * check/gst/.cvsignore:
2490         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2491           add a test deserializing int64, and comment part out because
2492           it fails, yay !
2493
2494 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2495
2496         * check/Makefile.am:
2497         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2498         * testsuite/Makefile.am:
2499         * testsuite/caps/Makefile.am:
2500         * testsuite/caps/value_serialize.c:
2501         * testsuite/test_gst_init.c:
2502           move a value_serialize test over
2503
2504 2005-06-20  Wim Taymans  <wim@fluendo.com>
2505
2506         * gst/gstpad.c:
2507         Small doc updates.
2508         
2509         * gst/gstvalue.c: (gst_value_compare_buffer),
2510         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2511         (gst_value_compare_flags), (gst_value_serialize_flags),
2512         (gst_value_deserialize_flags), (_gst_value_initialize):
2513         Fix serialisation of buffers, they are not boxed types anymore
2514
2515 2005-06-20  Wim Taymans  <wim@fluendo.com>
2516
2517         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2518         Testcase to show error in buffer-on-caps serialisation.
2519
2520 2005-06-20  Andy Wingo  <wingo@pobox.com>
2521
2522         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2523         will be adding to later.
2524
2525         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2526         if its socks fill with rocks.
2527         (gst_system_clock_obtain): Set the name on object construction.
2528         Avoid double-checked locking.
2529
2530 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2531
2532         * gst/gsturi.c: (gst_element_make_from_uri):
2533           Fix potential endless loop.
2534
2535 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2536
2537         * check/Makefile.am:
2538           add gsttag
2539         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2540         (main):
2541           move over from testsuite dir and clean up
2542         * configure.ac:
2543         * gst/gsttag.c:
2544         * testsuite/Makefile.am:
2545         * testsuite/tags/.cvsignore:
2546         * testsuite/tags/Makefile.am:
2547         * testsuite/tags/merge.c:
2548           remove testsuite/tags
2549
2550 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2551
2552         * docs/gst/gstreamer-sections.txt:
2553         * docs/gst/tmpl/gstenumtypes.sgml:
2554         * win32/gstenumtypes.c:
2555           clean up documentation build a little
2556
2557 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2558
2559         * check/gstcheck.h:
2560           add macros for checking refcounts on objects and caps
2561         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2562           add some more unit tests
2563         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2564         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2565           fix leaked refcounts (I hope :)) so unittest works
2566         * gst/gstpad.h:
2567           whitespace removal
2568
2569 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2570
2571         * configure.ac: back to HEAD
2572
2573 === release 0.9.1 ===
2574
2575 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2576
2577         * NEWS:
2578         * RELEASE:
2579           updated
2580
2581 2005-06-17  Andy Wingo  <wingo@pobox.com>
2582
2583         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2584         assert; it's always possible that the pad gets deactivated in
2585         between the checks in gstpad.c and the implementation. Rely on
2586         finish_preroll() to return a FLUSHING or similar instead of on the
2587         assert.
2588         
2589         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2590         clock and post an EOS message if we come out of finish_preroll in
2591         the playing state.
2592
2593 2005-06-16  David Schleef  <ds@schleef.org>
2594
2595         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2596         (gst_capsfilter_set_property): Allow NULL as possible value
2597         for filter_caps property, indicating GST_CAPS_ANY.
2598
2599 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2600
2601         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2602           fix debug output
2603         * gst/schedulers/Makefile.am:
2604           use libgst prefix
2605         * gstreamer.spec.in:
2606           fix spec for it
2607
2608 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2609
2610         * gstreamer.spec.in:
2611           clean up
2612
2613 2005-06-08  Andy Wingo  <wingo@pobox.com>
2614
2615         * gst/gstutils.c: RPAD fixes all around.
2616         (gst_element_link_pads): Refcounting fixes.
2617
2618         * tools/gst-inspect.c:
2619         * tools/gst-xmlinspect.c:
2620         * parse/grammar.y:
2621         * gst/base/gsttypefindhelper.c:
2622         * gst/base/gstbasesink.c:
2623         * gst/gstqueue.c: RPAD fixes.
2624
2625         * gst/gstghostpad.h:
2626         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2627         pads. The tricky thing is they provide both source and sink
2628         interfaces, since they proxy the internal pad for the external
2629         pad, and vice versa. Implement with lower-level ProxyPad objects,
2630         with the interior proxy pad as a child of the exterior ghost pad.
2631         Should write a doc on this.
2632         
2633         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2634         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2635         gst_object API.
2636         
2637         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2638         pads are real pads. No ghost pads in this file. Not documenting
2639         the myriad s/RPAD/PAD/ and REALIZE fixes.
2640         (gst_pad_class_init): Add properties for "direction" and
2641         "template". Both are construct-only, so they can't change during
2642         the life of the pad. Fixes properly deriving from GstPad.
2643         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2644         derived objects, just set properties when creating the objects via
2645         g_object_new.
2646         (gst_pad_get_parent): Implement as a function, return NULL if the
2647         parent is not an element.
2648         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2649         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2650         
2651         * gst/gstobject.c (gst_object_class_init): Make name a construct
2652         property. Don't set it in the object init.
2653
2654         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2655         with UNKNOWN direction.
2656         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2657         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2658         (gst_element_remove_pad): Remove ghost-pad special cases.
2659         (gst_element_pads_activate): Remove rpad cruft.
2660
2661         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2662         catch the pad's-parent-not-an-element case.
2663
2664         * gst/gst.h: Include gstghostpad.h.
2665
2666         * gst/gst.c (init_post): No more real, ghost pads.
2667
2668         * gst/Makefile.am: Add gstghostpad.[ch].
2669
2670         * check/Makefile.am:
2671         * check/gst/gstbin.c:
2672         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2673         into a bin creates ghost pads, and that the refcounts are right.
2674         Partly moved from gstbin.c.
2675
2676 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2677
2678         * check/gst-libs/.cvsignore:
2679         * check/gst/.cvsignore:
2680         * check/pipelines/.cvsignore:
2681           ignore more
2682         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2683         (START_TEST), (cleanup_suite), (main):
2684           add some tests related to cleanup after running pipelines
2685
2686 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2687
2688         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2689           add a testsuite for GstBuffer
2690
2691 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2692
2693         * gst/gstminiobject.h:
2694           add defines for accessing the refcount
2695
2696 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2697
2698         * Makefile.am: added support for html unit test coverage reports
2699
2700 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2701
2702         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2703           Free existing caps if the capsfilter changes. Add a FIXME about
2704           setting those caps on the pads.
2705
2706         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2707           Before adding a ghost pad to a parent bin, check that there isn't
2708           already one for the element on the bin. Prevents infinite recursion
2709           when using decodebin in parse pipelines. Andy says he'll rewrite the
2710           way this works anyway, so ignore the hack.
2711
2712 2005-06-02  Andy Wingo  <wingo@pobox.com>
2713
2714         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2715         file size, pass it on to the type find helper.
2716
2717         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2718         segment_start and segment_end properly according to the seek
2719         method. Segment_end is still a bit flaky because offset can be
2720         negative for CUR and END cases, but it takes -1 as an "unset"
2721         value.
2722
2723 2005-06-02  Wim Taymans  <wim@fluendo.com>
2724
2725         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2726         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2727         (gst_basesink_activate):
2728         * gst/base/gstbasesink.h:
2729         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2730         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2731         (gst_pad_query), (gst_pad_start_task):
2732         * gst/gstpad.h:
2733         * gst/gstqueue.c: (gst_queue_bufferalloc),
2734         (gst_queue_handle_sink_event), (gst_queue_chain):
2735         Bufferalloc: return GstFlowReturn to more accuratly report
2736         why allocation failed.
2737
2738 2005-06-02  Wim Taymans  <wim@fluendo.com>
2739
2740         * gst/gstpipeline.c: (gst_pipeline_send_event):
2741         Take snapshot of state without blocking.
2742
2743 2005-06-02  Wim Taymans  <wim@fluendo.com>
2744
2745         * docs/design/part-TODO.txt:
2746         * docs/design/part-caps.txt:
2747         * docs/design/part-clocks.txt:
2748         * docs/design/part-negotiation.txt:
2749         * docs/design/part-preroll.txt:
2750         Small doc updates 
2751
2752 2005-05-30  Wim Taymans  <wim@fluendo.com>
2753
2754         * gst/elements/gstidentity.c: (gst_identity_event),
2755         (gst_identity_transform), (gst_identity_get_property):
2756         Protect last_message property as it is accessed from
2757         multiple threads.
2758
2759 2005-05-30  Wim Taymans  <wim@fluendo.com>
2760
2761         * gst/gstelement.c: (gst_element_init),
2762         (gst_element_pads_activate), (gst_element_change_state):
2763         Slicker pad activation code.
2764
2765 2005-05-30  Wim Taymans  <wim@fluendo.com>
2766
2767         * gst/Makefile.am:
2768         * gst/gstelement.h:
2769         * gst/gstelementfactory.h:
2770         * gst/gsttypes.h:
2771         Move elementfactory methods to separate .h file.
2772
2773 2005-05-30  Wim Taymans  <wim@fluendo.com>
2774
2775         * docs/design/part-overview.txt:
2776         * gst/gstsystemclock.h:
2777         Small typo fixes, doc updates.
2778
2779 2005-05-30  Wim Taymans  <wim@fluendo.com>
2780
2781         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2782         (init_popt_callback):
2783         Remove cpu-opt flag.
2784
2785 2005-05-30  Wim Taymans  <wim@fluendo.com>
2786
2787         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2788         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2789         * gst/gstbuffer.h:
2790         Avoid typechecking in places where not needed.
2791         Added accessor for malloc_data.
2792
2793 2005-05-30  Wim Taymans  <wim@fluendo.com>
2794
2795         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2796         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2797         (gst_pad_configure_sink), (gst_pad_configure_src),
2798         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2799         (gst_pad_start_task):
2800         Propagate errors from _set_caps() in configure_src/sink
2801         functions instead of returning TRUE.
2802         FLUSH events can travel up and downstream
2803
2804
2805 2005-05-30  Wim Taymans  <wim@fluendo.com>
2806
2807         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2808         (gst_basesink_activate):
2809         Handle EOS in preroll.
2810
2811 2005-05-30  Wim Taymans  <wim@fluendo.com>
2812
2813         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2814         (gst_queue_loop), (gst_queue_handle_src_event):
2815         Remove old pieces of code
2816         Flushing the queue in an upstream event is a very bad idea.
2817
2818 2005-05-26  Andy Wingo  <wingo@pobox.com>
2819
2820         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2821         gst_value_set_mini_object so as to add a ref on the object (which
2822         will be removed when the value is unset).
2823
2824         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2825         arg type in ::handoff.
2826
2827         * gst/gstelement.c (gst_element_change_state): Also deactivate
2828         pads in READY->NULL, just in case the element didn't make it to
2829         PAUSED. Wingo tested, Wim approved.
2830
2831 2005-05-26  Wim Taymans  <wim@fluendo.com>
2832
2833         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2834         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2835         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2836         A flushing pad cannot be used to alloc_buffer from.
2837
2838 2005-05-26  Wim Taymans  <wim@fluendo.com>
2839
2840         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2841         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2842         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2843         (gst_bus_create_watch), (gst_bus_add_watch_full):
2844         * gst/gstbus.h:
2845         Implement a real GSource and use g_main_context_wakeup() to
2846         signal new messages instead of the socketpair.
2847
2848 2005-05-25  Wim Taymans  <wim@fluendo.com>
2849
2850         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2851         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2852         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2853         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2854         (gst_pad_send_event), (gst_pad_start_task):
2855         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2856         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2857         (gst_queue_sink_activate), (gst_queue_src_activate),
2858         (gst_queue_change_state):
2859         * gst/gstqueue.h:
2860         Fix state changes for non sinks. We now change sinks, then elements
2861         with unconnected srcpads, then the rest.
2862         More efficient queue unlocking in flush and state changes.
2863         Set the pad activate mode even if it does not have an activate
2864         function.
2865
2866 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2867
2868         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2869           Don't go in pull mode for non-seekable sources.
2870         * gst/elements/gsttypefindelement.h:
2871         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2872         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2873         (free_entry), (stop_typefinding),
2874         (gst_type_find_element_handle_event), (find_peek),
2875         (gst_type_find_element_chain), (do_pull_typefind),
2876         (gst_type_find_element_change_state):
2877           Allow typefinding (w/o seeking) in push-mode, simplified version
2878           of what was in 0.8.
2879         * gst/gstutils.c: (gst_buffer_join):
2880         * gst/gstutils.h:
2881           gst_buffer_join() from 0.8.
2882
2883 2005-05-25  Wim Taymans  <wim@fluendo.com>
2884
2885         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2886         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2887         (gst_pad_send_event), (gst_pad_start_task):
2888         Disable attempt at mode switching until it is figured out.
2889
2890 2005-05-25  Wim Taymans  <wim@fluendo.com>
2891
2892         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2893         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2894         (gst_basesink_finish_preroll), (gst_basesink_chain),
2895         (gst_basesink_loop), (gst_basesink_activate),
2896         (gst_basesink_change_state):
2897         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2898         (gst_basesrc_get_range), (gst_basesrc_loop),
2899         (gst_basesrc_activate):
2900         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2901         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2902         (gst_real_pad_init), (gst_real_pad_set_property),
2903         (gst_real_pad_get_property), (gst_pad_set_active),
2904         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2905         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2906         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2907         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2908         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2909         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2910         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2911         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2912         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2913         (gst_pad_stop_task):
2914         * gst/gstpad.h:
2915         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2916         (gst_queue_loop), (gst_queue_src_activate):
2917         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2918         (gst_task_get_state):
2919         * gst/gsttask.h:
2920         * gst/schedulers/threadscheduler.c:
2921         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2922         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2923         in task function.
2924         Remove ACTIVE pad flag, use FLUSHING everywhere
2925         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2926         functions.
2927         Add locks around IS_FLUSHING when reading.
2928         Take STREAM lock in chain(), get_range() functions so plugins
2929         don't need to take it anymore.
2930         
2931
2932
2933 2005-05-25  Wim Taymans  <wim@fluendo.com>
2934
2935         * tools/gst-launch.c: (event_loop):
2936         Unref message after using its contents instead of
2937         before.
2938
2939 2005-05-24  Wim Taymans  <wim@fluendo.com>
2940
2941         * docs/design/draft-ghostpads.txt:
2942         * docs/design/draft-push-pull.txt:
2943         * docs/design/draft-query.txt:
2944         * docs/design/part-overview.txt:
2945         Docs updates, added general overview doc.
2946
2947 2005-05-21  David Schleef  <ds@schleef.org>
2948
2949         * docs/gst/tmpl/old/GstBin.sgml:
2950         * docs/gst/tmpl/old/GstBuffer.sgml:
2951         * docs/gst/tmpl/old/GstCaps.sgml:
2952         * docs/gst/tmpl/old/GstClock.sgml:
2953         * docs/gst/tmpl/old/GstCompat.sgml:
2954         * docs/gst/tmpl/old/GstData.sgml:
2955         * docs/gst/tmpl/old/GstElement.sgml:
2956         * docs/gst/tmpl/old/GstEvent.sgml:
2957         * docs/gst/tmpl/old/GstIndex.sgml:
2958         * docs/gst/tmpl/old/GstStructure.sgml:
2959         * docs/gst/tmpl/old/GstTag.sgml:
2960         * docs/gst/tmpl/old/cothreads.sgml:
2961         * docs/gst/tmpl/old/cothreads_compat.sgml:
2962         * docs/gst/tmpl/old/gettext.sgml:
2963         * docs/gst/tmpl/old/gobject2gtk.sgml:
2964         * docs/gst/tmpl/old/grammar.tab.sgml:
2965         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2966         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2967         * docs/gst/tmpl/old/gst_private.sgml:
2968         * docs/gst/tmpl/old/gstaggregator.sgml:
2969         * docs/gst/tmpl/old/gstarch.sgml:
2970         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2971         * docs/gst/tmpl/old/gstbufferstore.sgml:
2972         * docs/gst/tmpl/old/gstdata_private.sgml:
2973         * docs/gst/tmpl/old/gstdisksink.sgml:
2974         * docs/gst/tmpl/old/gstdisksrc.sgml:
2975         * docs/gst/tmpl/old/gstelementfactory.sgml:
2976         * docs/gst/tmpl/old/gstextratypes.sgml:
2977         * docs/gst/tmpl/old/gstfakesink.sgml:
2978         * docs/gst/tmpl/old/gstfakesrc.sgml:
2979         * docs/gst/tmpl/old/gstfdsink.sgml:
2980         * docs/gst/tmpl/old/gstfdsrc.sgml:
2981         * docs/gst/tmpl/old/gstfilesink.sgml:
2982         * docs/gst/tmpl/old/gstfilesrc.sgml:
2983         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2984         * docs/gst/tmpl/old/gstidentity.sgml:
2985         * docs/gst/tmpl/old/gstindexfactory.sgml:
2986         * docs/gst/tmpl/old/gstmarshal.sgml:
2987         * docs/gst/tmpl/old/gstmd5sink.sgml:
2988         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2989         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2990         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2991         * docs/gst/tmpl/old/gstpipefilter.sgml:
2992         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2993         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2994         * docs/gst/tmpl/old/gstshaper.sgml:
2995         * docs/gst/tmpl/old/gstspider.sgml:
2996         * docs/gst/tmpl/old/gstspideridentity.sgml:
2997         * docs/gst/tmpl/old/gststatistics.sgml:
2998         * docs/gst/tmpl/old/gsttee.sgml:
2999         * docs/gst/tmpl/old/gsttimecache.sgml:
3000         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3001         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3002         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3003         * docs/gst/tmpl/old/types.sgml:
3004           I didn't intend to add these or check them in.
3005
3006 2005-05-19  David Schleef  <ds@schleef.org>
3007
3008         * configure.ac: Use -no-common everywhere.  In a sane world, it
3009           would be the default in libtool, because without it, you can't
3010           build DLLs on Windows.
3011         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3012         * docs/gst/gstreamer-sections.txt:
3013         * docs/gst/tmpl/gstcpu.sgml:
3014         * docs/gst/tmpl/gstdata.sgml:
3015         * docs/gst/tmpl/gstthread.sgml:
3016
3017 2005-05-19  David Schleef  <ds@schleef.org>
3018
3019         * gst/gstminiobject.c: (gst_value_set_mini_object),
3020         (gst_value_take_mini_object), (gst_value_get_mini_object):
3021         * gst/gstminiobject.h: Add GValue set/get functions.
3022
3023 2005-05-19  Wim Taymans  <wim@fluendo.com>
3024
3025         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3026         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3027         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3028         * gst/gstbuffer.h:
3029         * gst/gstbus.c: (gst_bus_post):
3030         * gst/gstelement.c: (gst_element_get_random_pad):
3031         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3032         Make subbufer unref the parent in finalize.
3033         some more debugging info.
3034
3035
3036 2005-05-19  Wim Taymans  <wim@fluendo.com>
3037
3038         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3039         (gst_basesink_init), (gst_basesink_finalize),
3040         (gst_basesink_activate), (gst_basesink_change_state):
3041         Don't free preroll queue too early.
3042
3043 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3044
3045         * gst/Makefile.am:
3046         * gst/ROADMAP:
3047           Hi, I'm outdated. Please shoot me.
3048
3049 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3050
3051         * gst/gstpipeline.c: (gst_pipeline_send_event):
3052           Do not access variables after they have been deleted.
3053
3054 2005-05-19  Wim Taymans  <wim@fluendo.com>
3055
3056         * tools/gst-inspect.c: (print_plugin_features):
3057         A plugin feature does unfortunatly not use the
3058         object name yet...
3059
3060 2005-05-18  Wim Taymans  <wim@fluendo.com>
3061
3062         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3063         Port _span() functions to new subbuffers.
3064
3065 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3066
3067         * gst/gstbin.c: (gst_bin_add_func):
3068           Fix clock settery in bins when adding kids after the clock has
3069           been selected.
3070
3071 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3072
3073         * gst/elements/gstidentity.c: (gst_identity_class_init):
3074           Workaround until signals support GstMiniObject.
3075
3076 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3077
3078         * gst/gstbuffer.c:
3079         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3080
3081 2005-05-18  Wim Taymans  <wim@fluendo.com>
3082
3083         * gst/base/Makefile.am:
3084         * gst/base/gstadapter.c: (gst_adapter_base_init),
3085         (gst_adapter_class_init), (gst_adapter_init),
3086         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3087         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3088         (gst_adapter_flush), (gst_adapter_available),
3089         (gst_adapter_available_fast):
3090         * gst/base/gstadapter.h:
3091         Ported and added adapter to the base classes.
3092
3093 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3094
3095         * gst/gst.c:
3096         * gst/gstmessage.c:
3097           Make sure the class is reffed/unreffed once before threads can be
3098           used.  Fixes #304551.
3099
3100 2005-05-17  Wim Taymans  <wim@fluendo.com>
3101
3102         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3103         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3104         * gst/gstminiobject.c: (gst_mini_object_get_type),
3105         (gst_mini_object_free):
3106         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3107         (gst_pad_push), (gst_pad_push_event):
3108         * gst/gstqueue.c: (gst_queue_change_state):
3109         Don't queue buffers in basesink when we are flushing.
3110         Unref buffer when flushing in basesink.
3111         Flush queue when going to READY
3112         Unref buffer when _push() returns an error.
3113         Don't free MiniObject instance when refcount is incremented
3114         in _finalize() so that we can recover objects.
3115
3116 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3117
3118         * docs/manual/advanced-schedulers.xml:
3119         * docs/manual/appendix-checklist.xml:
3120         * docs/pwg/advanced-clock.xml:
3121         * docs/pwg/advanced-interfaces.xml:
3122         * docs/pwg/advanced-request.xml:
3123         * docs/pwg/advanced-types.xml:
3124         * docs/pwg/intro-preface.xml:
3125         * examples/plugins/example.c: (gst_example_get_type),
3126         (gst_example_class_init), (gst_example_chain),
3127         (gst_example_set_property), (gst_example_get_property),
3128         (gst_example_change_state), (plugin_init):
3129         * examples/plugins/example.h:
3130           small doc fixes
3131
3132 2005-05-17  Wim Taymans  <wim@fluendo.com>
3133
3134         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3135         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3136         * gst/gstqueue.c: (gst_queue_change_state):
3137         Clear queue when going to READY.
3138         Remove IN_SETCAPS flag too.
3139
3140 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3141
3142         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3143           Remove implicit cast from gboolean to GstElementStateReturn;
3144           make sure we still return failure in paused => ready case if
3145           the parent class fails to change state and our own stop 
3146           vfunc succeeds.
3147
3148 2005-05-17  Wim Taymans  <wim@fluendo.com>
3149
3150         * tools/gst-launch.c: (event_loop):
3151         Message was unreffed too soon.
3152
3153 2005-05-16  Andy Wingo  <wingo@pobox.com>
3154
3155         * gst/gstbin.c (sink_iterator_filter): Err... um...
3156
3157         * check/gst/gstbin.c (test_ghost_pads): New test for the
3158         ghosting-if-elements-not-in-same-bin behavior.
3159
3160 2005-05-16  David Schleef  <ds@schleef.org>
3161
3162         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3163         accessing refcount directly.
3164
3165 2005-05-15  David Schleef  <ds@schleef.org>
3166
3167         * check/Makefile.am: remove GstData checks
3168         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3169         * gst/Makefile.am: add miniobject, remove data
3170         * gst/gst.h: add miniobject, remove data
3171         * gst/gstdata.c: remove
3172         * gst/gstdata.h: remove
3173         * gst/gstdata_private.h: remove
3174         * gst/gsttypes.h: remove GstEvent and GstMessage
3175         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3176         * gst/gstmarshal.list: change BOXED -> OBJECT
3177
3178         Implement GstMiniObject.
3179         * gst/gstminiobject.c:
3180         * gst/gstminiobject.h:
3181
3182         Modify to be subclasses of GstMiniObject.
3183         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3184         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3185         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3186         (gst_subbuffer_get_type), (gst_subbuffer_init),
3187         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3188         (gst_buffer_span):
3189         * gst/gstbuffer.h:
3190         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3191         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3192         (_gst_event_copy), (gst_event_new):
3193         * gst/gstevent.h:
3194         * gst/gstmessage.c: (_gst_message_initialize),
3195         (gst_message_get_type), (gst_message_class_init),
3196         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3197         (gst_message_new), (gst_message_new_error),
3198         (gst_message_new_warning), (gst_message_new_tag),
3199         (gst_message_new_state_changed), (gst_message_new_application):
3200         * gst/gstmessage.h:
3201         * gst/gstprobe.c: (gst_probe_perform),
3202         (gst_probe_dispatcher_dispatch):
3203         * gst/gstprobe.h:
3204         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3205         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3206         (_gst_query_copy), (gst_query_new):
3207
3208         Update elements for GstData -> GstMiniObject changes
3209         * gst/gstquery.h:
3210         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3211         (gst_queue_chain), (gst_queue_loop):
3212         * gst/elements/gstbufferstore.c:
3213         (gst_buffer_store_add_buffer_func),
3214         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3215         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3216         (gst_fakesink_render):
3217         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3218         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3219         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3220         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3221         (gst_filesrc_create_read):
3222         * gst/elements/gstidentity.c: (gst_identity_class_init):
3223         * gst/elements/gsttypefindelement.c:
3224         (gst_type_find_element_src_event), (free_entry_buffers),
3225         (gst_type_find_element_handle_event):
3226         * libs/gst/dataprotocol/dataprotocol.c:
3227         (gst_dp_header_from_buffer):
3228         * libs/gst/dataprotocol/dataprotocol.h:
3229         * libs/gst/dataprotocol/dp-private.h:
3230
3231 2005-05-15  David Schleef  <ds@schleef.org>
3232
3233         * gst/elements/gstelements.c: Don't include headers that were
3234         just removed.
3235
3236 2005-05-15  David Schleef  <ds@schleef.org>
3237
3238         * gst/elements/Makefile.am: Remove some elements that don't
3239         need to be in the core (or even exist at all).
3240         * gst/elements/gstaggregator.c:
3241         * gst/elements/gstaggregator.h:
3242         * gst/elements/gstmd5sink.c:
3243         * gst/elements/gstmd5sink.h:
3244         * gst/elements/gstmultifilesrc.c:
3245         * gst/elements/gstmultifilesrc.h:
3246         * gst/elements/gstpipefilter.c:
3247         * gst/elements/gstpipefilter.h:
3248         * gst/elements/gstshaper.c:
3249         * gst/elements/gstshaper.h:
3250         * gst/elements/gststatistics.c:
3251         * gst/elements/gststatistics.h:
3252         * po/POTFILES.in: Remove above files.
3253
3254 2005-05-14  Andy Wingo  <wingo@pobox.com>
3255
3256         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3257         so as to get the refs right.
3258         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3259         unreffing objects that don't pass the filter.
3260
3261         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3262         gst_element_set_bus.
3263         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3264         normal cases, this will destroy the bus.
3265
3266         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3267         object.
3268
3269         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3270         has no sinks.
3271
3272 2005-05-13  Andy Wingo  <wingo@pobox.com>
3273
3274         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3275         gst_pad_link, call pad_link_maybe_ghosting,
3276         (pad_link_maybe_ghosting): Links pads, making sure that the
3277         elements being linked are in the same bin.
3278         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3279         Helpers for pad_link_maybe_ghosting.
3280
3281 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3282
3283         * configure.ac:
3284           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3285
3286 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3287
3288         * docs/design/part-element-source.txt:
3289           Mention GstPushSrc
3290
3291 2005-05-12  Wim Taymans  <wim@fluendo.com>
3292
3293         * gst/base/gstbasesink.c: (gst_basesink_init),
3294         (gst_basesink_activate):
3295         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3296         (gst_basesrc_is_seekable):
3297         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3298         (bin_element_is_sink), (gst_bin_change_state):
3299         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3300         * gst/gstelement.h:
3301         Identify sinks by their flag to avoid overly complicated
3302         checks (fow now).
3303         Do state changes even for elements not reachable from the
3304         sinks.
3305         BaseSink is a sink now :)
3306         Some more debugging info in the basesrc.
3307
3308
3309 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3310
3311         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3312           Implement _query on a bin, similar to _send_event.
3313
3314 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3315
3316         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3317           Discont event offset format should be GST_FORMAT_BYTES,
3318           not GST_FORMAT_TIME.
3319
3320 2005-05-12  Wim Taymans  <wim@fluendo.com>
3321
3322         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3323         Same fix as Ronald's but without the signal. 
3324
3325 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3326
3327         * gst/gstutils.c: (gst_element_query_position):
3328           No, an element is not a pad.
3329
3330 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3331
3332         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3333         (gst_bin_get_state):
3334           If a child is removed from a bin while we remove the child from
3335           the bin and while we're retrieving its state, signal this to the
3336           get_state function so we abort the wait (instead of waiting for
3337           a timeout) and can immediately re-iterate over all other elements.
3338
3339 2005-05-12  Wim Taymans  <wim@fluendo.com>
3340
3341         * gst/base/Makefile.am:
3342         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3343         (gst_basesrc_start):
3344         * gst/base/gstbasesrc.h:
3345         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3346         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3347         (gst_pushsrc_init), (gst_pushsrc_create):
3348         * gst/base/gstpushsrc.h:
3349         Added is_seekable to BaseSrc
3350         Added simple PushSrc.
3351
3352 2005-05-11  Wim Taymans  <wim@fluendo.com>
3353
3354         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3355         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3356         (gst_element_link_pads), (gst_element_query_position),
3357         (gst_element_query_convert), (intersect_caps_func),
3358         (gst_pad_query_position), (gst_pad_query_convert):
3359         Fix refcounting in utils function.
3360         No point in trying to activate a pad when it's added, it could
3361         be added from the state change function and then we deadlock, the
3362         element has to decide what to do.
3363
3364 2005-05-10  Andy Wingo  <wingo@pobox.com>
3365
3366         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3367         *all* the arguments.
3368
3369         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3370         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3371         lock (according to the docs -- if this is wrong change the docs).
3372
3373         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3374         flush messages in the NULL state.
3375
3376         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3377         message immediately and return.
3378         (gst_bus_set_flushing): New function. If a bus is flushing, it
3379         flushes out any queued messages and immediately unrefs new
3380         messages. This is so when an element goes to NULL, all of the
3381         unhandled messages coming from it can be freed, and their
3382         references to the element dropped. In other words: message source
3383         ref considered harmful :P
3384
3385         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3386         we're finished with it.
3387
3388         * gst/gstmessage.c (gst_message_new_state_changed): 
3389
3390 2005-05-10  Wim Taymans  <wim@fluendo.com>
3391
3392         * gst/gstvalue.c: (gst_value_compare_flags),
3393         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3394         (_gst_value_initialize):
3395         Added flags serialize/deserialize/compare code.
3396
3397 2005-05-09  Andy Wingo  <wingo@pobox.com>
3398
3399         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3400         Intersect the peer's caps with our caps.
3401
3402 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3403
3404         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3405         * gst/elements/gsttypefindelement.c: (find_peek):
3406           Handle negative offsets better. Fixes decodebin.
3407
3408 2005-05-09  Wim Taymans  <wim@fluendo.com>
3409
3410         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3411         (gst_base_transform_event):
3412         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3413         Implement accept_caps.
3414         Fix silly lock/unlock mismatch in base class.
3415
3416 2005-05-09  Wim Taymans  <wim@fluendo.com>
3417
3418         * docs/design/draft-push-pull.txt:
3419         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3420         * gst/elements/gstfilesink.c: (gst_filesink_init),
3421         (gst_filesink_query):
3422         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3423         (gst_type_find_handle_src_query), (find_element_get_length):
3424         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3425         * gst/gstelement.h:
3426         * gst/gstmessage.c:
3427         * gst/gstmessage.h:
3428         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3429         (gst_real_pad_get_caps_unlocked),
3430         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3431         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3432         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3433         (gst_real_pad_dispose), (gst_real_pad_finalize),
3434         (gst_pad_load_and_link), (gst_pad_save_thyself),
3435         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3436         (gst_pad_check_pull_range), (gst_pad_pull_range),
3437         (gst_pad_template_get_type), (gst_pad_template_class_init),
3438         (gst_pad_template_init), (gst_pad_template_dispose),
3439         (name_is_valid), (gst_static_pad_template_get),
3440         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3441         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3442         (gst_pad_get_element_private), (gst_pad_start_task),
3443         (gst_pad_pause_task), (gst_pad_stop_task),
3444         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3445         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3446         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3447         (gst_ghost_pad_new):
3448         * gst/gstpad.h:
3449         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3450         (gst_query_new_position), (gst_query_set_position),
3451         (gst_query_parse_position), (gst_query_new_convert),
3452         (gst_query_set_convert), (gst_query_parse_convert):
3453         * gst/gstquery.h:
3454         * gst/gstqueryutils.c:
3455         * gst/gstqueryutils.h:
3456         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3457         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3458         (gst_queue_handle_src_query):
3459         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3460         (gst_element_query_position), (gst_element_query_convert),
3461         (intersect_caps_func), (gst_pad_query_position),
3462         (gst_pad_query_convert):
3463         * gst/gstutils.h:
3464         * tools/gst-inspect.c: (print_pad_info):
3465         * tools/gst-xmlinspect.c: (print_element_info):
3466         Remove old query functions. Ported old code.
3467         Added position/convert helper functions to gstutils.
3468         Reordered gstpad.c code, grouping relevant things.
3469         Remove gst_message_new(), always need to speficy a specific
3470         message.
3471
3472
3473 2005-05-09  Andy Wingo  <wingo@pobox.com>
3474
3475         * gst/gstiterator.h: Add some includes.
3476
3477         * gst/gstqueryutils.h: Include more headers.
3478
3479         * gst/gstpad.h:
3480         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3481         some uses of gst_pad_query.
3482
3483         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3484         NULL out parameters.
3485         (gst_query_new_position): New proc, allocates a new position
3486         query.
3487
3488         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3489         gstqueryutils.c to the build.
3490
3491         * gst/gststructure.c (gst_structure_set_valist): Implement with
3492         the generic G_VALUE_COLLECT.
3493         
3494 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3495
3496         * gst/Makefile.am: (gst_headers):
3497         Added gstqueryutils.h to the list of headers to install, that was
3498         a 'nachty' move wingo :)
3499
3500 2005-05-06  Andy Wingo  <wingo@pobox.com>
3501
3502         * gst/gstquery.h
3503         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3504         GstData, init a memchunk.
3505         (standard_definitions): Add a few query types, deprecate a few.
3506         (gst_query_get_type): New proc.
3507         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3508         implementation.
3509         (gst_query_new_application, gst_query_get_structure): New public
3510         procs.
3511
3512         * docs/design/draft-query.txt: Removed LINKS from the query types,
3513         because all the rest can be dispatched to other pads -- seemed
3514         ugly to have a query that couldn't be dispatched. internal_links
3515         is fine as a pad method.
3516
3517         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3518         in gstpad.c, but maintain binary compatibility for the moment.
3519         Will fix before 0.9 is out.
3520
3521         * gst/gstqueryutils.c: 
3522         * gst/gstqueryutils.h: New files, implement 3 methods for each
3523         query type: parse_query, parse_response, and set. Probably need an
3524         allocator as well.
3525
3526         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3527
3528         * gst/elements/gstfilesink.c (gst_filesink_query2):
3529         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3530         query_types, and formats methods.
3531
3532         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3533         (gst_pad_set_query2_function): New functions.
3534         (gst_real_pad_init): Set query2_default as the default query2
3535         function. Basically just dispatches to internally linked pads.
3536
3537         Needs review!
3538         
3539         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3540         without using the atomic operations. Only one thread can possibly
3541         be accessing the data at this point. Changed so as to avoid
3542         gst_atomic operations.
3543
3544 2005-05-06  Wim Taymans  <wim@fluendo.com>
3545
3546         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3547         Also set caps if we use the fallback buffer alloc.
3548
3549 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3550
3551         * docs/gst/Makefile.am:
3552         * docs/gst/gstreamer-docs.sgml:
3553         * docs/gst/gstreamer-sections.txt:
3554         * docs/gst/tmpl/gstatomic.sgml:
3555         * docs/gst/tmpl/gstmemchunk.sgml:
3556         * testsuite/elements/struct_i386.h:
3557         * win32/GStreamer.vcproj:
3558         * win32/Makefile:
3559           Purge GstAtomic stuff from docs and win32 makefiles as well
3560
3561 2005-05-06  Wim Taymans  <wim@fluendo.com>
3562
3563         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3564         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3565         * gst/gstpad.c: (gst_pad_peer_get_caps):
3566         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3567         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3568         (gst_queue_src_activate), (gst_queue_change_state):
3569         * gst/gstqueue.h:
3570         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3571         (intersect_caps_func):
3572         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3573         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3574         Some fixes for the peer_get_caps() change.
3575
3576 2005-05-06  Wim Taymans  <wim@fluendo.com>
3577
3578         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3579         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3580         (gst_basesink_activate):
3581         Actually do something with error codes returned from the push
3582         functions.
3583
3584 2005-05-06  Wim Taymans  <wim@fluendo.com>
3585
3586         * docs/design/part-element-sink.txt:
3587         * docs/design/part-element-source.txt:
3588         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3589         (gst_basesink_event), (gst_basesink_activate):
3590         * gst/base/gstbasesink.h:
3591         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3592         (gst_basesrc_activate):
3593         * gst/base/gstbasesrc.h:
3594         * gst/gstelement.c: (gst_element_pads_activate):
3595         Some more documentation.
3596         Fixed scheduling decision in _pads_activate().
3597
3598 2005-05-05  Andy Wingo  <wingo@pobox.com>
3599
3600         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3601         the test suite.
3602
3603 2005-05-05  Wim Taymans  <wim@fluendo.com>
3604
3605         * gst/base/Makefile.am:
3606         * gst/base/gstbasesink.h:
3607         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3608         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3609         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3610         (gst_collectpads_class_init), (gst_collectpads_init),
3611         (gst_collectpads_finalize), (gst_collectpads_new),
3612         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3613         (find_pad), (gst_collectpads_remove_pad),
3614         (gst_collectpads_is_active), (gst_collectpads_collect),
3615         (gst_collectpads_collect_range), (gst_collectpads_start),
3616         (gst_collectpads_stop), (gst_collectpads_peek),
3617         (gst_collectpads_pop), (gst_collectpads_available),
3618         (gst_collectpads_read), (gst_collectpads_flush),
3619         (gst_collectpads_chain):
3620         * gst/base/gstcollectpads.h:
3621         * gst/elements/Makefile.am:
3622         * gst/elements/gstelements.c:
3623         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3624         (gst_fakesink_get_times), (gst_fakesink_event),
3625         (gst_fakesink_preroll), (gst_fakesink_render):
3626         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3627         (gst_filesink_init), (gst_filesink_set_location),
3628         (gst_filesink_open_file), (gst_filesink_close_file),
3629         (gst_filesink_pad_query), (gst_filesink_event),
3630         (gst_filesink_render), (gst_filesink_change_state):
3631         * gst/elements/gstfilesink.h:
3632         Added object to help in making collect pad based elements.
3633         Ported filesink.
3634         Make event function in sink baseclass return gboolean.
3635
3636 2005-05-05  Wim Taymans  <wim@fluendo.com>
3637
3638         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3639         (gst_bin_get_by_name):
3640         * gst/gstbuffer.h:
3641         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3642         (gst_clock_finalize):
3643         * gst/gstdata.c: (gst_data_replace):
3644         * gst/gstdata.h:
3645         * gst/gstelement.c: (gst_element_request_pad),
3646         (gst_element_pads_activate):
3647         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3648         (gst_object_unref):
3649         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3650         (gst_pad_set_checkgetrange_function),
3651         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3652         (gst_pad_check_pull_range), (gst_pad_pull_range),
3653         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3654         (gst_pad_pause_task), (gst_pad_stop_task):
3655         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3656         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3657         Fix name lookup in GstBin.
3658         Added _data_replace() function and _buffer_replace()
3659         Use finalize method to clean up clock.
3660         Fix refcounting on request pads.
3661         Fix pad schedule mode error.
3662         Some more object refcounting debug info,
3663
3664
3665 2005-05-04  Andy Wingo <wingo@pobox.com>
3666
3667         * check/Makefile.am:
3668         * docs/gst/tmpl/gstatomic.sgml:
3669         * docs/gst/tmpl/gstplugin.sgml:
3670         * gst/base/gstbasesink.c: (gst_basesink_activate):
3671         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3672         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3673         (gst_basesrc_query), (gst_basesrc_set_property),
3674         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3675         (gst_basesrc_activate):
3676         * gst/base/gstbasesrc.h:
3677         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3678         (gst_base_transform_src_activate):
3679         * gst/elements/gstelements.c:
3680         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3681         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3682         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3683         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3684         (gst_type_find_element_checkgetrange),
3685         (gst_type_find_element_activate):
3686         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3687         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3688         (gst_caps_load_thyself):
3689         * gst/gstelement.c: (gst_element_pads_activate),
3690         (gst_element_save_thyself), (gst_element_restore_thyself):
3691         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3692         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3693         * gst/gstpad.h:
3694         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3695         (gst_xml_parse_file), (gst_xml_parse_memory),
3696         (gst_xml_get_element), (gst_xml_make_element):
3697         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3698         (_file_index_id_save_xml), (gst_file_index_commit):
3699         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3700         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3701         (load_paths):
3702         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3703         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3704         * tools/gst-complete.c: (main):
3705         * tools/gst-compprep.c: (main):
3706         * tools/gst-inspect.c: (print_element_properties_info):
3707         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3708         * tools/gst-xmlinspect.c: (print_element_properties):
3709         GCC 4 fixen.
3710         
3711 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3712
3713         * gst/gstplugin.c: (gst_plugin_check_module),
3714         (gst_plugin_check_file), (gst_plugin_load_file):
3715             apply patch from #172526 to make register work on MacOSX
3716
3717 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3718
3719         * docs/gst/tmpl/gstconfig.sgml:
3720         * gst/gstconfig.h.in:
3721           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3722         * testsuite/debug/printf_extension.c: (main):
3723           Do not use GST_PTR_FORMAT on pointers to types with
3724           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3725         * testsuite/elements/property.h:
3726           use correct printf format
3727
3728 2005-05-02  Wim Taymans  <wim@fluendo.com>
3729
3730         * docs/design/draft-push-pull.txt:
3731         * docs/design/draft-query.txt:
3732         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3733         (gst_basesrc_start):
3734         Added draft for new query API.
3735         Added draft for better selecting scheduling methods.
3736         Make basesrc ignore length if the subclass does not support
3737         it.
3738
3739 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3740
3741         * gst/Makefile.am:
3742           possible fixes for automake-1.5 - _LIBADD is reserved
3743
3744 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3745
3746         * docs/faq/Makefile.am:
3747         * docs/manual/Makefile.am:
3748         * docs/manuals.mak:
3749         * docs/pwg/Makefile.am:
3750         * gst/Makefile.am:
3751           possible fixes for automake-1.5
3752
3753 2005-04-28  Wim Taymans  <wim@fluendo.com>
3754
3755         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3756         (gst_basesink_pad_getcaps), (gst_basesink_init),
3757         (gst_basesink_do_sync):
3758         * gst/gstclock.c: (gst_clock_entry_new):
3759         * gst/gstevent.c: (gst_event_discont_get_value):
3760         * gst/gstpipeline.c: (pipeline_bus_handler),
3761         (gst_pipeline_change_state):
3762         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3763         Better debugging of clocking info.
3764         Allow NULL values when getting discont values.
3765
3766 2005-04-27  Wim Taymans  <wim@fluendo.com>
3767
3768         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3769         * check/gst/gstpad.c: (gst_pad_suite):
3770         Increase timeout for checks.
3771
3772 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3773
3774         * check/Makefile.am:
3775           fix the broken rule for cleanup.  Apparently this rule is
3776           only needed on FC2, so maybe this warrants further autotool
3777           inspection.
3778
3779 2005-04-26  Wim Taymans  <wim@fluendo.com>
3780
3781         * gst/gsttrashstack.h:
3782         Ooohh. a nasty one! After having a failed pop() from the stack,
3783         it's possible that the stack is empty. In that case, don't
3784         follow the NULL pointer.
3785
3786 2005-04-25  Wim Taymans  <wim@fluendo.com>
3787
3788         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3789         (gst_pad_set_checkgetrange_function),
3790         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3791         (gst_pad_check_pull_range), (gst_pad_pull_range),
3792         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3793         (gst_pad_pause_task), (gst_pad_stop_task):
3794         * gst/gstplugin.c: (gst_plugin_load):
3795         * gst/gstplugin.h:
3796         Remove gst_library_load as it does more harm than good with
3797         the new g_module flags.
3798         Revert bogus caps template check in pad linking, pad caps
3799         are important when linking not the template, which is more
3800         general than the current caps.
3801
3802 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3803
3804         * gst/autoplug/.cvsignore:
3805         * gst/autoplug/Makefile.am:
3806         * gst/autoplug/gstsearchfuncs.c:
3807         * gst/autoplug/gstsearchfuncs.h:
3808         * gst/autoplug/gstspider.c:
3809         * gst/autoplug/gstspider.h:
3810         * gst/autoplug/gstspideridentity.c:
3811         * gst/autoplug/gstspideridentity.h:
3812         * gst/autoplug/spidertest.c:
3813           Die, spider, die.
3814
3815 2005-04-25  Wim Taymans  <wim@fluendo.com>
3816
3817         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3818         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3819         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3820         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3821         * gst/gstpad.h:
3822         Added stubs for unimplemented functions. 
3823
3824 2005-04-24  David Schleef  <ds@schleef.org>
3825
3826         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3827         please fix.
3828
3829 2005-04-24  David Schleef  <ds@schleef.org>
3830
3831         Convert everything from GstAtomicInt to g_atomic_int_*, and
3832         remove gstatomic.
3833         * gst/Makefile.am:
3834         * gst/gstatomic.c:
3835         * gst/gstatomic.h:
3836         * gst/gstatomic_impl.h:
3837         * gst/gstbuffer.c:
3838         * gst/gstcaps.c:
3839         * gst/gstcaps.h:
3840         * gst/gstclock.c:
3841         * gst/gstclock.h:
3842         * gst/gstdata.c:
3843         * gst/gstdata.h:
3844         * gst/gstdata_private.h:
3845         * gst/gstevent.c:
3846         * gst/gstinfo.c:
3847         * gst/gstinfo.h:
3848         * gst/gstmessage.c:
3849         * gst/gstobject.c:
3850         * gst/gstobject.h:
3851         * gst/gststructure.c:
3852         * gst/gststructure.h:
3853         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3854         * gst/gstutils.h:
3855
3856 2005-04-24  David Schleef  <ds@schleef.org>
3857
3858         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3859         make the regressions tests work.  Remove some code that is no
3860         longer true.
3861         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3862         Disable warning for pads without templates.
3863
3864 2005-04-24  David Schleef  <ds@schleef.org>
3865
3866         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3867         functions that handle filtered links.
3868         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3869         removed functions.
3870         * gst/gstutils.c: Fix/remove utility functions that handle
3871         filtered caps.
3872         * gst/gstutils.h:
3873         * gst/gstvalue.c: Add serialization/deserialization of caps
3874         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3875         requires fixing so that the filter caps notation creates
3876         a capsfilter element and sets the filter_caps property.  I
3877         think everyone probably wants to keep the shorthand notation.
3878         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3879         * docs/gst/tmpl/gstpad.sgml:
3880
3881         * gst/elements/gstelements.c: Register capsfilter element.
3882         * gst/Makefile.am: fix spacing
3883         * docs/random/ds/0.9-suggested-changes: random
3884
3885 2005-04-23  David Schleef  <ds@schleef.org>
3886
3887         * gst/elements/Makefile.am:
3888         * gst/elements/gstcapsfilter.c: New element that acts like an
3889         identity, but filters caps.  Will eventually replace filtered
3890         caps in pad linking.
3891         * gst/gstutils.c: (gst_element_create_all_pads): New function
3892         to create all the ALWAYS pads that are registered with an
3893         element class.  This functionality should eventually be
3894         merged in with GstElement initialization.
3895         * gst/gstutils.h:
3896         * testsuite/trigger/README: part of trigger test code that should
3897         have been checked in a long time ago.
3898
3899 2005-04-23  David Schleef  <ds@schleef.org>
3900
3901         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3902         needed with new versions of libtool (nobody will confirm this),
3903         and hard to carry around.
3904         * gst/autoplug/Makefile.am:
3905         * gst/base/Makefile.am:
3906         * gst/elements/Makefile.am:
3907         * gst/indexers/Makefile.am:
3908         * gst/schedulers/Makefile.am:
3909         * libs/gst/bytestream/Makefile.am:
3910         * libs/gst/control/Makefile.am:
3911         * libs/gst/dataprotocol/Makefile.am:
3912         * libs/gst/getbits/Makefile.am:
3913
3914 2005-04-21  Wim Taymans  <wim@fluendo.com>
3915
3916         * docs/design/draft-push-pull.txt:
3917         * docs/design/part-MT-refcounting.txt:
3918         * docs/design/part-TODO.txt:
3919         * docs/design/part-caps.txt:
3920         * docs/design/part-events.txt:
3921         * docs/design/part-gstbus.txt:
3922         * docs/design/part-gstpipeline.txt:
3923         * docs/design/part-messages.txt:
3924         * docs/design/part-push-pull.txt:
3925         * docs/design/part-query.txt:
3926         Some more docs.
3927
3928 2005-04-21  Wim Taymans  <wim@fluendo.com>
3929
3930         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3931         (gst_message_new), (gst_message_new_error),
3932         (gst_message_new_warning), (gst_message_new_tag),
3933         (gst_message_new_state_changed), (gst_message_new_application),
3934         (gst_message_get_structure):
3935         * gst/gstmessage.h:
3936         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3937         (gst_structure_copy_conditional):
3938         Use parent refcount in GstMessage to ensure GstStructure
3939         consistency.
3940         Cleaned up headers a bit.
3941         
3942
3943 2005-04-20  Wim Taymans  <wim@fluendo.com>
3944
3945         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3946         (gst_basesink_pad_getcaps), (gst_basesink_init),
3947         (gst_basesink_chain_unlocked):
3948         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3949         (gst_type_find_helper):
3950         * gst/elements/gsttypefindelement.c:
3951         (gst_type_find_element_have_type), (gst_type_find_element_init),
3952         (stop_typefinding), (gst_type_find_element_handle_event),
3953         (find_suggest), (gst_type_find_element_chain),
3954         (gst_type_find_element_checkgetrange),
3955         (gst_type_find_element_getrange), (do_typefind),
3956         (gst_type_find_element_activate):
3957         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3958         (gst_buffer_default_free), (gst_buffer_default_copy),
3959         (gst_buffer_set_caps):
3960         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3961         (gst_caps_replace):
3962         * gst/gstmessage.c: (gst_message_new),
3963         (gst_message_new_state_changed):
3964         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3965         (gst_pad_set_checkgetrange_function),
3966         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3967         (gst_pad_set_caps), (gst_pad_check_pull_range),
3968         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3969         * gst/gstpad.h:
3970         * gst/gsttypefind.c: (gst_type_find_register):
3971         Make gst_caps_replace() work like other _replace() functions.
3972         Use _caps_replace() where possible.
3973         Make sure _message_new() initialises its field.
3974         Add gst_static_pad_template_get_caps()
3975
3976
3977 2005-04-18  Andy Wingo  <wingo@pobox.com>
3978
3979         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3980         on the peer, not the pad. I think that was a typo. Pass an extra
3981         arg to see if random access is possible. Activate the pads as
3982         PULL_RANGE if possible.
3983
3984         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3985
3986         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3987         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3988         to PROP_....
3989
3990 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3991
3992         * docs/faq/using.xml:
3993           Add note on gstreamer-properties (#154996).
3994
3995 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3996
3997         * docs/random/bbb/optional-properties:
3998           Some analysis on optional properties.
3999
4000 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4001
4002         * docs/gst/tmpl/gstelementfactory.sgml:
4003         * gst/gstelement.h:
4004         * gst/gstelementfactory.c: (gst_element_factory_init),
4005         (gst_element_factory_cleanup), (gst_element_register),
4006         (__gst_element_factory_add_static_pad_template),
4007         (gst_element_factory_get_static_pad_templates),
4008         (gst_element_factory_can_src_caps),
4009         (gst_element_factory_can_sink_caps):
4010         * gst/registries/Makefile.am:
4011         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4012         (gst_xml_registry_class_init), (gst_xml_registry_init),
4013         (gst_xml_registry_new), (gst_xml_registry_set_property),
4014         (gst_xml_registry_get_property), (get_time), (make_dir),
4015         (gst_xml_registry_get_perms_func),
4016         (plugin_times_older_than_recurse), (plugin_times_older_than),
4017         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4018         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4019         (add_to_char_array), (read_string), (read_uint), (read_enum),
4020         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4021         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4022         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4023         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4024         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4025         (gst_xml_registry_rebuild):
4026         * gst/registries/gstlibxmlregistry.h:
4027         * tools/gst-compprep.c: (main):
4028         * tools/gst-inspect.c: (print_pad_templates_info):
4029         * tools/gst-xmlinspect.c: (print_element_info):
4030           Use libxml2 for registry parsing, use staticpadtemplates in
4031           elementfactories. Makes gst_init() +/- 10x faster.
4032
4033 2005-04-12  Wim Taymans  <wim@fluendo.com>
4034
4035         * gst/base/Makefile.am:
4036         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4037         (gst_basesink_pad_getcaps), (gst_basesink_init),
4038         (gst_basesink_event), (gst_basesink_change_state):
4039         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4040         (gst_basesrc_init), (gst_basesrc_query),
4041         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4042         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4043         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4044         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4045         (gst_basesrc_stop), (gst_basesrc_activate),
4046         (gst_basesrc_change_state):
4047         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4048         (helper_find_suggest), (gst_type_find_helper):
4049         * gst/base/gsttypefindhelper.h:
4050         * gst/elements/Makefile.am:
4051         * gst/elements/gstelements.c:
4052         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4053         (gst_fakesink_get_times), (gst_fakesink_event),
4054         (gst_fakesink_preroll), (gst_fakesink_render):
4055         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4056         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4057         (gst_fakesrc_get_property), (gst_fakesrc_create),
4058         (gst_fakesrc_start), (gst_fakesrc_stop):
4059         * gst/elements/gstfakesrc.h:
4060         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4061         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4062         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4063         (gst_filesrc_create_read), (gst_filesrc_create),
4064         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4065         (gst_filesrc_start):
4066         * gst/elements/gsttypefindelement.c:
4067         (gst_type_find_element_have_type), (gst_type_find_element_init),
4068         (start_typefinding), (stop_typefinding), (push_buffer_store),
4069         (gst_type_find_element_handle_event),
4070         (gst_type_find_element_chain),
4071         (gst_type_find_element_checkgetrange),
4072         (gst_type_find_element_getrange), (do_typefind),
4073         (gst_type_find_element_activate),
4074         (gst_type_find_element_change_state):
4075         * gst/elements/gsttypefindelement.h:
4076         * gst/gstpipeline.c: (pipeline_bus_handler):
4077         Added typefind helper.
4078         Small preroll fix in the base sink.
4079         Disable typefind code in basesrc.
4080         Crude port of typefindelement.
4081         Fakesrc cleanups.
4082
4083
4084 2005-04-11  Wim Taymans  <wim@fluendo.com>
4085
4086         * check/gst/gstbus.c: (gstbus_suite):
4087         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4088         * check/gstcheck.h:
4089           Fix up the timeout so that the test does not fail.
4090
4091 2005-04-06  Wim Taymans  <wim@fluendo.com>
4092
4093         * gst/base/README:
4094         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4095         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4096         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4097         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4098         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4099         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4100         (gst_basesrc_stop), (gst_basesrc_activate),
4101         (gst_basesrc_change_state), (basesrc_find_peek),
4102         (basesrc_find_suggest), (gst_basesrc_type_find):
4103         * gst/base/gstbasesrc.h:
4104         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4105         (gst_filesrc_class_init), (gst_filesrc_init),
4106         (gst_filesrc_finalize), (gst_filesrc_set_location),
4107         (gst_filesrc_set_property), (gst_filesrc_get_property),
4108         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4109         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4110         (gst_filesrc_create_read), (gst_filesrc_create),
4111         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4112         * gst/elements/gstfilesrc.h:
4113         * gst/gstelement.c: (gst_element_get_state_func),
4114         (gst_element_lost_state), (gst_element_pads_activate):
4115         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4116         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4117         (gst_pad_pull_range):
4118         * gst/gstpad.h:
4119         More work on the generic source base class, implement seeking,
4120         query.
4121         Make filesrc extend the base source class.
4122         Added gst_pad_set_checkgetrange_function to GstPad.
4123
4124 2005-04-06  Andy Wingo  <wingo@pobox.com>
4125
4126         * pkgconfig/gstreamer-base.pc.in:
4127         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4128
4129         * pkgconfig/Makefile.am:
4130         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4131
4132 2005-04-04  Wim Taymans  <wim@fluendo.com>
4133
4134         * gst/base/Makefile.am:
4135         * gst/base/README:
4136         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4137         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4138         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4139         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4140         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4141         (gst_basesrc_base_init), (gst_basesrc_class_init),
4142         (gst_basesrc_init), (gst_basesrc_get_formats),
4143         (gst_basesrc_get_query_types), (gst_basesrc_query),
4144         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4145         (gst_basesrc_set_property), (gst_basesrc_get_property),
4146         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4147         (gst_basesrc_loop), (gst_basesrc_activate),
4148         (gst_basesrc_change_state):
4149         * gst/base/gstbasesrc.h:
4150         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4151         (gst_fakesrc_class_init), (gst_fakesrc_init),
4152         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4153         (gst_fakesrc_get_property), (gst_fakesrc_create):
4154         * gst/elements/gstfakesrc.h:
4155         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4156         (gst_filesrc_open_file), (gst_filesrc_loop),
4157         (gst_filesrc_activate), (filesrc_find_peek),
4158         (gst_filesrc_type_find):
4159         Made base source class, make fakesrc extend it.
4160         Add comments to basesink class.
4161         Some filesrc cleanup.
4162
4163 2005-03-31  David Schleef  <ds@schleef.org>
4164
4165         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4166         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4167         expected to link against libgstreamer.
4168         * gst/base/Makefile.am: link against libgstreamer
4169         * gst/elements/Makefile.am: same
4170
4171 2005-03-31  Andy Wingo  <wingo@pobox.com>
4172
4173         * tests/instantiate/Makefile.am:
4174         * tests/instantiate/caps.c: Add test to test speed of caps copy
4175         and free.
4176
4177         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4178         GMemChunk to be fair.
4179
4180         * gst/gsttrashstack.h: Remove warning about using the fallback
4181         trash stack implementation, it's still faster than malloc.
4182
4183 2005-03-30  Andy Wingo  <wingo@pobox.com>
4184
4185         * tests/complexity.c: Add a copyright.
4186
4187 2005-03-31  Wim Taymans  <wim@fluendo.com>
4188
4189         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4190         (gst_base_transform_class_init), (gst_base_transform_init),
4191         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4192         (gst_base_transform_get_property),
4193         (gst_base_transform_sink_activate),
4194         (gst_base_transform_src_activate),
4195         (gst_base_transform_change_state):
4196         * gst/base/gstbasetransform.h:
4197         * gst/elements/gstidentity.c: (gst_identity_class_init),
4198         (gst_identity_event), (gst_identity_check_perfect),
4199         (gst_identity_transform), (gst_identity_start),
4200         (gst_identity_stop):
4201         Added start/stop methods to transform base class so subclasses 
4202         don't need to deal with state changes even.
4203
4204 2005-03-31  Wim Taymans  <wim@fluendo.com>
4205
4206         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4207         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4208         * gst/gstevent.h:
4209         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4210         (gst_pad_pull_range):
4211         Added rate to the discont event to prepare for variable speed
4212         and reverse playback.
4213
4214 2005-03-29  David Schleef  <ds@schleef.org>
4215
4216         * configure.ac:
4217         * testsuite/trigger/Makefile.am:
4218         * testsuite/trigger/trigger.c: A little example program to show
4219         how trigger-based elements can work.
4220
4221 2005-03-29  Wim Taymans  <wim@fluendo.com>
4222
4223         * gst/base/Makefile.am:
4224         * gst/base/README:
4225         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4226         (gst_basesink_base_init), (gst_basesink_class_init),
4227         (gst_basesink_pad_getcaps), (gst_basesink_init),
4228         (gst_basesink_activate), (gst_basesink_change_state):
4229         * gst/base/gstbasesink.h:
4230         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4231         (gst_base_transform_base_init), (gst_base_transform_finalize),
4232         (gst_base_transform_class_init), (gst_base_transform_init),
4233         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4234         (gst_base_transform_event), (gst_base_transform_getrange),
4235         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4236         (gst_base_transform_set_property),
4237         (gst_base_transform_get_property),
4238         (gst_base_transform_sink_activate),
4239         (gst_base_transform_src_activate),
4240         (gst_base_transform_change_state):
4241         * gst/base/gstbasetransform.h:
4242         * gst/elements/gstidentity.c: (gst_identity_finalize),
4243         (gst_identity_class_init), (gst_identity_init),
4244         (gst_identity_event), (gst_identity_check_perfect),
4245         (gst_identity_transform), (gst_identity_set_property),
4246         (gst_identity_get_property), (gst_identity_change_state):
4247         * gst/elements/gstidentity.h:
4248         * gst/gstelement.c: (gst_element_get_state_func),
4249         (gst_element_lost_state), (gst_element_pads_activate):
4250         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4251         (gst_pad_check_pull_range), (gst_pad_pull_range):
4252         * gst/gstpad.h:
4253         Simplify pad activation.
4254         Added function to check if pull_range can be performed.
4255         Error out when pulling inactive or flushing pads.
4256         Removed const from refcounted types as it does not make sense.
4257         Simplify pad templates in basesink
4258         Added base class for simple 1-to-1 transforms.
4259         Make identity subclass the base transform.
4260
4261 2005-03-29  Andy Wingo  <wingo@pobox.com>
4262
4263         * docs/libs/gstreamer-libs-overrides.txt: 
4264         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4265         really don't understand what's going on, but like whatever. I want
4266         green buildbot!
4267
4268         * docs/gst/Makefile.am:
4269         * docs/libs/Makefile.am: Dist the overrides files.
4270
4271         * check/Makefile.am (clean-local): Remove .libs directories.
4272
4273         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4274         elements to EXTRA_DIST, so po/ files are happy.
4275
4276         * po/POTFILES.in: Er, remove it here.
4277
4278         * po/POTFILES: Remove gstspider.c.
4279
4280         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4281
4282         * docs/libs/gstreamer-libs-docs.sgml: 
4283         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4284         bytestream.
4285
4286         * tests/complexity.c (main): Set the length of the preroll queue
4287         on the sinks to prevent a lockup.
4288
4289         * libs/gst/dataprotocol/Makefile.am: 
4290         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4291         the same as the one in check/gst-libs/gdp.c.
4292
4293         * po/, docs/gst/: Commit automatic changes to docs and po files.
4294
4295         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4296         the versioned libgstbase.
4297
4298         * check/Makefile.am: Depend on an unversioned gst-register, seems
4299         to make autoconf happier.
4300
4301         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4302
4303 2005-03-28  Wim Taymans  <wim@fluendo.com>
4304
4305         * configure.ac:
4306         * docs/design/part-gstelement.txt:
4307         * docs/design/part-negotiation.txt:
4308         * docs/design/part-preroll.txt:
4309         * docs/design/part-scheduling.txt:
4310         * docs/design/part-states.txt:
4311         * gst/Makefile.am:
4312         * gst/base/Makefile.am:
4313         * gst/base/README:
4314         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4315         (gst_basesink_base_init), (gst_basesink_class_init),
4316         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4317         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4318         (gst_basesink_set_pad_functions),
4319         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4320         (gst_basesink_set_property), (gst_basesink_get_property),
4321         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4322         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4323         (gst_basesink_preroll_queue_push),
4324         (gst_basesink_preroll_queue_empty),
4325         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4326         (gst_basesink_event), (gst_basesink_get_times),
4327         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4328         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4329         (gst_basesink_loop), (gst_basesink_activate),
4330         (gst_basesink_change_state):
4331         * gst/base/gstbasesink.h:
4332         * gst/elements/Makefile.am:
4333         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4334         (gst_fakesink_class_init), (gst_fakesink_init),
4335         (gst_fakesink_set_property), (gst_fakesink_get_property),
4336         (gst_fakesink_get_times), (gst_fakesink_event),
4337         (gst_fakesink_preroll), (gst_fakesink_render),
4338         (gst_fakesink_change_state):
4339         * gst/elements/gstfakesink.h:
4340         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4341         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4342         * gst/gstelement.c: (gst_element_add_pad),
4343         (gst_element_get_state_func), (gst_element_abort_state),
4344         (gst_element_commit_state), (gst_element_lost_state),
4345         (gst_element_set_state), (gst_element_pads_activate):
4346         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4347         * gst/gstpipeline.c: (gst_pipeline_send_event),
4348         (gst_pipeline_change_state):
4349         Added state change code.
4350         Added/updated docs.
4351         Added sink base class, make fakesink extend the base class.
4352         Small cleanups in GstPipeline.
4353
4354 2005-03-26  David Schleef  <ds@schleef.org>
4355
4356         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4357         is broken and should be implemented in a different library.
4358         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4359         * gst/gst.h: remove gstcpu.h
4360         * gst/gstcpu.c: remove
4361         * gst/gstcpu.h: remove
4362         * gst/Makefile.am.future: Remove this file.  It's ancient.
4363
4364 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4365
4366         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4367         (gst_bin_send_event):
4368           Add default event/set_manager handlers. The set_manager handler
4369           takes care that the manager is distributed over kids that were
4370           already in the bin before the manager was set. The event handler
4371           is a utility virtual function that sends the event over all sinks,
4372           so that gst_element_send_event (bin, event); has the expected
4373           behaviour.
4374         * gst/gstpad.c: (gst_pad_event_default):
4375           Re-install default event handling for discontinuities, so that
4376           seeking works without requiring hacks in applications or extra
4377           code in sinks.
4378         * gst/gstpipeline.c: (gst_pipeline_class_init),
4379         (gst_pipeline_send_event):
4380           Half hack, half utility: set a pipeline to PAUSED for seek events,
4381           since that is the only way we can guarantee a/v sync. Means that
4382           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4383           and it "just works".
4384
4385 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4386
4387         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4388           Lock/unlock mismatch.
4389
4390 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4391
4392         * docs/faq/gst-uninstalled:
4393           add gst-plugins-base
4394         * docs/gst/Makefile.am:
4395           don't error out until docs are fixed
4396         * docs/gst/gstreamer.types:
4397           remove thread
4398
4399 2005-03-22  Wim Taymans  <wim@fluendo.com>
4400
4401         * check/Makefile.am:
4402         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4403         * gst/gststructure.c: (gst_structure_set_valist),
4404         (gst_structure_copy_conditional):
4405         Activated more tests.
4406         Added message test.
4407         Added G_TYPE_POINTER to GstStructure.
4408         
4409
4410 2005-03-22  Wim Taymans  <wim@fluendo.com>
4411
4412         * docs/design/part-TODO.txt:
4413         * docs/design/part-events.txt:
4414         * docs/design/part-gstbin.txt:
4415         * docs/design/part-gstbus.txt:
4416         * docs/design/part-gstpipeline.txt:
4417         * docs/design/part-messages.txt:
4418         * gst/gstbus.c:
4419         * gst/gstmessage.c:
4420         Docs updates
4421
4422 2005-03-21  Wim Taymans  <wim@fluendo.com>
4423
4424         * gst/gstbus.c: (gst_bus_post):
4425         Fix copy-and-paste error.
4426
4427 2005-03-21  Wim Taymans  <wim@fluendo.com>
4428
4429         * check/Makefile.am:
4430         * gst/Makefile.am:
4431         * gst/elements/Makefile.am:
4432         * gst/elements/gstelements.c:
4433         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4434         (gst_fakesink_event), (gst_fakesink_chain):
4435         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4436         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4437         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4438         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4439         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4440         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4441         (gst_fakesrc_loop), (gst_fakesrc_activate),
4442         (gst_fakesrc_change_state):
4443         * gst/elements/gstfakesrc.h:
4444         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4445         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4446         (gst_filesrc_open_file), (gst_filesrc_loop),
4447         (gst_filesrc_activate), (gst_filesrc_change_state),
4448         (filesrc_find_peek), (filesrc_find_suggest),
4449         (gst_filesrc_type_find):
4450         * gst/elements/gstidentity.c: (gst_identity_finalize),
4451         (gst_identity_class_init), (gst_identity_init),
4452         (gst_identity_proxy_getcaps), (identity_queue_push),
4453         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4454         (gst_identity_getrange), (gst_identity_chain),
4455         (gst_identity_sink_loop), (gst_identity_src_loop),
4456         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4457         (gst_identity_set_property), (gst_identity_get_property),
4458         (gst_identity_change_state):
4459         * gst/elements/gstidentity.h:
4460         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4461         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4462         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4463         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4464         (gst_tee_sink_activate):
4465         * gst/elements/gsttee.h:
4466         * gst/gst.c: (gst_register_core_elements), (init_post):
4467         * gst/gst.h:
4468         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4469         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4470         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4471         (gst_bin_change_state):
4472         * gst/gstbin.h:
4473         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4474         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4475         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4476         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4477         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4478         (bus_watch_callback), (bus_watch_destroy),
4479         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4480         (poll_timeout), (gst_bus_poll):
4481         * gst/gstbus.h:
4482         * gst/gstcaps.h:
4483         * gst/gstdata.h:
4484         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4485         (gst_element_post_message), (gst_element_message_full),
4486         (gst_element_get_state_func), (gst_element_get_state),
4487         (gst_element_abort_state), (gst_element_commit_state),
4488         (gst_element_lost_state), (gst_element_set_state),
4489         (gst_element_pads_activate), (gst_element_change_state),
4490         (gst_element_dispose), (gst_element_set_manager_func),
4491         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4492         (gst_element_set_manager), (gst_element_get_manager),
4493         (gst_element_set_bus), (gst_element_get_bus),
4494         (gst_element_set_scheduler), (gst_element_get_scheduler):
4495         * gst/gstelement.h:
4496         * gst/gstevent.c: (gst_event_new_segment_seek),
4497         (gst_event_new_flush):
4498         * gst/gstevent.h:
4499         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4500         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4501         (gst_message_new_eos), (gst_message_new_error),
4502         (gst_message_new_warning), (gst_message_new_tag),
4503         (gst_message_new_state_changed), (gst_message_new_application),
4504         (gst_message_get_structure), (gst_message_parse_tag),
4505         (gst_message_parse_state_changed), (gst_message_parse_error),
4506         (gst_message_parse_warning):
4507         * gst/gstmessage.h:
4508         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4509         (gst_real_pad_set_property), (gst_pad_set_active),
4510         (gst_pad_is_active), (gst_pad_set_blocked_async),
4511         (gst_pad_set_blocked), (gst_pad_is_blocked),
4512         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4513         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4514         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4515         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4516         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4517         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4518         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4519         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4520         (gst_pad_set_caps), (gst_pad_configure_sink),
4521         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4522         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4523         (gst_real_pad_dispose), (gst_real_pad_finalize),
4524         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4525         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4526         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4527         * gst/gstpad.h:
4528         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4529         (pipeline_bus_handler), (gst_pipeline_change_state),
4530         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4531         * gst/gstpipeline.h:
4532         * gst/gstprobe.h:
4533         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4534         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4535         (gst_queue_link_src), (gst_queue_bufferalloc),
4536         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4537         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4538         (gst_queue_loop), (gst_queue_handle_src_event),
4539         (gst_queue_handle_src_query), (gst_queue_src_activate),
4540         (gst_queue_change_state):
4541         * gst/gstqueue.h:
4542         * gst/gstscheduler.c: (gst_scheduler_init),
4543         (gst_scheduler_dispose), (gst_scheduler_create_task),
4544         (gst_scheduler_factory_create):
4545         * gst/gstscheduler.h:
4546         * gst/gststructure.c: (gst_structure_get_type),
4547         (gst_structure_copy_conditional):
4548         * gst/gststructure.h:
4549         * gst/gsttaginterface.h:
4550         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4551         (gst_task_init), (gst_task_dispose), (gst_task_create),
4552         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4553         (gst_task_pause):
4554         * gst/gsttask.h:
4555         * gst/gstthread.c:
4556         * gst/gstthread.h:
4557         * gst/gsttypes.h:
4558         * gst/schedulers/Makefile.am:
4559         * gst/schedulers/cothreads_compat.h:
4560         * gst/schedulers/entryscheduler.c:
4561         * gst/schedulers/faircothreads.c:
4562         * gst/schedulers/faircothreads.h:
4563         * gst/schedulers/fairscheduler.c:
4564         * gst/schedulers/gstbasicscheduler.c:
4565         * gst/schedulers/gstoptimalscheduler.c:
4566         * gst/schedulers/gthread-cothreads.h:
4567         * gst/schedulers/threadscheduler.c:
4568         (gst_thread_scheduler_task_get_type),
4569         (gst_thread_scheduler_task_class_init),
4570         (gst_thread_scheduler_task_init),
4571         (gst_thread_scheduler_task_start),
4572         (gst_thread_scheduler_task_stop),
4573         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4574         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4575         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4576         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4577         (plugin_init):
4578         * libs/gst/Makefile.am:
4579         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4580         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4581         (gst_file_pad_parent_set):
4582         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4583         (gst_dp_event_from_packet):
4584         * tests/complexity.c: (main):
4585         * tests/mass_elements.c: (main):
4586         * testsuite/states/locked.c: (message_received), (main):
4587         * testsuite/states/parent.c: (main):
4588         * tools/gst-inspect.c: (print_element_flag_info),
4589         (print_implementation_info), (print_pad_info):
4590         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4591         (main):
4592         * tools/gst-md5sum.c: (event_loop), (main):
4593         * tools/gst-typefind.c: (main):
4594         * tools/gst-xmlinspect.c: (print_element_info):
4595         Next big merge.
4596         Added GstBus for mainloop integration.
4597         Added GstMessage for sending notifications on the bus.
4598         Added GstTask as an abstraction for pipeline entry points.
4599         Removed GstThread.
4600         Removed Schedulers.
4601         Simplified GstQueue for multithreaded core.
4602         Made _link threadsafe, removed old capsnego.
4603         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4604         Added pad blocking functions.
4605         Reworked scheduling functions in GstPad to prepare for
4606         scheduling updates soon.
4607         Moved events out of data stream.
4608         Simplified GstEvent types.
4609         Added return values to push/pull.
4610         Removed clocking from GstElement.
4611         Added prototypes for state change function for next merge.
4612         Removed iterate from bins and state change management.
4613         Fixed some elements, disabled others for now.
4614         Fixed -inspect and -launch.
4615         Added check for GstBus.
4616
4617 2005-03-10  Wim Taymans  <wim@fluendo.com>
4618
4619         * docs/design/part-MT-refcounting.txt:
4620         * docs/design/part-clocks.txt:
4621         * docs/design/part-gstelement.txt:
4622         * docs/design/part-gstobject.txt:
4623         * docs/design/part-standards.txt:
4624         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4625         (gst_bin_remove_func), (gst_bin_remove):
4626         * gst/gstbin.h:
4627         * gst/gstbuffer.c:
4628         * gst/gstcaps.h:
4629         * testsuite/clock/clock1.c: (main):
4630         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4631         (main):
4632         * testsuite/dlopen/loadgst.c: (do_test):
4633         * testsuite/refcounting/bin.c: (add_remove_test1),
4634         (add_remove_test2), (main):
4635         * testsuite/refcounting/element.c: (main):
4636         * testsuite/refcounting/element_pad.c: (main):
4637         * testsuite/refcounting/pad.c: (main):
4638         * tools/gst-launch.c: (sigint_handler_sighandler):
4639         * tools/gst-typefind.c: (main):
4640         Doc updates.
4641         Added doc about clock.
4642         removed gst_bin_iterate_recurse_up(), marked methods
4643         for removal.
4644         Fix more testsuites.
4645
4646 2005-03-09  Wim Taymans  <wim@fluendo.com>
4647
4648         * gst/gstpad.c: (gst_pad_get_direction),
4649         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4650         (gst_pad_collect_valist):
4651         * testsuite/bins/interface.c: (main):
4652         * testsuite/caps/audioscale.c: (test_caps):
4653         * testsuite/caps/caps.c: (test1), (test2), (test3):
4654         * testsuite/caps/deserialize.c: (main):
4655         * testsuite/caps/enumcaps.c: (main):
4656         * testsuite/caps/filtercaps.c: (main):
4657         * testsuite/caps/intersect2.c: (main):
4658         * testsuite/caps/random.c: (main):
4659         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4660         * testsuite/caps/sets.c: (check_caps):
4661         * testsuite/caps/simplify.c: (check_caps), (main):
4662         * testsuite/caps/subtract.c: (check_caps):
4663         Fix _pad_get_direction wrt ghostpads.
4664         Fix caps testsuite.
4665
4666 2005-03-09  Wim Taymans  <wim@fluendo.com>
4667
4668         * check/Makefile.am:
4669         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4670         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4671         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4672         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4673         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4674         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4675         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4676         (bin_element_is_sink), (gst_bin_iterate_sinks),
4677         (gst_bin_iterate_all_by_interface):
4678         * gst/gstbin.h:
4679         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4680         (gst_element_change_state), (gst_element_dispose),
4681         (gst_element_finalize), (gst_element_set_loop_function):
4682         * gst/gstelement.h:
4683         * gst/gstiterator.c: (find_custom_fold_func):
4684         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4685         (gst_pad_collectv), (gst_pad_collect_valist),
4686         (gst_pad_template_new):
4687         * gst/gstpipeline.c: (gst_pipeline_class_init),
4688         (gst_pipeline_dispose), (gst_pipeline_set_property),
4689         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4690         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4691         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4692         * gst/gstutils.h:
4693         * gst/schedulers/entryscheduler.c:
4694         * gst/schedulers/gstbasicscheduler.c:
4695         (gst_basic_scheduler_cothreaded_chain),
4696         (gst_basic_scheduler_chain_add_element):
4697         * testsuite/bins/interface.c: (main):
4698         Added GstBin test.
4699         Added GstSystemClock test.
4700         Implemented clock distribution code in GstBin.
4701         Implemented iterate sinks method for future use.
4702         Rearranged gstelement.h
4703         Fix GstIterator comparison bug.
4704         Moved some code to GstPipeline, mostly clocking related.
4705
4706 2005-03-09  Wim Taymans  <wim@fluendo.com>
4707
4708         * configure.ac:
4709         * gst/gst_private.h:
4710         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4711         (gst_bin_remove_func), (gst_bin_remove),
4712         (gst_bin_get_by_name_recurse_up):
4713         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4714         (gst_clock_id_compare_func), (gst_clock_id_wait),
4715         (gst_clock_id_wait_async), (gst_clock_init),
4716         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4717         * gst/gstelement.h:
4718         * gst/gstinfo.c: (_gst_debug_init):
4719         * gst/gstobject.h:
4720         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4721         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4722         * gst/gstpad.h:
4723         Bump version number, we're now 0.9.0
4724         Add future debugging category.
4725         Fix NULL _unref() in _get_by_name_recurse_up
4726         Rearrange gstpad.h.
4727         Update some docs.
4728
4729 2005-03-08  Wim Taymans  <wim@fluendo.com>
4730
4731         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4732         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4733         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4734         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4735         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4736         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4737         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4738         * gst/elements/gstidentity.c: (gst_identity_class_init):
4739         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4740         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4741         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4742         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4743         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4744         (gst_tee_link):
4745         * gst/gstelement.c: (gst_element_class_init),
4746         (gst_element_base_class_init), (gst_element_init),
4747         (gst_element_get_random_pad), (gst_element_wait_state_change),
4748         (gst_element_change_state), (gst_element_dispose),
4749         (gst_element_finalize), (gst_element_set_loop_function):
4750         * gst/gstelement.h:
4751         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4752         * gst/gstthread.c: (gst_thread_class_init),
4753         (gst_thread_release_children_locks), (gst_thread_change_state):
4754         * gst/schedulers/gstbasicscheduler.c:
4755         (gst_basic_scheduler_loopfunc_wrapper),
4756         (gst_basic_scheduler_chain_wrapper),
4757         (gst_basic_scheduler_src_wrapper),
4758         (gst_basic_scheduler_remove_element):
4759         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4760         Remove threadsafe properties. Fix elements because GObject
4761         complains when installing a property before declaring a
4762         set/get_property handler.
4763         Rearrange gstelement.h file, use STATE macros for state locks.
4764         Free mutexes in the finalize method instead of dispose.
4765
4766 2005-03-08  Wim Taymans  <wim@fluendo.com>
4767
4768         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4769         * gst/gstthread.c: (gst_thread_release_children_locks):
4770         Added parentage check.
4771         Fix build og GstThread again.
4772
4773 2005-03-08  Wim Taymans  <wim@fluendo.com>
4774
4775         * docs/design/part-MT-refcounting.txt:
4776         * docs/design/part-conventions.txt:
4777         * docs/design/part-gstobject.txt:
4778         * docs/design/part-relations.txt:
4779         * docs/design/part-standards.txt:
4780         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4781         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4782         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4783         (gst_bin_iterate_all_by_interface):
4784         * gst/gstbuffer.h:
4785         * gst/gstclock.h:
4786         * gst/gstelement.c: (gst_element_class_init),
4787         (gst_element_change_state), (gst_element_set_loop_function):
4788         * gst/gstelement.h:
4789         * gst/gstiterator.c:
4790         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4791         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4792         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4793         (gst_object_set_parent), (gst_object_unparent),
4794         (gst_object_check_uniqueness):
4795         * gst/gstobject.h:
4796         Docs updates, clean up some headers.
4797
4798 2005-03-07  Wim Taymans  <wim@fluendo.com>
4799
4800         * check/.cvsignore:
4801         * check/Makefile.am:
4802         * check/gst-libs/.cvsignore:
4803         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4804         * check/gst/.cvsignore:
4805         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4806         (START_TEST), (gstbus_suite), (main):
4807         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4808         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4809         (gst_data_suite), (main):
4810         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4811         (add_fold_func), (gstiterator_suite), (main):
4812         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4813         (thread_name_object), (thread_name_object_default),
4814         (gst_object_name_compare), (gst_object_suite), (main):
4815         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4816         (gst_pad_suite), (main):
4817         * check/gstcheck.c: (gst_check_log_message_func),
4818         (gst_check_log_critical_func), (gst_check_init):
4819         * check/gstcheck.h:
4820         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4821         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4822         Added checks.
4823
4824 2005-03-07  Wim Taymans  <wim@fluendo.com>
4825
4826         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4827         (gst_list_iterator_next), (gst_list_iterator_resync),
4828         (gst_list_iterator_free), (gst_iterator_new_list),
4829         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4830         (gst_iterator_free), (gst_iterator_push), (filter_next),
4831         (filter_resync), (filter_uninit), (filter_free),
4832         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4833         (gst_iterator_foreach), (find_custom_fold_func),
4834         (gst_iterator_find_custom):
4835         * gst/gstiterator.h:
4836         Added missing files.
4837
4838 2005-03-07  Wim Taymans  <wim@fluendo.com>
4839
4840         * Makefile.am:
4841         * configure.ac:
4842         * docs/design/part-MT-refcounting.txt:
4843         * docs/design/part-conventions.txt:
4844         * docs/design/part-gstobject.txt:
4845         * docs/design/part-relations.txt:
4846         * examples/mixer/mixer.c: (main):
4847         * examples/thread/thread.c: (eos), (main):
4848         * gst/Makefile.am:
4849         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4850         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4851         (gst_spider_plug_from_srcpad):
4852         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4853         (gst_spider_identity_change_state),
4854         (gst_spider_identity_sink_loop_type_finding):
4855         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4856         * gst/elements/gstidentity.c: (gst_identity_init):
4857         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4858         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4859         * gst/elements/gsttypefindelement.c: (free_entry):
4860         * gst/gst.c:
4861         * gst/gst.h:
4862         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4863         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4864         (gst_bin_set_index), (gst_bin_set_element_sched),
4865         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4866         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4867         (gst_bin_iterate_elements), (iterate_child_recurse),
4868         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4869         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4870         (compare_interface), (gst_bin_get_by_interface),
4871         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4872         * gst/gstbin.h:
4873         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4874         (gst_buffer_default_free), (gst_buffer_default_copy),
4875         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4876         (gst_buffer_create_sub):
4877         * gst/gstbuffer.h:
4878         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4879         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4880         (gst_caps_unref), (gst_static_caps_get),
4881         (gst_caps_remove_and_get_structure), (gst_caps_append),
4882         (gst_caps_append_structure), (gst_caps_remove_structure),
4883         (gst_caps_copy_nth), (gst_caps_set_simple),
4884         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4885         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4886         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4887         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4888         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4889         (gst_caps_structure_figure_out_union),
4890         (gst_caps_switch_structures), (gst_caps_do_simplify),
4891         (gst_caps_replace), (gst_caps_from_string),
4892         (gst_caps_copy_conditional):
4893         * gst/gstcaps.h:
4894         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4895         (_gst_clock_id_free), (gst_clock_id_unref),
4896         (gst_clock_id_compare_func), (gst_clock_id_wait),
4897         (gst_clock_id_wait_async), (gst_clock_class_init),
4898         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4899         (gst_clock_get_time), (gst_clock_set_time_adjust),
4900         (gst_clock_set_property), (gst_clock_get_property):
4901         * gst/gstclock.h:
4902         * gst/gstcompat.h:
4903         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4904         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4905         * gst/gstdata.h:
4906         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4907         (gst_element_requires_clock), (gst_element_provides_clock),
4908         (gst_element_set_clock), (gst_element_clock_wait),
4909         (gst_element_wait), (gst_element_set_time_delay),
4910         (gst_element_is_indexable), (gst_element_add_pad),
4911         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4912         (pad_compare_name), (gst_element_get_static_pad),
4913         (gst_element_request_pad), (gst_element_get_request_pad),
4914         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4915         (gst_element_class_get_pad_template_list),
4916         (gst_element_class_get_pad_template), (gst_element_error_func),
4917         (gst_element_get_random_pad), (gst_element_get_event_masks),
4918         (gst_element_send_event), (gst_element_seek),
4919         (gst_element_get_query_types), (gst_element_query),
4920         (gst_element_get_formats), (gst_element_convert),
4921         (gst_element_is_locked_state), (gst_element_set_locked_state),
4922         (gst_element_sync_state_with_parent), (gst_element_change_state),
4923         (gst_element_finalize), (gst_element_yield),
4924         (gst_element_interrupt), (gst_element_set_scheduler),
4925         (gst_element_get_scheduler), (gst_element_set_loop_function):
4926         * gst/gstelement.h:
4927         * gst/gstevent.h:
4928         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4929         (gst_format_get_by_nick), (gst_format_get_details),
4930         (gst_format_iterate_definitions):
4931         * gst/gstformat.h:
4932         * gst/gstindex.c: (gst_index_gtype_resolver):
4933         * gst/gstinfo.c:
4934         * gst/gstinfo.h:
4935         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4936         (gst_mem_chunk_free):
4937         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4938         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4939         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4940         (gst_object_dispatch_properties_changed),
4941         (gst_object_set_name_default), (gst_object_set_name),
4942         (gst_object_get_name), (gst_object_set_name_prefix),
4943         (gst_object_get_name_prefix), (gst_object_set_parent),
4944         (gst_object_get_parent), (gst_object_unparent),
4945         (gst_object_check_uniqueness), (gst_object_save_thyself),
4946         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4947         (gst_object_set_property), (gst_object_get_property),
4948         (gst_object_get_path_string):
4949         * gst/gstobject.h:
4950         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4951         (gst_real_pad_init), (gst_real_pad_get_property),
4952         (gst_pad_custom_new), (gst_pad_get_direction),
4953         (gst_pad_set_active), (gst_pad_is_active),
4954         (gst_pad_set_event_function), (gst_pad_is_linked),
4955         (gst_pad_link_free), (gst_pad_link_intersect),
4956         (gst_pad_link_fixate), (gst_pad_set_caps),
4957         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4958         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4959         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4960         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4961         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4962         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4963         (gst_pad_realize), (gst_pad_get_allowed_caps),
4964         (gst_real_pad_dispose), (gst_real_pad_finalize),
4965         (gst_pad_collectv), (gst_pad_collect_valist),
4966         (gst_pad_template_dispose), (gst_pad_template_new),
4967         (gst_pad_get_internal_links):
4968         * gst/gstpad.h:
4969         * gst/gstpipeline.c: (gst_pipeline_dispose),
4970         (gst_pipeline_change_state):
4971         * gst/gstpipeline.h:
4972         * gst/gstplugin.c:
4973         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4974         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4975         * gst/gstpluginfeature.h:
4976         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4977         * gst/gstquery.c: (_gst_query_type_initialize),
4978         (gst_query_type_register), (gst_query_type_get_by_nick),
4979         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4980         * gst/gstquery.h:
4981         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4982         * gst/gstscheduler.c: (gst_scheduler_add_element),
4983         (gst_scheduler_factory_create):
4984         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4985         (gst_structure_free), (gst_structure_set_name),
4986         (gst_structure_id_set_value), (gst_structure_set_value),
4987         (gst_structure_set_valist), (gst_structure_remove_field),
4988         (gst_structure_remove_fields),
4989         (gst_structure_remove_fields_valist),
4990         (gst_structure_remove_all_fields), (gst_structure_foreach),
4991         (gst_structure_map_in_place),
4992         (gst_caps_structure_fixate_field_nearest_int),
4993         (gst_caps_structure_fixate_field_nearest_double):
4994         * gst/gststructure.h:
4995         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4996         (gst_system_clock_init), (gst_system_clock_dispose),
4997         (gst_system_clock_async_thread),
4998         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4999         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5000         * gst/gstsystemclock.h:
5001         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5002         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5003         * gst/gsttaginterface.c:
5004         * gst/gstthread.c: (gst_thread_dispose),
5005         (gst_thread_release_children_locks), (gst_thread_change_state),
5006         (gst_thread_main_loop):
5007         * gst/gsttrashstack.h:
5008         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5009         * gst/gsttypes.h:
5010         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5011         (gst_element_request_pad), (gst_element_get_pad_from_template),
5012         (gst_element_request_compatible_pad),
5013         (gst_element_get_compatible_pad_filtered),
5014         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5015         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5016         (gst_element_link_many), (gst_element_link),
5017         (gst_element_link_pads), (gst_element_unlink_pads),
5018         (gst_element_unlink_many), (gst_element_unlink),
5019         (gst_pad_can_link_filtered), (gst_pad_can_link),
5020         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5021         (gst_object_default_error), (gst_bin_add_many),
5022         (gst_bin_remove_many), (gst_element_populate_std_props),
5023         (gst_element_class_install_std_props), (gst_buffer_merge),
5024         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5025         (link_fold_func), (gst_pad_proxy_setcaps):
5026         * gst/gstutils.h:
5027         * gst/gstvalue.c: (gst_value_deserialize_string):
5028         * gst/parse/grammar.y:
5029         * gst/schedulers/gstbasicscheduler.c:
5030         (gst_basic_scheduler_cothreaded_chain),
5031         (gst_basic_scheduler_chain_recursive_add),
5032         (gst_basic_scheduler_pad_link):
5033         * gst/schedulers/gstoptimalscheduler.c:
5034         (get_group_schedule_function),
5035         (gst_opt_scheduler_state_transition),
5036         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5037         * libs/gst/bytestream/bytestream.c:
5038         * libs/gst/dataprotocol/dataprotocol.c:
5039         (gst_dp_header_from_buffer):
5040         * po/nb.po:
5041         * po/ru.po:
5042         * tests/threadstate/threadstate2.c: (eos):
5043         * tools/gst-compprep.c: (main):
5044         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5045         (print_pad_info), (print_children_info):
5046         * tools/gst-launch.c: (idle_func), (main):
5047         * tools/gst-md5sum.c: (idle_func), (main):
5048         * tools/gst-xmlinspect.c: (print_element_info):
5049         First THREADED backport attempt, focusing on adding locks and
5050         making sure the API is threadsafe. Needs more work. More docs
5051         follow this week.
5052
5053 2005-02-24  Andy Wingo  <wingo@pobox.com>
5054
5055         * tests/bench-complexity.scm:
5056         * tests/complexity.gnuplot: New files, good for running complexity
5057         benchmarks.
5058
5059         * tests/Makefile.am:
5060         * tests/complexity.c: New test, sets up N elements, at each level
5061         teeing into M streams per element. Eeeenteresting.
5062
5063         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5064         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5065         running bench-mass_elements.scm.
5066
5067         * tests/bench-mass_elements.scm: New script, runs mass_elements
5068         for various numbers of identities, outputting the results to a
5069         file. Requires guile 1.6. Just for testing.
5070
5071 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5072
5073         * gst/schedulers/fairscheduler.c:
5074           compile with debug disabled
5075
5076 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5077
5078         * configure.ac:
5079           hunting season on 0.9 is now OPEN
5080
5081 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5082
5083         * docs/libs/tmpl/gstcontrol.sgml:
5084         * docs/libs/tmpl/gstdparam.sgml:
5085         * docs/libs/tmpl/gstdplinint.sgml:
5086         * docs/libs/tmpl/gstdpman.sgml:
5087         * docs/libs/tmpl/gstdpsmooth.sgml:
5088         * docs/libs/tmpl/gstunitconvert.sgml:
5089           more docs for the state of dparams
5090
5091 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5092
5093         * gst/gstelementfactory.c: (gst_element_factory_create):
5094         * gst/gstobject.c: (gst_object_init),
5095         (gst_object_set_name_default), (gst_object_set_name):
5096           name objects by default, not in gst_element_factory_create. Allows
5097           using elements created with g_object_new. (fixes #167283)
5098
5099 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5100
5101         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5102           make the time that debugging functions print relative to when
5103           gst_init was called
5104
5105 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5106
5107         * gst/gsttaginterface.c:
5108           Fix inline docs: tag setter vararg functions are NULL-terminated,
5109           GST_TAG_INVALID doesn't exist any more.
5110
5111 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5112
5113         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5114         Allocate the 1 byte more memory that was forgotten!!!!!
5115         fixes memory corruption on 64bit platforms
5116
5117 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5118
5119         * docs/pwg/building-pads.xml:
5120         * docs/pwg/intro-basics.xml:
5121           fixed a few typos, relabeled introductionary list of types
5122         * docs/random/ensonic/dparams.txt:
5123           more notes abut dparam changes
5124         * libs/gst/control/dparam.c: (gst_dparam_attach):
5125         * libs/gst/control/dparammanager.c:
5126         * libs/gst/control/dparammanager.h:
5127           - many comments and notes on dparam implementation
5128           - new dparams are were not initialized to the default value
5129             from param spec
5130
5131 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5132
5133         submitted by: Peter Astakhov
5134
5135         * po/LINGUAS:
5136         * po/ru.po:
5137           adding Russian translation
5138
5139 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5140
5141         * configure.ac:
5142         * docs/gst/Makefile.am:
5143         * docs/libs/Makefile.am:
5144           make sure popt is added to gtk-doc flags.  Fixes #147782.
5145
5146 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5147
5148         * docs/faq/using.xml:
5149           Fix typo in FAQ (artssink => artsdsink)
5150
5151 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5152
5153         * tools/gst-launch.1.in:
5154           Fix typo (#166699).
5155
5156 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5157
5158         * docs/faq/using.xml:
5159           Add -v argument to fakesrc/fakesink gst-launch line,
5160           so that the promised output will actually show up.
5161
5162 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5163
5164         * gst/gstthread.c: (gst_thread_change_state):
5165           Implement state-change error handling (#166073).
5166
5167 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5168
5169         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5170           Release interrupt after handling (#166250).
5171
5172 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5173
5174         * configure.ac:
5175           back to HEAD
5176
5177 === release 0.8.9 ===
5178
5179 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5180
5181         * NEWS:
5182         * RELEASE:
5183         * configure.ac:
5184           releasing 0.8.9, "Like Eating Glass"
5185
5186 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5187
5188         submitted by: Clytie Siddall
5189
5190         * po/vi.po: Added Vietnamese translation
5191
5192 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5193
5194         patch by: Tim Philipp-Müller
5195
5196         * configure.ac:
5197         * gst/gstpad.c:
5198           unref data when probe function returns FALSE.  Fixes #166362
5199
5200 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5201
5202         * gst/gst.c: (gst_init_get_popt_table):
5203           Fix typo (#166269).
5204
5205 2005-02-04  Andy Wingo  <wingo@pobox.com>
5206
5207         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5208         the debugging on whether the caps are compatible.
5209
5210 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5211
5212         * docs/manual/basics-elements.xml:
5213           Fix two typos.
5214
5215 2005-02-02  Wim Taymans  <wim@fluendo.com>
5216
5217         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5218         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5219         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5220         Remove some FIXMEs after analysing and commenting why they
5221         are not issues.
5222
5223 2005-02-02  Wim Taymans  <wim@fluendo.com>
5224
5225         * gst/schedulers/gstoptimalscheduler.c:
5226         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5227         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5228         (get_invalid_call), (chain_invalid_call),
5229         (get_group_schedule_function), (loop_group_schedule_function),
5230         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5231         (gst_opt_scheduler_state_transition),
5232         (gst_opt_scheduler_add_element),
5233         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5234         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5235         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5236         (gst_opt_scheduler_show):
5237         Added lock to protect scheduler data structures.
5238
5239 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5240
5241         * testsuite/threads/threadi.c: (cb_data):
5242           Fix buglet in test.
5243
5244 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5245
5246         * testsuite/threads/Makefile.am:
5247         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5248           On Wim's request, split the test in three separately-compiled
5249           tests that each test a very specific bug. Two of them still fail,
5250           will create bugs for those. threadi.c indicates why they fail.
5251
5252 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5253
5254         * gst/schedulers/gstoptimalscheduler.c:
5255         (get_group_schedule_function):
5256           Try to work with the threading mess that queue_link is.
5257
5258 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5259
5260         * gst/gstbin.c: (gst_bin_remove_func):
5261           Explicitely make an element release locks in a group when being
5262           remove from a bin.
5263         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5264           If there's no scheduler, always return immediately (similar to
5265           gst_element_interrupt).
5266
5267 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5268
5269         * gst/gstbin.c: (gst_bin_child_state_change_func):
5270           Remove a piece of code that could never be reached.
5271         * docs/gst/gstreamer-sections.txt:
5272         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5273         (gst_pad_call_get_function):
5274         * gst/gstpad.h:
5275         * testsuite/pad/Makefile.am:
5276           Fix #150546, enable tests.
5277
5278 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5279
5280         * docs/pwg/advanced-types.xml:
5281           Fix description for buffer-frames=0.
5282         * docs/gst/tmpl/gstbin.sgml:
5283         * gst/gstbin.c: (gst_bin_child_state_change_func),
5284         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5285         * gst/gstbin.h:
5286         * testsuite/threads/Makefile.am:
5287         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5288         (cb_state), (cb_play), (main):
5289           Fix non-recursive state changes to *really* change the state
5290           of the object, and not just call parent_class->state_change.
5291           Fix a lot of lockups caused by this. Fixes #132775. Add test
5292           for the problem. Also enable test to show #142588 (fixed).
5293         * gst/gstthread.c: (gst_thread_change_state),
5294         (gst_thread_child_state_change):
5295           Don't exit the thread if we go to NULL and are inside thread
5296           context. Instead, return control to the main thread context
5297           and exit from there.
5298         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5299           Don't unset virtual functions, since those may still be used.
5300           That's not necessarily correct, but suffices for now.
5301         * configure.ac:
5302         * testsuite/Makefile.am:
5303         * testsuite/pad/Makefile.am:
5304         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5305         (gst_test_sink_base_init), (gst_test_sink_chain),
5306         (gst_test_sink_init), (main):
5307         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5308         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5309         (main):
5310         * testsuite/pad/link.c: (gst_test_element_class_init),
5311         (gst_test_element_base_init), (gst_test_src_get),
5312         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5313         (gst_test_filter_loop), (gst_test_filter_init),
5314         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5315         (cb_error), (main):
5316           Add tests to show #150546. Pass, but should fail (currently
5317           disabled from the testsuite).
5318         * gst/gstscheduler.c: (gst_scheduler_dispose):
5319           Dereference child schedulers on dispose (#94464).
5320         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5321           Fix typo.
5322         * testsuite/threads/thread.c: (main):
5323           Add more debug.
5324
5325 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5326
5327         * gst/gstpad.c: (gst_pad_push):
5328           Oops, revert previous commit, broke testsuite...
5329
5330 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5331
5332         * gst/gstpad.c: (gst_pad_push):
5333           Add check that the pad on which the push is performed is not a
5334           get-based pad (#150546).
5335
5336 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5337
5338         * gst/elements/gsttypefindelement.c:
5339         (gst_type_find_element_handle_event):
5340           Fix buffer pushing if stream EOSes during typefinding.
5341
5342 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5343
5344         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5345
5346         * gst/gstvalue.c: (gst_string_wrap):
5347           Allow NULL-strings as argument (#165365).
5348
5349 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5350
5351         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5352
5353         * gst/schedulers/faircothreads.c:
5354         (gst_fair_scheduler_cothread_queue_show):
5355           Fix build without debug enabled.
5356
5357 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5358
5359         * docs/gst/gstreamer-sections.txt:
5360         * docs/libs/gstreamer-libs-docs.sgml:
5361         * docs/libs/gstreamer-libs-sections.txt:
5362         * docs/libs/tmpl/gstcontrol.sgml:
5363         * docs/libs/tmpl/gstdparam.sgml:
5364         * docs/libs/tmpl/gstdplinint.sgml:
5365         * docs/libs/tmpl/gstdpman.sgml:
5366         * docs/libs/tmpl/gstdpsmooth.sgml:
5367         * docs/libs/tmpl/gstputbits.sgml:
5368         * docs/libs/tmpl/gstunitconvert.sgml:
5369         * libs/gst/control/dparam.c:
5370         * libs/gst/control/dparam.h:
5371         * libs/gst/control/dparammanager.c:
5372         (gst_dpman_add_required_dparam_callback),
5373         (gst_dpman_add_required_dparam_direct),
5374         (gst_dpman_add_required_dparam_array),
5375         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5376         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5377         (gst_dpman_get_manager)
5378           restructured DParam docs
5379
5380 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5381
5382         * gst-element-check.m4:
5383           Only check for gst-inspect if we haven't already
5384           found it in previous element check runs
5385
5386 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5387
5388         * docs/gst/Makefile.am:
5389         * docs/libs/Makefile.am:
5390           fixed install rules to treat style.css as optional
5391
5392 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5393
5394         * docs/gst/Makefile.am:
5395         * docs/libs/Makefile.am:
5396           install style.css along with docs
5397         * docs/gst/tmpl/gstbin.sgml:
5398         * docs/gst/tmpl/gstclock.sgml:
5399         * docs/gst/tmpl/gstdata.sgml:
5400         * docs/gst/tmpl/gstelement.sgml:
5401         * gst/gstbin.h:
5402         * gst/gstelement.c: (gst_element_class_init):
5403         * gst/gstelement.h:
5404           fixing incomplete docs
5405
5406 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5407
5408         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5409           Don't unref seek event twice when fflush() fails
5410           
5411 2005-01-22  David Schleef  <ds@schleef.org>
5412
5413         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5414
5415 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5416
5417         * docs/gst/Makefile.am:
5418         * docs/libs/Makefile.am:
5419           added params for deprecation guards
5420         * gst/gst.c:
5421         * gst/gst.h:
5422         * gst/gsterror.c: (_gst_resource_errors_init),
5423         (_gst_stream_errors_init):
5424         * gst/gsterror.h:
5425           documented some more enums
5426
5427 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5428         * gst/autoplug/gstspideridentity.c:
5429         Cosmetic fix - spider_find_peek should be static
5430         * gst/parse/parse.l:
5431         Applying fix for #164261
5432
5433 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5434
5435         * docs/gst/gstreamer-sections.txt:
5436         * docs/gst/tmpl/gstplugin.sgml:
5437         * docs/libs/gstreamer-libs-sections.txt:
5438         * docs/libs/tmpl/gstcontrol.sgml:
5439         * gst/gstbuffer.h:
5440         * gst/gsttag.h:
5441         * gst/gstvalue.c:
5442           added docs for the TAG defines
5443
5444 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5445
5446         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5447           Only unref entry if there is an entry.
5448
5449 2005-01-17  Wim Taymans  <wim@fluendo.com>
5450
5451         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5452         (remove_from_group), (schedule_group), (normalize_group),
5453         (gst_opt_scheduler_iterate):
5454         Also ref/unref decoupled elements before iterating the
5455         group since they are not added to the list of elements.
5456
5457 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5458
5459         * docs/manual/highlevel-components.xml:
5460           Add subtitle/streamselection as new features to playbin.
5461
5462 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5463
5464         * docs/manual/manual.xml:
5465           Re-enable dataaccess docs (oops).
5466
5467 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5468
5469         * docs/pwg/advanced-types.xml:
5470         * docs/random/mimetypes:
5471           Add documentation on libsndfile types (#163309), by Steve Baker
5472           <steve@stevebaker.org>.
5473         * gst/gstelement.c: (gst_element_release_request_pad):
5474           If an element has no explicit function, just remove the pad.
5475
5476 2005-01-17  Luca Ognibene  <luogni@tin.it>
5477
5478         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5479
5480         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5481           Fix memleak (#163801).
5482
5483 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5484
5485         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5486           I think this is actually more correct...
5487
5488 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5489
5490         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5491           Another workaround for memory access while destroyed in callback.
5492           Please, someone with refcount knowledge, have a look at this.
5493
5494 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5495
5496         * docs/faq/faq.xml:
5497         * docs/faq/legal.xml:
5498           move the legal Q&A here
5499
5500 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5501
5502         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5503         (gst_tee_request_new_pad):
5504           Fix negotiation.
5505
5506 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5507
5508         * docs/random/omega/caps2:
5509         * testsuite/caps/caps_strings:
5510           replace framerate aproximations by their real value
5511           (24000/1001, 30000/1001, 60000/1001)
5512           Partially fixes bug #164049
5513
5514 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5515
5516         * docs/gst/Makefile.am:
5517           don't fail on the stupid GstPoptOption
5518
5519 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5520
5521         * gst/gstpad.h:
5522         * gst/gstprobe.c:
5523           allow probes to work on ghost pads by realizing the pad
5524           probe debugging
5525
5526 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5527
5528         * docs/gst/gstreamer-sections.txt:
5529         * docs/gst/tmpl/gstpad.sgml:
5530         * gst/gstpad.c: (gst_pad_set_active_recursive):
5531         * gst/gstpad.h:
5532           Add gst_pad_set_active_recursive().
5533
5534 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5535
5536         * docs/random/release:
5537           updates
5538         * gst/gst_private.h:
5539         * gst/gstinfo.c:
5540         * gst/gstobject.c:
5541           move deep_notify logging to a new category
5542         * gst/gstprobe.c:
5543         * gst/gstprobe.h:
5544           add stuff so bindings can wrap probes
5545
5546 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5547
5548         * gst/gstplugin.c: (gst_plugin_load):
5549           Fix plugin loading if plugin/lib was already loaded. Fixes
5550           #163383
5551
5552 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5553
5554         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5555
5556         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5557           Protect plugin loading by a mutex so it's threadsafe. Fixes
5558           #163234.
5559
5560 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5561
5562         * gst/gstevent.c: (_gst_event_copy):
5563           Reference source object when copying events, since it'll be
5564           dereferenced on event dereferencing as well.
5565
5566 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5567
5568         * docs/gst/gstreamer-sections.txt:
5569         * docs/gst/tmpl/gstevent.sgml:
5570         * gst/gstevent.c: (gst_event_new_filler_stamped),
5571         (gst_event_filler_get_duration):
5572         * gst/gstevent.h:
5573           Add two new functions for filler events (which are used to
5574           synchronize streams if one of them is not having any data
5575           for a while) without interrupting the actual data-stream.
5576           Basically a no-op.
5577         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5578         (gst_queue_link_sink), (gst_queue_link_src),
5579         (gst_queue_change_state):
5580           Allow for renegotiation while filled. Required for stream
5581           switching while playing.
5582
5583 2005-01-08  Benjamin Otte  <otte@gnome.org>
5584
5585         * gst/gstelement.c: (gst_element_link_many):
5586           fix up g_return_if_fail's
5587         * po/LINGUAS:
5588         * po/de.po:
5589           add German translation, that was somehow not included
5590
5591 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5592
5593         * docs/random/mimetypes:
5594           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5595           do not add them to riff-lib as they are not common
5596
5597 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5598
5599         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5600           Check for existence of probe after performing the probe before
5601           re-accessing it to prevent segfaults caused by removal of the
5602           probe in the callback.
5603
5604 2005-01-05  David Schleef  <ds@schleef.org>
5605
5606         * testsuite/registry/Makefile.am:
5607         * testsuite/registry/gst-print-formats.c:
5608         (print_pad_templates_info), (print_element_list),
5609         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5610         (g_list_uniqify), (get_pad_templates_info),
5611         (get_element_mime_list), (print_mime_list), (main): A little
5612         program that looks through the registry to find elements of
5613         a given type.  Not particularly interesting as a test, except
5614         that there's no other test covering the same area.
5615
5616 2005-01-05  David Schleef  <ds@schleef.org>
5617
5618         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5619         (fault_handler_sigaction), (fault_spin),
5620         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5621         in signal.h-type signal handlers by not calling forbidden functions,
5622         including gst_element_set_state().
5623
5624 2005-01-05  David Schleef  <ds@schleef.org>
5625
5626         * gst/gstvalue.h: Mark _gst_reserved[] as private
5627
5628 2005-01-05  David Schleef  <ds@schleef.org>
5629
5630         * gst/gstvalue.c: Fix doc build problem.
5631
5632 2005-01-05  David Schleef  <ds@schleef.org>
5633
5634         * gst/gstvalue.c: Add some documentation
5635
5636 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5637
5638         * docs/README:
5639           another shell oneliner for empty return value docs
5640         * gst/gstcaps.c:
5641         * gst/gstvalue.c:
5642         * libs/gst/control/dparam.c:
5643           more doc fixes (parameters and return values)
5644
5645 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5646
5647         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5648
5649         * gst/gstregistry.h:
5650         * gst/registries/gstxmlregistry.c:
5651           Fix macro's for Mingw (fixes #162276).
5652
5653 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5654
5655         * docs/README:
5656           quick shell oneliner to find undocumented members
5657         * docs/gst/tmpl/gstplugin.sgml:
5658         * docs/gst/tmpl/gstscheduler.sgml:
5659         * docs/gst/tmpl/gstthread.sgml:
5660           more enumtypes cleanup
5661         * gst/gsterror.h:
5662           activated documentation comments, now someone needs to document
5663           the enums :(
5664
5665 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5666
5667         * docs/manual/manual.xml:
5668           Add dataaccess part (doh!).
5669
5670 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5671
5672         * docs/manual/advanced-autoplugging.xml:
5673           Fix typo (intiate -> initiate).
5674
5675 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5676
5677         * docs/random/bbb/streamselection:
5678           Add some notes on how to handle multi-subtitle/-audio streams.
5679
5680 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5681
5682         * docs/gst/gstreamer-docs.sgml:
5683         * docs/gst/gstreamer-sections.txt:
5684         * docs/gst/tmpl/gstenumtypes.sgml:
5685         * docs/gst/tmpl/gsterror.sgml:
5686         * docs/gst/tmpl/gstevent.sgml:
5687         * docs/gst/tmpl/gstpad.sgml:
5688         * docs/gst/tmpl/gstpadtemplate.sgml:
5689         * docs/gst/tmpl/gstthread.sgml:
5690           removed gstenumtypes section from docs and put all the enums into
5691           their sections
5692
5693 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5694
5695         * gst/gstplugin.c:
5696           document gst_library_load a bit more (riff special case + return
5697           value if already loaded)
5698         * testsuite/bytestream/filepadsink.c:
5699           plugin name is 'gstbytestream', not 'bytestream'
5700
5701 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5702
5703         * docs/random/bbb/subtitles:
5704           Add some first mind rumblings on proper subtitle support.
5705
5706 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5707
5708         * po/ca.po:
5709         * po/sv.po:
5710           updated translations
5711
5712 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5713
5714         * docs/manual/advanced-dataaccess.xml:
5715           Add section on how to use fakesrc/fakesink/identity in your
5716           application, plus section on how to embed plugins. Also mention
5717           probes.
5718         * docs/manual/appendix-checklist.xml:
5719         * docs/manual/appendix-debugging.xml:
5720         * docs/manual/appendix-gnome.xml:
5721         * docs/manual/appendix-integration.xml:
5722           Debug -> checklist, GNOME -> integration, add sections on Linux,
5723           KDE integration and add other things useful for application
5724           development.
5725         * docs/manual/manual.xml:
5726           Remove some fixmes, update some file pointers.
5727         * docs/pwg/appendix-checklist.xml:
5728           Fix typo.
5729         * docs/pwg/building-boiler.xml:
5730           Remove ugly header and add commented fixme.
5731         * docs/pwg/pwg.xml:
5732           Add fixme.
5733         * examples/manual/Makefile.am:
5734           Add example for added docs.
5735
5736 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5737
5738         * configure.ac:
5739           back to HEAD
5740
5741 === release 0.8.8 ===
5742
5743 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5744
5745         * NEWS:
5746         * RELEASE:
5747         * configure.ac:
5748           Releasing 0.8.8, "I'll Take Care Of You"
5749
5750 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5751
5752         * configure.ac:
5753           second prerelease
5754
5755 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5756
5757         patch by: Wim Taymans
5758
5759         * gst/gstbin.c:
5760           Fix for #159852 - make iterate emission threadsafe
5761
5762 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5763
5764         * docs/faq/cvs.xml:
5765           notes about new fdo account request
5766
5767 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5768
5769         * docs/gst/gstreamer-docs.sgml:
5770         * docs/gst/tmpl/gstenumtypes.sgml:
5771         * docs/gst/tmpl/gstplugin.sgml:
5772         * docs/libs/gstreamer-libs-docs.sgml:
5773           Added missing short docs. Added ids for navigation.
5774
5775 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5776
5777         * docs/manual/advanced-autoplugging.xml:
5778         * docs/manual/advanced-schedulers.xml:
5779         * docs/manual/advanced-threads.xml:
5780           Rewrites. Remove cothreads, go a bit into opt specifically,
5781           document threads and their gotchas, and do some technical stuff
5782           on autoplugging plus add some working examples. Fixes #157395.
5783         * examples/manual/Makefile.am:
5784           Add typefind/autoplugger example (one that actually works).
5785           Remove queue example since it's a duplicate of the thread one.
5786
5787 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5788
5789         * gst/gstvalue.c: (gst_value_deserialize_string):
5790           use deprecated g_value_set_string_take_ownership to keep compatible
5791           with glib 2.2
5792
5793 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5794
5795         * gst/gstvalue.c: (gst_value_deserialize_string):
5796           revert last patch, only dom a g_utf8_validate now before accepting
5797           the string - caps parsing strips " from strings so we can't rely on
5798           them
5799         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5800           disable a test that tested the above and comment it
5801
5802 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5803
5804         Patch reviewed by David Schleef  <ds@schleef.org>
5805
5806         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5807         bug #153882)
5808         * win32/gstenumtypes.h: same
5809
5810 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5811
5812         * gst/gstpad.c: (gst_pad_query):
5813           Do query on realized pad, similar to how convert/send_event handle
5814           this. Also makes sense, since this pad belongs to the function to
5815           which this query will be sent. Fixes #158163.
5816
5817 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5818
5819         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5820
5821 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5822
5823         * docs/faq/general.xml: fix pipeline to actually work
5824
5825 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5826
5827         * gst/gstvalue.c: (gst_value_deserialize_string):
5828           check that a simple string that gets deserialized does not contain
5829           invalid characters
5830         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5831           remove a test that tested a wring behaviour
5832
5833 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5834
5835         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5836
5837         * docs/manual/intro-motivation.xml:
5838           Fix typos.
5839
5840 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5841
5842         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5843
5844         * docs/gst/tmpl/gstprobe.sgml:
5845           Fix documentation of probe callback - it is supposed to return
5846           FALSE, not TRUE, to remove data from the stream (#159087).
5847
5848 2004-12-16  Daniel Gazard  <dany42@free.fr>
5849
5850         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5851
5852         * gst/gstelementfactory.c: (gst_element_factory_create):
5853           Fix compile failure if compiling without libxml2 support (#149936).
5854
5855 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5856
5857         * docs/manual/advanced-autoplugging.xml:
5858         * docs/manual/highlevel-components.xml:
5859           Move spider from autoplugging to components. Autoplugging is for
5860           internals, not for solutions. ;-).
5861
5862 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5863
5864         * docs/random/ds/0.9-suggested-changes:
5865           Make note on device/location/uri property names.
5866
5867 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5868
5869         * docs/manual/advanced-autoplugging.xml:
5870         * docs/manual/advanced-clocks.xml:
5871         * docs/manual/advanced-interfaces.xml:
5872         * docs/manual/advanced-metadata.xml:
5873         * docs/manual/advanced-position.xml:
5874         * docs/manual/advanced-schedulers.xml:
5875         * docs/manual/advanced-threads.xml:
5876         * docs/manual/appendix-gnome.xml:
5877         * docs/manual/appendix-programs.xml:
5878         * docs/manual/appendix-quotes.xml:
5879         * docs/manual/autoplugging.xml:
5880         * docs/manual/basics-bins.xml:
5881         * docs/manual/basics-data.xml:
5882         * docs/manual/basics-elements.xml:
5883         * docs/manual/basics-helloworld.xml:
5884         * docs/manual/basics-init.xml:
5885         * docs/manual/basics-pads.xml:
5886         * docs/manual/basics-plugins.xml:
5887         * docs/manual/bins-api.xml:
5888         * docs/manual/bins.xml:
5889         * docs/manual/buffers-api.xml:
5890         * docs/manual/buffers.xml:
5891         * docs/manual/clocks.xml:
5892         * docs/manual/components.xml:
5893         * docs/manual/cothreads.xml:
5894         * docs/manual/debugging.xml:
5895         * docs/manual/dparams-app.xml:
5896         * docs/manual/dynamic.xml:
5897         * docs/manual/elements-api.xml:
5898         * docs/manual/elements.xml:
5899         * docs/manual/factories.xml:
5900         * docs/manual/gnome.xml:
5901         * docs/manual/goals.xml:
5902         * docs/manual/helloworld.xml:
5903         * docs/manual/helloworld2.xml:
5904         * docs/manual/highlevel-components.xml:
5905         * docs/manual/highlevel-xml.xml:
5906         * docs/manual/init-api.xml:
5907         * docs/manual/intro-basics.xml:
5908         * docs/manual/intro-motivation.xml:
5909         * docs/manual/intro-preface.xml:
5910         * docs/manual/intro.xml:
5911         * docs/manual/links-api.xml:
5912         * docs/manual/links.xml:
5913         * docs/manual/manual.xml:
5914         * docs/manual/motivation.xml:
5915         * docs/manual/pads-api.xml:
5916         * docs/manual/pads.xml:
5917         * docs/manual/plugins-api.xml:
5918         * docs/manual/plugins.xml:
5919         * docs/manual/programs.xml:
5920         * docs/manual/queues.xml:
5921         * docs/manual/quotes.xml:
5922         * docs/manual/schedulers.xml:
5923         * docs/manual/states-api.xml:
5924         * docs/manual/states.xml:
5925         * docs/manual/threads.xml:
5926         * docs/manual/typedetection.xml:
5927         * docs/manual/win32.xml:
5928         * docs/manual/xml.xml:
5929           Try 2. This time, include a short preface as a "general
5930           introduction", also add code blocks around all code samples
5931           so they get compiled. We still need a way to tell readers
5932           the filename of the code sample. In some cases, don't show
5933           all code in the documentation, but do include it in the generated
5934           code. This allows for focussing on specific bits in the docs,
5935           while still having a full test application available.
5936         * examples/manual/Makefile.am:
5937           Fix up examples for new ADM. Add several of the new examples that
5938           were either added or were missing from the build system.
5939         * examples/manual/extract.pl:
5940           Allow nameless blocks.
5941
5942 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5943
5944         * docs/manual/elements-api.xml:
5945         * docs/manual/helloworld.xml:
5946         * examples/manual/extract.pl:
5947           fix last example.  Add example of adding code blocks that are not
5948           shown in docbook output.
5949
5950 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5951
5952         * docs/manual/dynamic.xml:
5953         * docs/manual/elements-api.xml:
5954         * docs/manual/gnome.xml:
5955         * docs/manual/helloworld2.xml:
5956         * docs/manual/init-api.xml:
5957         * docs/manual/queues.xml:
5958         * docs/manual/threads.xml:
5959         * docs/manual/xml.xml:
5960         * examples/manual/extract.pl:
5961           Make it possible to extract example code from separate blocks.
5962           Should make Ronald happy.
5963
5964 2004-12-15  Wim Taymans  <wim@fluendo.com>
5965
5966         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5967         (remove_from_group), (group_elements_set_visited),
5968         (normalize_group), (gst_opt_scheduler_iterate):
5969         Fix bug where a flag was not updated on a decoupled entry point 
5970         because we were just checking the group element list and decoupled
5971         elements are not in that list..
5972
5973 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5974
5975         * docs/manual/advanced-autoplugging.xml:
5976         * docs/manual/advanced-clocks.xml:
5977         * docs/manual/advanced-dparams.xml:
5978         * docs/manual/advanced-interfaces.xml:
5979         * docs/manual/advanced-metadata.xml:
5980         * docs/manual/advanced-position.xml:
5981         * docs/manual/advanced-schedulers.xml:
5982         * docs/manual/advanced-threads.xml:
5983         * docs/manual/appendix-debugging.xml:
5984         * docs/manual/appendix-gnome.xml:
5985         * docs/manual/appendix-programs.xml:
5986         * docs/manual/appendix-quotes.xml:
5987         * docs/manual/appendix-win32.xml:
5988         * docs/manual/autoplugging.xml:
5989         * docs/manual/basics-bins.xml:
5990         * docs/manual/basics-data.xml:
5991         * docs/manual/basics-elements.xml:
5992         * docs/manual/basics-helloworld.xml:
5993         * docs/manual/basics-init.xml:
5994         * docs/manual/basics-pads.xml:
5995         * docs/manual/basics-plugins.xml:
5996         * docs/manual/bins-api.xml:
5997         * docs/manual/bins.xml:
5998         * docs/manual/buffers-api.xml:
5999         * docs/manual/buffers.xml:
6000         * docs/manual/clocks.xml:
6001         * docs/manual/components.xml:
6002         * docs/manual/cothreads.xml:
6003         * docs/manual/debugging.xml:
6004         * docs/manual/dparams-app.xml:
6005         * docs/manual/dynamic.xml:
6006         * docs/manual/elements-api.xml:
6007         * docs/manual/elements.xml:
6008         * docs/manual/factories.xml:
6009         * docs/manual/gnome.xml:
6010         * docs/manual/goals.xml:
6011         * docs/manual/helloworld.xml:
6012         * docs/manual/helloworld2.xml:
6013         * docs/manual/highlevel-components.xml:
6014         * docs/manual/highlevel-xml.xml:
6015         * docs/manual/init-api.xml:
6016         * docs/manual/intro-motivation.xml:
6017         * docs/manual/intro-preface.xml:
6018         * docs/manual/intro.xml:
6019         * docs/manual/links-api.xml:
6020         * docs/manual/links.xml:
6021         * docs/manual/manual.xml:
6022         * docs/manual/motivation.xml:
6023         * docs/manual/pads-api.xml:
6024         * docs/manual/pads.xml:
6025         * docs/manual/plugins-api.xml:
6026         * docs/manual/plugins.xml:
6027         * docs/manual/programs.xml:
6028         * docs/manual/queues.xml:
6029         * docs/manual/quotes.xml:
6030         * docs/manual/schedulers.xml:
6031         * docs/manual/states-api.xml:
6032         * docs/manual/states.xml:
6033         * docs/manual/threads.xml:
6034         * docs/manual/typedetection.xml:
6035         * docs/manual/win32.xml:
6036         * docs/manual/xml.xml:
6037           First try at rewriting the ADM. Needs lotsamore work, but some
6038           parts might already be somewhat useful.
6039         * docs/pwg/advanced-interfaces.xml:
6040           Remove properties interface, it never actually existed (except for
6041           on my HD...).
6042
6043 2004-12-13  David Schleef  <ds@schleef.org>
6044
6045         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6046         be NULL (bug #160220).
6047
6048 2004-12-13  David Schleef  <ds@schleef.org>
6049
6050         * configure.ac: remove all mmx stuff, because it's not used.
6051         * docs/random/ds/0.9-suggested-changes: additional notes
6052         * include/Makefile.am: we don't use these anymore
6053         * include/mmx.h: remove
6054         * include/sse.h: remove
6055
6056 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6057
6058         * docs/random/mimetypes:
6059           Add FOURCC code for h264 codec (VSSH)
6060           Add alternate FOURCC codes for h263 related codecs
6061
6062 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6063
6064         * docs/manual/programs.xml:
6065           Added more gst-launch examples.
6066
6067 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6068
6069         * gst/gstqueue.c: (gst_queue_handle_src_query):
6070           Check for availability again.
6071
6072 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6073
6074         * gst/gstcaps.c: (gst_caps_compare_structures):
6075           Simple caps go first. This has the nice side-effect of fixing an
6076           obscure warning.
6077
6078 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6079
6080         * gst/gstversion.h.in:
6081           Protect header.
6082
6083 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6084
6085         * gst/schedulers/gstoptimalscheduler.c:
6086         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6087         (gst_opt_scheduler_get_wrapper):
6088           When we're recursing into a chain run, only run the directly
6089           related group, not all queued ones. This will fix a possible
6090           deadlock in chains with more than two groups.
6091
6092 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6093
6094         * autogen.sh:
6095           remove patch if autopoint fails
6096
6097 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6098
6099         * docs/gst/gstreamer-sections.txt:
6100           Document Thomas' addition, fix build, make Luis the sheriff happy.
6101
6102 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6103
6104         * gst/gstplugin.c:
6105         * gst/gstplugin.h:
6106           add accessor for version field
6107
6108 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6109
6110         submitted by: Luca Ferretti <elle.uca@infinito.it>
6111
6112         * po/LINGUAS:
6113         * po/it.po:
6114           New tranlation added: Italian
6115
6116 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6117
6118         * gst/gstpad.c: (gst_pad_is_negotiated),
6119         (gst_pad_get_negotiated_caps):
6120           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6121           it doesn't actually check the contents), so be sure to hand it
6122           a RealPad else we'll crash.
6123
6124 2004-12-03  Wim Taymans  <wim@fluendo.com>
6125
6126         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6127         (gst_queue_link), (gst_queue_handle_src_query):
6128         Reverted to 1.110 until this makes the testsuite and various
6129         apps work.
6130
6131 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6132
6133         * docs/upload.mak: fix included CVS conflict strings
6134
6135 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6136
6137         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6138
6139         * gst/gstelement.c: (gst_element_error_full):
6140           Use g_error_new_literal because error text may have
6141           percentage signs in it. Fixes #160019.
6142
6143 2004-12-01  Benjamin Otte  <otte@gnome.org>
6144
6145         * gst/elements/gstbufferstore.c:
6146         (gst_buffer_store_add_buffer_func):
6147           don't try to make subbuffers bigger than they can be. (fixes
6148           #159970)
6149
6150 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6151
6152         * docs/gst/gstreamer-sections.txt:
6153         * docs/gst/tmpl/gstvalue.sgml:
6154           Add new function to docs to fix build.
6155
6156 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6157
6158         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6159         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6160         (_gst_pad_default_fixate_foreach):
6161         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6162         * gst/gstvalue.h:
6163           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6164           in some cases (arrays), the fixedness depends on the content.
6165         * gst/gstqueue.c: (gst_queue_handle_src_query):
6166           Check for availability before doing something.
6167
6168 2004-11-29  Wim Taymans  <wim@fluendo.com>
6169
6170         * testsuite/threads/Makefile.am:
6171         * testsuite/threads/signals.c: (gst_test_get_type),
6172         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6173         (gst_test_set_property), (gst_test_get_property),
6174         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6175         (gst_test_do_prop), (run_thread), (main):
6176         Added a bunch of testcases that show threadsafety bugs in glib.
6177
6178 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6179
6180         * docs/manual/programs.xml:
6181           Added a first batch of gst-launch examples, as provided by Ronald
6182           and others from the devel-mlist
6183
6184 2004-11-28  Benjamin Otte  <otte@gnome.org>
6185
6186         * gst/gstelement.c: (gst_element_negotiate_pads):
6187           simplify
6188         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6189         (gst_value_serialize_string), (gst_value_deserialize_string):
6190           add unwrapping of previously wrapped strings. Fix bug in wrapping
6191           while at it.
6192         * testsuite/caps/value_serialize.c: (test1),
6193         (test_string_serialization), (test_string_deserialization), (main):
6194           add tests for string (de)serialization
6195
6196 2004-11-26  Wim Taymans  <wim@fluendo.com>
6197
6198         * testsuite/threads/159566.c: (object_deep_notify), (main):
6199         * testsuite/threads/Makefile.am:
6200         Added testsuite to show bug #159566
6201
6202 2004-11-25  Wim Taymans  <wim@fluendo.com>
6203
6204         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6205         (gst_thread_child_state_change), (gst_thread_main_loop):
6206         Ref the thread object in the GThread mainloop. Break out of the
6207         thread mainloop if it holds the last ref. This properly exits
6208         the threads when disposing the thread from its own context. It
6209         also avoids possible deadlocks in the dispose function.
6210
6211 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6212
6213         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6214         it is necessary to wait.
6215
6216 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6217
6218         * docs/pwg/building-boiler.xml:
6219           Make description somewhat clearer.
6220
6221 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6222
6223         * docs/upload.mak:
6224           Apparently docs changed location on FDO's server.
6225
6226 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6227
6228         * docs/pwg/appendix-checklist.xml:
6229           Add some random notes on things to check when writing an element.
6230           This list can be extended as people see fit.
6231
6232 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6233
6234         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6235         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6236         pad. The queue will now wait until it is empty and forward the new
6237         caps to the source.
6238         * gst/gstbin.c (gst_bin_set_element_sched)
6239         (gst_bin_unset_element_sched): Make sure that all elements and
6240         links are registered and unregistered with the scheduler exactly
6241         once. This elaborates on a fix by Benjamin Otte, but
6242         guarantees that decoupled elements are also registered.
6243
6244 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6245
6246         * docs/manual/quotes.xml:
6247           add a quote
6248         * configure.ac:
6249         * gst/gst.c:
6250         * gst/gstinfo.c:
6251           add LIBDIR and move init message higher up so it's at the start
6252
6253 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6254
6255         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6256         * gstreamer.spec.in: add fair
6257
6258 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6259
6260         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6261         * gst/elements/gstidentity.c: (gst_identity_class_init):
6262           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6263           <teuf@gnome.org> (#157263).
6264         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6265         (gst_type_find_handle_src_query):
6266           Subtract size of internally stored data from position queries.
6267
6268 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6269
6270         * gst/schedulers/fairscheduler.c:
6271         * gst/schedulers/faircothreads.c:
6272         * gst/schedulers/faircothreads.h:
6273         New cothread based scheduler: Fair scheduler.
6274         * gst/schedulers/gthread-cothreads.h: 
6275         Add the standard #if around the whole file.
6276         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6277         compilation of the functions defined in this file. This is
6278         necessary to be able to use this file as a normal header.
6279         * gst/schedulers/Makefile.am: Add compiling support for fair
6280         scheduler.
6281         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6282         scheduler cothreads layer from documentation generation.
6283
6284 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6285
6286         * gst/autoplug/gstspideridentity.c:
6287         (gst_spider_identity_sink_loop_type_finding):
6288           Don't crash if that function is not implemented.
6289
6290 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6291
6292         * docs/pwg/advanced-types.xml:
6293           Another typo.
6294
6295 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6296
6297         * docs/pwg/intro-preface.xml:
6298           Hm, ok, so the brackets weren't really useful...
6299         * docs/pwg/other-ntoone.xml:
6300           Fix embarassing typo.
6301
6302 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6303
6304         * docs/pwg/intro-preface.xml:
6305           Rewrite preface.
6306
6307 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6308
6309         * docs/pwg/advanced-scheduling.xml:
6310         * docs/pwg/advanced-tagging.xml:
6311         * docs/pwg/advanced-types.xml:
6312         * docs/pwg/building-boiler.xml:
6313         * docs/pwg/building-chainfn.xml:
6314         * docs/pwg/building-signals.xml:
6315         * docs/pwg/building-state.xml:
6316         * docs/pwg/building-testapp.xml:
6317         * docs/pwg/intro-basics.xml:
6318         * docs/pwg/other-manager.xml:
6319         * docs/pwg/other-source.xml:
6320           Typo fixes.
6321         * docs/pwg/other-manager.xml:
6322           Add some first content. No example code yet.
6323         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6324           Remove double newlines.
6325
6326 2004-11-04  Wim Taymans  <wim@fluendo.com>
6327
6328         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6329         (remove_from_group), (normalize_group), (group_migrate_connected),
6330         (gst_opt_scheduler_iterate):
6331         * testsuite/schedulers/.cvsignore:
6332         * testsuite/schedulers/Makefile.am:
6333         * testsuite/schedulers/queue_link.c: (main):
6334         Added testcase for scheduler segfault.
6335         Fix scheduler segfault when removing a decoupled
6336         entry point as the last element from a group.
6337
6338 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6339
6340         * gst/gstmarshal.list: add missing marshaller, fixes build
6341
6342 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6343
6344         * docs/random/signal: added notes about using BOXED for GstBuffer
6345         signal marshallers, not POINTER
6346
6347 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6348
6349         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6350         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6351         POINTER=>BOXED changes to marshal GstBuffers
6352
6353 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6354
6355         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6356         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6357
6358 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6359
6360         * docs/gst/gstreamer-sections.txt:
6361         * docs/gst/tmpl/gstcaps.sgml:
6362         * docs/gst/tmpl/gsterror.sgml:
6363         * docs/gst/tmpl/gstinfo.sgml:
6364         * docs/gst/tmpl/gstmacros.sgml:
6365         * docs/gst/tmpl/gstutils.sgml:
6366         * docs/random/ensonic/interfaces.txt:
6367         * gst/gstinfo.h:
6368           added some more docs, removed two obsolete defines
6369
6370 2004-11-02  Kjartan Maraas <as at gnome.org>
6371
6372         reviewed by: Wim Taymans, Ronald Bultje.
6373
6374         * gst/cothreads.c: (cothread_create):
6375         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6376         (gst_bin_child_state_change_func):
6377         * gst/gstbuffer.c: (gst_buffer_span):
6378         * gst/gstelement.c: (gst_element_get_index),
6379         (gst_element_get_event_masks), (gst_element_get_query_types),
6380         (gst_element_get_formats):
6381         * gst/gsterror.c: (_gst_core_errors_init),
6382         (_gst_library_errors_init), (_gst_resource_errors_init),
6383         (_gst_stream_errors_init):
6384         * gst/gstobject.c: (gst_object_default_deep_notify):
6385         * gst/gstpad.c: (gst_pad_get_event_masks),
6386         (gst_pad_get_internal_links_default):
6387         * gst/gstplugin.c: (gst_plugin_register_func),
6388         (gst_plugin_get_module):
6389         * gst/gststructure.c: (gst_structure_get_string),
6390         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6391         (gst_structure_to_abbr):
6392         * gst/gstutils.c: (gst_print_element_args):
6393         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6394         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6395         Aplied part of patch #157127: Cleanup of issues reported by 
6396         sparse.
6397         Also do not try to use cothreads when there is no cothread
6398         context yet.
6399
6400 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6401
6402         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6403         (gst_opt_scheduler_iterate):
6404         Applied patch #154061. Running a pipeline in which an element 
6405         calls GST_ELEMENT_ERROR in the chain function, the opt 
6406         scheduler doesn't unref the chain so it never gets freed.
6407
6408 2004-11-02  Wim Taymans  <wim@fluendo.com>
6409
6410         * gst/gststructure.c: (gst_structure_get_abbrs),
6411         (gst_structure_from_abbr), (gst_structure_to_abbr):
6412         Remove that ugly if-then thing in the code that converts
6413         between strings and types.
6414
6415 2004-11-02  Wim Taymans  <wim@fluendo.com>
6416
6417         * gst/gstscheduler.c: (gst_scheduler_add_element),
6418         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6419         Aplied clock distribution patch, this should fix bug
6420         #148787.
6421
6422 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6423
6424         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6425
6426         * po/LINGUAS:
6427         * po/nb.po:
6428           Added Norwegian Bokmaal translation
6429
6430 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6431
6432         * tools/gst-inspect.c: (print_signal_info):
6433           print signal arguments as pointers if they are
6434
6435 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6436
6437         * docs/pwg/building-boiler.xml:
6438           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6439
6440 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6441
6442         * gst/parse/parse.l:
6443         * testsuite/parse/parse1.c: (main):
6444         Since parse can do 'element name=a:b' make 'a:b.' work as
6445         well. 
6446         Added testcase to verify fix.
6447
6448 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6449
6450         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6451         Use the realpad when printing the direction.
6452         Add extra \n when printing extensions of typefind factories.
6453
6454 2004-10-13  David Schleef  <ds@schleef.org>
6455
6456         * examples/manual/Makefile.am: $< isn't portable in Makefile
6457         rules.
6458
6459 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6460
6461         * docs/gst/tmpl/gstobject.sgml:
6462         * docs/gst/tmpl/gstplugin.sgml:
6463         * docs/gst/tmpl/gstpluginfeature.sgml:
6464         * docs/gst/tmpl/gstregistry.sgml:
6465         * docs/gst/tmpl/gstversion.sgml:
6466         * gst/gstbin.c:
6467           more api documentation
6468         * gst/gstplugin.c: (gst_plugin_register_func),
6469         (gst_plugin_check_file), (gst_plugin_load_file):
6470           better error signaling and logging
6471
6472 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6473
6474         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6475           Subtract current queue contents from position queries.
6476
6477 2004-10-11  Johan Dahlin  <johan@gnome.org>
6478
6479         * gst/gsturi.c (gst_uri_get_location): unescape string
6480         (gst_uri_construct): escape string.
6481
6482 2004-10-11  Benjamin Otte  <otte@gnome.org>
6483
6484         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6485         (gst_pad_try_set_caps_nonfixed):
6486           allow renegotiation of unconnected pads (as inside spider). Simply
6487           return OK if unconnected - mimic try_set_caps there.
6488
6489 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6490
6491         * gst/gstbin.c: (gst_bin_sync_children_state):
6492           Add missing break.
6493
6494 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6495
6496         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6497         Set element to EOS before sending EOS event
6498
6499 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6500
6501         * gst/elements/gsttypefindelement.c:
6502         (gst_type_find_element_handle_event):
6503         Handle EOS events when doing the transition from
6504         typefind to data passing. This should fix the
6505         infinite loops in short files.
6506
6507 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6508
6509         * gst/gstthread.c: (gst_thread_change_state),
6510         (gst_thread_child_state_change):
6511         Make sure no iteration happens while performing
6512         the state change as it could mess up the internal
6513         consistency of the thread state.
6514
6515 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6516
6517         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6518         (gst_thread_change_state), (gst_thread_child_state_change):
6519         Do not try to grab the iterate lock in the state change method
6520         when we are in the same thread as the iterate or else we
6521         could deadlock. Some other cleanups.
6522
6523 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6524
6525         * configure.ac:
6526           bump nano to cvs
6527
6528 === release 0.8.7 ===
6529
6530 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6531
6532         * configure.ac:
6533         * NEWS:
6534         * RELEASE:
6535         * configure.ac:
6536           releasing 0.8.7, "A Cruise"
6537
6538 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6539
6540         * docs/random/mimetypes:
6541         Add an entry for Sony ATRAC3 audio format with mime-type
6542         used by rmdemux et riff-read
6543
6544 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6545
6546         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6547         Push the buffer store instead of clearing it in case that
6548         the stream is not seekable.
6549
6550 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6551
6552         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6553         (gst_thread_main_loop):
6554         Lock the iteration and the state change so that automatic
6555         negotiation and fixation does not happen at the same time
6556         as the in stream negotiation.
6557
6558 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6559
6560         * configure.ac:
6561           bump nano to cvs
6562
6563 === release 0.8.6 ===
6564
6565 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6566
6567         * configure.ac:
6568         * NEWS:
6569         * RELEASE:
6570         * configure.ac:
6571           releasing 0.8.6, "Narc"
6572
6573 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6574
6575         * configure.ac:
6576           prerel bump
6577
6578 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6579
6580         patch by: Steve Lhomme
6581
6582         * gst/elements/gstfakesrc.c:
6583         * gst/elements/gstidentity.c:
6584         * gst/gstthread.c:
6585           Fix for #153881
6586
6587 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6588
6589         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6590         Fix threadsafety of the crc checking function.
6591
6592 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6593
6594         patch by: Ronald Bultje
6595
6596         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6597         (gst_type_find_element_handle_event),
6598         (gst_type_find_element_chain):
6599         * gst/elements/gsttypefindelement.h:
6600          #153657.
6601          Filter out discont event from seekable sources when typefind
6602          asks them to seek.  Fixes typefind with demuxers for
6603          avi, asf and matroska.
6604
6605 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6606
6607         * docs/gst/gstreamer-sections.txt:
6608         * gst/gstcaps.c:
6609         * gst/gstcaps.h:
6610         * gst/gstpad.c:
6611           Revert preferred caps: (#147789)
6612
6613 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6614
6615         * win32/dirent.c:
6616           fix a memory leak
6617
6618 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6619
6620         * configure.ac:
6621           bump for prerelease
6622
6623 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6624
6625         * docs/Makefile.am:
6626         * docs/manual/elements-api.xml:
6627           restructure so that common stuff is shown first
6628         * docs/manual/init-api.xml:
6629           convert to examples
6630         * docs/manual/manual.xml:
6631         * docs/manuals.mak:
6632         * docs/url.entities:
6633           link to API on the website, possibly override later in build
6634         * examples/manual/.cvsignore:
6635           ignore more
6636         * examples/manual/Makefile.am:
6637           add more examples
6638         * examples/manual/extract.pl:
6639           error out on failure
6640
6641 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6642
6643         * docs/gst/tmpl/gstthread.sgml:
6644         * docs/manual/init-api.xml:
6645         * examples/manual/Makefile.am:
6646           convert two code bits to examples
6647
6648 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6649
6650         * gst/gstelement.c: (gst_element_change_state):
6651           Well, actually, I was about to remove this insane assert when
6652           I noticed Wim already did that. A warning is nice so we can
6653           fix actual ugs (using --g-fatal-warnings and backtraces), so
6654           I added that instead.
6655
6656 2004-09-06  Wim Taymans  <wim@fluendo.com>
6657
6658         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6659         (gst_element_threadsafe_properties_post_run),
6660         (gst_element_set_state), (gst_element_change_state):
6661         Added extra refcounting around various places. 
6662
6663 2004-09-06  Wim Taymans  <wim@fluendo.com>
6664
6665         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6666         Fix debug info.
6667
6668 2004-09-06  Wim Taymans  <wim@fluendo.com>
6669
6670         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6671         (remove_from_group):
6672         Some more debug info.
6673
6674 2004-09-03  Wim Taymans  <wim@fluendo.com>
6675
6676         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6677         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6678         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6679         (gst_fakesrc_get), (gst_fakesrc_change_state):
6680         * gst/elements/gstfakesrc.h:
6681         * gst/elements/gstidentity.c: (gst_identity_class_init),
6682         (gst_identity_init), (gst_identity_chain),
6683         (gst_identity_set_property), (gst_identity_get_property),
6684         (gst_identity_change_state):
6685         * gst/elements/gstidentity.h:
6686         Added datarate properties to limit the datarate.
6687
6688 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6689
6690         * gst/autoplug/gstspider.c: (plugin_init):
6691           don't set a rank. We don't want to autoplug by inserting spiders.
6692
6693 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6694
6695         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6696         (gst_spider_identity_plug):
6697           add a template for spider's sink
6698         * gst/gst.c: (gst_register_core_elements):
6699           queue's rank should be NULL, we don't want spider to add it.
6700
6701 2004-08-18  David Schleef  <ds@schleef.org>
6702
6703         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6704         * docs/libs/Makefile.am: same
6705         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6706         * docs/random/ds/0.9-planning: random additions
6707         * docs/random/ds/0.9-suggested-changes: same
6708         * gst/gstxml.h: remove vestigal GstXMLNs definition
6709
6710         Preferred caps: (#147789)
6711         * docs/gst/gstreamer-sections.txt: Add symbols
6712         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6713         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6714         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6715         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6716         (gst_caps_get_preferred), (gst_caps_set_preferred),
6717         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6718         (gst_caps_use_preferred): Handle caps preferences
6719         * gst/gstcaps.h: Add caps preferences
6720         * gst/gstpad.c: (gst_pad_link_get_preferred),
6721         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6722         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6723         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6724         negotiation.
6725
6726 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6727
6728         * gst/autoplug/gstspideridentity.c:
6729         (gst_spider_identity_request_new_pad):
6730         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6731         (gst_aggregator_init):
6732         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6733         (gst_fakesink_init):
6734         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6735         (gst_fakesrc_init):
6736         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6737         (gst_fdsink_init):
6738         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6739         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6740         (gst_filesink_init):
6741         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6742         (gst_filesrc_init):
6743         * gst/elements/gstidentity.c: (gst_identity_base_init),
6744         (gst_identity_init):
6745         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6746         (gst_multifilesrc_init):
6747         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6748         (gst_pipefilter_init):
6749         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6750         (gst_statistics_init):
6751         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6752         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6753           s/gst_pad_new/&_from_template/
6754           register pad templates in the base_init function
6755           add static pad template definitions
6756
6757 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6758
6759         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6760         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6761         * testsuite/refcounting/pad.c: (main):
6762         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6763           s/gst_pad_new/&_from_template/
6764           prepare deprecation of gst_pad_new
6765
6766 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6767
6768         patch by: Luca Ognibene <skaboy81@virgilio.it>
6769
6770         * gst/gstcaps.c:
6771         * gst/gstelement.c:
6772         * gst/gstpad.c:
6773         * gst/gstxml.c:
6774           fix memleaks.  Fixes #150001
6775
6776 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6777
6778         * docs/random/ds/0.9-suggested-changes:
6779           add notes - mostly about pad templates
6780
6781 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6782
6783         * win32/GStreamer.vcproj:
6784           temporary locale files are .gmo not .mo
6785
6786 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6787
6788         * configure.ac: bump nano to cvs
6789
6790 === release 0.8.5 ===
6791
6792 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6793
6794         * configure.ac:
6795           releasing 0.8.5, "Stuttgart"
6796         * NEWS:
6797         * RELEASE:
6798         * configure.ac:
6799         * docs/random/release:
6800           updates for release
6801
6802 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6803
6804         patch by: Wim Taymans (wim@fluendo.com)
6805
6806         * gst/gstbuffer.c:
6807         * gst/gstindex.h:
6808         * libs/gst/dataprotocol/dataprotocol.c:
6809           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6810
6811 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6812
6813         * Makefile.am:
6814         * win32/MANIFEST:
6815           add win32 dir to the build.  Fixes #149981.
6816
6817 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6818
6819         * configure.ac:
6820           bump libtool versioning
6821         * gst/gststructure.c:
6822           mark function as static
6823         * po/af.po:
6824         * po/az.po:
6825         * po/ca.po:
6826         * po/cs.po:
6827         * po/en_GB.po:
6828         * po/fr.po:
6829         * po/nl.po:
6830         * po/sq.po:
6831         * po/sr.po:
6832         * po/sv.po:
6833         * po/tr.po:
6834         * po/uk.po:
6835           translations update
6836         * win32/README.txt:
6837           trademark protection
6838
6839 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6840
6841         * configure.ac:
6842           fix GST_ORIGIN
6843           set GST_PACKAGE to source, and distinguish between release and other
6844         * tools/gst-inspect.c:
6845           print out plugin an element factory is part of so we see this info
6846
6847 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6848
6849         * docs/gst/gstreamer-sections.txt:
6850         * docs/gst/tmpl/gstbuffer.sgml:
6851         * docs/gst/tmpl/gstschedulerfactory.sgml:
6852           reorder docs a little, make GstBuffer's more sensible.
6853         * gst/gstbuffer.h:
6854           API: added GST_BUFFER_FLAG_DELTA_UNIT
6855         * gst/gstscheduler.c:
6856           comment API addition
6857
6858 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6859
6860         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6861           work with non-regular files that can be mmapped (like /dev/zero)
6862         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6863           get rid of typefinds that require a seek when we can't seek instead
6864           of trying them over and over again
6865         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6866           return non-zero failure value when the pipeline was interrupted or
6867           an error occurred
6868
6869 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6870
6871         * win32/config.h:
6872         * win32/GStreamer.vcproj:
6873           compile and install the locales
6874
6875 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6876
6877         * gst/gstvalue.c:
6878           fix a possible memory leak under Windows
6879
6880 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6881
6882         * win32/GStreamer.vcproj:
6883           fix a memory leak that occured under Windows
6884         * win32/gstreamer.def:
6885           add gst_scheduler_register
6886
6887 2004-08-11  Benjamin Otte  <otte@gnome.org>
6888
6889         * docs/gst/gstreamer-sections.txt:
6890         * gst/gstscheduler.c: (gst_scheduler_register):
6891         * gst/gstscheduler.h:
6892           API:
6893           add gst_scheduler_register shortcut similar to gst_element_register
6894         * gst/schedulers/entryscheduler.c: (plugin_init):
6895         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6896         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6897           use it
6898
6899 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6900
6901         * gst/gstvalue.h:
6902           fix a memory leak that occured under Windows
6903
6904 2004-08-10  Colin Walters  <walters@redhat.com>
6905
6906         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6907         Don't use O_EXCL to open temporary registry.  It will prevent
6908         registry creation if a temporary one already exists, which
6909         is unnecessary.
6910
6911 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6912
6913         * docs/gst/gstreamer-sections.txt:
6914         * docs/gst/tmpl/gstvalue.sgml:
6915           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6916
6917 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6918
6919         * win32/gstbytestream.vcproj:
6920         * win32/gstelements.vcproj:
6921         * win32/gstgetbits.vcproj:
6922         * win32/gst-inspect.vcproj:
6923         * win32/gst-launch.vcproj:
6924         * win32/gstoptimalscheduler.vcproj:
6925         * win32/GStreamer.vcproj:
6926         * win32/gst-register.vcproj:
6927         * win32/gstspider.vcproj:
6928           update the include and lib dirs to fit standard libraries as
6929           described in the Win32 manual
6930
6931 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6932
6933         * win32/config.h:
6934         * win32/gstversion.h:
6935           enable NLS again, push the version number for the coming 0.8.5 release
6936
6937 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6938
6939         * gst/gstvalue.h:
6940           export gst_type_XXX for windows DLLs
6941
6942 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6943
6944         * docs/faq/gst-uninstalled:
6945           fix PKG_CONFIG_PATH and PYTHONPATH
6946         * gst/schedulers/Makefile.am:
6947           cleanup
6948         * libs/gst/bytestream/bytestream.c:
6949           remove newline
6950         * po/LINGUAS:
6951         * po/sq.po:
6952           adding Albanian translation (Laurent Dhima)
6953         * po/cs.po:
6954           updated
6955
6956 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6957
6958         * po/ca.po:
6959         * po/sv.po:
6960           updated translations
6961
6962 2004-08-04  Benjamin Otte  <otte@gnome.org>
6963
6964         * tests/mass_elements.c: (main):
6965           allow specifying src and sink element explicitly, so I can test
6966           videotestsrc instead of fakesrc
6967
6968 2004-08-04  Benjamin Otte  <otte@gnome.org>
6969
6970         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6971         (gst_structure_id_empty_new), (gst_structure_empty_new),
6972         (gst_structure_copy):
6973           add gst_structure_id_empty_new_with_size to allow preallocating
6974           value array sizes. Use this in gst_structure_copy to get rid of
6975           reallocs.
6976           don't do quark=>string=>quark when copying structures
6977
6978 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6979
6980         * docs/manual/win32.xml:
6981         * win32/README.txt:
6982           update documentation with the clean version of dependencies
6983
6984 2004-08-03  Benjamin Otte  <otte@gnome.org>
6985
6986         * gst/schedulers/entryscheduler.c:
6987         (gst_entry_scheduler_remove_element):
6988           fix for GST_DISABLE_DEBUG
6989         * tools/gst-launch.c: (print_tag):
6990           fixes for G_DISABLE_ASSERT
6991
6992 2004-08-03  Benjamin Otte  <otte@gnome.org>
6993
6994         * gst/gst.c: (gst_register_core_elements):
6995           fix for G_DISABLE_ASSERT
6996         * gst/gstinfo.c: (__gst_in_valgrind):
6997           add for GST_DISABLE_DEBUG
6998
6999 2004-08-03  Benjamin Otte  <otte@gnome.org>
7000
7001         * gst/parse/parse.l:
7002           fix for G_DISABLE_ASSERT
7003
7004 2004-08-03  Wim Taymans  <wim@fluendo.com>
7005
7006         * gst/gstbin.c: (gst_bin_get_type),
7007         (gst_bin_child_state_change_func):
7008         * gst/gstthread.c: (gst_thread_change_state):
7009         Backported some debug logging from a reverted patch
7010         Don't try to destroy the thread twice. Added some more
7011         debugging in GstThread. Unlock and signal even if we
7012         are in the thread context.
7013
7014 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7015
7016         * po/uk.po:
7017           updated translation
7018
7019 2004-07-30  David Schleef  <ds@schleef.org>
7020
7021         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7022
7023 2004-07-29  David Schleef  <ds@schleef.org>
7024
7025         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7026         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7027
7028 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7029
7030         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7031         (gst_bin_add_func), (gst_bin_remove_func),
7032         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7033         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7034         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7035         (gst_bin_sync_children_state):
7036         * gst/gstbin.h:
7037         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7038         (gst_thread_change_state):
7039         * testsuite/states/Makefile.am:
7040           revert state change patches as agreed so we can rework them
7041           gradually
7042
7043 2004-07-29  Benjamin Otte  <otte@gnome.org>
7044
7045         * libs/gst/control/Makefile.am:
7046           link to libgstreamer (fixes Debian bug 262019, see
7047           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7048
7049 2004-07-29  Wim Taymans  <wim@fluendo.com>
7050
7051         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7052         (check_from_fraction_convert), (transform_test), (main):
7053         Make the test less pedantic about float roundoff errors.
7054
7055 2004-07-29  Benjamin Otte  <otte@gnome.org>
7056
7057         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7058         (gst_filesrc_srcpad_event):
7059           make seek events to before start/after end of file not fail, but
7060           seek to start/end instead
7061         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7062           add more output
7063
7064 2004-07-29  Benjamin Otte  <otte@gnome.org>
7065
7066         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7067           check that caps are fixed
7068         * gst/gstpad.c: (gst_pad_template_new):
7069           don't try to simplify caps, costs too much time on gst_init
7070         * gst/gstplugin.c: (gst_plugin_add_feature):
7071           G_ERROR if features are added twice
7072         * gst/gsttypefind.c: (gst_type_find_register):
7073         * gst/gstelementfactory.c: (gst_element_register):
7074           don't add features twice
7075         * docs/random/ds/0.9-suggested-changes:
7076           add note about possible gst_init optimization
7077
7078 2004-07-28  David Schleef  <ds@schleef.org>
7079
7080         * testsuite/elements/Makefile.am:
7081         * testsuite/elements/struct_i386.h:
7082         * testsuite/elements/struct_size.c: (main):  A little test
7083         to keep distcheck from working if someone changes a structure
7084         size accidentally.
7085
7086 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7087
7088         * docs/libs/Makefile.am:
7089         * docs/libs/gstreamer-libs-docs.sgml:
7090         * docs/libs/gstreamer-libs-sections.txt:
7091         * docs/libs/tmpl/gstbytestream.sgml:
7092         * docs/libs/tmpl/gstcontrol.sgml:
7093         * docs/libs/tmpl/gstdataprotocol.sgml:
7094         * docs/libs/tmpl/gstgetbits.sgml:
7095         * libs/gst/bytestream/Makefile.am:
7096         * libs/gst/bytestream/bytestream.c:
7097         * libs/gst/bytestream/bytestream.h:
7098         * libs/gst/control/Makefile.am:
7099         * libs/gst/dataprotocol/Makefile.am:
7100         * libs/gst/getbits/Makefile.am:
7101         * libs/gst/getbits/getbits.h:
7102           various doc and style fixes, adding bytestream to libs docs.
7103
7104 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7105
7106         * docs/gst/gstreamer-docs.sgml:
7107         * docs/libs/Makefile.am:
7108         * docs/libs/gstreamer-libs-docs.sgml:
7109         * docs/libs/gstreamer-libs-sections.txt:
7110         * libs/gst/control/dparam.c:
7111           more doc fixes.  gst-libs docs now build the same way as gst.
7112
7113 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7114
7115         * configure.ac:
7116         * testsuite/Makefile.am:
7117         * testsuite/bins/Makefile.am:
7118         * testsuite/caps/Makefile.am:
7119         * testsuite/cleanup/Makefile.am:
7120         * testsuite/clock/Makefile.am:
7121         * testsuite/debug/Makefile.am:
7122         * testsuite/dlopen/Makefile.am:
7123         * testsuite/dynparams/Makefile.am:
7124         * testsuite/elements/.cvsignore:
7125         * testsuite/elements/Makefile.am:
7126         * testsuite/enumcaps/Makefile.am:
7127         * testsuite/enumcaps/enumcaps.c:
7128         * testsuite/ghostpads/Makefile.am:
7129         * testsuite/indexers/Makefile.am:
7130         * testsuite/negotiation/Makefile.am:
7131         * testsuite/parse/Makefile.am:
7132         * testsuite/plugin/Makefile.am:
7133         * testsuite/refcounting/Makefile.am:
7134         * testsuite/schedulers/.cvsignore:
7135         * testsuite/states/Makefile.am:
7136         * testsuite/tags/Makefile.am:
7137         * testsuite/threads/Makefile.am:
7138           fold enumcaps into caps dir
7139           clean up Makefile.am's for testsuite
7140
7141 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7142
7143         * docs/gst/Makefile.am:
7144         * docs/libs/Makefile.am:
7145           clean up docs build.  Fixes needless rebuilding of template files.
7146
7147 2004-07-28  Wim Taymans  <wim@fluendo.com>
7148
7149         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7150         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7151         Make sure that a bin state change tries to keep the children
7152         in sync. 
7153         Added debug logging to the thread.
7154
7155 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7156
7157         * win32/GStreamer.vcproj:
7158         * win32/gstreamer.def:
7159           more exports for the plugins
7160
7161 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7162
7163         * win32/gstgetbits.vcproj:
7164         * win32/gstgetbits.def:
7165         * win32/msvc71.sln:
7166           add support for the getbits plugin
7167
7168 2004-07-27  Wim Taymans  <wim@fluendo.com>
7169
7170         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7171         (gst_value_transform_fraction_double), (_gst_value_initialize):
7172         * testsuite/caps/Makefile.am:
7173         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7174         (check_from_fraction_convert), (transform_test), (main):
7175         Added transform functions between double and fraction.
7176         Added testcase to verify transforms
7177
7178 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7179
7180         * win32/GStreamer.vcproj:
7181           rename GStreamer-0.8.lib to libgstreamer.lib
7182
7183 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7184
7185         * win32/gstelements.vcproj:
7186         * win32/gstoptimalscheduler.vcproj:
7187           fixes for the Release build
7188
7189 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7190
7191         * win32/config.h:
7192           update the version number
7193
7194 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7195
7196         * win32/GStreamer.vcproj:
7197           add gstinterface to the build
7198
7199 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7200
7201         * win32/gstreamer.def:
7202           add many definitions needed by plugins,
7203           GST_CAT_DEFAULT only available in the Debug build ?
7204
7205 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7206
7207         * gst/gstelement.c: (gst_element_set_eos_recursive):
7208           various whitespace fixes.
7209           doc fix, fixes #148497
7210
7211 2004-07-25  Benjamin Otte  <otte@gnome.org>
7212
7213         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7214           don't delay links on the sink elements, it causes unnegotiated
7215           links.
7216         * gst/elements/gsttypefindelement.c:
7217         (gst_type_find_element_base_init):
7218           add our padtemplates, we indeed do have some.
7219         * gst/elements/gsttypefindelement.c:
7220         (gst_type_find_element_handle_event),
7221         (gst_type_find_element_chain):
7222           don't push data when typefinding failed.
7223         * gst/gstpad.c: (gst_pad_link_fixate):
7224           check that no fixate function returns empty caps.
7225         * gst/gstpad.c: (gst_pad_push):
7226           check that the link is negotiated before data gets pushed.
7227         * tools/gst-register.c: (main):
7228           don't assert (fixes #148283)
7229
7230 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7231
7232         * docs/gst/gstreamer-sections.txt:
7233         * docs/gst/tmpl/gstconfig.sgml:
7234           add GST_PLUGIN_EXPORT definition
7235
7236 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7237
7238         * gst/gstplugin.h:
7239         * gst/gstconfig.h.in:
7240         * win32/gstconfig.h:
7241         * win32/gstelements.def:
7242         * win32/gstelements.vcproj:
7243         * win32/gstoptimalscheduler.def:
7244         * win32/gstoptimalscheduler.vcproj:
7245         * win32/gstspider.def:
7246         * win32/gstspider.vcproj:
7247           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7248
7249 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7250
7251         * docs/gst/gstreamer-sections.txt:
7252           remove GST_CAT_DEFAULT because the type has changed
7253
7254 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7255
7256         * win32/gstbytestream.vcproj:
7257         * win32/gstelements.vcproj:
7258         * win32/gst-inspect.vcproj:
7259         * win32/gst-launch.vcproj:
7260         * win32/gstoptimalscheduler.vcproj:
7261         * win32/GStreamer.vcproj:
7262         * win32/gst-register.vcproj:
7263         * win32/gstspider.vcproj:
7264         * win32/msvc71.sln:
7265           Copy the files where needed after building, The testsuite will be
7266           built separately
7267
7268 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7269
7270         * win32/config.h:
7271         * win32/README.txt:
7272         * docs/manual/win32.xml:
7273         Fixed the plugin and GStreamer location
7274
7275 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7276
7277         * win32/gstreamer.def:
7278         More exports for the plugins
7279
7280 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7281
7282         * gst/gstinfo.h:
7283         Marc was right, we need to export literally GST_CAT_DEFAULT
7284
7285 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7286
7287         * win32/config.h:
7288         NLS crashes in gettext, disabled until this is solved
7289
7290 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7291
7292         * win32/gst-inspect.vcproj:
7293         * win32/gst-launch.vcproj:
7294         Should use NLS when available
7295
7296 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7297
7298         * gst/registries/gstxmlregistry.c:
7299         removing the file doesn't seem to be a good idea on Linux
7300
7301 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7302
7303         * gst/registries/gstxmlregistry.c:
7304         Remove the registry before renaming the tempfile (needed for Windows)
7305
7306 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7307
7308         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7309         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7310         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7311         * gst/elements/gstmultifilesrc.h:
7312         Added newmedia property so it generates newmedia events between each
7313         file when property is set, as well as fixed eos handling
7314
7315 2004-07-22  David Schleef  <ds@schleef.org>
7316
7317         * gst/gststructure.c: (gst_structure_id_empty_new),
7318         (gst_structure_empty_new):  Set type field correctly.
7319         * gst/gststructure.h: Check type field correctly.
7320         * testsuite/caps/Makefile.am:
7321         * testsuite/caps/structure.c: (test1), (main): Add a very small
7322         test for structures.
7323
7324 2004-07-22  David Schleef  <ds@schleef.org>
7325
7326         * docs/random/ds/0.9-suggested-changes: more comments
7327         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7328
7329 2004-07-22  Benjamin Otte  <otte@gnome.org>
7330
7331         * gst/gstelementfactory.c: (gst_element_register):
7332           set the factory in the class struct, so gst_element_get_factory
7333           actually works
7334         * gst/parse/grammar.y:
7335           set element to playing when it gets unlocked as we can't rely on the
7336           bin state - all elements in the bin state might still be locked in
7337           NULL)
7338
7339 2004-07-22  Benjamin Otte  <otte@gnome.org>
7340
7341         * gst/gstelement.c: (gst_element_set_state_func):
7342           make this a static function
7343
7344 2004-07-22  Wim Taymans  <wim@fluendo.com>
7345
7346         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7347         (gst_opt_scheduler_pad_link):
7348         fix 147894-2 and the group_link problem.
7349
7350 2004-07-22  Wim Taymans  <wim@fluendo.com>
7351
7352         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7353         (handoff_identity), (main):
7354         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7355         (handoff_identity), (main):
7356         * testsuite/schedulers/Makefile.am:
7357         * testsuite/schedulers/group_link.c: (main):
7358         Show bug in scheduler when linking chain and loop based element 
7359         where the chain based element was not yet in a group.
7360
7361 2004-07-21  Benjamin Otte  <otte@gnome.org>
7362
7363         * gst/.cvsignore:
7364         * gst/autoplug/.cvsignore:
7365         * gst/elements/.cvsignore:
7366         * gst/indexers/.cvsignore:
7367         * libs/gst/bytestream/.cvsignore:
7368         * libs/gst/control/.cvsignore:
7369         * libs/gst/getbits/.cvsignore:
7370         * testsuite/states/.cvsignore:
7371         * testsuite/threads/.cvsignore:
7372           keep this up to date, since I seem to be the only one who cares
7373           about not missing files on commits (editor's note: no you don't,
7374           but feel free to change them at the time you add stuff instead
7375           of later on)
7376
7377 2004-07-21  Benjamin Otte  <otte@gnome.org>
7378
7379         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7380         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7381         (gst_bin_child_state_change_func), (set_kid_state_func),
7382         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7383           make state changes work correctly and reentrant (so removing
7384           elements from bins during state changes of bins doesn't cause
7385           segfaults or even wrong states)
7386           add debugging category and debugging output to print children states
7387         * gst/gstbin.c: (gst_bin_dispose): 
7388           add some assertion checks
7389         * gst/gstbin.h:
7390         * gst/gstbin.c: (gst_bin_sync_children_state):
7391           deprecate this function - it just does gst_bin_set_state (bin,
7392           GST_STATE (bin)) 
7393         * testsuite/threads/queue.c: (main):
7394           don't use gst_bin_sync_children_state anymore
7395         * testsuite/states/Makefile.am:
7396         * testsuite/states/bin.c:
7397           test that the state changes of bins work as expected
7398         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7399           some adjustments to change states correctly, too
7400         * gst/gstthread.c: (gst_thread_change_state):
7401           don't enable/disable "threadsafe" properties, they're unused and
7402           cause random segfaults
7403         * testsuite/threads/Makefile.am:
7404           the queue check randomly passes now, ignore it
7405
7406 2004-07-21  Benjamin Otte  <otte@gnome.org>
7407
7408         * gst/gstpad.c:
7409           check if data is NULL before outputting debug info. (fixes #145100)
7410
7411 2004-07-21  Benjamin Otte  <otte@gnome.org>
7412
7413         * gst/schedulers/entryscheduler.c:
7414         (gst_entry_scheduler_loop_wrapper),
7415         (gst_entry_scheduler_chain_wrapper),
7416         (gst_entry_scheduler_get_wrapper):
7417           reset the state when the cothread starts, so we don't get assertion
7418           failures on restarting of cothreads
7419
7420 2004-07-20  Benjamin Otte  <otte@gnome.org>
7421
7422         * gst/gstelement.c: (gst_element_link_pads_filtered):
7423           use correct sinkpad, if only sinkpad is specified, but not srcpad
7424           (fixes #147889)
7425         * gst/gstelement.c: (gst_element_set_state_func),
7426         (gst_element_change_state): ref/unref the element, signal handlers
7427         could get rid of the element otherwise
7428
7429 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7430
7431         * docs/random/ds/0.9-suggested-changes:
7432           Make note about renaming fixed-list to array.
7433         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7434         (_gst_value_initialize):
7435           Add array intersections.
7436         * testsuite/caps/intersect2.c: (main):
7437           Add test for array intersections.
7438
7439 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7440
7441         * configure.ac: back to cvs
7442
7443 === release 0.8.4 ===
7444
7445 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7446
7447         * configure.ac:
7448           releasing 0.8.4, "Paella"
7449           bump libtool versioning
7450
7451 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7452
7453         * po/LINGUAS:
7454         * po/ca.po:
7455           adding Catalan translation (Jordi Mallach)
7456
7457 2004-07-20  Wim Taymans  <wim@fluendo.com>
7458
7459         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7460         (handoff_identity), (main):
7461         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7462         (handoff_identity), (main):
7463         * testsuite/schedulers/Makefile.am:
7464         Added failing testcase for variant of #147894
7465
7466 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7467
7468         patch by: David Moore
7469
7470         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7471         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7472         (group_migrate_connected):
7473         * testsuite/schedulers/Makefile.am:
7474           fix for #142813 (Deadlock in optimal scheduler)
7475
7476 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7477
7478         patch by: Wim Taymans
7479
7480         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7481         (gst_opt_scheduler_schedule_run_queue),
7482         (gst_opt_scheduler_get_wrapper), (get_group),
7483         (group_migrate_connected):
7484         * testsuite/schedulers/Makefile.am:
7485           fix for #147819 (Add some checks in the opt scheduler)
7486
7487 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7488
7489         patch by: Benjamin Otte
7490
7491         * gst/gstelementfactory.c: (__gst_element_details_set):
7492           fix for #147929: running gst-register in non-utf8 locale can cause
7493           invalid registry
7494
7495 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7496
7497         patch by: Wim Taymans
7498
7499         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7500         (group_has_element), (element_get_reachables_func),
7501         (group_migrate_connected):
7502           fix for #147894 (opt scheduler decoupled elements mismanagement)
7503         * testsuite/schedulers/Makefile.am:
7504           testsuite app now passes
7505
7506 2004-07-19  Wim Taymans  <wim@fluendo.com>
7507
7508         * testsuite/schedulers/147819.c: (handoff_identity1),
7509         (handoff_identity2), (main):
7510         * testsuite/schedulers/Makefile.am:
7511         Added testcase for bug 147819
7512
7513 2004-07-19  Wim Taymans  <wim@fluendo.com>
7514
7515         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7516         (handoff_identity), (main):
7517         * testsuite/schedulers/Makefile.am:
7518         Added testcase for bug 147894
7519
7520 2004-07-16  Wim Taymans  <wim@fluendo.com>
7521
7522         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7523         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7524         * testsuite/schedulers/Makefile.am:
7525         Added testsuite for bug 142183 in its two incarnations. Refcount
7526         is not increased for scheduled elements and threadsafe properties
7527         mutexes are not properly unlocked.
7528
7529 2004-07-16  Wim Taymans  <wim@fluendo.com>
7530
7531         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7532         (create_chain), (destroy_chain), (create_group), (destroy_group),
7533         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7534         (group_dec_link), (gst_opt_scheduler_pad_link),
7535         (group_inc_links_for_element), (group_migrate_connected):
7536         Call group_inc_link with the proper src->sink ordering -- 
7537         break this, and we break sort_chain. patch from wingo for bug
7538         147713.
7539         Partially revert patch 1.89. When adding a loop based element to 
7540         the scheduler, the links to other groups are automatically followed
7541         and incremented. This should not happen because the bin will call
7542         pad_link explicitly for those connection, resulting in them counted 
7543         twice. Results in assertion failure on pipeline cleanup.
7544
7545 2004-07-16  Wim Taymans  <wim@fluendo.com>
7546
7547         * testsuite/schedulers/143777-2.c: (main):
7548         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7549         (main):
7550         * testsuite/schedulers/Makefile.am:
7551         Added cleanup code to testcase 143777-2.
7552         Added testcase to show bug 147713, does not really show the
7553         deadlock as I can't figure out how to trigger it, but it does
7554         demonstrate bad ordering in the scheduler.
7555
7556 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7557
7558         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7559           change strndup to g_strndup.  Fixes #147707
7560
7561 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7562
7563         * po/af.po:
7564         * po/az.po:
7565         * po/cs.po:
7566         * po/en_GB.po:
7567         * po/fr.po:
7568         * po/nl.po:
7569         * po/sr.po:
7570         * po/sv.po:
7571         * po/tr.po:
7572         * po/uk.po:
7573           updated translations
7574
7575 2004-07-16  Benjamin Otte  <otte@gnome.org>
7576
7577         * gst/gstvalue.c: (gst_greatest_common_divisor):
7578           use ints and return ints, fractions only use ints, too, so this
7579           avoids accidently casting multiplications to unsigned
7580         (gst_value_lcopy_fraction): it's ints, not uint32
7581         (gst_value_set_fraction): disallow minint, multiplying and negation
7582           are broken with it
7583         (gst_value_fraction_multiply): fix to make large numbers work and get
7584         rid of the assumption that the multiplication of two ints fits an
7585         int64 - dunno if that's true for all systems
7586         * testsuite/caps/Makefile.am:
7587         * testsuite/caps/fraction-multiply-and-zero.c:
7588         (check_multiplication), (check_equal), (zero_test), (main):
7589           add tests for all the stuff above
7590         * testsuite/caps/value_compare.c: (test1):
7591           fix comment
7592         * tests/.cvsignore:
7593         * testsuite/caps/.cvsignore:
7594         * testsuite/debug/.cvsignore:
7595         * testsuite/dlopen/.cvsignore:
7596         * testsuite/states/.cvsignore:
7597           get up to date
7598
7599 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7600
7601         * docs/manual/bins-api.xml:
7602         * docs/manual/factories.xml:
7603         * docs/manual/helloworld.xml:
7604         * docs/manual/links-api.xml: 
7605           fixes for out of date info, incorrect info and grammar
7606
7607 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7608
7609         * docs/manual/pads.xml:
7610         * docs/manual/pads-api.xml: grammar fix
7611
7612 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7613
7614         * docs/manual/pads-api.xml: typo + grammar fix
7615
7616 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7617
7618         * docs/gst/gstreamer-sections.txt:
7619           add new symbols
7620         * docs/gst/tmpl/gstelement.sgml:
7621         * docs/gst/tmpl/gstpad.sgml:
7622         * docs/gst/tmpl/gsttypes.sgml:
7623         * docs/gst/tmpl/gstvalue.sgml:
7624           update docs
7625         * gst/gststructure.c: (gst_structure_set_valist),
7626         (gst_structure_from_abbr), (gst_structure_to_abbr):
7627         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7628         (gst_greatest_common_divisor), (gst_value_init_fraction),
7629         (gst_value_copy_fraction), (gst_value_collect_fraction),
7630         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7631         (gst_value_get_fraction_numerator),
7632         (gst_value_get_fraction_denominator),
7633         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7634         (gst_value_deserialize_fraction),
7635         (gst_value_transform_fraction_string),
7636         (gst_value_transform_string_fraction),
7637         (gst_value_compare_fraction), (_gst_value_initialize):
7638         * gst/gstvalue.h:
7639           adding GstFraction GValue type, get/set, and multiply
7640         * testsuite/caps/Makefile.am:
7641         * testsuite/caps/fraction.c: (test), (main):
7642         * testsuite/caps/string-conversions.c: (main):
7643         * testsuite/caps/value_compare.c: (test1), (main):
7644           add regression tests for GstFraction
7645
7646 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7647         
7648         * docs/manual/init-api.xml: Grammar fix
7649
7650 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7651
7652         * docs/manual/states.xml: Fix inconsistent information
7653
7654 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7655
7656         * gst/gstelement.c: (gst_element_set_state):
7657         * gst/gstpad.c: (gst_pad_try_set_caps):
7658         * gst/gststructure.c:
7659         * gst/gstthread.c: (gst_thread_child_state_change):
7660         * gst/gstvalue.c: (gst_value_compare_double):
7661         * gst/gstvalue.h:
7662         * testsuite/parse/parse1.c: (main):
7663           debugging additions and style cleanups
7664
7665 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7666
7667         * docs/manual/states.xml: Grammar fix
7668
7669 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7670
7671         * docs/manual/pads.xml: Grammar fix
7672
7673 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7674
7675         * docs/manual/elements.xml: Fixed image reference
7676
7677 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7678
7679         * docs/manual/goals.xml: Grammar fix
7680
7681 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7682
7683         * docs/manual/motivation.xml:
7684         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7685
7686 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7687
7688         * docs/manual/motivation.xml: Fix spelling
7689
7690 2004-07-15  Benjamin Otte  <otte@gnome.org>
7691
7692         * gst/gstelement.h: 
7693           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7694           strings.
7695         * gst/gstelement.c (gst_element_class_init):
7696           GError's are boxed, not objects
7697         * gst/gstmarshal.list:
7698           update list for the fixed error signal
7699
7700 2004-07-14  Andy Wingo  <wingo@pobox.com>
7701
7702         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7703         there all along, but the function wasn't. (guile-gstreamer's build
7704         system uses the address of the function -- I wasn't actually
7705         trying to use this.)
7706
7707 2004-07-14  Andy Wingo  <wingo@pobox.com>
7708
7709         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7710         as gst_pad_proxy_pad_link) just link to every other pad when they
7711         are called. In the case where the graph has cycles, this will mean
7712         that a call to try_set_caps will recurse. Allow this recursion
7713         and return OK, while we wait for the first try_set_caps to give a
7714         proper return value.
7715         (gst_pad_link_call_link_functions): Since this function is the
7716         only one to set the NEGOTIATING flag on a pad, if the flag is set
7717         it means that the link functions have indirectly recursed. If this
7718         happens, error out to avoid infinite recursion and an eventual
7719         SEGV.
7720         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7721         (gst_pad_proxy_getcaps): Intersect the result with the template
7722         caps to ensure that the return value is valid.
7723
7724 2004-07-14  Andy Wingo  <wingo@pobox.com>
7725
7726         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7727         one refcount, the calling function is the owner of the buffer.
7728
7729 2004-07-14  Wim Taymans  <wim@fluendo.com>
7730
7731         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7732         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7733         Fix stupid warning when an element is to be migrated but
7734         is already migrated.
7735
7736 2004-07-14  Wim Taymans  <wim@fluendo.com>
7737
7738         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7739         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7740         Make sure that a single non-loop-based element does not 
7741         end up in a group. This fixes the testsuite again.
7742
7743 2004-07-14  Wim Taymans  <wim@fluendo.com>
7744
7745         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7746         (add_to_group), (merge_groups), (schedule_group),
7747         (gst_opt_scheduler_get_wrapper), (group_elements),
7748         (group_dec_link), (gst_opt_scheduler_pad_link),
7749         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7750         (gst_opt_scheduler_iterate):
7751         move isolated groups to a new chain.
7752         Emit a warning instead of segfaulting in some error cases.
7753         Fix a bug where the link count between groups was not calculated 
7754         correctly. Fixes #144510.
7755
7756 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7757         * gst/elements/gstfilesrc.c:
7758           Binary files support under Windows now OK
7759       
7760 2004-07-13  Benjamin Otte  <otte@gnome.org>
7761
7762           compatibility fixes for Solaris 8/gcc 2.95
7763         * configure.ac:
7764           include libintl libs in LDFLAGS
7765         * gstvalue.c (gst_value_deserialize_buffer):
7766           cast isxdigit stuff to int to silence compiler warning
7767
7768 2004-07-12  Benjamin Otte  <otte@gnome.org>
7769
7770         * gst/gsttypes.h:
7771           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7772           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7773           just causes support madness
7774         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7775           make it work without this
7776         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7777         (gst_file_index_commit):
7778           glib IO channels don't want binary mode
7779         * testsuite/bytestream/filepadsink.c: (main):
7780         * testsuite/bytestream/test1.c: (read_param_file):
7781           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7782
7783 2004-07-12  Benjamin Otte  <otte@gnome.org>
7784
7785         * gst/gstelement.c: (gst_element_class_init),
7786         (gst_element_set_state), (gst_element_set_state_func):
7787           virutalize gst_element_set_state, use set_state member in class
7788           struct that was already added in 0.7 for this.
7789         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7790         (gst_bin_change_state):
7791           make gst_bin_foreach works similar to other foreach functions, plug
7792           memleaks in it. Make functions using it work with the new approach.
7793           Document gst_bin_foreach, so it can be exported if we want to
7794         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7795           use virtualized set_state to make set_state on bins set the state of
7796           all its children.
7797
7798 2004-07-12  Benjamin Otte  <otte@gnome.org>
7799
7800         * configure.ac:
7801           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7802           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7803         * gst/gstpad.c: (gst_pad_alloc_buffer):
7804           allow buffer_alloc functions to return NULL and allocate a normal
7805           buffer in that case
7806
7807 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7808         * gst/elements/gstfilesink.c:
7809         * gst/elements/gstfilesrc.c:
7810         * gst/indexers/gstfileindex.c:
7811         * gst/gsttypes.h:
7812         * testsuite/bytestream/filepadsink.c:
7813         * testsuite/bytestream/test1.c:
7814           Handle binary files under Windows
7815
7816 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7817         * docs/manual/win32.xml:
7818         * win32/config.h:
7819         * win32/gst-register.vcproj:
7820         * win32/gstreamer.def:
7821           Update to another gettext public build
7822
7823 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7824         * gst/gstplugin.c:
7825           Fix an impossible C syntax
7826         * win32/config.h:
7827           Disable i18n under Windows for the moment
7828         * win32/gst-register.vcproj:
7829           Use this configuration
7830
7831 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7832         * docs/manual/quotes.xml:
7833           Keep the quotes file alive
7834         * docs/random/ds/0.9-suggested-changes:
7835           Add the suggestion of including a 'rowstride' as part of video
7836           format caps
7837
7838 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7839
7840         * gst/gstelement.c: (gst_element_set_state),
7841         (gst_element_change_state):
7842           d'oh.  Set PENDING state correctly before forcing bin to change.
7843         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7844         (gst_structure_parse_fixed_list):
7845         * gst/schedulers/gstoptimalscheduler.c:
7846         (gst_opt_scheduler_state_transition):
7847         * testsuite/states/parent.c: (main):
7848           remove comment now that it's fixed.
7849
7850 2004-07-11  Benjamin Otte  <otte@gnome.org>
7851
7852         * gst/gstclock.h:
7853           GST_SECOND shouldn't cause a conversion to unsigned.
7854         * testsuite/clock/.cvsignore:
7855         * testsuite/clock/Makefile.am:
7856         * testsuite/clock/signedness.c: (main):
7857           make sure it never will again
7858
7859 2004-07-11  Andy Wingo  <wingo@pobox.com>
7860
7861         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7862         whose state is higher than the bin state, raise the bin state to
7863         ensure that bin state := highest child state.
7864         
7865 2004-07-11  Andy Wingo  <wingo@pobox.com>
7866
7867         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7868         procedure on the children of a bin. Assumes that the procedure can
7869         change the set of children.
7870         (set_kid_state_func): New static function.
7871         (gst_bin_change_state): Use gst_bin_foreach to call
7872         set_kid_state_func. Fixes a bug: if a child had a state-change
7873         handler that removes it from the bin, there would be a segfault.
7874         Hopefully it should also work in the case where the state-change
7875         handler on one child adds or removes other children. In any case,
7876         fixes should go to gst_bin_foreach.
7877
7878 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7879
7880         * gst/gstelement.c: (gst_element_set_state):
7881           compatibility fix for latest plugins release.  Change loop back
7882           to while {}
7883
7884 2004-07-09  Wim Taymans  <wim@fluendo.com>
7885
7886         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7887         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7888         (gst_thread_main_loop):
7889         Since remove is virtual in GstBin we must not assume the 
7890         elements GList to have anothing useful.
7891         Add some more logging to GstThread and be a bit more paranoid
7892         when resetting the scheduler.
7893         Set the state of the bin to NULL before removing the children.
7894
7895 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7896
7897         * testsuite/threads/Makefile.am:
7898         * testsuite/threads/threadg.c:
7899           added test to check if problem when removing all elements from a
7900           GstThread before setting GstThread state to NULL
7901
7902 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7903
7904         * docs/gst/tmpl/gstelement.sgml:
7905         * docs/gst/tmpl/gsttypes.sgml:
7906         * gst/gstbin.c: (gst_bin_change_state):
7907         * gst/gstelement.c: (gst_element_set_state),
7908         (gst_element_change_state):
7909           rework so that for bins we try to set the state on all children
7910           as well even if the bin is in the correct state already.
7911           change while to do so at least one iteration is done.
7912           For regular elements, we fall back to the previous behaviour for
7913           now since we first need a new plugins release.
7914         * testsuite/states/parent.c: (main):
7915           test for this case
7916           Fixes #123774
7917
7918 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7919
7920         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7921         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7922         (gst_queue_release_locks), (gst_queue_change_state),
7923         (gst_queue_set_property):
7924           add proper lock debugging.  Change dispose to finalize, since
7925           we're freeing mutexes and other stuff which should happen only once.
7926
7927 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7928
7929         * docs/gst/tmpl/gstelement.sgml:
7930         * docs/gst/tmpl/gstplugin.sgml:
7931         * docs/gst/tmpl/gsttypes.sgml:
7932         * docs/pwg/building-state.xml:
7933         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7934         * gst/gstelement.c: (gst_element_change_state):
7935         * gst/gstthread.c: (gst_thread_change_state):
7936           catch wrong state changes in element base class.
7937
7938 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7939
7940         * gst/gstinfo.h:
7941           clean up layout a little.
7942
7943 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7944
7945         * configure.ac:
7946         * testsuite/Makefile.am:
7947         * testsuite/states/Makefile.am:
7948         * testsuite/states/parent.c: (main):
7949           re-enable states testsuite dir.  Add test for state changes and
7950           parent behaviour
7951
7952 2004-07-09  Wim Taymans  <wim@fluendo.com>
7953
7954         * gst/schedulers/gstoptimalscheduler.c:
7955         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7956         (element_get_reachables_func), (element_get_reachables),
7957         (debug_element), (rechain_group), (group_migrate_connected),
7958         (gst_opt_scheduler_pad_unlink):
7959         Do not try to migrate decoupled elements to a new group since
7960         they are not added to groups.
7961
7962 2004-07-08  Benjamin Otte  <otte@gnome.org>
7963
7964         * gst/gstelement.c: (gst_element_error_func):
7965           make reentrant (= allow removing elements in error handler)
7966
7967 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7968
7969         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7970         (gst_pad_send_event), (gst_pad_call_chain_function):
7971           events sent to elements below PAUSED cannot be handled, so
7972           don't try to
7973
7974 2004-07-08  Wim Taymans  <wim@fluendo.com>
7975
7976         * gst/schedulers/gstoptimalscheduler.c:
7977         (chain_recursively_migrate_group), (create_group),
7978         (schedule_group), (gst_opt_scheduler_pad_link),
7979         (group_elements_set_visited), (element_get_reachables_func),
7980         (element_get_reachables), (group_can_reach_group), (debug_element),
7981         (rechain_group), (group_migrate_connected),
7982         (gst_opt_scheduler_pad_unlink):
7983         * testsuite/schedulers/Makefile.am:
7984         Implemented group splitting and rechaining.
7985         Fixes 143777 and 143777-2 in the testsuite.
7986
7987 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7988
7989         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7990           extra debugging
7991         * gst/gstevent.h:
7992         * gst/gstinfo.c: (gst_debug_log_default):
7993           print time nicely.  add thread pointer until someone figures out
7994           a completely portable way of getting at thread id's.
7995         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7996         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7997         (gst_pad_call_chain_function):
7998           extra debugging
7999         * gst/schedulers/gstoptimalscheduler.c:
8000         (get_group_schedule_function), (loop_group_schedule_function),
8001         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8002         (pad_clear_queued), (gst_opt_scheduler_iterate):
8003           rename BUFPEN and friends to DATAPEN since that's what they are.
8004
8005 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8006
8007         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8008         * gst/gstbuffer.h:
8009         * gst/gstpad.c:
8010           cleanups and debugging
8011
8012 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8013
8014         * configure.ac:
8015         * gst/gstvalue.c: (gst_value_compare_enum),
8016         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8017         (gst_value_can_compare), (gst_value_compare):
8018         * testsuite/Makefile.am:
8019         * testsuite/enumcaps/Makefile.am:
8020         * testsuite/enumcaps/enumcaps.c:
8021           Fix enum serialization, deserialization, comparison in caps, add
8022           a test to ensure that this continues working in the future.
8023
8024 2004-07-06  David Schleef  <ds@schleef.org>
8025
8026         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8027         Fix memleak.
8028
8029 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8030
8031         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8032         * gst/gstplugin.h:
8033         * gst/registries/gstxmlregistry.c:
8034         (plugin_times_older_than_recurse), (plugin_times_older_than),
8035         (gst_xml_registry_parse_padtemplate):
8036           only rebuild registry when actual plugins have a newer time than
8037           the registry.  Fixes #145520
8038
8039 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8040
8041         * docs/manual/manual.xml:
8042         * docs/manual/win32.xml:
8043           add chapter on win32 building.  fixes #142422
8044
8045 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8046
8047         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8048
8049         * gst/autoplug/gstspider.c: (gst_spider_init),
8050         (gst_spider_dispose):
8051           fix spider memleaks.  fixes #137863
8052
8053 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8054
8055         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8056
8057         * gst/schedulers/gstoptimalscheduler.c:
8058         (gst_opt_scheduler_pad_unlink):
8059           fix SIGBUS error, fixes #145338
8060
8061 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8062
8063         * gst/gstobject.c: (gst_object_replace):
8064         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8065         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8066           clean up clock lifecycle.  Fixes #109831
8067
8068 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8069
8070         * po/LINGUAS:
8071         * po/cs.po:
8072           added Czech translation (Miloslav Trmac)
8073
8074 2004-07-04  David Schleef  <ds@schleef.org>
8075
8076         * tools/Makefile.am:
8077         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8078
8079 2004-07-04  David Schleef  <ds@schleef.org>
8080
8081         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8082
8083 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8084
8085         * gst/gstbin.c: (gst_bin_restore_thyself):
8086           chain to parent restore so the bins get restored correctly
8087           in the editor
8088
8089 2004-07-03  David Schleef  <ds@schleef.org>
8090
8091         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8092         Actually do something in these functions, like before the big
8093         caps change.  (bug #145137)
8094
8095 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8096
8097         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8098         (gst_element_get_compatible_pad_filtered):
8099         * gst/gstthread.c: (gst_thread_main_loop):
8100           more debugging
8101
8102 2004-07-02  David Schleef  <ds@schleef.org>
8103
8104         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8105         * gst/gstobject.h:
8106         * gst/gstparse.h:
8107         * gst/gsttrace.h:
8108         * gst/gstxml.h:
8109
8110 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8111
8112         * gst/gstpad.c: (gst_pad_check_schedulers),
8113         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8114         (gst_pad_link_prepare):
8115           revert until testsuite is fixed
8116
8117 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8118
8119         * testsuite/Makefile.am:
8120         * testsuite/caps/filtercaps.c: (main):
8121         * testsuite/clock/clock1.c: (main):
8122         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8123           fix some more tests
8124
8125 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8126
8127         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8128         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8129         * testsuite/cleanup/cleanup4.c: (main):
8130           fix testsuite
8131
8132 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8133
8134         * libs/gst/control/control.c:
8135         * libs/gst/control/dparam.c:
8136         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8137         * libs/gst/control/dparammanager.c:
8138         * libs/gst/control/dparammanager.h:
8139         * testsuite/dynparams/Makefile.am:
8140         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8141         (gst_dptest_change_state), (gst_dptest_chain), (main):
8142           fix testcase for dparams
8143           add debugging category
8144
8145 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8146
8147         * testsuite/Rules:
8148           change path
8149
8150 2004-07-02  Benjamin Otte  <otte@gnome.org>
8151
8152         * tests/.cvsignore:
8153         * tests/Makefile.am:
8154         * tests/mass_elements.c: (gst_get_current_time), (main):
8155           add simple benchmark to test various speeds of fakesrc ! identity !
8156           identity ! ... ! fakesink.
8157           Usage: mass_elements [num_identities] [num_buffers]
8158           If not specified they default to 1000.
8159
8160 2004-07-02  Benjamin Otte  <otte@gnome.org>
8161
8162         * gst/gstpad.c: (gst_pad_check_schedulers),
8163         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8164         (gst_pad_link_prepare):
8165           check that pads that get linked belong to the same manager. The old
8166           code allowed linking elements before putting them into bins, so it
8167           worked to link them and then put them in different threads, which
8168           lead to weird behaviour.
8169           Since this effectively disallows linking elements before putting
8170           them in a bin, some applications might not work after this and error
8171           out. If these applications are too critical, we might need to revert
8172           that patch. Please test this before the next release...
8173
8174 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8175
8176         * gst/gstpad.c: (gst_pad_get_caps):
8177           throw an error if the getcaps function does not return a subset of
8178           the template caps.
8179         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8180           make disconts without position info an error in debugging
8181         * tests/spidey_bench.c: (handoff), (main):
8182           don't count first try when averaging
8183
8184 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8185
8186         * gst/gstplugin.c: (gst_plugin_load_file):
8187           figure out problem with dynamic test
8188
8189 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8190
8191         * docs/gst/Makefile.am:
8192           fix docs build
8193
8194 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8195
8196         * po/POTFILES.in:
8197         * po/af.po:
8198         * po/az.po:
8199         * po/en_GB.po:
8200         * po/fr.po:
8201         * po/nl.po:
8202         * po/sr.po:
8203         * po/sv.po:
8204         * po/tr.po:
8205         * po/uk.po:
8206         * tools/gst-register.c: (plugin_added_func), (main):
8207           i18n-ize -register, fix plural
8208
8209 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8210
8211         * gst/elements/gstidentity.c: (gst_identity_class_init),
8212         (gst_identity_init), (gst_identity_chain),
8213         (gst_identity_set_property), (gst_identity_get_property):
8214         * gst/elements/gstidentity.h:
8215           check for perfect stream
8216
8217 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8218
8219         * gst/elements/gstidentity.c: (gst_identity_chain):
8220           print offset_end
8221
8222 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8223
8224         * docs/gst/Makefile.am:
8225         * docs/gst/gstreamer-docs.sgml:
8226           doc fixes
8227
8228 2004-06-24  David Schleef  <ds@schleef.org>
8229
8230         * autogen.sh:  Remove call to env, since the buildbot isn't
8231         broken anymore.
8232
8233 2004-06-24  Wim Taymans  <wim@fluendo.com>
8234
8235         * gst/elements/Makefile.am:
8236         * gst/elements/gstelements.c:
8237         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8238         (gst_multifdsink_class_init), (gst_multifdsink_init),
8239         (gst_multifdsink_add), (gst_multifdsink_remove),
8240         (gst_multifdsink_clear), (gst_multifdsink_chain),
8241         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8242         * gst/elements/gstmultifdsink.h:
8243         Added an element that writes to multiple filedescriptors at once.
8244
8245 2004-06-24  Benjamin Otte  <otte@gnome.org>
8246
8247         * gst/parse/grammar.y:
8248           don't try to link elements before they have been added to bins
8249
8250 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8251
8252         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8253         (gst_file_pad_get_length):
8254         * libs/gst/bytestream/filepad.h:
8255           add 2 new functions
8256
8257 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8258
8259         * docs/gst/gstreamer-sections.txt:
8260         remove from docs, the define that Benjamin removed from gstelement.h
8261
8262 2004-06-22  Benjamin Otte  <otte@gnome.org>
8263
8264         * gst/gstelement.h:
8265           remove define that referenced a nonexisting GstElement struct member
8266
8267 2004-06-20  Benjamin Otte  <otte@gnome.org>
8268
8269         * gst/gstdata.c: (gst_data_is_writable):
8270           whoops, return values were wrong, so writable data was marked as
8271           non-writable and vice versa. (fixes #143953, spotted by Francis
8272           Labonte)
8273           Shows how rarely we need to copy data ;)
8274
8275 2004-06-20  Benjamin Otte  <otte@gnome.org>
8276
8277         * testsuite/schedulers/.cvsignore:
8278         * testsuite/schedulers/Makefile.am:
8279         * testsuite/schedulers/143777-2.c: (main):
8280           add test for opt breakage in bug #143777
8281
8282 2004-06-20  Benjamin Otte  <otte@gnome.org>
8283
8284         * gst/gstpad.c: (gst_pad_call_chain_function):
8285           check for if we were unlinked while inside the chainfunction (fixes
8286           entrygthread having issues with #143777)
8287         * testsuite/schedulers/143777.c: (main):
8288         * testsuite/schedulers/Makefile.am:
8289           add a test for that fix
8290
8291 2004-06-20  Benjamin Otte  <otte@gnome.org>
8292
8293         * gst/gstvalue.c: (gst_value_set_int_range):
8294           test that start is smaller then end
8295         * libs/gst/bytestream/Makefile.am:
8296         * libs/gst/bytestream/filepad.c: 
8297         * libs/gst/bytestream/filepad.h:
8298           add GstFilePad - a pad that behaves like a FILE*
8299         * testsuite/bytestream/.cvsignore:
8300         * testsuite/bytestream/Makefile.am:
8301         * testsuite/bytestream/filepadsink.c: 
8302           test for the GstFilePad
8303
8304 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8305
8306         * gst/elements/gstidentity.c: (gst_identity_class_init),
8307         (gst_identity_init), (gst_identity_set_clock),
8308         (gst_identity_chain), (gst_identity_set_property),
8309         (gst_identity_get_property):
8310         * gst/elements/gstidentity.h:
8311         * gst/gstclock.c: (gst_clock_id_wait):
8312           add a "sync" property to sync to the clock
8313
8314 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8315
8316         * gst/gstelementfactory.c: (gst_element_factory_create):
8317           make the freakin "elementfactory bla has no type" message more
8318           useful. So we actually can do something when someone shows up
8319           complaining about it.
8320
8321 2004-06-15  Johan Dahlin  <johan@gnome.org>
8322
8323         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8324         found. This matches the old behavior better. Thanks to Thomas for
8325         pointing out.
8326
8327 2004-06-14  David Schleef  <ds@schleef.org>
8328
8329         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8330         -fomit-frame-pointer.  Appears to generate correct code in
8331         other cases as well.
8332
8333 2004-06-14  Johan Dahlin  <johan@gnome.org>
8334
8335         * tools/gst-inspect.c (main): Add two new command line options: -a
8336         to print all elements and -n to print the name on each line. Also
8337         fix some error reporting.
8338         (main): Simplify, remove -n and always print names if -a is specified
8339
8340 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8341
8342         * win32/gstconfig.h:
8343         * win32/GSTreamer.vcproj:
8344         * win32/Makefile:
8345         * gst/gstconfig.h.in:
8346         * gst/gst.h:
8347         * gst/gstbin.h:
8348         * gst/gstelement.h:
8349         * gst/gstevent.h:
8350         * gst/gstobject.h:
8351         * gst/gstpad.h:
8352         * docs/gst/gstreamer-sections.txt:
8353         * docs/gst/tmpl/gstconfig.sgml:
8354           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8355
8356 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8357         * docs/gst/gstreamer-sections.txt:
8358         * docs/gst/tmpl/gstconfig.sgml:
8359         Add the GSTREAMER_EXPORT macro to the docs
8360
8361 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8362
8363         * tools/gst-compprep.c: (handle_xmlerror), (main):
8364         Add a check for the version that introduced SetStructuredError to fix
8365         the build on FC1
8366
8367 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8368
8369         * win32/msvc71.sln:
8370         * win32/testsuite/:
8371           prepare to compile the testsuite with MSVC
8372
8373 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8374
8375         * docs/manual/win32.xml:
8376           attempt to transform the Win32 README into an XML doc
8377
8378 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8379
8380         * gst/gst.c:
8381         * gst/gstbin.*:
8382         * gst/config.h.in:
8383         * gst/gstelement.*:
8384         * gst/gstevent.h:
8385         * gst/gstobject.*:
8386         * gst/gstpad.h:
8387         * tools/gst-register.c:
8388         * win32/gstreamer.def:
8389           extern symbols are now exported for the Windows DLL
8390
8391 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8392
8393         * gst/gstinfo.h:
8394           fix a problem to enable/disable DEBUG under MSVC
8395
8396 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8397
8398         * win32/:
8399           enable more debug code in DEBUG build
8400
8401 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8402
8403         * win32/config.h:
8404         * gst/gst-i18n-app.h:
8405           enable NLS under Windows
8406
8407 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8408         * tools/gst-compprep.c: (handle_xmlerror), (main):
8409           Make an error that baffled me a bit clearer
8410
8411 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8412
8413         * gst/gstqueue.c:
8414           don't use g_queue_get_length () because it's 2.4, use ->length
8415
8416 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8417
8418         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8419
8420         * tools/gst-inspect.c: (print_signal_info):
8421           don't free random data twice. (fixes #144185)
8422
8423 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8424
8425         * gst/gstqueue.c:
8426         * gst/gstqueue.h:
8427           fix removing from the wrong queue on event timeout
8428           fix disposing of the event queue by casting correctly
8429           add mutexes for handling the event queue
8430           someone was sleeping when fixing queue last time around :)
8431
8432 2004-06-10  Johan Dahlin  <johan@gnome.org>
8433
8434         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8435         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8436
8437 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8438
8439         * docs/random/gdp:
8440         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8441         * libs/gst/dataprotocol/dataprotocol.c:
8442         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8443         (gst_dp_buffer_from_header):
8444         * libs/gst/dataprotocol/dataprotocol.h:
8445         * libs/gst/dataprotocol/dp-private.h:
8446           rev version to 0.1, add buffer flags and copy them
8447
8448 2004-06-09  Johan Dahlin  <johan@gnome.org>
8449
8450         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8451         the flags from the buffer we're copying.
8452
8453 2004-06-09  Wim Taymans  <wim@fluendo.com>
8454
8455         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8456         * gst/elements/gstidentity.c: (gst_identity_init),
8457         (gst_identity_chain):
8458         Print more buffer info in fakesink.
8459         Make identity output similar to fakesink.
8460
8461 2004-06-07  Daniel Gazard  <dany42@free.fr>
8462
8463         reviewed by Benjamin Otte  <otte@gnome.org>
8464
8465         * configure.ac:
8466           fix cross compiling not working. (fixes #143741)
8467
8468 2004-06-07  Benjamin Otte  <otte@gnome.org>
8469
8470         * gst/gstelement.c: (gst_element_set_time_delay):
8471           add failure check
8472         * gst/gstinfo.h:
8473           put brackets around macro arguments of GST_TIME_ARGS, add note to
8474           move it to correct header in 0.9
8475
8476 2004-06-07  Benjamin Otte  <otte@gnome.org>
8477
8478         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8479         (gst_file_index_load), (_file_index_id_save_entries),
8480         (gst_file_index_commit), (gst_file_index_add_association),
8481         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8482         (gst_file_index_plugin_init):
8483           make debugging use a default category
8484
8485 2004-06-06  David Moore  <dcm@acm.org>
8486
8487         reviewed by Benjamin Otte  <otte@gnome.org>
8488
8489         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8490         (gst_fdsrc_change_state):
8491           reset offset counter when going READY => PAUSED. (fixes #142903)
8492
8493 2004-06-06  ed@catmur.co.uk
8494
8495         reviewed by Benjamin Otte  <otte@gnome.org>
8496
8497         * gst/registries/gstxmlregistry.c:
8498         (gst_xml_registry_rebuild_recurse):
8499           don't rely on g_dir_open to figure out if a file is a directory, use
8500           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8501           directories. (fixes #142850)
8502
8503 2004-06-06  Benjamin Otte  <otte@gnome.org>
8504
8505         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8506           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8507         * libs/gst/bytestream/adapter.c:
8508         * libs/gst/bytestream/adapter.h:
8509           fix copyright in header and typo in debugging category name
8510
8511 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8512
8513         * configure.ac:
8514           bump nano to cvs
8515
8516 === release 0.8.3 ===
8517
8518 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8519
8520         * configure.ac:
8521           update libtool versioning
8522           do a new release
8523         * docs/gst/tmpl/gstelement.sgml:
8524         * docs/gst/tmpl/gsttypes.sgml:
8525         * gst/gstinfo.c: (_gst_debug_init):
8526           put back GST_CAT_DATAFLOW to fix API breakage
8527
8528 2004-06-04  David Schleef  <ds@schleef.org>
8529
8530         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8531
8532 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8533
8534         * configure.ac:
8535           bump nano to cvs
8536
8537 === release 0.8.2 ===
8538
8539 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8540
8541         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8542           check GST_DEBUG environment variable which is parsed the same way
8543           as --gst-debug=
8544
8545 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8546
8547         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8548                             gstmd5sink.c gstshaper.c gsttee.c
8549                             gsttypefindelement.c
8550         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8551
8552           - removing trailing commas at end of enums
8553             it is correct C99 code but C90 compilers would complain
8554             (AIX, Forte, ...)
8555             ('should' fix #143290, at least partially)
8556
8557 2004-05-27  Wim Taymans  <wim@fluendo.com>
8558
8559         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8560         (chain_group_set_enabled), (create_group), (add_to_group),
8561         (merge_groups), (setup_group_scheduler), (group_elements),
8562         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8563         Don't try to follow the pad connections with other groups
8564         when a loop based element is added to the scheduler because
8565         the bin will inform the scheduler about the pad links a little
8566         later.
8567
8568 2004-05-27  Wim Taymans  <wim@fluendo.com>
8569
8570         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8571         (remove_from_chain), (chain_group_set_enabled),
8572         (setup_group_scheduler), (group_element_set_enabled),
8573         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8574         (gst_opt_scheduler_show):
8575         Elements without a group can do a state change as well, just wait
8576         with the setup of the scheduling function when it is added to a
8577         chain.
8578
8579 2004-05-27  Wim Taymans  <wim@fluendo.com>
8580
8581         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8582         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8583         (merge_groups), (setup_group_scheduler),
8584         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8585         (gst_opt_scheduler_show):
8586         Fixes to maintain internal consistency of the scheduler data
8587         structures. 
8588          - adding an enabled group to a chain should increment the
8589            number of enabled elements in that chain.
8590          - removing an enabled group from a chain could disable the
8591            chain.
8592          - removing a disabled group from a chain could enable the
8593            chain.
8594          - add g_assert when internal inconsistency is detected.
8595          - adding an element to a group could increase the number of
8596            links this group has with other groups.
8597          - merging two groups also merges the chains.
8598          - also show group links in the _show method.
8599            
8600
8601 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8602
8603         * gst/gstcaps.c: (gst_caps_structure_simplify):
8604           don't print error messages when there is no error
8605         * gst/gstvalue.c: (gst_value_compare_int_range):
8606           compare the second value, too
8607         * testsuite/caps/Makefile.am:
8608         * testsuite/caps/random.c: (assert_on_error), (main):
8609           add tests to make sure the two things above are checked for
8610
8611 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8612
8613         * configure.ac:
8614         * libs/gst/dataprotocol/Makefile.am:
8615         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8616         * libs/gst/dataprotocol/dataprotocol.h:
8617           wrap header in GST_ENABLE_NEW.  make code use it
8618
8619 2004-05-23  Johan Dahlin  <johan@gnome.org>
8620
8621         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8622         so verbose and print GstElement signal names all the time.
8623
8624 2004-05-22  David Schleef  <ds@schleef.org>
8625
8626         * gst/registries/gstxmlregistry.c:
8627         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8628         (bug #142957)
8629
8630 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8631
8632         * configure.ac:
8633           scrub cflags for glib2 so gcc doesn't complain when glib is in
8634           /usr/local
8635
8636 2004-05-21  Johan Dahlin  <johan@gnome.org>
8637
8638         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8639         __GNUC__, patch from Brian Cameron, fixes bug #142804
8640
8641 2004-05-20  David Schleef  <ds@schleef.org>
8642
8643         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8644         comparison code.  (bug #142819)
8645
8646 2004-05-20  Wim Taymans  <wim@fluendo.com>
8647
8648         * gst/gstbuffer.c: (gst_buffer_default_copy):
8649         * gst/gstbuffer.h:
8650         Added Comment to a flag.
8651         copy relevant flags in _buffer_copy.
8652
8653 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8654
8655         reviewed by: Wim Taymans <wim at fluendo dot com>
8656
8657         * gst/gstbuffer.h:
8658           add GST_BUFFER_IN_CAPS buffer flag
8659         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8660         (gst_structure_parse_any_list), (gst_structure_parse_list),
8661         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8662         * gst/gstvalue.c: (gst_value_serialize_any_list),
8663         (gst_value_transform_any_list_string),
8664         (gst_value_list_prepend_value), (gst_value_list_append_value),
8665         (gst_value_list_get_size), (gst_value_list_get_value),
8666         (gst_value_transform_list_string),
8667         (gst_value_transform_fixed_list_string),
8668         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8669         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8670         (_gst_value_initialize):
8671         * gst/gstvalue.h:
8672           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8673           < , > as a format.
8674         * testsuite/caps/string-conversions.c: (main):
8675           add regression tests for < >
8676
8677 2004-05-20  Johan Dahlin  <johan@gnome.org>
8678
8679         * docs/gst/Makefile.am (all-local): Re-add
8680
8681 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8682
8683         * docs/gst/Makefile.am:
8684         * docs/gst/gstreamer-docs.sgml:
8685         * docs/libs/Makefile.am:
8686         * docs/libs/gstreamer-libs-docs.sgml:
8687           fix distcheck issues
8688
8689 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8690
8691         * libs/gst/dataprotocol/Makefile.am:
8692           add to autotest
8693
8694 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8695
8696         * libs/gst/dataprotocol/Makefile.am:
8697         * libs/gst/dataprotocol/dataprotocol.c:
8698         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8699         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8700         * libs/gst/dataprotocol/dp-private.h:
8701           use GST macros to read/write fixed length ints
8702           add some more asserts
8703
8704 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8705
8706         * docs/libs/gstreamer-libs-docs.sgml:
8707         * docs/libs/gstreamer-libs-sections.txt:
8708           remove idct and putbits
8709         * configure.ac:
8710         * docs/libs/tmpl/gstdataprotocol.sgml:
8711         * libs/gst/Makefile.am:
8712         * libs/gst/dataprotocol/Makefile.am:
8713         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8714         (buffer_test), (caps_test), (event_test), (main):
8715         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8716         (gst_dp_dump_byte_array), (gst_dp_init),
8717         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8718         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8719         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8720         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8721         (gst_dp_validate_header), (gst_dp_validate_payload),
8722         (gst_dp_validate_packet), (plugin_init):
8723         * libs/gst/dataprotocol/dataprotocol.h:
8724         * libs/gst/dataprotocol/dp-private.h:
8725           add dataprotocol
8726
8727 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8728
8729         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8730           fix int variable deserialization and add a helper so we can actually
8731           debug this.
8732
8733 2004-05-18  David Schleef  <ds@schleef.org>
8734
8735         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8736           argv[0].  Calling yourself is probably not the best way to
8737           construct a test like this, btw.
8738
8739 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8740
8741         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8742           don't claim to be more intelligent than a scheduler when the
8743           scheduler claims the pipeline is stopped
8744         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8745         (safe_cothread_destroy),
8746         (gst_entry_scheduler_remove_all_cothreads),
8747         (gst_entry_scheduler_reset), (_remove_cothread),
8748         (gst_entry_scheduler_state_transition):
8749           hold off cothread destruction if we're not in main cothread
8750         * configure.ac:
8751         * testsuite/Makefile.am:
8752           add new test dir
8753         * testsuite/schedulers/.cvsignore:
8754         * testsuite/schedulers/Makefile.am:
8755           add tests
8756         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8757           check relinking and adding/removing elements from a running pipeline
8758         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8759           check unlinking in a running pipeline
8760         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8761           check unreffing a running pipeline
8762         * testsuite/schedulers/useless_iteration.c: (main):
8763           check iterating a pipeline that contains running threads works
8764
8765 2004-05-18  David Schleef  <ds@schleef.org>
8766
8767         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8768           is false.
8769
8770 2004-05-18  Wim Taymans  <wim@fluendo.com>
8771
8772         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8773         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8774         Fixed an error introduced with patch for 1.63. When setting
8775         a get based element as the entry point in a group, make sure
8776         to mark the group as GET based.
8777
8778 2004-05-18  Wim Taymans  <wim@fluendo.com>
8779
8780         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8781         (setup_group_scheduler), (loop_group_schedule_function),
8782         (gst_opt_scheduler_pad_link):
8783         Added some more debug info and fixed a bug where the group
8784         type was set to LOOP but it was in fact unknown.
8785
8786 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8787
8788         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8789           make resetting scheduler work twice in a row
8790
8791 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8792
8793         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8794         (CREATE_USERIALIZATION), (_gst_value_initialize),
8795         (gst_value_compare_float), (gst_value_serialize_float),
8796         (gst_value_deserialize_float), (gst_value_compare_enum),
8797         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8798           add serialization and comparison functions for long, int64, enum and
8799           float values
8800         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8801           use best serialization function in type hierarchy instead of only a
8802           matching one. This is required for enums to work.
8803         * gst/parse/grammar.y:
8804           use gst_caps_deserialize
8805         * testsuite/parse/Makefile.am:
8806           parse1 now works
8807         * testsuite/parse/parse1.c: (main):
8808           remove aggregator check, aggregator is broken, this test works now
8809           but fails because of bug #138012
8810         * testsuite/parse/parse2.c: (main):
8811           s/xvideosink/xvimagesink - this test looks a lot like we should
8812           disable it
8813
8814 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8815
8816         * gst/gstelement.c: (gst_element_class_init):
8817           whoops, store the signal id correctly
8818         * gst/schedulers/gstbasicscheduler.c:
8819         (gst_basic_scheduler_chain_wrapper):
8820           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8821           chain function isn't linked
8822
8823 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8824         * configure.ac:
8825         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8826         support until we decide where the flags should be used
8827         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8828         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8829         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8830         Output refused caps in the debug info
8831
8832 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8833
8834         * gst/elements/gstidentity.c: (gst_identity_chain):
8835           add duration debug
8836         * gst/gstinfo.c: (gst_debug_log_default):
8837           add timestamp
8838
8839 2004-05-13  Benjamin Otte  <otte@gnome.org>
8840
8841         * gst/gstpipeline.c: (gst_pipeline_dispose),
8842         (gst_pipeline_change_state):
8843           call gst_scheduler_reset on dispose (fixes #141416)
8844
8845 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8846
8847         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8848           compute mapsize correctly
8849         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8850           use correct datatypes when calling a varargs function
8851         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8852           push a DISCONT event as first thing
8853         * gst/gst_private.h:
8854         * gst/gstinfo.c: (_gst_debug_init):
8855           remove GST_DATAFLOW debugging category
8856         * gst/gstbin.c: (gst_bin_iterate):
8857           use GST_SCHEDULING category
8858         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8859         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8860         (gst_pad_call_get_function):
8861           add GST_DATAFLOW to easily track flow of buffers or events.
8862         * gst/gstqueue.c: (gst_queue_get_type),
8863         (gst_queue_handle_pending_events), (gst_queue_chain),
8864         (gst_queue_get), (gst_queue_handle_src_event):
8865           use own static debugging category GST_DATAFLOW for dataflow,
8866           use DEBUG category for showing which path events go, use LOG
8867           category for buffers.
8868
8869 2004-05-10  David Schleef  <ds@schleef.org>
8870
8871         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8872
8873 2004-05-10  David Schleef  <ds@schleef.org>
8874
8875         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8876         symbols, because otherwise we don't know what they are.  Thanks,
8877         the GStreamer team.
8878         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8879
8880 2004-05-10  David Schleef  <ds@schleef.org>
8881
8882         (from Steve Lhomme)
8883         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8884         are deleted.  Fix.
8885         * win32/Makefile.inspect:
8886         * win32/Makefile.launch:
8887         * win32/Makefile.register:
8888
8889 2004-05-10  David Schleef  <ds@schleef.org>
8890
8891         * gst/gstinfo.h: Add missing inline function.
8892         * gst/gsttrace.c: add include
8893         * gst/parse/grammar.y: remove unused code
8894         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8895         more portable.
8896         * tools/gst-register.c: wrap unistd.h
8897         
8898         More additions/fixes from Steve for the MSVC build.
8899         * win32/GStreamer.vcproj:
8900         * win32/Makefile:
8901         * win32/Makefile.inspect:
8902         * win32/Makefile.launch:
8903         * win32/Makefile.register:
8904         * win32/README.txt:
8905         * win32/gst-inspect.vcproj:
8906         * win32/gst-launch.vcproj:
8907         * win32/gst-register.vcproj:
8908         * win32/gstbytestream.def:
8909         * win32/gstbytestream.vcproj:
8910         * win32/gstconfig.h:
8911         * win32/gstelements.def:
8912         * win32/gstelements.vcproj:
8913         * win32/gstenumtypes.c:
8914         * win32/gstenumtypes.h:
8915         * win32/gstoptimalscheduler.def:
8916         * win32/gstoptimalscheduler.vcproj:
8917         * win32/gstreamer.def:
8918         * win32/gstspider.def:
8919         * win32/gstspider.vcproj:
8920         * win32/gstversion.h:
8921         * win32/msvc71.sln:
8922
8923 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8924
8925         * gst/gstelement.c: (gst_element_class_init),
8926         (gst_element_no_more_pads):
8927         * gst/gstelement.h:
8928           add gst_element_no_more_pads and the "no-more-pads" signal
8929
8930 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8931
8932         * gst/gstregistry.c: (gst_registry_add_plugin):
8933           refuse to add plugins when a plugin with same name is already
8934           registered. Fixes a bunch of "How to remove plugins?" issues.
8935           May lead to other problems though, let's test
8936
8937 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8938
8939         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8940         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8941         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8942
8943 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8944
8945         * tests/Makefile.am: fix am16 issue
8946
8947 2004-05-09  Benjamin Otte  <otte@gnome.org>
8948
8949         * libs/gst/bytestream/Makefile.am:
8950           we should indeed add .c files to makefiles or they won't be built
8951           (d'oh)
8952
8953 2004-05-08  Benjamin Otte  <otte@gnome.org>
8954
8955         * gst/gstpad.c: (gst_pad_proxy_fixate):
8956           really reduce the set of caps
8957
8958 2004-05-08  Benjamin Otte  <otte@gnome.org>
8959
8960         * tests/Makefile.am:
8961         * tests/spidey_bench.c: (handoff), (main):
8962           add benchmark to test how long spider needs to create a pipeline
8963
8964 2004-05-08  Benjamin Otte  <otte@gnome.org>
8965
8966         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8967           mark links as unengaged when unnegotiating instead of deactivating.
8968           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8969
8970 2004-05-08  Benjamin Otte  <otte@gnome.org>
8971
8972         * docs/manual/helloworld.xml:
8973           s/audiosink/osssink (patch by Patrick Guimond)
8974
8975 2004-05-07  David Schleef  <ds@schleef.org>
8976
8977         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8978         since it contains important stuff.
8979
8980 2004-05-07  David Schleef  <ds@schleef.org>
8981
8982         * testsuite/caps/caps.c: (test3), (main): A check for appending
8983         ANY caps.
8984
8985 2004-05-07  David Schleef  <ds@schleef.org>
8986
8987         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8988         which may contain commas.  Fixes detection of -Wa,-mregnames
8989
8990 2004-05-06  David Schleef  <ds@schleef.org>
8991
8992         Changes to handle compilers that don't have variadic macro
8993         support.  In particular, glib headers define some inlines
8994         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8995         builds.
8996         * gst/Makefile.am:
8997         * gst/cothreads.c:
8998         * gst/elements/gstfdsink.c:
8999         * gst/elements/gstfdsrc.c:
9000         * gst/elements/gstfilesink.c:
9001         * gst/elements/gstfilesrc.c:
9002         * gst/gst_private.h:
9003         * gst/gstatomic.c:
9004         * gst/gstcaps.c: (gst_caps_append):
9005         * gst/gstcpu.c: (gst_cpuid_i386):
9006         * gst/gstelement.c:
9007         * gst/gsterror.c:
9008         * gst/gstfilter.c:
9009         * gst/gstinfo.h:
9010         * gst/gstprobe.c:
9011         * gst/gstquery.c:
9012         * gst/gstregistry.c:
9013         * gst/gststructure.c:
9014         * gst/gsttaginterface.c:
9015         * gst/gsttrace.c: (gst_trace_new):
9016         * gst/gsttrashstack.c:
9017         * gst/gsturi.c:
9018         * gst/gstvalue.c:
9019         * gst/parse/grammar.y:
9020         * gst/parse/parse.l:
9021         * tools/gst-inspect.c: (main):
9022         * tools/gst-launch.c: (main):
9023         * tools/gst-xmlinspect.c: (PUT_STRING):
9024
9025 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9026
9027         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9028         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9029         * gst/elements/gstfilesrc.h:
9030           send NEW_MEDIA events correctly
9031         * gst/elements/gsttypefindelement.c: (start_typefinding),
9032         (gst_type_find_element_handle_event):
9033           restart typefinding when we get a NEW_MEDIA event
9034         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9035         (gst_bin_dispose):
9036           don't die when someone removes elements in callbacks
9037         * gst/gstelement.c: (gst_element_change_state):
9038           improve debugging
9039         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9040           we need a NEW_MEDIA event to engage a link
9041         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9042           don't g_print debugging stuff
9043         * testsuite/caps/simplify.c: (check_caps):
9044
9045 2004-05-04  Benjamin Otte  <otte@gnome.org>
9046
9047         * gst/parse/grammar.y:
9048           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9049
9050 2004-05-04  Benjamin Otte  <otte@gnome.org>
9051
9052         * testsuite/caps/renegotiate.c: (main):
9053           improve output in error case
9054
9055 2004-05-04  Benjamin Otte  <otte@gnome.org>
9056
9057         * gst/parse/grammar.y:
9058           fix assert to not trigger when there's no error argument
9059         * gst/parse/parse.l:
9060           fix definition of caps to allow more than two structures
9061         * testsuite/caps/Makefile.am:
9062         * testsuite/caps/renegotiate.c: (main):
9063           it's sinesrc and works in that case
9064
9065 2004-05-04  Wim Taymans  <wim@fluendo.com>
9066
9067         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9068         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9069         when removing an element from a group, we always need to
9070         decrement the link count that this group had with other 
9071         groups through the element.
9072         added an extra assert to catch inconsistencies when decrementing
9073         the link count.
9074
9075 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9076
9077         * configure.ac:
9078         * docs/gst/Makefile.am:
9079         * docs/gst/gstreamer-sections.txt:
9080         * docs/gst/tmpl/gstcompat.sgml:
9081         * examples/appreader/Makefile.am:
9082         * examples/cutter/Makefile.am:
9083         * examples/events/Makefile.am:
9084         * examples/helloworld/Makefile.am:
9085         * examples/helloworld2/Makefile.am:
9086         * examples/launch/Makefile.am:
9087         * examples/manual/Makefile.am:
9088         * examples/mixer/Makefile.am:
9089         * examples/pingpong/Makefile.am:
9090         * examples/plugins/Makefile.am:
9091         * examples/queue/Makefile.am:
9092         * examples/queue2/Makefile.am:
9093         * examples/queue3/Makefile.am:
9094         * examples/queue4/Makefile.am:
9095         * examples/retag/Makefile.am:
9096         * examples/thread/Makefile.am:
9097         * examples/typefind/Makefile.am:
9098         * examples/xml/Makefile.am:
9099         * gst/Makefile.am:
9100         * gst/autoplug/Makefile.am:
9101         * gst/elements/Makefile.am:
9102         * gst/gstcompat.h:
9103         * gst/indexers/Makefile.am:
9104         * gst/parse/Makefile.am:
9105         * gst/registries/Makefile.am:
9106         * gst/schedulers/Makefile.am:
9107         * libs/gst/bytestream/Makefile.am:
9108         * libs/gst/control/Makefile.am:
9109         * libs/gst/getbits/Makefile.am:
9110         * po/af.po:
9111         * po/az.po:
9112         * po/en_GB.po:
9113         * po/fr.po:
9114         * po/nl.po:
9115         * po/sr.po:
9116         * po/sv.po:
9117         * po/tr.po:
9118         * po/uk.po:
9119         * tests/Makefile.am:
9120         * tests/bufspeed/Makefile.am:
9121         * tests/instantiate/Makefile.am:
9122         * tests/memchunk/Makefile.am:
9123         * tests/muxing/Makefile.am:
9124         * tests/negotiation/Makefile.am:
9125         * tests/probes/Makefile.am:
9126         * tests/sched/Makefile.am:
9127         * tests/seeking/Makefile.am:
9128         * tests/threadstate/Makefile.am:
9129         * testsuite/caps/Makefile.am:
9130         * testsuite/cleanup/Makefile.am:
9131         * testsuite/dlopen/Makefile.am:
9132         * testsuite/dynparams/Makefile.am:
9133         * testsuite/plugin/Makefile.am:
9134         * testsuite/states/Makefile.am:
9135         * tools/Makefile.am:
9136           reorganize compile/link flags to be consistent
9137           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9138
9139 2004-05-04  David Schleef  <ds@schleef.org>
9140
9141         The "once more, with feeling" check-in.
9142         * testsuite/caps/Makefile.am: dist caps_strings
9143         * testsuite/caps/renegotiate.c: (main): This test triggers a
9144           segfault in the core.  Marking as failing.
9145
9146 2004-05-03  David Schleef  <ds@schleef.org>
9147
9148         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9149           by the build bots.
9150         * testsuite/caps/renegotiate.c: (main): Same.
9151
9152 2004-05-03  David Schleef  <ds@schleef.org>
9153
9154         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9155
9156 2004-05-03  David Schleef  <ds@schleef.org>
9157
9158         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9159           variable to find our source file.
9160
9161 2004-05-03  David Schleef  <ds@schleef.org>
9162
9163         * configure.ac:  Link plugins with libgstreamer and dependent
9164           libraries
9165         * testsuite/caps/Makefile.am:
9166         * testsuite/caps/caps_strings:
9167         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9168           through a file of caps strings and test each one
9169
9170 2004-05-04  Benjamin Otte  <otte@gnome.org>
9171
9172         * libs/gst/bytestream/Makefile.am:
9173         * libs/gst/bytestream/adapter.c: 
9174         * libs/gst/bytestream/adapter.h:
9175           add GstAdapter, similar to bytestream, but doesn't require ugly event
9176           handling or uglier loopbased elements
9177
9178 2004-05-03  David Schleef  <ds@schleef.org>
9179
9180         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9181         * testsuite/caps/erathostenes.c:
9182         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9183
9184 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9185
9186         * docs/pwg/pwg.xml:
9187           remove hardcoded stylesheet path (duh)
9188         * docs/random/release:
9189         * docs/gst/gstreamer-sections.txt:
9190         * gst/Makefile.am:
9191         * gst/gst.h:
9192         * gst/gst_private.h:
9193         * gst/gstcaps.c:
9194         * gst/gstevent.c:
9195         * gst/gstformat.c:
9196         * gst/gstinfo.c:
9197         * gst/gstinfo.h:
9198         * gst/gstinterface.c:
9199         * gst/gstmemchunk.c:
9200         * gst/gstprobe.c:
9201         * gst/gstquery.c:
9202         * gst/gstregistry.c:
9203         * gst/gstregistrypool.c:
9204         * gst/gststructure.c:
9205         * gst/gsttaginterface.c:
9206         * gst/gstthread.c:
9207         * gst/gsttrace.c:
9208         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9209         * gst/gsturi.c:
9210         * gst/gstvalue.c:
9211           deprecate gst_info; remove gstlog.h
9212    
9213
9214 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9215
9216         * Makefile.am:
9217         * po/en_GB.po:
9218         * po/sv.po:
9219         * po/uk.po:
9220           updated translations
9221
9222 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9223
9224         * gst/gstbin.c: (gst_bin_dispose):
9225           better debugging
9226
9227 2004-05-03  Johan Dahlin  <johan@gnome.org>
9228
9229         * gst/schedulers/gstoptimalscheduler.c
9230         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9231         really is a GstElement. Avoids critical when running gst-launch -v
9232         and a oggdemux/decoding pipeline.
9233
9234 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9235
9236         * docs/gst/tmpl/gstpipeline.sgml :
9237         * docs/manual/elements-api.xml :
9238                 doc fix by Patrick Guimond (Protector) from devel ML
9239                 reviewed by ronald
9240
9241 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9242
9243         * docs/gst/Makefile.am :
9244         * docs/libs/Makefile.am :
9245                 apply a patch from Arwed v. Merkatz so that gtk-doc
9246                 generated docs install (same for .devhelp file)
9247                 (fixes part 1 of #138836)
9248
9249 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9250
9251         * docs/faq/dependencies.xml: typo
9252         * docs/faq/getting.xml :
9253             - fix download URL for new gstreamer site
9254             - hide sf.net download page as latest version aren't there
9255             - fix apt URLs
9256             - fill "get via CVS" paragraph (link to dev page on the site)
9257         * docs/faq/general.xml:
9258             hide status tables as they no more exists
9259             change case on plugins license file to reflect reality
9260         * docs/faq/troubleshooting.xml:
9261             remove the wiki question/answer as there is no more wiki
9262
9263 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9264
9265         * gst/gsterror.h:
9266           include the headers needed for declarations used in this header
9267
9268 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9269
9270         * docs/random/uraeus/gstreamer_and_midi.txt :
9271           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9272           (fixes #132288)
9273
9274 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9275
9276         reviewed by Benjamin Otte  <otte@gnome.org>
9277
9278         * gst/schedulers/gthread-cothreads.h:
9279           free allocated data for main cothread, too when destroying context
9280           (fixes #141417)
9281
9282 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9283
9284         * docs/manual/goals.xml : remove duplicated paragraph at end 
9285         of doc page (fixes #141448)
9286
9287 2004-04-29  David Schleef  <ds@schleef.org>
9288
9289         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9290         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9291
9292 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9293
9294         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9295           fix property
9296         * gst/gstcaps.c:
9297           fix doc string
9298         * po/POTFILES.in:
9299           rename typefind source file
9300
9301 2004-04-28  David Schleef  <ds@schleef.org>
9302
9303         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9304         * win32/GStreamer.vcproj:
9305         * win32/Makefile:
9306         * win32/config.h:
9307         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9308         (_trewinddir), (_ttelldir), (_tseekdir):
9309         * win32/dirent.h:
9310         * win32/gst-inspect.vcproj:
9311         * win32/gst-launch.vcproj:
9312         * win32/gst-register.vcproj:
9313         * win32/gstbytestream.vcproj:
9314         * win32/gstelements.vcproj:
9315         * win32/gstoptimalscheduler.vcproj:
9316         * win32/gstspider.vcproj:
9317         * win32/gtchar.h:
9318         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9319         * win32/mman.h:
9320         * win32/mman.inl:
9321         * win32/msvc71.sln:
9322
9323 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9324
9325         * gst/gst.c: (init_post):
9326         * gst/gstinfo.c:
9327           remove useless _gst_progname stuff
9328         * tools/gst-inspect.c: (print_field), (print_caps):
9329           improve caps output
9330
9331 2004-04-28  David Schleef  <ds@schleef.org>
9332
9333         Disable parsing of a lot of files that aren't part of the
9334         exported API.  Move corresponding template files to old/,
9335         waiting for removal when they don't contain anything
9336         interesting.
9337         * docs/gst/Makefile.am:
9338         * docs/gst/gstreamer-sections.txt:
9339         * docs/gst/tmpl/cothreads.sgml:
9340         * docs/gst/tmpl/cothreads_compat.sgml:
9341         * docs/gst/tmpl/gettext.sgml:
9342         * docs/gst/tmpl/gobject2gtk.sgml:
9343         * docs/gst/tmpl/grammar.tab.sgml:
9344         * docs/gst/tmpl/gst-i18n-app.sgml:
9345         * docs/gst/tmpl/gst-i18n-lib.sgml:
9346         * docs/gst/tmpl/gst_private.sgml:
9347         * docs/gst/tmpl/gstaggregator.sgml:
9348         * docs/gst/tmpl/gstarch.sgml:
9349         * docs/gst/tmpl/gstatomic_impl.sgml:
9350         * docs/gst/tmpl/gstbufferstore.sgml:
9351         * docs/gst/tmpl/gstdata_private.sgml:
9352         * docs/gst/tmpl/gstdisksink.sgml:
9353         * docs/gst/tmpl/gstdisksrc.sgml:
9354         * docs/gst/tmpl/gstelementfactory.sgml:
9355         * docs/gst/tmpl/gstextratypes.sgml:
9356         * docs/gst/tmpl/gstfakesink.sgml:
9357         * docs/gst/tmpl/gstfakesrc.sgml:
9358         * docs/gst/tmpl/gstfdsink.sgml:
9359         * docs/gst/tmpl/gstfdsrc.sgml:
9360         * docs/gst/tmpl/gstfilesink.sgml:
9361         * docs/gst/tmpl/gstfilesrc.sgml:
9362         * docs/gst/tmpl/gsthttpsrc.sgml:
9363         * docs/gst/tmpl/gstidentity.sgml:
9364         * docs/gst/tmpl/gstindexfactory.sgml:
9365         * docs/gst/tmpl/gstmarshal.sgml:
9366         * docs/gst/tmpl/gstmd5sink.sgml:
9367         * docs/gst/tmpl/gstmultidisksrc.sgml:
9368         * docs/gst/tmpl/gstmultifilesrc.sgml:
9369         * docs/gst/tmpl/gstpadtemplate.sgml:
9370         * docs/gst/tmpl/gstpipefilter.sgml:
9371         * docs/gst/tmpl/gstschedulerfactory.sgml:
9372         * docs/gst/tmpl/gstsearchfuncs.sgml:
9373         * docs/gst/tmpl/gstshaper.sgml:
9374         * docs/gst/tmpl/gstspider.sgml:
9375         * docs/gst/tmpl/gstspideridentity.sgml:
9376         * docs/gst/tmpl/gststatistics.sgml:
9377         * docs/gst/tmpl/gsttee.sgml:
9378         * docs/gst/tmpl/gsttimecache.sgml:
9379         * docs/gst/tmpl/gsttypefind.sgml:
9380         * docs/gst/tmpl/gsttypefindfactory.sgml:
9381         * docs/gst/tmpl/gstxmlregistry.sgml:
9382         * docs/gst/tmpl/gthread-cothreads.sgml:
9383         * docs/gst/tmpl/old/cothreads.sgml:
9384         * docs/gst/tmpl/old/cothreads_compat.sgml:
9385         * docs/gst/tmpl/old/gettext.sgml:
9386         * docs/gst/tmpl/old/gobject2gtk.sgml:
9387         * docs/gst/tmpl/old/grammar.tab.sgml:
9388         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9389         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9390         * docs/gst/tmpl/old/gst_private.sgml:
9391         * docs/gst/tmpl/old/gstaggregator.sgml:
9392         * docs/gst/tmpl/old/gstarch.sgml:
9393         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9394         * docs/gst/tmpl/old/gstbufferstore.sgml:
9395         * docs/gst/tmpl/old/gstdata_private.sgml:
9396         * docs/gst/tmpl/old/gstdisksink.sgml:
9397         * docs/gst/tmpl/old/gstdisksrc.sgml:
9398         * docs/gst/tmpl/old/gstelementfactory.sgml:
9399         * docs/gst/tmpl/old/gstextratypes.sgml:
9400         * docs/gst/tmpl/old/gstfakesink.sgml:
9401         * docs/gst/tmpl/old/gstfakesrc.sgml:
9402         * docs/gst/tmpl/old/gstfdsink.sgml:
9403         * docs/gst/tmpl/old/gstfdsrc.sgml:
9404         * docs/gst/tmpl/old/gstfilesink.sgml:
9405         * docs/gst/tmpl/old/gstfilesrc.sgml:
9406         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9407         * docs/gst/tmpl/old/gstidentity.sgml:
9408         * docs/gst/tmpl/old/gstindexfactory.sgml:
9409         * docs/gst/tmpl/old/gstmarshal.sgml:
9410         * docs/gst/tmpl/old/gstmd5sink.sgml:
9411         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9412         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9413         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9414         * docs/gst/tmpl/old/gstpipefilter.sgml:
9415         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9416         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9417         * docs/gst/tmpl/old/gstshaper.sgml:
9418         * docs/gst/tmpl/old/gstspider.sgml:
9419         * docs/gst/tmpl/old/gstspideridentity.sgml:
9420         * docs/gst/tmpl/old/gststatistics.sgml:
9421         * docs/gst/tmpl/old/gsttee.sgml:
9422         * docs/gst/tmpl/old/gsttimecache.sgml:
9423         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9424         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9425         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9426         * docs/gst/tmpl/old/types.sgml:
9427         * docs/gst/tmpl/types.sgml:
9428
9429         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9430         gtkdoc-scan doesn't like files with the same name in different
9431         directories.
9432         * gst/elements/Makefile.am:
9433         * gst/elements/gstelements.c:
9434         * gst/elements/gsttypefind.c: 
9435         * gst/elements/gsttypefind.h:
9436         * gst/elements/gsttypefindelement.c:
9437         * gst/elements/gsttypefindelement.h:
9438
9439 2004-04-28  David Schleef  <ds@schleef.org>
9440
9441         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9442         patch (bug #141317):
9443         * gst/gst-i18n-lib.h: Allow disabling gettext.
9444         * gst/gstatomic_impl.h: disable warning when it's dumb.
9445         * gst/gstclock.c: fix include
9446         * gst/gstcompat.h: fix variadic macro
9447         * gst/gstinfo.c: fix include
9448         * gst/gstmacros.h: add defines for inlines on MSVC
9449         * gst/gstplugin.c: fix includes
9450         * gst/gstregistry.c: fix includes
9451         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9452         * gst/gstsystemclock.c: fix include
9453         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9454         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9455         * gst/registries/gstxmlregistry.c:
9456         (gst_xml_registry_parse_element_factory): fix use of non-portable
9457         functions
9458         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9459         * libs/gst/control/dparammanager.h: same
9460
9461 2004-04-28  David Schleef  <ds@schleef.org>
9462
9463         Move a bunch of unused files to old/ with names that are
9464         not case-insensitive-unique.  These files still contain some
9465         useful information that needs to be merged into gstbin.sgml,
9466         etc., so they shouldn't be deleted yet.
9467         * docs/gst/tmpl/GstBin.sgml:
9468         * docs/gst/tmpl/GstBuffer.sgml:
9469         * docs/gst/tmpl/GstCaps.sgml:
9470         * docs/gst/tmpl/GstClock.sgml:
9471         * docs/gst/tmpl/GstCompat.sgml:
9472         * docs/gst/tmpl/GstData.sgml:
9473         * docs/gst/tmpl/GstElement.sgml:
9474         * docs/gst/tmpl/GstEvent.sgml:
9475         * docs/gst/tmpl/GstIndex.sgml:
9476         * docs/gst/tmpl/GstStructure.sgml:
9477         * docs/gst/tmpl/GstTag.sgml:
9478         * docs/gst/tmpl/old/GstBin.sgml:
9479         * docs/gst/tmpl/old/GstBuffer.sgml:
9480         * docs/gst/tmpl/old/GstCaps.sgml:
9481         * docs/gst/tmpl/old/GstClock.sgml:
9482         * docs/gst/tmpl/old/GstCompat.sgml:
9483         * docs/gst/tmpl/old/GstData.sgml:
9484         * docs/gst/tmpl/old/GstElement.sgml:
9485         * docs/gst/tmpl/old/GstEvent.sgml:
9486         * docs/gst/tmpl/old/GstIndex.sgml:
9487         * docs/gst/tmpl/old/GstStructure.sgml:
9488         * docs/gst/tmpl/old/GstTag.sgml:
9489
9490 2004-04-28  David Schleef  <ds@schleef.org>
9491
9492         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9493         (gst_caps_append), (gst_caps_append_structure),
9494         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9495         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9496         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9497         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9498         (gst_caps_intersect), (gst_caps_normalize),
9499         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9500         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9501         * gst/gstcaps.h: use GST_IS_CAPS().
9502
9503 2004-04-26  David Schleef  <ds@schleef.org>
9504
9505         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9506         assembly.  gcc doesn't handle it correctly. (bug #141083)
9507         * gst/gsttrashstack.h: same
9508
9509 2004-04-25  Benjamin Otte  <otte@gnome.org>
9510
9511         * gst/gstelement.c: (gst_element_change_state):
9512           fix assertion to do an int comparison
9513
9514 2004-04-25  Benjamin Otte  <otte@gnome.org>
9515
9516         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9517           better debugging output on error
9518
9519 2004-04-25  Benjamin Otte  <otte@gnome.org>
9520
9521         * gst/gstcaps.c: (gst_caps_subtract):
9522           fix memleak
9523
9524 2004-04-23  Benjamin Otte  <otte@gnome.org>
9525
9526         * gst/gstvalue.c: (gst_value_compare_buffer),
9527         (_gst_value_initialize):
9528           add comparison function for buffers
9529
9530 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9531
9532         * docs/pwg/pwg.xml:
9533           Just found out that this so-called "ima-wav" format is really
9534           just "dvi adpcm" (according to the MS WAV documentation). So
9535           renaming it. We didn't use it yet anyway.
9536
9537 2004-04-23  Benjamin Otte  <otte@gnome.org>
9538
9539         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9540           call gst_caps_is_subset
9541
9542 2004-04-23  Benjamin Otte  <otte@gnome.org>
9543
9544         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9545         (gst_caps_is_subset):
9546           add documentation
9547
9548 2004-04-23  Benjamin Otte  <otte@gnome.org>
9549           
9550         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9551         (gst_caps_structure_subtract), (gst_caps_subtract),
9552         (gst_caps_structure_figure_out_union),
9553         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9554           fix simplifying and subtracting not working correctly with optional
9555           properties
9556           solve assorted problems that make it now simplify ebven more
9557         * docs/gst/tmpl/gstcaps.sgml:
9558         * gst/gstcaps.h:
9559           make gst_caps_do_simplify return a bool to indicate if it simplified
9560         * testsuite/caps/simplify.c: (main):
9561           add more checks. The tests is quite a bit useless right now because
9562           the core is heavily simplifying itself.
9563         * testsuite/caps/caps.h:
9564           fix caps to contain all optional properties
9565
9566 2004-04-22  Benjamin Otte  <otte@gnome.org>
9567
9568         * docs/gst/tmpl/gstcaps.sgml:
9569         * docs/gst/tmpl/gstfilesrc.sgml:
9570         * docs/gst/tmpl/gststructure.sgml:
9571         * docs/gst/tmpl/gstvalue.sgml:
9572           update for recent API changes
9573         * gst/gstcaps.c: (gst_caps_do_simplify):
9574           fix to stop trying with a freed structure
9575         * gst/gstpad.c: (gst_pad_link_fixate):
9576           simplify caps
9577         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9578           remove C++ comment
9579         * gst/gstpad.h:
9580           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9581         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9582         (gst_structure_to_string):
9583           keep the correct type when using lists of ranges
9584         * gst/gstvalue.c: (gst_value_list_prepend_value),
9585         (gst_value_list_append_value):
9586           copy the value before adding to the list (d'oh)
9587         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9588         (gst_value_subtract_int_range_int_range):
9589           handle overflows correctly
9590         * gst/gstvalue.c: (gst_value_subtract_from_list):
9591           fix memleak
9592         * testsuite/caps/caps.h:
9593           add a caps that caused segfaults
9594
9595 2004-04-22  Benjamin Otte  <otte@gnome.org>
9596
9597         * testsuite/refcounting/pad.c: (main):
9598           fix test
9599
9600 2004-04-22  Benjamin Otte  <otte@gnome.org>
9601
9602         * gst/gstcaps.c: (gst_caps_subtract):
9603           allow subtracting ANY and EMPTY from ANY caps
9604
9605 2004-04-22  Benjamin Otte  <otte@gnome.org>
9606
9607         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9608         (gst_caps_union):
9609           only simplify in functions that create new caps. Simplifying in
9610           gst_caps_append breaks tests.
9611
9612 2004-04-22  Benjamin Otte  <otte@gnome.org>
9613
9614         * gst/gstcaps.c: (gst_caps_structure_simplify):
9615           unset GValue after use
9616         * gst/gstcaps.c: (gst_caps_append), 
9617         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9618           use gst_caps_simplify (reduces registry size by 30%)
9619         * gst/gstpad.c: (gst_pad_template_new):
9620           don't allow NULL caps
9621
9622 2004-04-22  Benjamin Otte  <otte@gnome.org>
9623
9624         * docs/gst/gstreamer-sections.txt:
9625           add gst_caps_do_simplify
9626         * gst/gstcaps.c:
9627           add documentation for gst_caps_do_simplify
9628         * gst/gstvalue.h:
9629           fix typo in gst_value_register_subtract_func declaration for gst-doc
9630
9631 2004-04-22  Benjamin Otte  <otte@gnome.org>
9632
9633         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9634           fix bug when converting from empty string.
9635         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9636         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9637           use gst_caps_new_empty to allocate a new caps. Only that function
9638           allocates memory for caps now.
9639         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9640         (gst_caps_remove_structure):
9641           add ability to remove one structure (but not to header yet)
9642         * gst/gstcaps.c: (gst_caps_compare_structures),
9643         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9644         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9645         * gst/gstcaps.h:
9646           add gst_caps_do_simplify that tries to simplify a caps in place.
9647           Deprecate old gst_caps_simplify function.
9648         * testsuite/caps/caps.h:
9649           add caps.h containing a common set of caps to test against.
9650         * testsuite/caps/sets.c: (check_caps), (main):
9651           use it.
9652         * testsuite/caps/.cvsignore:
9653         * testsuite/caps/Makefile.am:
9654         * testsuite/caps/simplify.c: (check_caps), (main):
9655           add test to check correctness and efficency of caps simplification.
9656
9657 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9658
9659         reviewed by Benjamin Otte  <otte@gnome.org>
9660
9661         * gst/gstparse.c: (_gst_parse_escape):
9662           Free the GString used in _gst_parse_escape()
9663
9664 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9665
9666         * gst/gstpad.c: (gst_pad_link_negotiate):
9667           refuse to link if the link is not possible
9668         * configure.ac:
9669         * testsuite/Makefile.am:
9670         * testsuite/negotiation/.cvsignore:
9671         * testsuite/negotiation/Makefile.am:
9672         * testsuite/negotiation/pad_link.c: (main):
9673           add test that checks the above behaviour
9674
9675 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9676
9677         * docs/gst/gstreamer-sections.txt:
9678           add newly added API
9679
9680 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9681
9682         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9683         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9684         (gst_filesrc_open_file), (gst_filesrc_close_file),
9685         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9686         * gst/elements/gstfilesrc.h:
9687           add support for non-regular files (#140734)
9688
9689 2004-04-21  Benjamin Otte  <otte@gnome.org>
9690
9691         * gst/gstpad.c: (gst_pad_link_fixate):
9692           add sophisticated error checking code to see if fixation functions
9693           did their fixation right
9694
9695 2004-04-21  Benjamin Otte  <otte@gnome.org>
9696
9697         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9698           check for ANY caps before appending/unioning
9699         * gst/gstcaps.c: (gst_caps_is_subset),
9700         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9701         (gst_caps_structure_subtract), (gst_caps_subtract):
9702         * gst/gstcaps.h:
9703           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9704           the API. deprecate gst_caps_is_equal_fixed
9705         * gst/gstpad.c: (gst_pad_try_set_caps):
9706         * gst/gstqueue.c: (gst_queue_link):
9707           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9708         * gst/gststructure.c: (gst_structure_get_name_id):
9709         * gst/gststructure.h:
9710           add function gst_structure_get_name_id
9711         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9712         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9713         (gst_value_subtract_int_range_int_range),
9714         (gst_value_subtract_double_double_range),
9715         (gst_value_subtract_double_range_double),
9716         (gst_value_subtract_double_range_double_range),
9717         (gst_value_subtract_from_list), (gst_value_subtract_list),
9718         (gst_value_can_intersect), (gst_value_subtract),
9719         (gst_value_can_subtract), (gst_value_register_subtract_func),
9720         (_gst_value_initialize):
9721         * gst/gstvalue.h:
9722           add support for subtracting values from each other. Note that
9723           subtracting means subtracting as in set theory. Required for caps
9724           stuff above.
9725         * testsuite/caps/.cvsignore:
9726         * testsuite/caps/Makefile.am:
9727         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9728         * testsuite/caps/sets.c: (check_caps), (main):
9729         * testsuite/caps/subtract.c: (check_caps), (main):
9730           add tests for subtraction and equality code.
9731
9732 2004-04-20  David Schleef  <ds@schleef.org>
9733
9734         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9735         * gst/indexers/Makefile.am:
9736         * gst/schedulers/Makefile.am:
9737         * libs/gst/bytestream/Makefile.am:
9738         * libs/gst/control/Makefile.am:
9739         * libs/gst/getbits/Makefile.am:
9740
9741 2004-04-20  David Schleef  <ds@schleef.org>
9742
9743         * common/as-libtool.mak: Fine-tune DLL building.
9744         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9745         (like gst-plugins)
9746         * examples/plugins/Makefile.am: remove plugindir
9747         * gst/autoplug/Makefile.am: DLL building fixes
9748         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9749         Windows.
9750         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9751         * gst/indexers/Makefile.am: DLL building fixes
9752         * gst/schedulers/Makefile.am: DLL building fixes.
9753         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9754         * libs/gst/control/Makefile.am: same
9755         * libs/gst/getbits/Makefile.am: same
9756         * testsuite/Makefile.am: New dlopen directory
9757         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9758         when dlopened.
9759         * testsuite/dlopen/dlopen_gst.c: (main): same
9760         * testsuite/dlopen/loadgst.c: (do_test): same
9761
9762 2004-04-20  David Schleef  <ds@schleef.org>
9763
9764         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9765         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9766
9767 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9768
9769         * gst/gstelement.c: (gst_element_wait),
9770         (gst_element_set_time_delay), (gst_element_change_state):
9771           Use GST_TIME_*
9772
9773 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9774
9775         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9776         (gst_spider_identity_plug):
9777           improve debugging messages
9778         * gst/gstbin.c: (gst_bin_remove_func):
9779           make sure the state_change function is only called with simple state
9780           transitions
9781
9782 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9783
9784         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9785         (gst_fakesink_set_property), (gst_fakesink_chain):
9786         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9787         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9788         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9789         * gst/elements/gstidentity.c: (gst_identity_chain),
9790         (gst_identity_set_property):
9791         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9792         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9793           add warnings to _set_property for unknown arguments
9794           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9795
9796 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9797
9798         * Makefile.am:
9799         * docs/manuals.mak:
9800           add .po file download snippet
9801           fix a bug in the doc makefile
9802
9803 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9804
9805         * Makefile.am:
9806         * po/LINGUAS:
9807         * po/en_GB.po:
9808           Added en_GB translation (Gareth Owen)
9809
9810 2004-04-20  Johan Dahlin  <johan@gnome.org>
9811
9812         * gst/gstpad.c (_invent_event): Clean up
9813
9814 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9815
9816         * testsuite/caps/filtercaps.c: (main):
9817           fix test to test things correctly (caps are complicated)
9818
9819 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9820
9821         * testsuite/caps/Makefile.am:
9822         * testsuite/caps/filtercaps.c: (main):
9823           add test (that doesn't work right now, but should)
9824
9825 2004-04-19  David Schleef  <ds@schleef.org>
9826
9827         * configure.ac: Add test for allowing unaligned access.  Add define
9828         to put in gstconfig.h.
9829         * docs/gst/gstreamer-sections.txt: New symbols
9830         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9831         * docs/gst/tmpl/gstfilesrc.sgml:
9832         * docs/gst/tmpl/gstparse.sgml:
9833         * docs/gst/tmpl/gsttypes.sgml:
9834         * docs/gst/tmpl/gstutils.sgml:
9835         * docs/gst/tmpl/gstvalue.sgml:
9836         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9837         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9838         on most !i386/!powerpc architectures.  From Daniel Gazard
9839         <daniel.gazard@free.fr>.  (bug #140156)
9840         * po/af.po: Check in changes made by gettext.
9841         * po/az.po:
9842         * po/fr.po:
9843         * po/nl.po:
9844         * po/sr.po:
9845         * po/sv.po:
9846
9847 2004-04-20  Benjamin Otte  <otte@gnome.org>
9848
9849         * gst/schedulers/entryscheduler.c: 
9850         (gst_entry_scheduler_yield):
9851           refuse to yield when decoupled elements insist on doing that.
9852           At least it's better than crashing
9853
9854 2004-04-19  David Schleef  <ds@schleef.org>
9855
9856         * docs/libs/Makefile.am: Change sinclude to include
9857         * docs/gst/Makefile.am: same
9858         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9859
9860 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9861
9862         * po/LINGUAS:
9863         * po/uk.po:
9864           Added Ukrainian translation (Maxim V. Dziumanenko)
9865
9866 2004-04-19  Johan Dahlin  <johan@gnome.org>
9867
9868         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9869         checking here, do it before calling the function.
9870         Clean up, use for loops instead of while loops while iterating
9871         over lists.
9872
9873         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9874         in debug message.
9875         (gst_spider_create_and_plug): Improve debug message.
9876         General: Replace while loops which iterates over GLists with for
9877         loops. Which are much cleaner, improves readability, especially
9878         for gst_spider_identity_plug
9879
9880         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9881         fixes bug 140477
9882
9883 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9884
9885         * po/LINGUAS:
9886         * po/tr.po:
9887           Added Turkish translation (Baris Cicek)
9888
9889 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9890
9891         * docs/faq/troubleshooting.xml:
9892           Mention gst-register in the FAQ (fixes 139045).
9893
9894 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9895
9896         * docs/gst/gstreamer-sections.txt:
9897
9898 2004-04-17  Benjamin Otte  <otte@gnome.org>
9899
9900         * gst/gstelement.c: (gst_element_dispose):
9901           simplify
9902         * gst/gstpad.c: (gst_pad_call_chain_function):
9903           don't create loads of events due to bad macro usage
9904
9905 2004-04-16  David Schleef  <ds@schleef.org>
9906
9907         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9908         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9909         * gst/gstvalue.c: (gst_value_serialize_buffer),
9910         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9911         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9912         to indicate types that are fixed wrt caps or not.  Switching to
9913         this function fixes (bug #140298).
9914         * gst/gstvalue.h:
9915
9916 2004-04-16  David Schleef  <ds@schleef.org>
9917
9918         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9919         for GST_UNALIGNED_ACESS, since we essentially know which archs
9920         are ok.
9921
9922 2004-04-17  Benjamin Otte  <otte@gnome.org>
9923
9924         * docs/gst/Makefile.am:
9925           ignore gst/parse directory when building docs (fixes #140205)
9926
9927 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9928
9929         * testsuite/refcounting/mem.c: (vmsize):
9930           do error checking
9931
9932 2004-04-16  Johan Dahlin  <johan@gnome.org>
9933
9934         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9935         and gst_pad_call_get_function.
9936
9937 2004-04-15  David Schleef  <ds@schleef.org>
9938
9939         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9940         checks if we can access unaligned memory.
9941         * configure.ac: Use it.
9942
9943 2004-04-16  Benjamin Otte  <otte@gnome.org>
9944
9945         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9946         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9947         * gst/elements/gstfilesrc.h:
9948           s/seek_happened/need_discont/ and require discont before sending any
9949           data
9950
9951 2004-04-15  David Schleef  <ds@schleef.org>
9952
9953         * gst/gstvalue.c: (gst_value_serialize_buffer),
9954         (gst_value_deserialize_buffer), (_gst_value_initialize):
9955         Register these types as fundamental types. (bug #140015)
9956
9957 2004-04-16  Benjamin Otte  <otte@gnome.org>
9958
9959         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9960         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9961         (gst_pad_pull):
9962           implement enforcing discont events before buffers are passed. This
9963           allows state changes of only some elements and later correctly going
9964           on where they left off (or in short: you can now set audio sinks to
9965           NULL to release the device when the pipeline is paused)
9966         * gst/gstpad.c: (gst_pad_call_chain_function),
9967         (gst_pad_call_get_function):
9968         * gst/gstpad.h:
9969           add gst_pad_call_chain_function and gst_pad_call_get_function for
9970           scheduler interaction. They are required because of the changes
9971           above.
9972         * gst/schedulers/entryscheduler.c: (get_buffer),
9973         (gst_entry_scheduler_chain_wrapper),
9974         (gst_entry_scheduler_get_wrapper),
9975         (gst_entry_scheduler_state_transition),
9976         (gst_entry_scheduler_pad_link):
9977         * gst/schedulers/gstbasicscheduler.c:
9978         (gst_basic_scheduler_chain_wrapper),
9979         (gst_basic_scheduler_src_wrapper),
9980         (gst_basic_scheduler_chainhandler_proxy),
9981         (gst_basic_scheduler_gethandler_proxy),
9982         (gst_basic_scheduler_cothreaded_chain),
9983         (gst_basic_scheduler_chain_elements):
9984         * gst/schedulers/gstoptimalscheduler.c:
9985         (get_group_schedule_function), (pad_clear_queued),
9986         (gst_opt_scheduler_pad_link):
9987           use the new functions instead of calling get/chain-functions
9988           directly.
9989
9990 2004-04-15  David Schleef  <ds@schleef.org>
9991
9992         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9993         * docs/gst/tmpl/gstinfo.sgml: same
9994         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9995         gtk-doc put here.
9996         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9997         * examples/queue/queue.c: (main):  We iterate pipelines, not
9998         bins.  (bug #139996)
9999
10000 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10001
10002         * docs/pwg/advanced-types.xml:
10003           Add MS RLE support. Also document Qt RLE although I have no sample
10004           files for that yet. And document an extra property for ADPCM.
10005
10006 2004-04-15  David Schleef  <ds@schleef.org>
10007
10008         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10009         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10010         Windows.
10011
10012 2004-04-15  David Schleef  <ds@schleef.org>
10013
10014         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10015         symbol names to not conflict with new gstinfo.h symbols.
10016         * gst/gstinfo.h: Add inline functions for all those crazy
10017         compilers that don't know how to handle variadic macros (MSVC).
10018
10019 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10020
10021         * configure.ac: bump nano to 1
10022
10023 === release 0.8.1 ===
10024
10025 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10026
10027         * NEWS:
10028         * RELEASE:
10029         * configure.ac:
10030           releasing 0.8.1, "Snow Brigade"
10031
10032 2004-04-14  David Schleef  <ds@schleef.org>
10033
10034         * testsuite/Makefile.am: define tests_ignore
10035         * testsuite/Rules: Added new tests_ignore, which get compiled,
10036         but not run (generally because they're inconsistent or have
10037         heisenbugs).  Now we can ensure all the .c files compile in
10038         testsuite/.
10039         * testsuite/bins/Makefile.am: define tests_ignore
10040         * testsuite/bytestream/Makefile.am:
10041         * testsuite/caps/Makefile.am:
10042         * testsuite/clock/Makefile.am:
10043         * testsuite/debug/Makefile.am:
10044         * testsuite/debug/global.c: (gst_debug_log_one),
10045         (gst_debug_log_two): Fix compilation problem.
10046         * testsuite/dynparams/Makefile.am:
10047         * testsuite/elements/Makefile.am:
10048         * testsuite/ghostpads/Makefile.am:
10049         * testsuite/indexers/Makefile.am:
10050         * testsuite/parse/Makefile.am:
10051         * testsuite/plugin/Makefile.am:
10052         * testsuite/refcounting/Makefile.am:
10053         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10054         results, because it's not calculated correctly.
10055         * testsuite/refcounting/pad.c: (main): same
10056         * testsuite/states/Makefile.am:
10057         * testsuite/tags/Makefile.am:
10058         * testsuite/threads/Makefile.am:
10059
10060 2004-04-14  David Schleef  <ds@schleef.org>
10061
10062         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10063         generating bad code around the cpu detection asm code.
10064
10065 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10066
10067         * tools/gst-inspect.c: (print_element_info):
10068           print numeric version of rank as well, since we added some - 1
10069           rank values to elements
10070
10071 2004-04-13  David Schleef  <ds@schleef.org>
10072
10073         * configure.ac:  Disable various code when compiling for MinGW.
10074         * gst/elements/Makefile.am:
10075         * gst/elements/gstelements.c:
10076         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10077         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10078         * gst/registries/gstxmlregistry.c: (make_dir):
10079
10080 2004-04-13  David Schleef  <ds@schleef.org>
10081
10082         * gst/Makefile.am:
10083         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10084         assembly.
10085         * gst/gstcpuid_i386.s: remove
10086
10087 2004-04-13  David Schleef  <ds@schleef.org>
10088
10089         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10090         seems to think it needs to be done.
10091         * docs/gst/tmpl/gstfakesink.sgml:
10092         * docs/gst/tmpl/gstfakesrc.sgml:
10093         * docs/gst/tmpl/gstfdsink.sgml:
10094         * docs/gst/tmpl/gstfdsrc.sgml:
10095         * docs/gst/tmpl/gstfilesink.sgml:
10096         * docs/gst/tmpl/gstfilesrc.sgml:
10097         * docs/gst/tmpl/gstidentity.sgml:
10098         * docs/gst/tmpl/gstmd5sink.sgml:
10099         * docs/gst/tmpl/gstmultifilesrc.sgml:
10100         * docs/gst/tmpl/gstpipefilter.sgml:
10101         * docs/gst/tmpl/gstshaper.sgml:
10102         * docs/gst/tmpl/gstspider.sgml:
10103         * docs/gst/tmpl/gstspideridentity.sgml:
10104         * docs/gst/tmpl/gststatistics.sgml:
10105         * docs/gst/tmpl/gsttee.sgml:
10106         * docs/gst/tmpl/gsttypefind.sgml:
10107         * docs/gst/tmpl/gstutils.sgml:
10108
10109 2004-04-13  David Schleef  <ds@schleef.org>
10110
10111         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10112         and to build DLLs on Windows.
10113         * gst/Makefile.am:
10114         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10115         (gst_filesrc_open_file):
10116         * gst/schedulers/Makefile.am:
10117
10118 2004-04-13  David Schleef  <ds@schleef.org>
10119
10120         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10121         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10122         fixating lists.
10123
10124 2004-04-12  David Schleef  <ds@schleef.org>
10125
10126         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10127         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10128         to using it.
10129         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10130         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10131         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10132         * gst/gststructure.c: (gst_structure_set_valist),
10133         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10134         support for buffers.
10135         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10136         intended to be const.
10137         * gst/gsttag.h: same
10138         * gst/gstvalue.c: (gst_value_serialize_buffer),
10139         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10140         to (de)serialize buffers.
10141         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10142         * testsuite/caps/string-conversions.c: (main):
10143         * testsuite/caps/value_serialize.c: add new test
10144
10145 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10146
10147         * docs/pwg/advanced-types.xml:
10148           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10149
10150 2004-04-11  Benjamin Otte  <otte@gnome.org>
10151
10152         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10153           rename categories to basic_*
10154         * gst/schedulers/gstbasicscheduler.c: 
10155         (gst_basic_scheduler_chain_wrapper),
10156         (gst_basic_scheduler_chainhandler_proxy),
10157         (gst_basic_scheduler_gethandler_proxy),
10158         (gst_basic_scheduler_eventhandler_proxy):
10159           debugging category fixes - put common stuff in log category
10160         * gst/schedulers/gstbasicscheduler.c: 
10161         (gst_basic_scheduler_chain_elements):
10162           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10163           active and linking two active chains
10164
10165 2004-04-10  Benjamin Otte  <otte@gnome.org>
10166
10167         * docs/pwg/intro-preface.xml:
10168           fix dead links and remove reference to Wiki
10169
10170 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10171
10172         * gst/schedulers/gstbasicscheduler.c:
10173           make sure we can switch back to the main function if we're still in
10174           the main function (supposed to fix #139617)
10175         * gst/schedulers/gthread-cothreads.h:
10176           don't throw an error when switching to the same cothread
10177
10178 2004-04-09  Benjamin Otte  <otte@gnome.org>
10179
10180         * gst/gstbin.c: (gst_bin_get_type):
10181         * gst/gstclock.c: (gst_clock_get_type):
10182         * gst/gstindex.c: (gst_index_get_type):
10183         * gst/gstobject.c: (gst_object_get_type),
10184         (gst_signal_object_get_type):
10185         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10186         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10187         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10188         * gst/gstqueue.c: (gst_queue_get_type):
10189         * gst/gstregistry.c: (gst_registry_get_type):
10190         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10191         * gst/gstthread.c: (gst_thread_get_type):
10192           don't use memchunks for these objects, use malloc instead
10193
10194 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10195
10196         * docs/gst/.cvsignore:
10197         * docs/gst/Makefile.am:
10198         * docs/gst/gstreamer-sections.txt:
10199         * docs/gst/tmpl/gstaggregator.sgml:
10200         * docs/gst/tmpl/gstbuffer.sgml:
10201         * docs/gst/tmpl/gstclock.sgml:
10202         * docs/gst/tmpl/gstelement.sgml:
10203         * docs/gst/tmpl/gstfakesink.sgml:
10204         * docs/gst/tmpl/gstfakesrc.sgml:
10205         * docs/gst/tmpl/gstfdsink.sgml:
10206         * docs/gst/tmpl/gstfdsrc.sgml:
10207         * docs/gst/tmpl/gstfilesink.sgml:
10208         * docs/gst/tmpl/gstfilesrc.sgml:
10209         * docs/gst/tmpl/gstidentity.sgml:
10210         * docs/gst/tmpl/gstindex.sgml:
10211         * docs/gst/tmpl/gstinfo.sgml:
10212         * docs/gst/tmpl/gstmd5sink.sgml:
10213         * docs/gst/tmpl/gstmultifilesrc.sgml:
10214         * docs/gst/tmpl/gstpad.sgml:
10215         * docs/gst/tmpl/gstpipefilter.sgml:
10216         * docs/gst/tmpl/gstpipeline.sgml:
10217         * docs/gst/tmpl/gstpluginfeature.sgml:
10218         * docs/gst/tmpl/gstqueue.sgml:
10219         * docs/gst/tmpl/gstregistry.sgml:
10220         * docs/gst/tmpl/gstscheduler.sgml:
10221         * docs/gst/tmpl/gstshaper.sgml:
10222         * docs/gst/tmpl/gstspider.sgml:
10223         * docs/gst/tmpl/gstspideridentity.sgml:
10224         * docs/gst/tmpl/gststatistics.sgml:
10225         * docs/gst/tmpl/gstsystemclock.sgml:
10226         * docs/gst/tmpl/gsttee.sgml:
10227         * docs/gst/tmpl/gstthread.sgml:
10228         * docs/gst/tmpl/gsttypefind.sgml:
10229         * docs/gst/tmpl/gstutils.sgml:
10230           further doc build fixes
10231
10232 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10233
10234         * docs/gst/Makefile.am:
10235           make docs exit on scanning problems
10236           fix nonsrcdir build issues
10237         * docs/gst/gstreamer-sections.txt:
10238           adding stuff from -unused
10239         * gst/gstqueue.h:
10240           create GstQueueSize
10241         * gst/schedulers/cothreads_compat.h:
10242           fix cothread warnings
10243
10244 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10245
10246         * docs/gst/gstreamer-sections.txt:
10247           remove defines deprecated by Benjamin
10248
10249 2004-04-07  Benjamin Otte  <otte@gnome.org>
10250
10251         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10252           when the buffer is complete, don't check if other buffers are needed
10253         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10254           check that the offset is >0 so we don't try to read before the
10255           beginning of the file
10256         * gst/gstpad.c: (gst_pad_set_pad_template):
10257           sink the template, so we don't end up with 130k pad templates
10258
10259 2004-04-06  Benjamin Otte  <otte@gnome.org>
10260
10261         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10262           don't ref the element, adding already reffed it. And we didn't unref
10263           it later anyway... (huge memleak when you used many spider elements)
10264         * gst/gstelement.c: (gst_element_base_class_finalize):
10265         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10266         (gst_element_register):
10267         * gst/gsturi.c: (gst_element_make_from_uri):
10268           use gst_object_(un)ref instead of g_object(un)ref
10269
10270 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10271
10272         * gst/gstbuffer.h:
10273           remove macro that wouldn't work anymore because struct member has
10274           been removed.
10275         * gst/schedulers/entryscheduler.c: (schedule_forward):
10276           fix segfault for unconnected pads
10277         
10278 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10279
10280         reviewed by David Schleef <ds@schleef.org>
10281
10282         * gst/gstinfo.h:
10283           *_FORMAT modifiers should require putting a % in front of them for
10284           consistency reasons.
10285
10286 2004-04-05  Colin Walters  <walters@redhat.com>
10287
10288         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10289         space.
10290
10291 2004-04-05  Benjamin Otte  <otte@gnome.org>
10292
10293         * configure.ac:
10294         * gst/Makefile.am:
10295         * gst/gst_private.h:
10296         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10297           add support for detecting if GStreamer runs inside valgrind.
10298           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10299           print a big message in valgrind that GStreamer has detected it's
10300           running inside and might now use different code.
10301         * gst/gstmemchunk.c: (populate), (free_area),
10302         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10303         (gst_mem_chunk_free):
10304           flag memchunks for valgrind, so it can detect leaking of chunks.
10305           This allows detecting leaks of GstBuffer and GstEvent correctly
10306           inside valgrind.
10307
10308 2004-04-05  David Schleef  <ds@schleef.org>
10309
10310         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10311           jensgr@gmx.net (Jens Granseuer)
10312
10313 2004-04-05  David Schleef  <ds@schleef.org>
10314
10315         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10316         (gst_buffer_default_free), (gst_buffer_default_copy),
10317         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10318         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10319         structures in one place.
10320
10321 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10322
10323         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10324           (GST_TIME_FORMAT, GST_TIME_ARGS)
10325
10326 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10327
10328         * testsuite/elements/Makefile.am:
10329           disable test until it stops breaking make distcheck
10330
10331 2004-04-05  Johan Dahlin  <johan@gnome.org>
10332
10333         * po/sv.po: Updated translation
10334
10335 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10336
10337         * gst/gstplugin.c: (gst_plugin_load_file):
10338           fix segfault for when original plugin was loaded statically
10339
10340 2004-04-05  Benjamin Otte  <otte@gnome.org>
10341
10342         * testsuite/debug/category.c: (main):
10343         * testsuite/debug/commandline.c: (main):
10344         * testsuite/debug/output.c: (main):
10345           fix tests to work again with debugging enabled
10346
10347 2004-04-05  Benjamin Otte  <otte@gnome.org>
10348
10349         * gst/schedulers/gstbasicscheduler.c:
10350         (gst_basic_scheduler_pad_link):
10351           fix to work with recent scheduling changes
10352
10353 2004-04-05  Benjamin Otte  <otte@gnome.org>
10354
10355         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10356         prepareChangeLog doesn't work when cvs indents):
10357           don't throw an error when no element can be scheduled, there's too
10358           many weird reasons why it doesn't work. Return STOPPED instead.
10359           decoupled elemts' schedulability doesn't depend on bufpens.
10360
10361 2004-04-04  Benjamin Otte  <otte@gnome.org>
10362
10363         * gst/schedulers/gstbasicscheduler.c:
10364         (gst_basic_scheduler_pad_select):
10365           fix uninitialized variable warnings
10366
10367 2004-04-04  Benjamin Otte  <otte@gnome.org>
10368
10369         * gst/gstpad.c: (gst_pad_collect_valist):
10370           fix uninitialized variable warning
10371         * gst/schedulers/entryscheduler.c: (schedule_forward):
10372           fix shadowed variable
10373
10374 2004-04-04  Benjamin Otte  <otte@gnome.org>
10375
10376         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10377         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10378         (gst_pad_select):
10379         * gst/gstpad.h:
10380         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10381         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10382         * gst/gstscheduler.h:
10383           implement gst_pad_collect as replacement for gst_pad_select.
10384           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10385           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10386           new pad_select, lock and unlock calls.
10387         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10388         * gst/cothreads.h:
10389         * gst/schedulers/cothreads_compat.h:
10390         * gst/schedulers/gthread-cothreads.h:
10391           remove unused cothread_lock and cothread_unlock calls
10392         * gst/schedulers/entryscheduler.c:
10393         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10394         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10395         (gst_entry_scheduler_pad_select):
10396           update to new API
10397         * gst/schedulers/gstbasicscheduler.c:
10398         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10399         (gst_basic_scheduler_pad_select):
10400           remove useless lock and unlock calls, update pad_select to new API
10401           (untested)
10402         * gst/schedulers/gstoptimalscheduler.c:
10403         (gst_opt_scheduler_class_init):
10404           remove useless select, lock and unlock function calls
10405         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10406           use gst_pad_collect instead of gst_pad_select
10407
10408 2004-04-04  Benjamin Otte  <otte@gnome.org>
10409
10410         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10411         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10412         (schedule_next_element), (print_entry):
10413           add can_schedule_pad to handle element states.
10414           add schedule_forward to select the correct entry to schedule next
10415
10416 2004-04-03  Benjamin Otte  <otte@gnome.org>
10417
10418         * gst/schedulers/entryscheduler.c: 
10419           remove unused variable, fix error inside Rb, fix compile warning in
10420           unreachable code
10421
10422 2004-04-03  Benjamin Otte  <otte@gnome.org>
10423
10424         * gst/schedulers/entryscheduler.c:
10425           completely revamp the inner workings, so it's a lot easier to
10426           understand and extend
10427
10428 2004-04-03  Andy Wingo  <wingo@pobox.com>
10429
10430         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10431         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10432         This allows better introspection of pipeline topology.
10433         (add_to_chain): Don't do trickery to put loop elements first;
10434         rather, queue a chain sort by marking the chain as dirty.
10435         (remove_from_chain): Mark the chain dirty.
10436         (sort_chain): New function. Sorts the group list so that terminal
10437         sinks are first. This means elements on the sink side will be
10438         preferentially sscheduled before elements on the src side of the
10439         pipeline.
10440         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10441         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10442         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10443         (group_inc_link): Change argument and variable names to match the
10444         new link structure member names (src and sink).
10445         (group_dec_link): Add some description
10446
10447 2004-04-03  Benjamin Otte  <otte@gnome.org>
10448
10449         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10450         * gst/gstinfo.h:
10451         * testsuite/debug/category.c: (main):
10452         * testsuite/debug/commandline.c: (main):
10453         * testsuite/debug/output.c: (main):
10454         * testsuite/debug/printf_extension.c: (main):
10455           fix to successfully build and test with --disable-gst-debug
10456           configure switch (fixes #138705)
10457
10458 2004-04-03  Benjamin Otte  <otte@gnome.org>
10459
10460         * docs/pwg/building-boiler.xml:
10461           add cvs login line and s/anonymous/anoncvs/
10462
10463 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10464
10465         reviewed by Benjamin Otte  <otte@gnome.org>
10466
10467         * gst/gststructure.c: (gst_structure_free):
10468           memleak fix: free fields array (partial fix for #134839)
10469
10470 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10471
10472         * docs/random/ds/0.9-suggested-changes:
10473           Add a note to change handoff use in fakesrc to be usable in
10474           a more generic way (fakesrc should be renamed to appsrc or so).
10475         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10476           Change signal type to scope, so we can fill the buffer in the
10477           handoff handler (that's the whole use of this signal...).
10478
10479 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10480
10481         * docs/pwg/other-ntoone.xml:
10482           Document muxers and n-to-1 elements.
10483
10484 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10485
10486         * gst/registries/gstxmlregistry.c
10487         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10488         determine if a file is a G_MODULE. The old one discards paths
10489         containing "so" somewhere in the middle. My home directory is
10490         called "soto". Go figure...
10491
10492 2004-03-31  David Schleef  <ds@schleef.org>
10493
10494         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10495         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10496         * gst/gstbuffer.h:
10497
10498 2004-03-31  David Schleef  <ds@schleef.org>
10499
10500         * gst/gstvalue.c: (gst_value_union_int_int_range),
10501         (gst_value_union_int_range_int_range), (gst_value_can_union),
10502         (gst_value_union), (_gst_value_initialize):  Add some union
10503         implementations.  We didn't have any previously.
10504         * testsuite/caps/Makefile.am:
10505         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10506         (gst_audioscale_getcaps), (test_caps), (main): A little test
10507         that is the same as the caps manipulation in audioscale.
10508
10509 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10510
10511         * docs/faq/general.xml:
10512           add entry about "does gst support format X?"
10513
10514 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10515
10516         * gst/gstthread.c:
10517           fix docs
10518         * gst/gstutils.h:
10519           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10520
10521 2004-03-30  Benjamin Otte  <otte@gnome.org>
10522
10523         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10524           set the offset of the buffer to the requested offset
10525         * gst/elements/gsttypefind.c: (stop_typefinding):
10526           revert patch 1.18 (which I unfortunately don't know the reason for).
10527           This is needed to allow downstream elements to seek. Otherwise
10528           typefind might overwrite a previous seek by downstream elements.
10529           This lead to errors with id3tag and typefind on some mp3s.
10530         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10531         (gst_entry_scheduler_iterate):
10532           be more verbose when debugging
10533
10534 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10535
10536         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10537           make sure we don't get NULL strings
10538
10539 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10540
10541         * gst/gstcaps.c:
10542         * gst/gstelement.c:
10543         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10544         * gst/gstindex.c: (gst_index_resolver_get_type),
10545         (gst_index_get_type), (gst_index_factory_get_type):
10546         * gst/gstinfo.c:
10547         * gst/gstpad.c:
10548         * gst/gstplugin.c:
10549         * gst/gsturi.c: (gst_uri_handler_get_type):
10550         * gst/gstvalue.c:
10551           first batch of documentation fixes
10552
10553 2004-03-29  David Schleef  <ds@schleef.org>
10554
10555         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10556         * docs/gst/gstreamer-docs.sgml:  More hacking
10557         * docs/gst/gstreamer-sections.txt:
10558         * docs/gst/tmpl/cothreads_compat.sgml:
10559         * docs/gst/tmpl/gstcaps.sgml:
10560         * docs/gst/tmpl/gstclock.sgml:
10561         * docs/gst/tmpl/gstelement.sgml:
10562         * docs/gst/tmpl/gstevent.sgml:
10563         * docs/gst/tmpl/gstpad.sgml:
10564         * docs/gst/tmpl/gstutils.sgml:
10565         * docs/gst/tmpl/gstxml.sgml:
10566         * docs/gst/tmpl/gthread-cothreads.sgml:
10567         * docs/random/ds/0.9-suggested-changes:
10568         * gst/elements/gstfakesink.h: doc fixes
10569         * gst/elements/gstfakesrc.h: doc fixes
10570         * gst/gstcaps.c: doc fixes
10571         * gst/gstcaps.h: doc fixes
10572         * gst/gstelement.c: doc fixes
10573         * gst/gstelement.h: doc fixes
10574         * gst/gstindex.c: doc fixes
10575         * gst/gstinfo.c: doc fixes
10576         * gst/gstpad.c: doc fixes
10577         * gst/gstpad.h: doc fixes
10578         * gst/gstplugin.c: doc fixes
10579         * gst/gsttypefind.h: doc fixes
10580         * gst/gsturi.c: doc fixes
10581         * gst/gstvalue.c: doc fixes
10582
10583 2004-03-29  Colin Walters  <walters@redhat.com>
10584
10585         * gst/registries/gstxmlregistry.c (get_time)
10586         (plugin_times_older_than_recurse):
10587         Use the result of stat to determine whether a path is a file,
10588         so we don't attempt to opendir() files.
10589
10590 2004-03-29  Benjamin Otte  <otte@gnome.org>
10591
10592         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10593           print caps in debugging output when setting caps failed
10594         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10595         (schedule_next_element), (get_buffer), (run_chainhandler),
10596         (element_may_start), (gst_entry_scheduler_chain_handler),
10597         (gst_entry_scheduler_get_handler),
10598         (gst_entry_scheduler_state_transition),
10599         (gst_entry_scheduler_pad_link):
10600           make this scheduler a testcase for mandatory
10601           discont-before-first-buffer which is needed if we want to allow apps
10602           to release the sound device.
10603           add SCHED_ASSERT macro to print scheduler state before an assertion
10604           triggers.
10605
10606 2004-03-29  Benjamin Otte  <otte@gnome.org>
10607
10608         * COPYING:
10609           replace by LGPL (former COPYING.LIB). The core is completely
10610           licensed LGPL.
10611         * COPYING.LIB:
10612           remove
10613
10614 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10615
10616         * po/af.po:
10617         * po/sv.po:
10618           updated Afrikaans and Swedish
10619
10620 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10621
10622         * po/LINGUAS:
10623         * po/az.po:
10624           adding Azerbaijani (Mətin Əmirov)
10625
10626 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10627
10628         * gst/gstelement.h: 
10629         * gst/gstelement.c (gst_element_set_time_delay): New function for
10630         setting element time taking into account a hardware buffering
10631         delay.
10632         (gst_element_set_time): Now just an invocation of
10633         gst_element_set_time_delay.
10634         * gst/gstclock.h: 
10635         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10636         allowing to set event times in the future.
10637         (gst_clock_get_event_time): Now just an invocation of
10638         gst_clock_get_event_time_delay.
10639
10640 2004-03-28  Benjamin Otte  <otte@gnome.org>
10641
10642         * gst/gstbin.c: (gst_bin_set_element_sched),
10643         (gst_bin_unset_element_sched):
10644           don't add decoupled elements to schedulers - otherwise it's
10645           impossible to control if a link to a decoupled element was already
10646           removed from a scheduler or not.
10647         * gst/schedulers/cothreads_compat.h:
10648         * gst/schedulers/gthread-cothreads.h:
10649           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10650           is no "unused" warning.
10651         * gst/schedulers/Makefile.am:
10652         * gst/schedulers/entryscheduler.c:
10653           add new scheduler, based on ideas from talking to David and Martin.
10654           It's supposed to be small and correct. Currently it's also slow (but
10655           it's not noticable)
10656         * examples/retag/retag.c: (main):
10657         * testsuite/bytestream/test1.c: (main):
10658           fix missing NULLs at end of variadic functions
10659         * testsuite/elements/.cvsignore:
10660           update
10661
10662 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10663
10664         * gst/gstevent.h:
10665         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10666
10667 2004-03-25  David Schleef  <ds@schleef.org>
10668
10669         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10670         * docs/gst/tmpl/gstaggregator.sgml:
10671         * docs/gst/tmpl/gstautoplugfactory.sgml:
10672         * docs/gst/tmpl/gstbin.sgml:
10673         * docs/gst/tmpl/gstbuffer.sgml:
10674         * docs/gst/tmpl/gstbufferstore.sgml:
10675         * docs/gst/tmpl/gstfakesink.sgml:
10676         * docs/gst/tmpl/gstfakesrc.sgml:
10677         * docs/gst/tmpl/gstmd5sink.sgml:
10678         * docs/gst/tmpl/gstreamer-unused.sgml:
10679         * docs/gst/tmpl/gstsearchfuncs.sgml:
10680         * docs/gst/tmpl/gstshaper.sgml:
10681         * docs/gst/tmpl/gstspider.sgml:
10682         * docs/gst/tmpl/gsttee.sgml:
10683         * docs/gst/tmpl/gstutils.sgml:
10684         * docs/gst/tmpl/gstvalue.sgml:
10685         * docs/gst/tmpl/gstxml.sgml:
10686         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10687         and we don't support it.
10688         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10689         (gst_use_threads), (gst_has_threads): same
10690         * gst/gstthreaddummy.c: same
10691         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10692         * gst/autoplug/gstspider.h: same
10693         * gst/elements/gstaggregator.h: Remove bogus function from header
10694         * gst/elements/gstfakesink.h: same
10695         * gst/elements/gstfakesrc.h: same
10696         * gst/elements/gstmd5sink.h: same
10697         * gst/elements/gstshaper.h: same
10698         * gst/elements/gsttee.h: same
10699         * gst/gstbin.c: doc fixes
10700         * gst/gstbin.h: Remove unused definition.
10701         * gst/gstbuffer.c: doc fixes
10702         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10703         * gst/gstfilter.c: doc fixes
10704         * gst/gsttag.c: doc fixes
10705         * gst/gstvalue.c: doc fixes
10706
10707 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10708
10709         * docs/pwg/advanced-types.xml:
10710           Document typefinding.
10711         * docs/pwg/other-oneton.xml:
10712           Document one-to-n elements, demuxers and parsers.
10713
10714 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10715
10716         reviewed by: David Schleef  <ds@schleef.org>
10717
10718         * configure.ac: Check bison version (bug #127838)
10719
10720 2004-03-25  David Schleef  <ds@schleef.org>
10721
10722         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10723         * docs/gst/gstreamer-sections.txt:
10724         * docs/gst/tmpl/gstautoplug.sgml:
10725         * docs/gst/tmpl/gststaticautoplug.sgml:
10726         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10727         * docs/gst/tmpl/gstutils.sgml:
10728         * docs/gst/tmpl/gstxml.sgml:
10729
10730 2004-03-24  David Schleef  <ds@schleef.org>
10731
10732         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10733         manual being such complete crap, that I decided to do major
10734         hacking of it.  This checkin replaces any fine tuning that
10735         may have been done previously, with the benefit of actually
10736         being complete for much of the API that was changed since
10737         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10738         * docs/gst/gstreamer-sections.txt:
10739         * docs/gst/tmpl/GstBin.sgml:
10740         * docs/gst/tmpl/GstBuffer.sgml:
10741         * docs/gst/tmpl/GstCaps.sgml:
10742         * docs/gst/tmpl/GstClock.sgml:
10743         * docs/gst/tmpl/GstCompat.sgml:
10744         * docs/gst/tmpl/GstData.sgml:
10745         * docs/gst/tmpl/GstElement.sgml:
10746         * docs/gst/tmpl/GstEvent.sgml:
10747         * docs/gst/tmpl/GstIndex.sgml:
10748         * docs/gst/tmpl/GstStructure.sgml:
10749         * docs/gst/tmpl/GstTag.sgml:
10750         * docs/gst/tmpl/cothreads.sgml:
10751         * docs/gst/tmpl/cothreads_compat.sgml:
10752         * docs/gst/tmpl/gettext.sgml:
10753         * docs/gst/tmpl/grammar.tab.sgml:
10754         * docs/gst/tmpl/gst-i18n-app.sgml:
10755         * docs/gst/tmpl/gst-i18n-lib.sgml:
10756         * docs/gst/tmpl/gst.sgml:
10757         * docs/gst/tmpl/gst_private.sgml:
10758         * docs/gst/tmpl/gstaggregator.sgml:
10759         * docs/gst/tmpl/gstarch.sgml:
10760         * docs/gst/tmpl/gstatomic.sgml:
10761         * docs/gst/tmpl/gstatomic_impl.sgml:
10762         * docs/gst/tmpl/gstbin.sgml:
10763         * docs/gst/tmpl/gstbuffer.sgml:
10764         * docs/gst/tmpl/gstbufferstore.sgml:
10765         * docs/gst/tmpl/gstcaps.sgml:
10766         * docs/gst/tmpl/gstclock.sgml:
10767         * docs/gst/tmpl/gstcompat.sgml:
10768         * docs/gst/tmpl/gstconfig.sgml:
10769         * docs/gst/tmpl/gstcpu.sgml:
10770         * docs/gst/tmpl/gstdata.sgml:
10771         * docs/gst/tmpl/gstdata_private.sgml:
10772         * docs/gst/tmpl/gstelement.sgml:
10773         * docs/gst/tmpl/gstenumtypes.sgml:
10774         * docs/gst/tmpl/gsterror.sgml:
10775         * docs/gst/tmpl/gstevent.sgml:
10776         * docs/gst/tmpl/gstfakesink.sgml:
10777         * docs/gst/tmpl/gstfakesrc.sgml:
10778         * docs/gst/tmpl/gstfilesink.sgml:
10779         * docs/gst/tmpl/gstfilter.sgml:
10780         * docs/gst/tmpl/gstindex.sgml:
10781         * docs/gst/tmpl/gstinfo.sgml:
10782         * docs/gst/tmpl/gstinterface.sgml:
10783         * docs/gst/tmpl/gstlog.sgml:
10784         * docs/gst/tmpl/gstmacros.sgml:
10785         * docs/gst/tmpl/gstmarshal.sgml:
10786         * docs/gst/tmpl/gstmd5sink.sgml:
10787         * docs/gst/tmpl/gstmultifilesrc.sgml:
10788         * docs/gst/tmpl/gstobject.sgml:
10789         * docs/gst/tmpl/gstpad.sgml:
10790         * docs/gst/tmpl/gstparse.sgml:
10791         * docs/gst/tmpl/gstpipeline.sgml:
10792         * docs/gst/tmpl/gstplugin.sgml:
10793         * docs/gst/tmpl/gstpluginfeature.sgml:
10794         * docs/gst/tmpl/gstqueue.sgml:
10795         * docs/gst/tmpl/gstreamer-unused.sgml:
10796         * docs/gst/tmpl/gstregistry.sgml:
10797         * docs/gst/tmpl/gstregistrypool.sgml:
10798         * docs/gst/tmpl/gstscheduler.sgml:
10799         * docs/gst/tmpl/gstsearchfuncs.sgml:
10800         * docs/gst/tmpl/gstshaper.sgml:
10801         * docs/gst/tmpl/gstspider.sgml:
10802         * docs/gst/tmpl/gstspideridentity.sgml:
10803         * docs/gst/tmpl/gststructure.sgml:
10804         * docs/gst/tmpl/gstsystemclock.sgml:
10805         * docs/gst/tmpl/gsttag.sgml:
10806         * docs/gst/tmpl/gsttaginterface.sgml:
10807         * docs/gst/tmpl/gsttee.sgml:
10808         * docs/gst/tmpl/gstthread.sgml:
10809         * docs/gst/tmpl/gsttrace.sgml:
10810         * docs/gst/tmpl/gsttrashstack.sgml:
10811         * docs/gst/tmpl/gsttypefind.sgml:
10812         * docs/gst/tmpl/gsttypes.sgml:
10813         * docs/gst/tmpl/gsturi.sgml:
10814         * docs/gst/tmpl/gsturitype.sgml:
10815         * docs/gst/tmpl/gstutils.sgml:
10816         * docs/gst/tmpl/gstvalue.sgml:
10817         * docs/gst/tmpl/gstversion.sgml:
10818         * docs/gst/tmpl/gstxml.sgml:
10819         * docs/gst/tmpl/gstxmlregistry.sgml:
10820         * docs/gst/tmpl/gthread-cothreads.sgml:
10821         * docs/gst/tmpl/types.sgml:
10822
10823 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10824
10825         * docs/pwg/other-sink.xml:
10826         * docs/pwg/other-source.xml:
10827           Documentation on how to write source and sink elements. Other
10828           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10829           manager, autoplugger) are all still pending.
10830
10831 2004-03-25  Benjamin Otte  <otte@gnome.org>
10832
10833         * testsuite/elements/Makefile.am:
10834         * testsuite/elements/gst-compprep-check:
10835           add check to make sure gst-compprep works
10836         * testsuite/elements/gst-inspect-check.in:
10837           improve initialization output
10838         * testsuite/Makefile.am:
10839         * testsuite/gst-inspect-check:
10840           remove old file
10841
10842 2004-03-24  David Schleef  <ds@schleef.org>
10843
10844         * testsuite/elements/Makefile.am:
10845         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10846         to the testsuite.
10847
10848 2004-03-24  Benjamin Otte  <otte@gnome.org>
10849
10850         * libs/gst/control/dparam.c: (gst_dparam_attach),
10851         (gst_dparam_detach):
10852         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10853           fix lvalue casts for real
10854
10855 2004-03-24  Benjamin Otte  <otte@gnome.org>
10856
10857         * gst/schedulers/gstbasicscheduler.c:
10858         (gst_basic_scheduler_src_wrapper):
10859         * gst/schedulers/gstoptimalscheduler.c:
10860         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10861         (pad_clear_queued), (gst_opt_scheduler_add_element),
10862         (gst_opt_scheduler_remove_element):
10863           fix GStreamer to not have issues with lvalue casts anymore (fixes
10864           #136841)
10865
10866 2004-03-24  Benjamin Otte  <otte@gnome.org>
10867
10868         * gst/gstelement.c:
10869           add documentation about a gobject quirk where the object hasn't the
10870           correct class pointer set on initialization
10871         * gst/schedulers/gstbasicscheduler.c:
10872         (gst_basic_scheduler_src_wrapper):
10873           make sure to not run into an infinite loop
10874
10875 2004-03-22  Benjamin Otte  <otte@gnome.org>
10876
10877         * gst/gstutils.c: (gst_util_dump_mem):
10878         * gst/gstutils.h:
10879           first argument of gst_util_dump_mem should be const
10880
10881 2004-03-22  Johan Dahlin  <johan@gnome.org>
10882
10883         * gst/gstvalue.h: Clean up a little bit.
10884
10885 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10886
10887         reviewed by Benjamin Otte  <otte@gnome.org>
10888
10889         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10890         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10891         (gst_aggregator_class_init), (gst_aggregator_init):
10892         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10893         (gst_filesrc_dispose), (gst_filesrc_set_location):
10894         * gst/elements/gstidentity.c: (gst_identity_finalize),
10895         (gst_identity_class_init), (gst_identity_chain):
10896         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10897         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10898         (gst_statistics_class_init):
10899         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10900         (gst_tee_get_property):
10901           clean up used memory in this elements correctly on teardown (closes
10902           #137279)
10903
10904 2004-03-20  Colin Walters  <walters@redhat.com>
10905
10906         * gst/registries/gstxmlregistry.c:
10907         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10908         registry saving atomic.
10909
10910 2004-03-20  Colin Walters  <walters@redhat.com>
10911
10912         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10913         Just use
10914         access() instead of actually creating and deleting files.
10915
10916 2004-03-18  David Schleef  <ds@schleef.org>
10917
10918         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10919         (bug #137625)
10920
10921 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10922
10923         * po/sv.po: updated translation (Christian Rose)
10924
10925 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10926
10927         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10928         (gst_filesink_get_query_types), (_do_init),
10929         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10930           return FALSE silently
10931         * po/af.po: updated translation (Petri Jooste)
10932
10933 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10934
10935         * Makefile.am:
10936         * configure.ac:
10937           dist common properly
10938         * po/af.po:
10939         * po/fr.po:
10940         * po/nl.po:
10941         * po/sr.po:
10942         * po/sv.po:
10943           refreshing translations
10944
10945 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10946
10947         * po/LINGUAS:
10948         * po/sv.po:
10949         * po/af.po:
10950           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10951
10952 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10953
10954         * Makefile.am: use common/release.mak
10955
10956 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10957
10958         * docs/faq/gst-uninstalled:
10959           adding gst-monkeysaudio to the list of possible plugin dirs
10960
10961 2004-03-16  David Schleef  <ds@schleef.org>
10962
10963         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10964         (gst_init_check_with_popt_table):  Fix some gettext strings to
10965         make them easier to translate.  Required making the strings
10966         non-const.
10967
10968 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10969
10970         * configure.ac: bump nano to 1
10971
10972 === release 0.8.0 ===
10973
10974 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10975
10976         * configure.ac: release 0.8.0, "Executive Slacks"
10977
10978 2004-03-16  Johan Dahlin  <johan@gnome.org>
10979
10980         * gst/schedulers/gstoptimalscheduler.c
10981         (gst_opt_scheduler_pad_unlink): Remove double ;,
10982         spotted by Scott Wheeler
10983
10984 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10985
10986         * configure.ac: bump libtool version
10987
10988 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10989
10990         * gst/gstcaps.h:
10991         * gst/gststructure.h:
10992           add reserved padding
10993
10994 2004-03-15  Benjamin Otte  <otte@gnome.org>
10995
10996         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10997           set the first parameter for select call correctly.
10998           (fixes #137230)
10999
11000 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11001
11002         * *.c,*.h: don't mix tabs and spaces
11003
11004 2004-03-15  Johan Dahlin  <johan@gnome.org>
11005
11006         * gst/schedulers/gstoptimalscheduler.c
11007         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11008         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11009
11010         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11011         
11012 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11013
11014         * testsuite/Rules:
11015           fix gst-register rules
11016
11017 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11018
11019         * testsuite/Rules:
11020           use versioned gst-register
11021
11022 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11023
11024         * docs/libs/gstreamer-libs-sections.txt:
11025           remove </SUBSECTION>
11026         * gst/gstplugin.c:
11027         * gst/gstregistry.c: (gst_registry_add_plugin):
11028         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11029         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11030           add debugging and fix some comment blocks
11031
11032 2004-03-15  Johan Dahlin  <johan@gnome.org>
11033
11034         * *.h: Revert indent changes.
11035         
11036 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11037
11038         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11039           g_error_free the g_error
11040         * tools/gst-feedback-m.m:
11041           check for other versions of gstreamer
11042         * tools/gst-indent:
11043           use sh, not bash
11044
11045 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11046
11047         * tools/gst-register.c: do not spill paths when registries are not
11048           writable, until we fix the "user running gst-register" case.
11049
11050 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11051
11052         * *.c, *.h: commit of gst-indent run on core
11053
11054 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11055
11056         * tools/gst-indent:
11057         * tools/Makefile.am:
11058           add our indentation style as a script
11059
11060 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11061
11062         * po/sr.po:
11063         * po/LINGUAS:
11064           added Serbian translation
11065
11066 2004-03-13  Benjamin Otte  <otte@gnome.org>
11067
11068         * gst/gstelement.c:
11069           add documentation note about gst_element_found_tags_for_pad not
11070           being usable in getfunctions. (see #137042)
11071
11072 2004-03-12  David Schleef  <ds@schleef.org>
11073
11074         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11075         change API right now!  Readd gst_caps_is_simple() macro.
11076         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11077         uninitialized variable.  I'd bet this caused crashes.
11078         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11079
11080 2004-03-12  Johan Dahlin  <johan@gnome.org>
11081
11082         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11083         * gst/gstcaps.h: Clean up
11084
11085         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11086         _gst_caps_initalize()
11087
11088         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11089         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11090
11091         * gst/gststructure.c (gst_structure_get_type): Ditto
11092
11093         * gst/gststructure.h: Ditto
11094         
11095 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11096
11097         * gst/gstqueue.c: (gst_queue_init):
11098           Reset default max. values in queues. Reason is simply to avoid
11099           braindead use. If you want wider values, use the properties. The
11100           default is supposed to always work. Wider values would make this
11101           beast a memory hog by default (250 full-PAL RGB32 video frames?
11102           That's 440 MB! No thank you).
11103
11104 2004-03-10  David Schleef  <ds@schleef.org>
11105
11106         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11107         were found.  (bug #136793)
11108
11109 2004-03-10  Johan Dahlin  <johan@gnome.org>
11110
11111         * gst/schedulers/gstoptimalscheduler.c
11112         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11113         links to elements within the same group, so we can finally remove
11114         that annoying warning. Refactor the code a little bit
11115         (group_dec_links_for_element): Split out
11116
11117 2004-03-09  David Schleef  <ds@schleef.org>
11118
11119         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11120         (bug #134863)
11121
11122 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11123
11124         * configure.ac: first bug fix due to major/minor bump
11125
11126 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11127
11128         * configure.ac: bump nano to 1
11129
11130 === release 0.7.6 ===
11131
11132 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11133
11134         * NEWS:
11135         * RELEASE:
11136         * configure.ac:
11137           releasing 0.7.6, "Almost"
11138         * po/fr.po:
11139         * po/nl.po:
11140         * tools/Makefile.am:
11141         * tools/gst-feedback-m.m:
11142           unversioned source
11143
11144 2004-03-09  Johan Dahlin  <johan@gnome.org>
11145
11146         Reviewed by: Thomas Vander Stichele
11147
11148         * gst/gstelement.c (gst_element_class_init): register second
11149         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11150         language bindings can (de)marshall correctly.
11151
11152         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11153
11154         * gst/gsterror.c (gst_g_error_get_type): New function
11155
11156         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11157         with VOID:OBJECT,OBJECT,STRING 
11158
11159 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11160
11161         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11162         Free a leaked g_timer on early returns.
11163
11164 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11165
11166         * docs/pwg/advanced-types.xml:
11167           Add cinepak description.
11168
11169 2004-03-07  David Schleef  <ds@schleef.org>
11170
11171         * docs/random/mimetypes:  Added cinepak description
11172
11173 2004-03-07  Andy Wingo  <wingo@pobox.com>
11174
11175         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11176
11177         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11178         there are no links to other groups when a group is destroyed.
11179         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11180         removed from a group, make sure the link count to elements linked
11181         to other pads is appropriately decremented. This really fixes
11182         #135672.
11183
11184         The 1.60->1.61 patch has been reapplied in light of this fix.
11185
11186         * gst/gstelement.c (gst_element_dispose): Really protect against
11187         multiple invocations this time.
11188
11189 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11190
11191         * docs/gst/gstreamer-sections.txt:
11192         * docs/gst/tmpl/gsttag.sgml:
11193           remove some deprecated functions, document some existing ones
11194         * gst/gsttag.c: (gst_tag_get_flag):
11195         * gst/gsttag.h:
11196           add accessor function
11197
11198 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11199
11200         * docs/gst/gstreamer-sections.txt:
11201         * docs/gst/tmpl/gsttag.sgml:
11202         * docs/gst/tmpl/gstxml.sgml:
11203         * gst/gsttag.c: (gst_tag_get_flag):
11204         * gst/gsttag.h:
11205
11206 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11207
11208         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11209         leak
11210
11211 2004-03-05  David Schleef  <ds@schleef.org>
11212
11213         * REQUIREMENTS: Add bison and flex.
11214         * configure.ac: Fix comment about bison.
11215         * docs/random/ds/0.9-suggested-changes: yer ma
11216         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11217
11218 2004-03-05  Benjamin Otte  <otte@gnome.org>
11219
11220         * gst/gstelement.c: (gst_element_error_full):
11221           revert recent recursive state changing commit - messing with other
11222           elements' states is evil and should be done by apps only.
11223
11224 2004-03-05  Benjamin Otte  <otte@gnome.org>
11225
11226         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11227           check for empty intersection instead of NULL caps
11228         (gst_element_get_compatible_pad_filtered):
11229           remove old workaround that is only a bug nowadays
11230
11231 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11232
11233         * gst/gstelement.c: (gst_element_error_full):
11234           make elements try to recursively change state to PAUSED on all
11235           parents after an error to suppress ensuing warnings
11236         * gst/parse/grammar.y:
11237           make it check if it was able to sync the state, and throw an error
11238           if not, so stuff like
11239           oggdemux ! vorbisdec ! osssink gets caught
11240
11241 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11242
11243         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11244           it contains lib64; use AS_AC_EXPAND to handle it properly
11245
11246 2004-03-05  David Schleef  <ds@schleef.org>
11247
11248         * gst/gstcpuid_i386.s:  Remove unused code
11249         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11250         (gst_getbits_newbuf): Remove MMX code
11251         * libs/gst/getbits/getbits.h: Remove MMX code
11252
11253 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11254
11255         * debian/.cvsignore:
11256         * debian/README.Debian:
11257         * debian/changelog:
11258         * debian/control:
11259         * debian/control.in:
11260         * debian/copyright:
11261         * debian/gstreamer-core-libs-dev.files:
11262         * debian/gstreamer-core-libs.files:
11263         * debian/gstreamer-core.files:
11264         * debian/gstreamer-core.postinst:
11265         * debian/gstreamer-core.postrm:
11266         * debian/gstreamer-doc.files:
11267         * debian/gstreamer-doc.links:
11268         * debian/gstreamer-doc.lintian:
11269         * debian/gstreamer-runtime.files:
11270         * debian/gstreamer-runtime.manpages:
11271         * debian/gstreamer-runtime.postinst:
11272         * debian/gstreamer-runtime.postrm:
11273         * debian/gstreamer-tools.files:
11274         * debian/gstreamer-tools.manpages:
11275         * debian/libgstreamer-dev.files:
11276         * debian/libgstreamer0.4.1.files:
11277         * debian/libgstreamerVERSION.files:
11278         * debian/rules:
11279         Debian package info not maintained here.
11280
11281 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11282
11283         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11284         * gst/gstbin.c: (gst_bin_class_init):
11285         * gst/gstelement.c: (gst_element_class_init):
11286         * gst/gstindex.c: (gst_index_class_init):
11287         * gst/gstobject.c: (gst_object_class_init),
11288         (gst_signal_object_class_init):
11289         * gst/gstpad.c: (gst_pad_template_class_init):
11290         * gst/gstregistry.c: (gst_registry_class_init):
11291         * gst/gsturi.c: (gst_uri_handler_base_init):
11292         * gst/gstxml.c: (gst_xml_class_init):
11293         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11294         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11295           make all signal names use dashes instead of underscore
11296
11297 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11298
11299         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11300
11301 2004-03-03  Benjamin Otte  <otte@gnome.org>
11302
11303         * gst/schedulers/gstoptimalscheduler.c:
11304           revert last commit by Andy Wingo. It causes segfaults on unreffing
11305           in Rhythmbox. (see bug #135672)
11306
11307 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11308
11309         * po/fr.po: fix typo
11310
11311 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11312
11313         * tools/gst-inspect.c: (main): 
11314         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11315
11316 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11317
11318         * configure.ac:
11319           get GLIB_ONLY and POPT flags for the nonversioned binaries
11320         * tools/Makefile.am:
11321           use them
11322
11323 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11324
11325         * gst/gst.c: (init_post):
11326           change so that GST_REGISTRY now is where the global registry gets
11327           saved, since that is where plugins now get attached to first, and
11328           spilled over to the user registry.  Note that in the case of using
11329           GST_REGISTRY env var, we don't want to affect any real registries
11330           beyond the one given by this var, and thus we don't set a user
11331           registry to spill to.  So make sure GST_REGISTRY is writable.
11332
11333 2004-03-01  David Schleef  <ds@schleef.org>
11334
11335         * AUTHORS:  Added some names.  Add yourself if you're missing.
11336
11337 2004-03-01  David Schleef  <ds@schleef.org>
11338
11339         * MAINTAINERS: Add
11340
11341 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11342
11343         * configure.ac:
11344           remove whitespace
11345         * docs/gst/tmpl/gstbuffer.sgml:
11346         * docs/gst/tmpl/gstdata.sgml:
11347         * docs/gst/tmpl/gstreamer-unused.sgml:
11348         * docs/gst/tmpl/gstxml.sgml:
11349           doc update
11350         * docs/manuals.mak:
11351           add a FIXME
11352         * docs/pwg/intro-preface.xml:
11353         * docs/pwg/pwg.xml:
11354           remove GNOME
11355         * gst/gst.c: (init_post):
11356           try GST_PLUGIN_PATH paths for the _global_registry first
11357         * gst/gstelement.h:
11358           add the error message as well, otherwise (null) debug info doesn't
11359           make much sense
11360         * tools/gst-register.c: (main):
11361           spill paths to next registry if this registry is not writable
11362         * po/fr.po:
11363         * po/nl.po:
11364           translation updates
11365
11366 2004-03-01  Johan Dahlin  <johan@gnome.org>
11367
11368         * gst/gstbuffer.c (_gst_buffer_initialize): 
11369         * gst/gstdata.c (gst_data_get_type): 
11370         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11371         instead of ref, since some applications that uses GBoxed
11372         routines depends on a function that actually returns a copy.
11373
11374 2004-02-27  Benjamin Otte  <otte@gnome.org>
11375
11376         * gst/gstbuffer.h:
11377           remove gst_buffer_free, use gst_data_unref
11378         * gst/gstdata.c: (gst_data_get_type):
11379           use refcounting in GstData GBoxed registration
11380         * gst/gstdata.h:
11381           remove gst_data_free, use gst_data_unref
11382
11383 2004-02-27  Johan Dahlin  <johan@gnome.org>
11384
11385         * gst/gstdata.c (gst_data_get_type): New function, register
11386         GstData as a GBoxed type.
11387
11388         * gst/gstdata.h (GST_TYPE_DATA): New macro
11389
11390 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11391
11392         * Makefile.am:
11393         * gstreamer.spec.in:
11394           put back RELEASE
11395         * gst/Makefile.am:
11396           clean up non-disting of built files
11397         * testsuite/debug/commandline.c:
11398           test fix for option rename
11399
11400 2004-02-26  David Schleef  <ds@schleef.org>
11401
11402         * configure.ac:  We don't really need glib-2.3.  Also remove
11403         some unneeded checks for library functions.
11404         * gst/Makefile.am:  Instead, we need to not dist files created
11405         by glib-genmarshal.
11406
11407 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11408
11409         * configure.ac:
11410           bump glib required version to 2.3.0 for g_value_takes_boxed
11411
11412  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11413
11414         * common/m4/gst-docs.m4
11415         change flavour text from enable to disable as enable is our default
11416         closes bug Bug 135304
11417
11418 === release 0.7.5 ===
11419  
11420  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11421  
11422         * NEWS:
11423           instate NEWS file
11424         * Makefile.am:
11425         * gstreamer.spec.in:
11426         * RELEASE:
11427           put back release
11428         * configure.ac:
11429         * docs/random/release:
11430           more updates
11431
11432 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11433
11434         * gst/gsttag.c: (_gst_tag_initialize):
11435         * po/fr.po:
11436         * po/nl.po:
11437           remove hyphen from codec tags
11438
11439 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11440
11441         * gst/parse/Makefile.am:
11442           fix dependency so that a make from a clean build works the first
11443           time
11444
11445 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11446
11447         * docs/random/release:
11448           update release strategy
11449         * po/fr.po:
11450           auto-update po file
11451         * po/nl.po:
11452           update dutch translation
11453
11454 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11455
11456         * docs/manual/debugging.xml:
11457         fix manual for new debugging system
11458
11459 2004-02-25  Andy Wingo  <wingo@pobox.com>
11460
11461         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11462         gst_pad_link_prepare. Please email the list with specific reasons
11463         for reverting.
11464
11465 2004-02-24  Andy Wingo  <wingo@pobox.com>
11466
11467         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11468         invocations.
11469
11470         * gst/schedulers/gstoptimalscheduler.c:
11471         I added a mess of prototypes at the top of the file by way of
11472         documentation. Some of the operations on chains and groups were
11473         re-organized.
11474
11475         (create_group): Added a type argument so if the group is enabled,
11476         the setup_group_scheduler knows what to do.
11477         (group_elements): Added a type argument here, too, to be passed on
11478         to create_group.
11479         (group_element_set_enabled): If an unlinked PLAYING element is
11480         added to a bin, we have to create a new group to hold the element,
11481         and this function will be called before the group is added to the
11482         chain. Thus we have a valid case for group->chain==NULL. Instead
11483         of calling chain_group_set_enabled, just set the flag on the group
11484         (the chain's status will be set when the group is added to it).
11485         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11486         Setup the group scheduler when the group is enabled, not
11487         specifically when an element goes PAUSED->PLAYING. This means
11488         PLAYING elements can be added, linked, and scheduled into a
11489         PLAYING pipeline, as was intended.
11490         (add_to_group): Don't ref the group twice. I don't know when this
11491         double-ref got in here. Removing it has the potential to cause
11492         segfaults if other parts of the scheduler are buggy. If you find
11493         that the scheduler is segfaulting for you, put in an extra ref
11494         here and see if that hacks over the underlying issue. Of course,
11495         then find out what code is unreffing a group it doesn't own...
11496         (create_group): Make the extra refcount floating, and remove it
11497         after adding the element. This means that...
11498         (unref_group): Destroy when the refcount reaches 0, not 1, like
11499         every other refcounted object in the known universe.
11500         (remove_from_group): When a group becomes empty, set it to be not
11501         active, and remove it from its chain. Don't unref it again,
11502         there's no floating reference any more.
11503         (destroy_group): We have to remove the group from the chain in
11504         remove_from_group (rather than here) to break refcounting cycles
11505         (the chain always has a ref on the group). So assert that
11506         group->chain==NULL.
11507         (ref_group_by_count): Removed, it was commented out anyway.
11508         (merge_chains): Use the remove_from_chain and add_to_chain
11509         primitives to do the reparenting, instead of rolling our own
11510         implementation.
11511         (add_to_chain): The first non-disabled group in the chain's group
11512         list will be the entry point for the chain. Because buffers can
11513         accumulate in loop elements' peer bufpens, we preferentially
11514         schedule loop groups before get groups to avoid unnecessary
11515         execution of get-based groups when the bufpens are already full.
11516         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11517         (get_group_schedule_function): Ditto.
11518         (loop_group_schedule_function): Ditto.
11519         (gst_opt_scheduler_loop_wrapper): Ditto.
11520         (gst_opt_scheduler_iterate): Ditto.
11521
11522         I understand the opt scheduler now, yippee!
11523
11524         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11525         (gst_pad_get_name, gst_pad_set_chain_function) 
11526         (gst_pad_set_get_function, gst_pad_set_event_function) 
11527         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11528         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11529         (gst_pad_set_query_function, gst_pad_get_query_types) 
11530         (gst_pad_get_query_types_default) 
11531         (gst_pad_set_internal_link_function) 
11532         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11533         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11534         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11535         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11536         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11537         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11538         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11539         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11540         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11541         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11542         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11543         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11544         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11545         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11546         argument checks, and some doc fixes.
11547
11548         (gst_pad_custom_new_from_template): Um, does anyone
11549         use these functions? Actually make a custom pad instead of a
11550         normal one.
11551         (gst_pad_try_set_caps): Transpose some checks.
11552         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11553         the pad is in negotiation.
11554         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11555         
11556         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11557
11558         * gst/gstelement.h: 
11559         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11560         on the list.
11561
11562 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11563
11564         * gst/gstbin.c: (gst_bin_add):
11565           add error for not being able to add elements
11566
11567 2004-02-22  Julien MOUTTE <julien@moutte.net>
11568
11569         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11570         audio-codec and video-codec.
11571
11572 2004-02-22  Benjamin Otte  <otte@gnome.org>
11573
11574         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11575
11576         * autogen.sh:
11577           replace test -e with test -x for mkinstalldirs to be more portable.
11578           (fixes #134816)
11579
11580 2004-02-22  Benjamin Otte  <otte@gnome.org>
11581
11582         * gst/gstpad.c:
11583           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11584           too noisy
11585         * gst/gsttag.c: (_gst_tag_initialize):
11586         * gst/gsttag.h:
11587           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11588         * libs/gst/control/dparam.c: (gst_dparam_attach):
11589         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11590           check that types for attached dparams match
11591
11592 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11593
11594         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11595         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11596         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11597           fix errors
11598
11599 2004-02-20  Andy Wingo  <wingo@pobox.com>
11600
11601         * gst/gstbin.c:
11602         * gst/gstbuffer.c:
11603         * gst/gstplugin.c:
11604         * gst/registries/gstxmlregistry.c: 
11605         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11606
11607         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11608         (gst_element_add_pad): DEBUG->INFO, some fixes.
11609         (gst_element_get_compatible_pad_template): Just see if the
11610         templates' caps intersect, not if one is a strict subset of the
11611         other. This conforms more to what gst_pad_link_intersect() does.
11612         (gst_element_class_add_pad_template): Don't memcpy the pad
11613         template, just ref it.
11614         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11615
11616         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11617         (gst_pad_link_filtered): Debug changes.
11618         (gst_pad_link_prepare): New function, consolidated from
11619         can_link_filtered and link_filtered.
11620
11621         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11622         look more like that of the functions in gstelement.c
11623
11624         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11625         object, and return the empty string if object is NULL.
11626
11627         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11628         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11629         LOG, not DEBUG. We still get flex info on debug.
11630
11631         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11632         debug string more verbose.
11633         (plugin_times_older_than): DEBUG->LOG.
11634
11635 2004-02-20  Julien MOUTTE <julien@moutte.net>
11636
11637         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11638         will emit found_tag for each stream they demux with the codec.
11639
11640 2004-02-20  Benjamin Otte  <otte@gnome.org>
11641
11642         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11643           copy navigation event correctly. Check freeing tag lists. 
11644         * gst/gstthread.c: (gst_thread_change_state):
11645           don't abort() on state changing mess - it might happen because of
11646           bugs.
11647         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11648           use boxed functions
11649         * gst/gstvalue.h:
11650           fix GST_VALUE_HOLDS_CAPS
11651
11652 2004-02-19  David Schleef  <ds@schleef.org>
11653
11654         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11655         and use it for GST_FUNCTION.  (bug #134750)
11656
11657 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11658
11659         * po/fr.po:
11660         * po/nl.po:
11661           updating translations
11662
11663 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11664
11665         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11666
11667 2004-02-18  kost@imn.htwk-leipzig.de
11668
11669         reviewed by: David Schleef  <ds@schleef.org>
11670
11671         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11672         for libgstcontrol.
11673
11674 2004-02-18  David Schleef  <ds@schleef.org>
11675
11676         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11677         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11678         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11679         * tools/gst-inspect.c: (print_element_info): Support dumping of
11680         double dparam information.
11681
11682 2004-02-17  David Schleef  <ds@schleef.org>
11683
11684         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11685         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11686         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11687         Use GST_TYPE_CAPS in signal prototype.
11688         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11689         Convert GST_TYPE_CAPS to boxed.
11690         * gst/gstelement.c: (gst_element_class_init):
11691         Use GST_TYPE_TAG_LIST in signal prototype.
11692         * gst/gstindex.c: (gst_index_class_init):
11693         * gst/gstindex.h:
11694         Add GST_TYPE_INDEX_ENTRY type.
11695         * gst/gstmarshal.list:
11696         Add necessary marshal types.
11697         * gst/gstpad.c: (gst_real_pad_class_init),
11698         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11699         (gst_pad_recover_caps_error):
11700         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11701         * gst/gststructure.c: (_gst_structure_initialize),
11702         (gst_structure_copy), (_gst_structure_copy_conditional):
11703         * gst/gststructure.h:
11704         Convert GST_TYPE_STRUCTURE to boxed.
11705         * gst/gsttag.c: (gst_tag_list_get_type):
11706         * gst/gsttag.h:
11707         Add GST_TYPE_TAG_LIST type.
11708
11709 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11710
11711         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11712         to what we agreed with david.
11713         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11714
11715 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11716
11717         * po/nl.po: update translation
11718
11719 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11720
11721         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11722           throw an error if spider is trying to play a mime type there is
11723           no decoder for
11724         * po/POTFILES.in:
11725           add gst/autoplug/gstspider.c for translation
11726
11727 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11728
11729         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11730         silently when the pad is negotiating.
11731
11732 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11733
11734         * docs/faq/Makefile.am:
11735           add script to run gstreamer uninstalled 
11736         * docs/faq/faq.xml:
11737         * docs/faq/developing.xml:
11738         * docs/faq/gst-uninstalled:
11739           extract script to run gstreamer uninstalled
11740         * docs/manuals.mak:
11741           add EXTRA_SOURCES variable for Makefile.am's to set to
11742           use additional SOURCE files for the doc build
11743
11744 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11745
11746         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11747
11748 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11749
11750         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11751         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11752         an error was thrown by osssink. Basically a state change failure for
11753         an element in a different scheduling group was considered as
11754         successful, which means that caps nego was going on and weird stuff
11755         happened. Like I wrote in the comment there, if someone wants to
11756         revert that please drop me a mail explaining why because I really see
11757         no point in keeping that broken behaviour there.
11758         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11759         be empty, we then return NULL which will trigger a nice error when 
11760         pulling from the pad.
11761
11762 2004-02-13  David Schleef  <ds@schleef.org>
11763
11764         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11765         (gst_dparam_get_property), (gst_dparam_set_property),
11766         (gst_dparam_do_update_default):
11767         * libs/gst/control/dparam.h:
11768         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11769         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11770         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11771         (gst_dpsmooth_do_update_double):
11772         * libs/gst/control/dparam_smooth.h:
11773         * libs/gst/control/dparammanager.c:
11774         (gst_dpman_inline_direct_update):
11775         Add support for double dparams.
11776
11777 2004-02-13  David Schleef  <ds@schleef.org>
11778
11779         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11780         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11781
11782 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11783
11784         reviewed by: David Schleef  <ds@schleef.org>
11785
11786         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11787         (gst_fdsrc_init), (gst_fdsrc_set_property),
11788         (gst_fdsrc_get_property), (gst_fdsrc_get):
11789         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11790         and sends an EOS event if file descriptor reading times out.
11791
11792 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11793
11794         * configure.ac:
11795           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11796
11797 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11798
11799         * configure.ac: pass required libxml version as argument
11800         (bug reported by Christophe Fergeau)
11801
11802 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11803   
11804         * docs/gst/gstreamer-docs.sgml:
11805         * docs/gst/tmpl/gstxml.sgml:
11806         * docs/libs/gstreamer-libs-docs.sgml:
11807           version API docs
11808
11809 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11810
11811         * gst/gstinfo.c:
11812         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11813         (gst_registry_pool_feature_filter):
11814         * gst/gstthread.c: (gst_thread_class_init):
11815         * gst/gstvalue.c:
11816           add includes exposed by building without libxml
11817         * gst/indexers/Makefile.am:
11818           do not build fileindex when LOADSAVE disabled; we should have
11819           a better libxml check later since fileindex depends on xml, not
11820           LOADSAVE or REGISTRY
11821         * libs/gst/control/Makefile.am:
11822           link with m
11823         * tools/Makefile.am:
11824           fix wrong source code for gst-xmlinspect
11825
11826 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11827
11828         * configure.ac:
11829           fix gcov help output
11830           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11831         * docs/random/release:
11832           some updated releasing notes
11833         * gstreamer.spec.in:
11834           more updates
11835
11836 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11837
11838         * docs/faq/faq.xml:
11839         * docs/manual/manual.xml:
11840         * docs/pwg/pwg.xml:
11841         * docs/pwg/titlepage.xml:
11842           put version in documentation
11843
11844 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11845
11846         * tools/Makefile.am: fix man page installation
11847
11848 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11849
11850         * configure.ac:
11851           don't check for libxml when load/save and registry disabled (#105844)
11852         * gstreamer.spec.in:
11853           sync with fedora candidate spec
11854
11855 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11856
11857         * po/fr.po:
11858         * po/nl.po:
11859           replace multidisksrc with multifilesrc
11860
11861 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11862
11863         * po/POTFILES.in:
11864           update to multidisksrc => multifilesrc file renaming (#134145)
11865
11866 2004-02-11  David Schleef  <ds@schleef.org>
11867
11868         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11869         * docs/gst/tmpl/gstpadtemplate.sgml: same
11870         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11871         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11872         fixing dance.
11873         * gst/gstutils.c: Remove disabled code that uses GstProps.
11874         * gst/registries/gstxmlregistry.h: same
11875         * docs/random/ds/0.9-suggested-changes: random notes
11876
11877 2004-02-11  kost@imn.htwk-leipzig.de
11878
11879         reviewed by: David Schleef  <ds@schleef.org>
11880
11881         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11882         initialisation of clock (bug #134128)
11883
11884 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11885
11886         * configure.ac:
11887         * gst/elements/Makefile.am:
11888         * gst/elements/gstelements.c:
11889         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11890         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11891         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11892         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11893         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11894         * gst/elements/gstmultifilesrc.h:
11895           rename multidisksrc to multifilesrc (part of #122200)
11896
11897 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11898
11899         * docs/manuals.mak:
11900           fix automake complaints
11901         * gst-element-check.m4:
11902           fix unquotedness
11903
11904 2004-02-11  David Schleef  <ds@schleef.org>
11905
11906         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11907         * gst/gstatomic_impl.h: Disable sparc implementation.
11908
11909 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11910
11911         * gst-element-check.m4:
11912           fix underquoted macros as reported by automake 1.8.x (#133800)
11913         * configure.ac:
11914           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11915           by autopoint (fixes #132996)
11916
11917 2004-02-10  Andy Wingo  <wingo@pobox.com>
11918
11919         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11920         way to do inheritance.
11921         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11922         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11923         Routine docs.
11924         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11925         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11926         doc.
11927         (gst_pad_unlink, gst_pad_is_linked): Docs.
11928         (gst_pad_renegotiate): A brief description of capsnego.
11929         (gst_pad_try_set_caps): Document.
11930         (gst_pad_try_set_caps_nonfixed): Document.
11931         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11932         (gst_pad_set_parent): Deprecated (although not out of the API).
11933         (gst_pad_get_parent): Deprecated, although many plugins use this.
11934         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11935         are private and will go away in 0.9.
11936         (gst_pad_perform_negotiate): Doc.
11937         (gst_pad_link_unnegotiate): I think this is meant to be static.
11938         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11939         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11940         (gst_pad_get_peer): Doc updates.
11941         (gst_pad_caps_change_notify): Doc.
11942         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11943         (gst_ghost_pad_new): Doc fixes.
11944
11945         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11946         (gst_object_check_uniqueness): 
11947
11948         * gst/gstelement.c (gst_element_add_pad) 
11949         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11950         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11951         (gst_element_get_static_pad, gst_element_get_pad_list) 
11952         (gst_element_class_get_pad_template_list) 
11953         (gst_element_class_get_pad_template): Work on the docs.
11954         (gst_element_get_pad_template_list): Uses the class method.
11955         (gst_element_get_compatible_pad_template): Docs, and consolidate
11956         some test conditions. 
11957         (gst_element_get_pad_from_template): New static function.
11958         (gst_element_request_compatible_pad): Docs, and work with
11959         non-request compatible templates. 
11960         (gst_element_get_compatible_pad_filtered): Docs and remove
11961         redundant checks.
11962         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11963         (gst_element_link_filtered, gst_element_link_many) 
11964         (gst_element_link, gst_element_link_pads) 
11965         (gst_element_unlink_many): Docs.
11966
11967 2004-02-05  Andy Wingo  <wingo@pobox.com>
11968
11969         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11970         s/pointer/boxed/.
11971
11972         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11973
11974         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11975         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11976         with the type=GST_TYPE_CAPS. This allows language bindings to know
11977         what kind of data they're dealing with.
11978
11979         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11980         to NULL when g_value_init is called. GstCaps, which rolls its own
11981         type implementation, now does the same instead of allocating empty
11982         caps.
11983         (_gst_caps_initialize, _gst_caps_collect_value,
11984         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11985         table methods. This allows G_VALUE_COLLECT to work.
11986
11987 2004-02-05  Andy Wingo  <wingo@pobox.com>
11988
11989         * configure.ac:
11990         * testsuite/Makefile.am (SUBDIRS): 
11991         * testsuite/ghostpads/Makefile.am: 
11992         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11993
11994         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11995         These two routines are the only ones that set
11996         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11997         pad template. They should be made static, depending on ABI needs.
11998         (gst_real_pad_dispose): Handle the case of ghost pads without a
11999         parent. Assert after dealing with ghost pads that the ghost pad
12000         list is empty.
12001         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12002         set after creation.
12003         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12004         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12005         functions. set_property will call add_ghost_pad/remove_ghost_pad
12006         as appropriate.
12007         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12008
12009         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12010         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12011         (gst_element_remove_pad): Handle ghost pads as well.
12012         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12013         depending on API-stability needs).
12014
12015 2004-02-05  Andy Wingo  <wingo@pobox.com>
12016
12017         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12018         of course they're const
12019
12020 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12021
12022         * tools/Makefile.am:
12023         * tools/gst-feedback:
12024         * tools/gst-feedback-0.7:
12025           make gst-feedback versioned too for consistency
12026
12027 2004-02-11  David Schleef  <ds@schleef.org>
12028
12029         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12030         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12031
12032 2004-02-10  Julien MOUTTE <julien@moutte.net>
12033
12034         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12035         the structure does not contain a valid tag list. Adding a safety check
12036         to remove a noisy warning in that case.
12037
12038 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12039
12040         * gst/gst.c: fix name to be in line with others
12041
12042 2004-02-09  Julien MOUTTE <julien@moutte.net>
12043
12044         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12045         not shout that loud when len is 0. Just return 0 silently.
12046
12047 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12048
12049         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12050         because data_unref has one and I prefer the debug to be symetric.
12051         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12052         were refed when added to the queue and unrefed only once when the queue
12053         was flushed. Now the flush handler unref the buffers two times : first
12054         unref for the ref added when pushing in the queue's tail and second
12055         unref to destroy the flushed buffer.
12056
12057 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12058
12059         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12060
12061 2004-02-06  David Schleef  <ds@schleef.org>
12062
12063         * docs/random/ds/0.9-suggested-changes: Random ramblings
12064         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12065         to int before printing.
12066         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12067         * gst/parse/parse.l: same.  See bug #129600
12068
12069 2004-02-06  David Schleef  <ds@schleef.org>
12070
12071         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12072         (gst_index_add_entry), (gst_index_add_associationv),
12073         (gst_index_add_association): Add gst_index_add_associationv()
12074         and clean up gst_index_add_association(). #127133
12075
12076 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12077
12078         * autogen.sh: check out common with right tag if CVS/Tag exists
12079
12080 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12081
12082         * testsuite/ghostpads/ghostpads.c: (main):
12083           fix testsuite from segfaulting
12084
12085 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12086
12087         * Makefile.am: add release target
12088         * configure.ac: bump nano to 1
12089         * docs/random/release:
12090
12091 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12092
12093         * gst/gstcaps.h:
12094         * gst/gstelement.c: (gst_element_base_class_init),
12095         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12096         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12097         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12098         (gst_real_pad_dispose):
12099         * gst/gststructure.c: (gst_structure_free),
12100         (gst_structure_from_string):
12101           put reverted patch back in
12102         * gst/gstelement.c: (gst_element_remove_pad):
12103           free explicit caps if they're set
12104         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12105           copy the structure when fixating
12106
12107 2004-02-05  David Schleef  <ds@schleef.org>
12108
12109         * gst/gstmarshal.list:
12110         * gst/gstpad.c: (gst_real_pad_class_init),
12111         (_gst_real_pad_fixate_accumulator):
12112         Revert POINTER->BOXED change in signal marshaller.
12113
12114 === release 0.7.4 ===
12115                                                                                 
12116 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12117                                                                                 
12118         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12119         * configure.ac: changed for release
12120
12121 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12122
12123         * gstreamer.spec.in:
12124           bump required version of gtk-doc
12125
12126 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12127
12128         * gst/gstcaps.h:
12129         * gst/gstelement.c: (gst_element_base_class_init),
12130         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12131         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12132         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12133         (gst_real_pad_dispose):
12134         * gst/gststructure.c: (gst_structure_free),
12135         (gst_structure_from_string):
12136           revert patch that breaks applications, reapply after release
12137           to get this fixed properly
12138
12139 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12140
12141         * gst/gsttag.c: (_gst_tag_initialize):
12142         * gst/gsttag.h:
12143           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12144
12145 2004-02-04  David Schleef  <ds@schleef.org>
12146
12147         Fix some memleaks:
12148         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12149         (gst_spider_plug_from_srcpad):
12150         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12151
12152 2004-02-04  David Schleef  <ds@schleef.org>
12153
12154         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12155         a GstRealPad before accessing its structure members.
12156
12157 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12158
12159         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12160         (gst_clock_get_speed):
12161         * gst/gstclock.h:
12162           reset padding, remove unused fields
12163
12164 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12165
12166         * gst/autoplug/gstspideridentity.c:
12167         (gst_spider_identity_sink_loop_type_finding):
12168           use get_allowed_caps, not get_caps (fixes #132519)
12169         * gst/elements/gsttypefind.c: (stop_typefinding):
12170           use correct order when sending buffers and seeking
12171
12172 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12173
12174         * configure.ac:
12175         * gst/gstelement.h:
12176         * gst/gstpad.h:
12177         * gst/gstqueue.h:
12178           upgrade libtool CURRENT, reset padding
12179
12180 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12181
12182         * configure.ac:
12183           bump to prerelease
12184           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12185
12186 2004-02-04  David Schleef  <ds@schleef.org>
12187
12188         * docs/random/ds/0.9-suggested-changes: random notes
12189         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12190         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12191         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12192         expansion.
12193         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12194         (gst_filesink_get_query_types): same
12195         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12196         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12197         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12198         to use new GST_PTR_FORMAT.
12199         * gst/gstelement.h: deprecate function factory macros
12200         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12201         These are our last variadic macros that can't be replaced with
12202         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12203         attempting to deprecate gst_element_clock_wait().
12204         * gst/gstevent.h: same
12205         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12206         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12207         * gst/gstpad.h: deprecate function factory macros similar to above.
12208
12209 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12210
12211         * configure.ac:
12212         * tools/Makefile.am:
12213         * tools/gst-run.c: (popt_callback), (hash_print_key),
12214         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12215         (get_candidates), (main):
12216           add new source file to generate non-versioned wrapper binaries
12217           for our tools.
12218
12219 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12220
12221         * gst/gstevent.c: (_gst_event_free):
12222           actually break; inside the switch statement
12223         * gst/parse/grammar.y:
12224           fix memleak where GValues weren't unset
12225
12226 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12227
12228         * gst/gststructure.c: (gst_structure_from_string):
12229           fix huge memleak
12230         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12231         (new_entry), (gst_type_find_element_chain):
12232         * gst/gstelement.c: (gst_element_base_class_init),
12233         (gst_element_class_set_details):
12234         * gst/gstpad.c: (gst_pad_can_link_filtered):
12235           fix smaller memleaks
12236         * gst/gstpad.c: (gst_real_pad_dispose):
12237           check that explicit caps are gone
12238         * gst/gststructure.c: (gst_structure_free):
12239           actually free the structure
12240         * gst/gstelement.c: (gst_element_clear_pad_caps):
12241           unset explicit caps
12242
12243 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12244
12245         * tools/Makefile.am:
12246           use AM_CFLAGS since all the CFLAGS are the same
12247           use AM_LDFAGS
12248
12249 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12250
12251         * docs/manual/gnome.xml:
12252           expand example a little
12253         * gst/gst.c: (gst_init_with_popt_table),
12254         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12255           make sure popt option displays are done with right textdomain
12256           use GstPoptOption type
12257         * gst/gst.h:
12258           create GstPoptOption type
12259
12260 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12261
12262         * gst/gsterror.c: (_gst_stream_errors_init):
12263         * gst/gsterror.h:
12264           adding error type for no codec
12265         * po/POTFILES.in:
12266           add gst-inspect
12267         * po/nl.po:
12268           update dutch translation
12269         * tools/gst-inspect.c: (print_element_list), (main):
12270           do proper internationalization
12271         * tools/gst-launch.c: (idle_func):
12272           remove commented out function call
12273
12274 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12275
12276         * docs/README:
12277           add some error fixing notes
12278         * docs/gst/gstreamer-sections.txt:
12279           remove double entries
12280         * docs/gst/tmpl/gstbin.sgml:
12281         * docs/gst/tmpl/gstclock.sgml:
12282           remove override
12283         * docs/gst/tmpl/gstelement.sgml:
12284         * docs/gst/tmpl/gstindex.sgml:
12285         * docs/gst/tmpl/gstobject.sgml:
12286         * docs/gst/tmpl/gstpadtemplate.sgml:
12287         * docs/gst/tmpl/gstreamer-unused.sgml:
12288         * docs/gst/tmpl/gsttag.sgml:
12289         * docs/gst/tmpl/gstthread.sgml:
12290         * docs/gst/tmpl/gstxml.sgml:
12291         * gst/gsttag.h:
12292           sync header prototypes with c decls
12293         * gst/gsttaginterface.c:
12294           fix doc headers
12295
12296 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12297
12298         * gst/parse/Makefile.am:
12299         * gst/gstobject.h:
12300           get rid of gstmarshal.h dependency. It's not needed.
12301         * gst/gst.h:
12302         * gst/elements/gstfakesink.c:
12303         * gst/elements/gstfakesrc.c:
12304         * gst/elements/gstidentity.c:
12305         * gst/gstbin.c:
12306         * gst/gstelement.c:
12307         * gst/gstindex.c:
12308         * gst/gstobject.c:
12309         * gst/gstpad.c:
12310         * gst/gstthread.c:
12311         * gst/gstxml.c:
12312         * libs/gst/control/dparam.c:
12313         * libs/gst/control/dparammanager.c:
12314           include gstmarshal.h.
12315         Fixes #132045
12316
12317 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12318
12319         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12320         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12321         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12322         * gst/elements/gstfilesrc.h:
12323           don't ref the filesrc when creating mmaped buffers. Don't keep a
12324           list of not-yet-destroyed buffers.
12325         * gst/gstbuffer.h:
12326           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12327
12328 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12329
12330         * gst/gst.c: (init_pre):
12331           remove textdomain
12332
12333 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12334
12335         * docs/pwg/advanced-events.xml:
12336         * docs/pwg/advanced-scheduling.xml:
12337         * docs/pwg/intro-basics.xml:
12338         * docs/pwg/other-manager.xml:
12339         * docs/pwg/other-nton.xml:
12340         * docs/pwg/other-ntoone.xml:
12341         * docs/pwg/other-oneton.xml:
12342         * docs/pwg/pwg.xml:
12343           All sort of documentation... Forgot what. Point is that I want this
12344           in before I leave. The 'other-*' will be the last section and will
12345           explain issues specific to these type of elements.
12346
12347 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12348
12349         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12350         (gst_filesrc_get_read):
12351           set all the values on buffers that we can
12352
12353 2004-02-02  David Schleef  <ds@schleef.org>
12354
12355         Change usage of isblah() to g_ascii_isblah() to be more locale
12356         independent.  (#133076)
12357         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12358         * gst/gstutils.c:
12359         * gst/parse/parse.l:
12360
12361 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12362
12363         reviewed by: David Schleef  <ds@schleef.org>
12364
12365         Fix memory leaks:
12366         * gst/gstcaps.c: (gst_caps_to_string):
12367         * gst/registries/gstxmlregistry.c:
12368         (gst_xml_registry_add_path_list_func),
12369         (gst_xml_registry_parse_padtemplate):
12370
12371 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12372
12373         * gst/gstelement.c: (gst_element_default_error):
12374           suffix error messages with period
12375
12376 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12377
12378         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12379         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12380         * gst/gsterror.c: (gst_error_get_message):
12381           Suffix with dots
12382         * po/fr.po:
12383         * po/nl.po:
12384           Update translation files
12385
12386 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12387
12388         * gst/autoplug/gstspideridentity.c:
12389         (gst_spider_identity_sink_loop_type_finding):
12390         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12391         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12392         (gst_filesink_close_file), (gst_filesink_handle_event),
12393         (gst_filesink_chain):
12394         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12395         (gst_filesrc_get_read), (gst_filesrc_open_file):
12396         * gst/elements/gstidentity.c: (gst_identity_chain):
12397         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12398         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12399         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12400         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12401         * gst/gsterror.c: (_gst_core_errors_init),
12402         (_gst_library_errors_init), (_gst_resource_errors_init),
12403         (_gst_stream_errors_init), (gst_error_get_message):
12404         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12405         (gst_pad_recover_caps_error), (gst_pad_pull):
12406         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12407         * gst/schedulers/gstbasicscheduler.c:
12408         (gst_basic_scheduler_chainhandler_proxy),
12409         (gst_basic_scheduler_gethandler_proxy),
12410         (gst_basic_scheduler_cothreaded_chain):
12411           Suffix error messages with period.
12412           Use (NULL) instead of NULL
12413
12414 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12415
12416         * docs/gst/tmpl/gstelement.sgml:
12417         * docs/gst/tmpl/gstxml.sgml:
12418         * gst/gstelement.c: (gst_element_error_full):
12419           add element path to error
12420
12421 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12422
12423         * docs/random/mimetypes:
12424           update raw int/float info
12425         * gst/gsttag.c: (_gst_tag_initialize):
12426         * gst/gsttag.h:
12427           add GST_TAG_ENCODER
12428
12429 2004-01-30  David Schleef  <ds@schleef.org>
12430
12431         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12432           missing (#132991)
12433
12434 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12435
12436         reviewed by Benjamin Otte 
12437           parts of the patch submitted in bug #113913
12438
12439         * configure.ac:
12440           use AC_C_INLINE. Use = instead of == with test
12441         * examples/plugins/example.c:
12442         * gst/autoplug/gstspideridentity.c:
12443         * gst/elements/gstfdsrc.c:
12444         * gst/elements/gstfilesrc.c:
12445         * gst/elements/gstidentity.c:
12446         * gst/elements/gstmultidisksrc.c:
12447         * gst/elements/gststatistics.c:
12448         * gst/gstelement.c:
12449         * gst/gstobject.c:
12450         * gst/gstpad.c:
12451         * gst/gstpipeline.c:
12452         * gst/gstthread.c:
12453           don't end enums with a comma
12454         * gst/gstindex.c: (gst_index_compare_func):
12455           do explicit casting to gint
12456         * gst/gsttrace.c: (gst_trace_text_flush):
12457           #define strsize as a macro
12458
12459 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12460
12461         * docs/README:
12462         * docs/gst/gstreamer-docs.sgml:
12463         * docs/gst/gstreamer-sections.txt:
12464         * docs/gst/tmpl/gstelement.sgml:
12465         * docs/gst/tmpl/gsterror.sgml:
12466         * docs/gst/tmpl/gstinterface.sgml:
12467         * docs/gst/tmpl/gstreamer-unused.sgml:
12468         * docs/gst/tmpl/gststructure.sgml:
12469         * docs/gst/tmpl/gsttag.sgml:
12470         * docs/gst/tmpl/gsttaginterface.sgml:
12471         * docs/gst/tmpl/gstvalue.sgml:
12472         make sure all API ends up in the built docs
12473         * gst/gstinterface.c:
12474         * gst/gststructure.c: (gst_structure_id_set_value),
12475         (gst_structure_set_value), (gst_structure_id_get_value):
12476         * gst/gststructure.h:
12477         * gst/gstvalue.h:
12478         sync .h with .c declarations
12479
12480 2004-01-30  Julien Moutte  <julien@moutte.net>
12481
12482         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12483         Ronald will fix riffread.
12484
12485 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12486
12487         * docs/pwg/advanced-interfaces.xml:
12488           Added tuner interface docs.
12489
12490 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12491
12492         * docs/random/mimetypes:
12493           correct Theora information
12494         * gst/gstelement.h:
12495           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12496
12497 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12498
12499         * gst/gstelement.c: (gst_element_error_full):
12500         * gst/gstelement.h:
12501           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12502
12503 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12504
12505         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12506         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12507         again and even before DISCONT.
12508         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12509         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12510         bytestream so that it's not stopping to fill the bytestream if events
12511         different than EOS or DISCONT are received. Instead it process them so
12512         that they go downstream.
12513
12514 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12515
12516         * docs/gst/tmpl/gstelement.sgml:
12517         * docs/gst/tmpl/gstreamer-unused.sgml:
12518         * docs/gst/tmpl/gstxml.sgml:
12519         * gst/autoplug/gstspideridentity.c:
12520         (gst_spider_identity_sink_loop_type_finding):
12521         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12522         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12523         (gst_filesink_close_file), (gst_filesink_handle_event),
12524         (gst_filesink_chain):
12525         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12526         (gst_filesrc_get_read), (gst_filesrc_open_file):
12527         * gst/elements/gstidentity.c: (gst_identity_chain):
12528         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12529         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12530         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12531         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12532         * gst/gstelement.h:
12533         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12534         (gst_pad_recover_caps_error), (gst_pad_pull):
12535         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12536         * gst/schedulers/gstbasicscheduler.c:
12537         (gst_basic_scheduler_chainhandler_proxy),
12538         (gst_basic_scheduler_gethandler_proxy),
12539         (gst_basic_scheduler_cothreaded_chain):
12540           gst_element_error -> GST_ELEMENT_ERROR
12541
12542 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12543
12544         * docs/Makefile.am:
12545         * docs/gst/tmpl/gstelement.sgml:
12546         * docs/gst/tmpl/gstxml.sgml:
12547         * docs/manuals.mak:
12548         * docs/pwg/advanced-request.xml:
12549         * docs/pwg/advanced-scheduling.xml:
12550         * docs/pwg/advanced-tagging.xml:
12551           fix non-validating docbook using CDATA
12552           make sure make check-local gets run first to check if it validates
12553
12554 2004-01-29  Julien MOUTTE <julien@moutte.net>
12555
12556         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12557         handling (up and downstream).
12558         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12559         my_filter thing.
12560
12561 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12562
12563         * docs/pwg/advanced-tagging.xml:
12564           Add docs about tag writing.
12565
12566 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12567
12568         * docs/pwg/advanced-tagging.xml:
12569           Add a part about tag reading and application signalling... Tag
12570           writing still needs to be documented.
12571         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12572           We can set file locations in READY, too.
12573
12574 2004-01-29  Julien MOUTTE <julien@moutte.net>
12575
12576         * docs/random/ds/element-checklist: Adding some notes about src
12577         events.
12578
12579 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12580
12581         * docs/random/mimetypes:
12582           Update docs to point to correct elements for various mimetypes, and
12583           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12584           <stephane.loeuillet@tiscali.fr>.
12585
12586 2004-01-28  David Schleef  <ds@schleef.org>
12587
12588         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12589
12590 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12591
12592         * docs/random/mimetypes:
12593           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12594           undefined"
12595         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12596           make it only work in NULL.
12597         * gst/gstcaps.c:
12598           don't posion NULL caps
12599         * gst/gstelement.c: (gst_element_set_time):
12600           add debugging statement
12601         * gst/gstelement.c: (gst_element_emit_found_tag),
12602         (gst_element_found_tag_func), (gst_element_found_tags):
12603         * gst/gstelement.h:
12604           These functions take const taglists
12605         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12606           fix memleak
12607         * gst/gstpad.c: (gst_pad_event_default):
12608           make more effort on handling discont and clocks, g_warn if everything
12609           fails
12610         * gst/gststructure.c: (gst_structure_remove_fields),
12611         (gst_structure_remove_fields_valist):
12612         * gst/gststructure.h:
12613           add gst_structure_remove_fields(_valist)
12614         * gst/gsttag.c:
12615           fix doc glitch
12616
12617 2004-01-28  David Schleef  <ds@schleef.org>
12618
12619         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12620         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12621         Fix memory leakage of gst_caps_to_string().
12622
12623         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12624         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12625         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12626         (gst_spider_identity_sink_loop_type_finding):
12627         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12628         (find_suggest):
12629         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12630         (gst_pad_set_explicit_caps):
12631         * gst/parse/grammar.y:
12632
12633 2004-01-28  David Schleef  <ds@schleef.org>
12634
12635         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12636         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12637         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12638         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12639         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12640         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12641         (gst_debug_log_default), (_gst_info_printf_extension),
12642         (_gst_info_printf_extension_arginfo):  Add printf extension.
12643         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12644         * gst/gststructure.c: (gst_structure_to_string),
12645         (_gst_structure_parse_value): Use gst_value_deserialize() and
12646         remove old code.
12647         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12648         (gst_value_deserialize_boolean), (gst_strtoi),
12649         (gst_value_deserialize_int), (gst_value_deserialize_double),
12650         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12651         a bunch of deserialize functions and gst_value_deserialize.
12652         * gst/gstvalue.h: er, _de_serialize, not unserialize
12653         * testsuite/caps/string-conversions.c: (main): We don't currently
12654         handle (float) in caps, so convert these to (double).
12655         * testsuite/debug/Makefile.am: Add new test for the printf extension
12656         * testsuite/debug/printf_extension.c: (main): same
12657
12658 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12659
12660         * docs/random/company/time:
12661           Add some docs about clocking and time
12662
12663 2004-01-28  Julien MOUTTE <julien@moutte.net>
12664
12665         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12666
12667 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12668
12669         * docs/pwg/advanced-clock.xml:
12670         * docs/pwg/advanced-dparams.xml:
12671         * docs/pwg/advanced-events.xml:
12672         * docs/pwg/advanced-interfaces.xml:
12673         * docs/pwg/advanced-midi.xml:
12674         * docs/pwg/advanced-request.xml:
12675         * docs/pwg/advanced-scheduling.xml:
12676         * docs/pwg/advanced-tagging.xml:
12677         * docs/pwg/advanced-types.xml:
12678         * docs/pwg/appendix-checklist.xml:
12679         * docs/pwg/building-boiler.xml:
12680         * docs/pwg/building-chainfn.xml:
12681         * docs/pwg/building-filterfactory.xml:
12682         * docs/pwg/building-pads.xml:
12683         * docs/pwg/building-props.xml:
12684         * docs/pwg/building-signals.xml:
12685         * docs/pwg/building-state.xml:
12686         * docs/pwg/building-testapp.xml:
12687         * docs/pwg/intro-basics.xml:
12688         * docs/pwg/intro-preface.xml:
12689         * docs/pwg/other-autoplugger.xml:
12690         * docs/pwg/other-sink.xml:
12691         * docs/pwg/other-source.xml:
12692         * docs/pwg/titlepage.xml:
12693           fix up id's
12694
12695 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12696
12697         * docs/95NonPath:
12698         * docs/HACKING:
12699         * docs/README:
12700         * docs/building-the-docs-on-debian:
12701           collect relevant bits of doc info
12702
12703 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12704
12705         * docs/pwg/advanced_tagging.xml:
12706           Half-assed commit so Thomas can re-arrange document IDs here to be
12707           consistent, too.
12708
12709 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12710
12711         * docs/manual/autoplugging.xml:
12712         * docs/manual/bins-api.xml:
12713         * docs/manual/bins.xml:
12714         * docs/manual/buffers-api.xml:
12715         * docs/manual/buffers.xml:
12716         * docs/manual/clocks.xml:
12717         * docs/manual/components.xml:
12718         * docs/manual/cothreads.xml:
12719         * docs/manual/debugging.xml:
12720         * docs/manual/dparams-app.xml:
12721         * docs/manual/dynamic.xml:
12722         * docs/manual/elements-api.xml:
12723         * docs/manual/elements.xml:
12724         * docs/manual/factories.xml:
12725         * docs/manual/gnome.xml:
12726         * docs/manual/goals.xml:
12727         * docs/manual/helloworld.xml:
12728         * docs/manual/helloworld2.xml:
12729         * docs/manual/init-api.xml:
12730         * docs/manual/intro.xml:
12731         * docs/manual/links-api.xml:
12732         * docs/manual/links.xml:
12733         * docs/manual/manual.xml:
12734         * docs/manual/motivation.xml:
12735         * docs/manual/pads-api.xml:
12736         * docs/manual/pads.xml:
12737         * docs/manual/plugins-api.xml:
12738         * docs/manual/plugins.xml:
12739         * docs/manual/programs.xml:
12740         * docs/manual/queues.xml:
12741         * docs/manual/quotes.xml:
12742         * docs/manual/schedulers.xml:
12743         * docs/manual/states-api.xml:
12744         * docs/manual/states.xml:
12745         * docs/manual/threads.xml:
12746         * docs/manual/typedetection.xml:
12747         * docs/manual/xml.xml:
12748           use chapter, part, section or misc as id starts for all bits
12749
12750 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12751
12752         * docs/gst/gstreamer-sections.txt:
12753           Fix up TITLE of the sections
12754
12755 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12756
12757         * docs/pwg/advanced_interfaces.xml:
12758           Add documentation on propertyprobing.
12759         * docs/pwg/advanced_events.xml:
12760         * docs/pwg/advanced_tagging.xml:
12761         * docs/pwg/building_boiler.xml:
12762         * docs/pwg/building_filterfactory.xml:
12763         * docs/pwg/pwg.xml:
12764           Move filterfactory and tagging into their own chapter, add a chapter
12765           on events. all these are empty placeholders that will be filled in
12766           some day.
12767
12768 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12769
12770         * docs/pwg/advanced_interfaces.xml:
12771           Docs for mixer interface. Also a check for website uploading.
12772
12773 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12774
12775         * docs/HACKING:
12776         * docs/Makefile.am:
12777         * docs/faq/Makefile.am:
12778         * docs/gst/Makefile.am:
12779         * docs/gst/tmpl/gstelement.sgml:
12780         * docs/gst/tmpl/gstplugin.sgml:
12781         * docs/gst/tmpl/gstreamer-unused.sgml:
12782         * docs/libs/Makefile.am:
12783         * docs/manual/Makefile.am:
12784         * docs/manuals.mak:
12785         * docs/pwg/Makefile.am:
12786         * docs/upload.mak:
12787           Separate out upload target and make it similar for
12788           both docbook and gtk-doc docs
12789
12790 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12791
12792         * docs/manuals.mak:
12793           Fix upload target to work with freedesktop
12794
12795 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12796
12797         * docs/pwg/advanced_types.xml:
12798           Add notes on creating your own types.
12799         * docs/pwg/building_boiler.xml:
12800         * docs/pwg/building_pads.xml:
12801         * docs/pwg/building_state.xml:
12802           Add some stuff about how to retrieve values from structures, how
12803           that relates to types and change layout slightly again to be almost
12804           perfect.
12805
12806 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12807
12808         * docs/pwg/advanced_dparams.xml:
12809         * docs/pwg/advanced_scheduling.xml:
12810           Change index layout slightly.
12811
12812 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12813
12814         * docs/pwg/advanced_clock.xml:
12815         * docs/pwg/advanced_interfaces.xml:
12816         * docs/pwg/advanced_midi.xml:
12817           General placeholders for now.
12818         * docs/pwg/advanced_request.xml:
12819           Explanation about sometimes and request pads.
12820         * docs/pwg/advanced_scheduling.xml:
12821           Concept of bytestream, loopfunctions and schedulers.
12822         * docs/pwg/building_boiler.xml:
12823           Add something about plugin-init.
12824
12825 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12826
12827         * docs/pwg/building_pads.xml:
12828           Fix broken docbook
12829
12830 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12831
12832         * docs/pwg/advanced_interfaces.xml:
12833         * docs/pwg/pwg.xml:
12834           Add as a placeholder for future filling-in.
12835         * docs/pwg/basics_autoplugging.xml:
12836         * docs/pwg/basics_buffers.xml:
12837         * docs/pwg/basics_elements.xml:
12838         * docs/pwg/basics_events.xml:
12839         * docs/pwg/basics_plugins.xml:
12840         * docs/pwg/basics_types.xml:
12841           Remove, because unused (this is all in intro_basics.xml).
12842         * docs/pwg/building_signals.xml:
12843           Short intro to signals + reference to GObject docs - we really
12844           shouldn't go into these sort of things to deply because we don't
12845           use them that extensively anyway.
12846         * docs/pwg/building_state.xml:
12847           Explanation of states. Benjamin, please check.
12848         * docs/pwg/building_testapp.xml:
12849           Put everything in one page - putting only a few lines of content
12850           per page doesn't really make sense.
12851
12852           Time to get into the advanced topics. ;).
12853
12854 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12855
12856         * docs/pwg/advanced_types.xml:
12857           Finish documenting the current state of mimetypes.
12858         * docs/pwg/building_boiler.xml:
12859         * docs/pwg/building_chainfn.xml:
12860         * docs/pwg/building_pads.xml:
12861         * docs/pwg/building_props.xml:
12862         * docs/pwg/building_testapp.xml:
12863           Start documenting the "how to build a simple audio filter" part
12864           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12865           states and (maybe?) a short introduction to capsnego in the chapter
12866           on pads (building_pads.xml). Capsnego should probably be explained
12867           fully in advanced_capsnego.xml or so.
12868
12869 2004-01-26  David Schleef  <ds@schleef.org>
12870
12871         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12872         * gst/gstpad.h: Add new function to allow element to (somewhat)
12873         specify non-fixed caps on a pad.
12874         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12875         that I added a few weeks ago.
12876
12877 2004-01-26  David Schleef  <ds@schleef.org>
12878
12879         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12880           making try_set_caps() work with non-fixed caps.
12881
12882 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12883
12884         * docs/pwg/advanced_types.xml:
12885         * docs/pwg/intro_basics.xml:
12886         * docs/pwg/intro_preface.xml:
12887         * docs/pwg/pwg.xml:
12888         * docs/pwg/titlepage.xml:
12889           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12890           in here (docs/random/mimetypes), and will from there on work on both
12891           updating outdated parts and adding missing parts.
12892           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12893
12894 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12895
12896         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12897           policy is set
12898
12899 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12900
12901         * gst/gstelement.h:
12902           remove gst_element_factory_get_version. It doesn't exist anymore.
12903         * gst/gstplugin.c:
12904         * gst/gstplugin.h:
12905           remove gst_plugin_set_name and change gst_plugin_get_longname to
12906           gst_plugin_get_description to match code.
12907         * gst/gsterror.h:
12908           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12909         * gst/gstpad.c: (gst_pad_try_set_caps):
12910           make it work with nonfixed caps.
12911           Note that even in the nonfixed case the link function of the pad
12912           that tries to set caps isn't called.
12913
12914 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12915
12916         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12917           fix bug where buffer was not assembled correctly
12918         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12919           silence by default
12920         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12921           only seek if there's no more buffers that could work without seeking
12922
12923 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12924
12925         * gst/gsttag.c: (_gst_tag_initialize):
12926         * gst/gsttag.h:
12927           Add application tag (for encoding/muxing app).
12928
12929 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12930
12931         * autogen.sh:
12932           make autopoint force, and libtoolize not copy
12933         * common/m4/as-docbook.m4:
12934           added docbook xml catalog setup check
12935         * common/m4/gst-doc.m4:
12936           use docbook check
12937
12938 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12939
12940         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12941         * gst/gsttag.h:
12942           add GstTagFlag
12943
12944 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12945
12946         * docs/gst/gstreamer-sections.txt:
12947         * docs/gst/tmpl/gst.sgml:
12948         * docs/gst/tmpl/gstbuffer.sgml:
12949         * docs/gst/tmpl/gstclock.sgml:
12950         * docs/gst/tmpl/gstelement.sgml:
12951         * docs/gst/tmpl/gstreamer-unused.sgml:
12952         * docs/gst/tmpl/gstxml.sgml:
12953           sync latest API changes to docs
12954
12955 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12956
12957         * gst/gstpluginfeature.c:
12958           fix doc snippet
12959         * tools/gst-inspect.c: (print_element_list):
12960           fix output of typefind
12961           add GPL header
12962         * tools/gst-launch.c:
12963           add GPL header
12964
12965 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12966
12967         * gst/elements/Makefile.am:
12968         * gst/elements/gstelements.c:
12969         * gst/elements/gsttypefindelement.c:
12970         * gst/elements/gsttypefindelement.h:
12971         * po/POTFILES.in:
12972         * po/fr.po:
12973         * po/nl.po:
12974           renamed gsttypefindelement to gsttypefind, conserving CVS history
12975
12976 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12977
12978         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12979         * gst/gsttag.h:
12980           add some tags used in ogg as well
12981           fix _ in replaygain tags
12982
12983 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12984
12985         * gst/gsterror.h:
12986           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12987
12988 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12989
12990         * gst/gstelement.c: (gst_element_error_full):
12991         * gst/gstelement.h:
12992           change _extended to _full
12993
12994 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12995
12996         reviewed by: <delete if not using a buddy>
12997
12998         * docs/gst/tmpl/gst.sgml:
12999         * docs/gst/tmpl/gstbuffer.sgml:
13000         * docs/gst/tmpl/gstclock.sgml:
13001         * docs/gst/tmpl/gstelement.sgml:
13002         * docs/gst/tmpl/gstreamer-unused.sgml:
13003         * docs/gst/tmpl/gstxml.sgml:
13004         * gst/gstelement.c: (gst_element_error_full):
13005         * gst/gstelement.h:
13006
13007 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13008
13009         * gst/gstelement.h: fix _gst_element_error_printf prototype
13010
13011 2004-01-20  David Schleef  <ds@schleef.org>
13012
13013         * gst/gststructure.c: (gst_structure_to_string):
13014         Convert function to use gst_value_serialize().
13015         * gst/gstvalue.c: (gst_value_serialize_list),
13016         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13017         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13018         (gst_value_serialize_int), (gst_value_serialize_double),
13019         (gst_string_wrap), (gst_value_serialize_string),
13020         (gst_value_serialize), (gst_value_deserialize):
13021         * gst/gstvalue.h:
13022         Add implementations for serialize.
13023
13024 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13025
13026         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13027         we want to keep that one in the future or change xvidenc.c to use 
13028         another error.
13029
13030 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13031
13032         * gst/gstelement.c: (_gst_element_error_printf):
13033         * gst/gstelement.h:
13034           privatise function
13035
13036 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13037
13038         * docs/random/error:
13039           doc explaining error system
13040         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13041           cleanup
13042
13043 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13044
13045         * gst/gst-i18n-app.h:
13046         * gst/gst-i18n-lib.h:
13047           remove inclusion of config.h
13048         * po/POTFILES.in:
13049         * po/nl.po:
13050           add gst/gstelement.c
13051
13052 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13053
13054         * po/nl.po: updated Dutch translation
13055
13056 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13057
13058         * gst/gsterror.c: (_gst_core_errors_init),
13059         (_gst_library_errors_init), (_gst_resource_errors_init),
13060         (_gst_stream_errors_init):
13061         remove ending punctuation dots
13062
13063 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13064
13065         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13066         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13067         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13068         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13069         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13070         use GST_ERROR_SYSTEM
13071
13072 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13073
13074         * gst/gstelement.c: (gst_element_error_printf),
13075         (gst_element_error_extended):
13076         * gst/gstelement.h:
13077           add a helper printf function so we can have NULL values passed.
13078
13079 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13080
13081         * gst/gstelement.h:
13082           add G_STMT macros to gst_element_error, which isn't strictly
13083           necessary but people tell me to anyway.
13084
13085 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13086
13087         * gst/Makefile.am:
13088         * gst/autoplug/gstspideridentity.c:
13089         (gst_spider_identity_sink_loop_type_finding):
13090         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13091         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13092         (gst_filesink_close_file), (gst_filesink_handle_event),
13093         (gst_filesink_chain):
13094         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13095         (gst_filesrc_map_region), (gst_filesrc_get_read),
13096         (gst_filesrc_open_file):
13097         * gst/elements/gstidentity.c: (gst_identity_chain):
13098         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13099         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13100         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13101         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13102         * gst/gst.h:
13103         * gst/gst_private.h:
13104         * gst/gstelement.c: (gst_element_class_init),
13105         (gst_element_default_error), (gst_element_error_func),
13106         (gst_element_error_extended):
13107         * gst/gstelement.h:
13108         * gst/gsterror.c: (_gst_core_errors_init),
13109         (_gst_library_errors_init), (_gst_resource_errors_init),
13110         (_gst_stream_errors_init), (gst_error_get_message):
13111         * gst/gsterror.h:
13112         * gst/gstinfo.c: (_gst_debug_init):
13113         * gst/gstmarshal.list:
13114         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13115         (gst_pad_recover_caps_error), (gst_pad_pull):
13116         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13117         * gst/schedulers/gstbasicscheduler.c:
13118         (gst_basic_scheduler_chainhandler_proxy),
13119         (gst_basic_scheduler_gethandler_proxy),
13120         (gst_basic_scheduler_cothreaded_chain):
13121         * po/POTFILES.in:
13122         * po/fr.po:
13123         * po/nl.po:
13124           change error signal
13125           add error categories
13126
13127 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13128
13129         * gst/gsttag.c: (_gst_tag_initialize):
13130         * gst/gsttag.h:
13131         Add replaygain tag
13132
13133 2004-01-18  Colin Walters  <walters@verbum.org>
13134
13135         * examples/retag/retag.c: Call gst_init before processing
13136         program args.  Add g_assert to _link_many call.
13137
13138 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13139
13140         * gst/gstpad.c: (gst_pad_alloc_buffer):
13141           Return a newly allocated buffer when the pad has no peer.
13142
13143 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13144
13145         * gst/gstclock.c: (gst_clock_get_time):
13146           make it compile with gcc 2.95 again.
13147           Patch by Scott Wheeler
13148
13149 2004-01-15  David Schleef  <ds@schleef.org>
13150
13151         * gst/gstcaps.h:
13152         Added gst_caps_is_simple() macro.
13153         * testsuite/caps/caps.c: (test1):
13154         * testsuite/caps/intersect2.c: (main):
13155         * testsuite/caps/intersection.c: (main):
13156         Fixes to make 'make check' work again after removing
13157         gst_caps_is_chained().
13158
13159 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13160
13161         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13162         and additions to the MIDI document.
13163
13164 2004-01-15  David Schleef  <ds@schleef.org>
13165
13166         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13167         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13168         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13169
13170 2004-01-15  David Schleef  <ds@schleef.org>
13171
13172         * gst/gstqueue.c:
13173         * gst/gstqueue.h:
13174         Fix the spelling of "treshold" and make min_threshold actually
13175         affect the queue.
13176
13177 2004-01-15  David Schleef  <ds@schleef.org>
13178
13179         * gst/gstcaps.c:
13180         Add lots of documentation.
13181         * gst/gstcaps.h:
13182         Deprecate a few functions.
13183         * gst/gstpad.c:
13184         Removed use of deprecated functions.
13185
13186 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13187
13188         * gst/gstpad.c: (gst_pad_is_linked):
13189         * gst/gstpad.h:
13190           implement gst_pad_is_linked
13191         * gst/gstelement.h:
13192           reserve space for initiate_state_change
13193
13194 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13195
13196         * gst/autoplug/gstspideridentity.c:
13197         (gst_spider_identity_sink_loop_type_finding):
13198           break infinite loop by just returning instead of looping
13199         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13200           set event time difference correctly. Set it to 1 second instead
13201           of 100ms to be more tolerant
13202         * gst/gstelement.c: (gst_element_set_time):
13203           add debugging output
13204
13205 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13206
13207         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13208           query if buffers are inside the pool, ignore events
13209
13210 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13211
13212         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13213         (gst_clock_set_speed), (gst_clock_set_active),
13214         (gst_clock_is_active), (gst_clock_reset),
13215         (gst_clock_handle_discont):
13216         * gst/gstclock.h:
13217           deprecate old interface and disable functions that aren't in use
13218           anymore.
13219         * gst/gstelement.h:
13220         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13221         (gst_element_set_time), (gst_element_adjust_time):
13222           add concept of "element time" and functions to get/set this time.
13223         * gst/gstelement.c: (gst_element_change_state):
13224           update element time correctly.
13225         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13226           This is a debug message, not a g_critical.
13227         * gst/gstpad.c: (gst_pad_event_default):
13228           handle discontinuous events right with element time.
13229         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13230           update to clocking fixes.
13231           set clocks on elements in READY=>PAUSED. The old behaviour caused
13232           a wrong element time on the first element that started playing.
13233         * gst/schedulers/gstbasicscheduler.c:
13234         (gst_basic_scheduler_class_init):
13235         * gst/schedulers/gstoptimalscheduler.c:
13236         (gst_opt_scheduler_class_init):
13237           remove code that just implements the default behaviour.
13238         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13239           update to use new clocking functions
13240         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13241         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13242           update to test new element time.
13243         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13244           use _get_allowed_caps instead of _get_caps. This catches filtered
13245           caps correctly.
13246         * testsuite/debug/commandline.c:
13247           update for new GST_DEBUG syntax.
13248         * testsuite/threads/Makefile.am:
13249           disable a test that only works sometimes.
13250
13251 2004-01-13  Julien MOUTTE <julien@moutte.net>
13252
13253         * po/LINGUAS: Adding fr.
13254         * po/fr.po: Adding french translation.
13255
13256 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13257
13258         * gst/parse/grammar.y:
13259         * po/POTFILES.in:
13260         * po/nl.po:
13261         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13262           translate parsing error messages
13263
13264 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13265
13266         * po/POTFILES.in: adding gst-launch
13267         * po/nl.po: updated translation, all 99 strings translated
13268         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13269         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13270           fix strings for translation
13271
13272 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13273
13274         * gst/gst.c:
13275           - capitalize beginnings of popt options
13276           - fix strings for translation
13277           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13278
13279 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13280
13281         * po/README: add some notes on how to update translations
13282
13283 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13284
13285         * ABOUT-NLS: removed, is autogenerated from autopoint
13286         * autogen.sh: add autopoint stuff
13287         * configure.ac: fix up gettext stuff
13288         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13289         * gst/elements/gsttypefindelement.c: add header include
13290         * gst/gettext.h: add header, copy from system-installed header
13291         * gst/gst-i18n-app.h: to be included by each app having translations
13292         * gst/gst-i18n-lib.h: to be included by each lib having translations
13293         * gst/gst.c: (init_pre): fix up gettext calls
13294         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13295         * po/LINGUAS: the new way to specify translations present
13296         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13297         * po/Makevars: the variables filled in for GStreamer
13298         * po/POTFILES.in: added new files with translations
13299         * po/de.po: has new strings
13300         * po/nl.po: readded, has new strings
13301
13302 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13303
13304         * gst/gsttag.c: fix some strings marked for translation
13305
13306 2004-01-13  Iain <iain@prettypeople.org>
13307
13308         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13309         group when we add an element to it, cos we unref it when we remove one
13310
13311 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13312
13313         * testsuite/debug/commandline.c: (debug_not_reached):
13314         * testsuite/debug/output.c: (check_message):
13315           fix testsuite
13316
13317 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13318
13319         * examples/cutter/.cvsignore:
13320         * examples/helloworld/.cvsignore:
13321         * examples/launch/.cvsignore:
13322         * examples/manual/.cvsignore:
13323         * examples/mixer/.cvsignore:
13324         * examples/pingpong/.cvsignore:
13325         * examples/plugins/.cvsignore:
13326         * examples/queue/.cvsignore:
13327         * examples/queue2/.cvsignore:
13328         * examples/queue3/.cvsignore:
13329         * examples/queue4/.cvsignore:
13330         * examples/retag/.cvsignore:
13331         * examples/thread/.cvsignore:
13332         * examples/typefind/.cvsignore:
13333         * examples/xml/.cvsignore:
13334         * gst/.cvsignore:
13335         * gst/autoplug/.cvsignore:
13336         * gst/elements/.cvsignore:
13337         * gst/indexers/.cvsignore:
13338         * gst/parse/.cvsignore:
13339         * gst/registries/.cvsignore:
13340         * gst/schedulers/.cvsignore:
13341         * libs/gst/bytestream/.cvsignore:
13342         * libs/gst/control/.cvsignore:
13343         * libs/gst/getbits/.cvsignore:
13344         * tests/.cvsignore:
13345         * tests/bufspeed/.cvsignore:
13346         * tests/instantiate/.cvsignore:
13347         * tests/memchunk/.cvsignore:
13348         * tests/muxing/.cvsignore:
13349         * tests/sched/.cvsignore:
13350         * tests/seeking/.cvsignore:
13351         * tests/threadstate/.cvsignore:
13352         * testsuite/.cvsignore:
13353         * testsuite/caps/.cvsignore:
13354         * testsuite/cleanup/.cvsignore:
13355         * testsuite/dynparams/.cvsignore:
13356         * testsuite/plugin/.cvsignore:
13357         * tools/.cvsignore:
13358           update - this is huge, because it includes *.bb, *.bbg and *.da files
13359           which are generated for gcov.
13360
13361 2004-01-11  David Schleef  <ds@schleef.org>
13362
13363         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13364         a function to parse integers in ways that strto[u]l() does not.
13365
13366 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13367
13368         * tools/gst-inspect.c: (print_caps):
13369           improve output of caps a bit
13370
13371 2004-01-11  David Schleef  <ds@schleef.org>
13372
13373         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13374         inherit correct flags (READONLY and DONTKEEP).
13375
13376 2004-01-11  David Schleef  <ds@schleef.org>
13377
13378         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13379         (gst_filesrc_map_region):
13380         * gst/gstbuffer.c: (_gst_buffer_initialize),
13381         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13382         (gst_buffer_new), (gst_buffer_create_sub),
13383         (gst_buffer_is_span_fast), (gst_buffer_span):
13384         * gst/gstbuffer.h:
13385         Change GstBuffer private structure element names. (all files)
13386         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13387         (gst_queue_link):
13388         * gst/gstqueue.h:
13389         Implement getcaps/pad_link functions that handle the case where
13390         there are data in the queue.
13391
13392 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13393
13394         * gst/elements/gstbufferstore.c:
13395           initialize debugging structure correctly
13396         * gst/elements/gsttee.c: (gst_tee_set_property):
13397           g_object_notify when property was changed
13398         * gst/elements/gsttypefindelement.c:
13399         (gst_type_find_element_change_state):
13400           clear caps correctly
13401
13402 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13403
13404         * gst/gstqueue.c: (gst_queue_init):
13405           Use better defaults for when a queue should block. This
13406           gets rid of jerky playback for quite a few files.
13407           It takes more memory.
13408
13409 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13410
13411         (gst_xml_registry_parse_padtemplate):
13412           make critical message slightly more useful
13413
13414 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13415
13416         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13417         (gst_debug_message_get), (gst_debug_log_default):
13418         * gst/gstinfo.h:
13419           Change gst_debug_log(_valist) to take a const format string.
13420           Change prototype of log function and functions using those to 
13421           take a GstDebugMessage instead of a string that requires using
13422           gst_debug_message_get.
13423
13424 2004-01-08  David Schleef  <ds@schleef.org>
13425
13426         * Makefile.am:
13427         * configure.ac:
13428         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13429         and -ftest-coverage, which allows gcov to show information about
13430         testsuite coverage.
13431
13432 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13433
13434         * gst/gstutils.h:
13435           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13436           GST_PARENT_CALL_WITH_DEFAULT
13437         * gst/elements/gstaggregator.c: 
13438         * gst/elements/gstbufferstore.c: 
13439         * gst/elements/gstfakesink.c: 
13440         * gst/elements/gstfakesrc.c: 
13441         * gst/elements/gstfdsink.c: 
13442         * gst/elements/gstfdsrc.c: 
13443         * gst/elements/gstfilesink.c: 
13444         * gst/elements/gstfilesrc.c: 
13445         * gst/elements/gstidentity.c: 
13446         * gst/elements/gstmd5sink.c: 
13447         * gst/elements/gstmultidisksrc.c:
13448         * gst/elements/gstpipefilter.c: 
13449         * gst/elements/gstshaper.c:
13450         * gst/elements/gststatistics.c:
13451         * gst/elements/gsttee.c:
13452         * gst/elements/gsttypefindelement.c:
13453           use them.
13454
13455 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13456
13457         * docs/gst/gstreamer-docs.sgml: remove props
13458         * docs/gst/gstreamer-sections.txt: remove props
13459         * docs/gst/tmpl/gst.sgml:
13460         * docs/gst/tmpl/gstbin.sgml:
13461         * docs/gst/tmpl/gstbuffer.sgml:
13462         * docs/gst/tmpl/gstcaps.sgml:
13463         * docs/gst/tmpl/gstclock.sgml:
13464         * docs/gst/tmpl/gstelement.sgml:
13465         * docs/gst/tmpl/gstindex.sgml:
13466         * docs/gst/tmpl/gstobject.sgml:
13467         * docs/gst/tmpl/gstpad.sgml:
13468         * docs/gst/tmpl/gstpadtemplate.sgml:
13469         * docs/gst/tmpl/gstreamer-unused.sgml:
13470         * docs/gst/tmpl/gstthread.sgml:
13471         * docs/gst/tmpl/gstxml.sgml:
13472           sync with code reorganization
13473
13474 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13475
13476         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13477         Make the 'Could not find compatible pad' message more informative.
13478
13479 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13480                                                                                 
13481         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13482           Fix for if we pass NULL as property to location.
13483         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13484         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13485           Fix for instantiate-test (see below).
13486         * gst/gststructure.c: (_gst_structure_parse_value):
13487           Fix compile error on gcc-2.96.
13488         * configure.ac:
13489         * tests/Makefile.am:
13490         * tests/instantiate/Makefile.am:
13491         * tests/instantiate/create.c: (create_all_elements), (main):
13492           Add a test that instantiates all elements. This makes it easy to
13493           track dead code for old API/design (like setting event functions
13494           on sink pads and so on).
13495
13496 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13497
13498         * gst/gstcaps.c: (gst_caps_append_structure):
13499           Move the poisoning to allow a NULL structure
13500         * gst/gstevent.c: (_gst_event_free):
13501           When freeing a navigation event, free the structure
13502           also
13503
13504 2004-01-04  David Schleef  <ds@schleef.org>
13505
13506         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13507         Remove usage of gst_pad_proxy_fixate.
13508         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13509         (gst_caps_split_one), (gst_caps_replace):
13510         Add poisoning code.
13511         * gst/gstmarshal.list:
13512         Add pointer__pointer for fixate signal
13513         * gst/gstpad.c: (gst_real_pad_class_init),
13514         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13515         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13516         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13517         Add poisoning code. Add fixate signal on RealPad. Change
13518         set_explicit_caps() to take const GstCaps, like try_set_caps().
13519         * gst/gstpad.h:
13520         * testsuite/caps/Makefile.am:
13521         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13522
13523 2004-01-03  David Schleef  <ds@schleef.org>
13524
13525         * gst/elements/gsttypefindelement.c:
13526         (gst_type_find_element_have_type), (gst_type_find_element_init):
13527         Use gst_pad_use_explicit_caps for src pad.
13528         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13529         before using it.
13530
13531 2004-01-03  David Schleef  <ds@schleef.org>
13532
13533         * gst/gstelement.c: (gst_element_link_pads_filtered),
13534         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13535         that linking was successful.
13536         * gst/gstpad.c: (gst_pad_link_free),
13537         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13538         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13539         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13540         GstPadLinkReturn correctly between functions, and don't fail
13541         when DELAYED is used (DELAYED is very important).  Better
13542         cleanup on unlinking and unnegotiation.  Should fix some spider
13543         bugs.
13544
13545 2004-01-02  David Schleef  <ds@schleef.org>
13546
13547         * gst/gstelement.c: (gst_element_class_init),
13548         (gst_element_base_class_init): ->padtemplates should be cleared
13549         in base_init, since we need to have a fresh list for every
13550         class.  (Alternately, we chould copy the list and share the
13551         actual pad templates (not the list), but that would require
13552         changing every plugin to move pad template registration from
13553         base_init to class_init.)
13554
13555 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13556
13557         * gst/gstelement.c: (gst_element_class_add_pad_template):
13558           Refuse registering a pad template if another pad template
13559           with the same name already exists (#114715).
13560
13561 2004-01-02  David Schleef  <ds@schleef.org>
13562
13563         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13564         (gst_caps_is_equal_fixed): Add new function.
13565         * gst/gstcaps.h: ditto.
13566         * gst/gstpad.c: (gst_real_pad_class_init),
13567         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13568         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13569         check new caps against existing caps -- if they're the same, return
13570         OK without renegotiating.  caps-nego-failed signal fixed so that
13571         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13572         to save an extra caps copy.  Don't complete negotiation if a pad
13573         link function returns DELAYED.
13574
13575 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13576
13577         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13578           Fix wrong g_return_if_fail
13579
13580 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13581
13582         * gst/gstbin.c: (gst_bin_class_init):
13583         Change the marshalling of element_added/element_removed
13584         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13585         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13586
13587 2004-01-01  David Schleef  <ds@schleef.org>
13588
13589         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13590         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13591         (gst_pad_use_explicit_caps):
13592         * gst/gstpad.h:
13593         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13594         to use an internal getcaps and link fuction so that negotiation
13595         always results in the explicitly set caps.
13596         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13597         are particularly useful for decoders.
13598
13599 2003-12-31  David Schleef  <ds@schleef.org>
13600
13601         * gst/elements/gstidentity.c: (gst_identity_class_init),
13602         (gst_identity_init), (gst_identity_chain),
13603         (gst_identity_set_property), (gst_identity_get_property):
13604         * gst/elements/gstidentity.h:
13605         * gst/gstqueue.c: (gst_queue_init):
13606           Negotiation fixes.
13607
13608 2003-12-31  David Schleef  <ds@schleef.org>
13609
13610         * gst/gstcaps.c: (gst_caps_intersect),
13611         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13612           Implement gst_caps_normalize().
13613         * testsuite/caps/normalisation.c: (main):
13614           Add an additional test
13615
13616 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13617
13618         * gst/gstqueue.c: (gst_queue_init):
13619           use gst_pad_proxy_getcaps()
13620
13621 2003-12-31  David Schleef  <ds@schleef.org>
13622
13623         * gst/elements/gstshaper.c: (gst_shaper_link):
13624         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13625         * gst/gstqueue.c: (gst_queue_link):
13626           Negotiation fixes.
13627
13628 2003-12-31  David Schleef  <ds@schleef.org>
13629
13630         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13631         * gst/gstpad.h: Add functions that are useful as default pad
13632         link and fixate functions for elements.
13633
13634 2003-12-30  David Schleef  <ds@schleef.org>
13635
13636         * gst/gstpad.c: (gst_pad_link_try):
13637           Fix segfault when attempting to return to old caps
13638
13639 2003-12-29  David Schleef  <ds@schleef.org>
13640
13641         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13642         (gst_caps_structure_simplify), (gst_caps_simplify):
13643         * gst/gstcaps.h:
13644           Add simplify function
13645         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13646         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13647         * gst/gstpad.h:
13648           Copy over srcnotify, sinknotify when calling old pad_link
13649           functions.  Add new is_negotiated() function.
13650         * gst/gststructure.c: (gst_structure_copy):
13651           Fix an incredibly stupid bug that should have been noticed
13652           weeks ago.  _copy() returned the argument, not the new copy.
13653
13654 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13655
13656         * gst/gstcaps.c: (gst_caps_append):
13657           add sanity checks
13658         * gst/gstcaps.h: (gst_caps_debug):
13659           remove, it doesn't exist anymore.
13660         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13661         (gst_element_threadsafe_properties_post_run):
13662           make debugging messages not clutter up THREAD debug category
13663         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13664         (gst_element_change_state):
13665           update to new caps API
13666         * gst/gstinterface.c: (gst_implements_interface_cast):
13667           don't put vital code in g_return_if_fail
13668         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13669         (gst_pad_link_filtered):
13670           add pst_pad_try_link and use it.
13671         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13672           implement correctly, deprecate first one.
13673         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13674           add and implement.
13675         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13676           implement.
13677         (gst_pad_get_negotiated_caps):
13678           add and implement. Make GST_PAD_CAPS call this function.
13679         (gst_pad_get_caps):
13680           remove unneeded check..
13681         (gst_pad_recover_caps_error):
13682           disable, always return FALSE.
13683         (gst_real_pad_dispose):
13684           don't free caps and appfilter anymore, they're unused.
13685         * gst/gstpad.h:
13686           Reflect changes mentioned above.
13687         * gst/gstsystemclock.c: (gst_system_clock_wait):
13688           Make 'clock is way behind' a debugging message.
13689         * gst/gstthread.c: (gst_thread_change_state):
13690           Fix debugging message
13691
13692 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13693
13694         * gst/gstinfo.h:
13695           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13696         * docs/gst/tmpl/gstreamer-unused.sgml:
13697           removed all traces of cvs conflicts
13698
13699 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13700
13701         * configure.ac:
13702         * gst/schedulers/cothreads_compat.h:
13703         * libs/Makefile.am:
13704           remove last instances of wingo cothread usage
13705
13706 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13707
13708         * gst/gstplugin.c:
13709         * gst/gstversion.h.in:
13710         * gst/parse/grammar.y:
13711           change comment block from /** to /* when not gtk-doc comments
13712
13713 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13714
13715         * gst/gst.c: whitespace and doc style fixes
13716
13717 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13718
13719         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13720
13721 2003-12-24  Colin Walters  <walters@verbum.org>
13722
13723         * gst/elements/gsttypefindelement.c:
13724           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13725           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13726           Don't double-free caps.
13727
13728 2003-12-23  David Schleef  <ds@schleef.org>
13729
13730         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13731           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13732           Many little fixes and additions of debug statements to
13733           get rhythmbox working.
13734
13735 2003-12-23  Colin Walters  <walters@verbum.org>
13736
13737         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13738         Use GST_PAD_LINK_SUCCESSFUL.
13739
13740 2003-12-23  David Schleef  <ds@schleef.org>
13741
13742         * gst/elements/gstaggregator.c:
13743         * gst/elements/gsttee.c:
13744           Use gst_pad_proxy_getcaps().
13745         * gst/gstpad.c:
13746         * gst/gstpad.h:
13747           Add gst_pad_proxy_getcaps(), which filter elements can use
13748           as a generic getcaps implementation.
13749           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13750           was advertised.
13751
13752 2003-12-23  David Schleef  <ds@schleef.org>
13753
13754         * gst/gstpad.c:
13755           Rearrange/rewrite much of the pad negotiation code, since it
13756           resembled pasta.  This actually changes the way some
13757           negotiation works, since the previous code was inconsistent
13758           depending on how it was invoked.  Add (internal) structure
13759           GstPadLink, which is used to hold some information (more in
13760           the future) about the link between two pads.  Fixes a number
13761           of bugs, including random lossage of filter caps when the
13762           initial negotiation is delayed.  A few functions are still
13763           unimplemented.
13764         * gst/gstpad.h:
13765           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13766           these when testing GstPadLinkReturn values instead of comparing
13767           directly.
13768
13769 2003-12-23  David Schleef  <ds@schleef.org>
13770
13771         * gst/gstvalue.c: 
13772         * gst/gstvalue.h:
13773           Rearrange lots of code.  Change registration of compare function
13774           into registration of compare/serialize/deserialize functions.
13775           Doesn't include implementation of gst_value_[de]serialize(),
13776           but that should be easy.
13777
13778 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13779
13780         * docs/gst/gstreamer-sections.txt:
13781         * docs/gst/tmpl/gstprops.sgml: removed
13782         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13783           David removed props and caps code, so let's remove their docs as well.
13784           Removed all no longer existing symbols from gstreamer-sections.txt
13785           
13786 2003-12-22  Colin Walters  <walters@verbum.org>
13787
13788         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13789           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13790           of tags directly.
13791
13792 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13793
13794         * gst/elements/gstelements.c:
13795           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13796         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13797           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13798           gst_caps (peer).
13799
13800 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13801
13802         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13803         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13804         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13805         (gst_spider_identity_sink_loop_type_finding):
13806         * gst/autoplug/gstspideridentity.h:
13807           Fix autoplugging in spider element, so it works with new caps.
13808           This was mainly caused by identifying empty caps incorrectly.
13809
13810 2003-12-22  David Schleef  <ds@schleef.org>
13811
13812         * gststructure.c, gstvalue.c, gstvalue.h: Add
13813           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13814           using g_value_copy()
13815
13816 2003-12-21  David Schleef  <ds@schleef.org>
13817
13818         * many, many files: Merge CAPS branch.  This includes:
13819           - implemention of GstValue and several GstValue types
13820           - implemention of GstStructure
13821           - entire rewrite of GstCaps
13822           - removal of GstProps
13823           - many changes to GstPad to compensate for new caps paradigm
13824           - removal of GstBufferpool
13825         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13826         gstvalue.h, gst/gstcaps[2]*.[ch]:
13827           - rename gstcaps2.[ch] to gstcaps.[ch]
13828
13829 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13830
13831         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13832         (gst_queue_chain), (gst_queue_handle_src_event):
13833           implement timeout for sending events. Workaround for if the
13834           pipeline on this queue is not passing any data.
13835
13836 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13837                                                                                 
13838         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13839         * moved CVS to freedesktop.org