docs/pwg/appendix-porting.xml: Document _set_link_function -> _set_setcaps_function.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2
3         * docs/pwg/appendix-porting.xml:
4           Document _set_link_function -> _set_setcaps_function.
5
6 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7
8         * check/Makefile.am:
9           add a .check target for running the check
10         * check/gst-libs/controller.c: (GST_START_TEST):
11           cosmetic fixups
12         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
13           complete checks for gstbuffer; would be nice if I could get the
14           gcov stuff to work so I can see if I actually completed gstbuffer.c
15         * check/gstcheck.h:
16           add ASSERT_BUFFER_REFCOUNT
17
18 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
19
20         * docs/gst/gstreamer-sections.txt:
21         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
22         * gst/gsttag.h:
23           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
24           spew out a warning if a tag that is already registered
25           is re-registered, unless it is re-registered with a 
26           different type (#308438).
27
28 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
29
30         * docs/pwg/appendix-porting.xml:
31         * docs/pwg/building-state.xml:
32           Add some paragraphs about state changes in 0.9 to the PWG
33           and the porting guide, in particular about the new meaning
34           of GST_STATE_PAUSED and how to write state change functions
35           with concurrent access by multiple threads in mind.
36
37 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
38
39         * docs/gst/gstreamer-docs.sgml:
40         * docs/libs/gstreamer-libs-docs.sgml:
41           added deprecation and since indexes
42         * libs/gst/controller/gst-controller.c:
43         * libs/gst/controller/gst-helper.c:
44           added since tags
45
46
47 2005-08-11  Wim Taymans  <wim@fluendo.com>
48
49         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
50         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
51         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
52         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
53         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
54         (gst_ghost_pad_set_target):
55         Actually implement (re)setting the target on a ghostpad
56         as described in the docs.
57
58 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
59
60         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
61           Check whether GST_DEBUG_NO_COLOR environment variable is
62           set and disable coloured debug output if that is the case.
63
64 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
65
66         * gst/base/gsttypefindhelper.c: (helper_find_peek),
67         (gst_type_find_helper):
68           The memory returned by gst_type_find_peek() needs to
69           stay valid until the end of a typefind function, and
70           typefind functions may keep results from different 
71           offsets around, so we can't just unref the buffer from
72           the previous _peek(), but have to save all buffers 
73           returned by _peek() until typefinding is done and only
74           free them then.
75
76 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
77
78         * docs/gst/gstreamer-sections.txt:
79         * gst/gstutils.h:
80           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
81
82 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
83
84         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
85           Fix a pretty good memleak.
86
87 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
88
89         * gst/gstiterator.h:
90           Fix wrong include and 'make distcheck'.
91
92 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
93
94         * gst/gstbin.c: (bin_bus_handler):
95           Use gst_element_post_message() instead.
96
97 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
98
99         * gst/base/gstadapter.h:
100         * gst/base/gstbasesink.h:
101         * gst/base/gstbasesrc.h:
102         * gst/base/gstbasetransform.h:
103         * gst/base/gstcollectpads.h:
104         * gst/base/gstpushsrc.h:
105         * gst/gstiterator.h:
106           Add padding to our base elements' class and instance structs and
107           to GstIterator (you will need to rebuild all plugins and apps!)
108
109 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
110
111         * gst/gstbin.c: (bin_bus_handler):
112           Make default message forwarding from child->bus to bin->bus
113           threadsafe and make it not emit warnings if the parent has no bus.
114
115 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
116
117         * gst/gstelement.c: (activate_pads):
118           On paused->ready, set pad->caps to NULL, as is the documented
119           behaviour in this state change. Fixes playback of series of
120           media files when visualization is enabled in Totem.
121
122 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
123
124         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
125           Allow NULL as filter-caps (which means "any").
126
127 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
128
129         * docs/libs/gstreamer-libs-sections.txt:
130         * libs/gst/controller/gst-controller.c:
131         * libs/gst/controller/gst-controller.h:
132         * libs/gst/controller/gst-helper.c:
133           adding more entries to the docs and fix small doc-bugs
134
135 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
136
137         * docs/gst/gstreamer-docs.sgml:
138         * docs/gst/gstreamer-sections.txt:
139         * docs/gst/gstreamer.types:
140         * docs/gst/tmpl/gstbasesink.sgml:
141         * docs/gst/tmpl/gstbasesrc.sgml:
142         * docs/gst/tmpl/gstbasetransform.sgml:
143         * docs/gst/tmpl/gstfakesrc.sgml:
144         * gst/base/gstcollectpads.c:
145         * gst/base/gstcollectpads.h:
146         * libs/gst/controller/gst-controller.c:
147         * libs/gst/controller/gst-controller.h:
148         * libs/gst/controller/gst-helper.c:
149         * libs/gst/controller/gst-interpolation.c:
150         * libs/gst/controller/lib.c:
151           added long/short desc for controller docs
152           added collectpads base class docs
153           added correct includes to base-class docs
154
155 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
156
157         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
158         (gst_test_mono_source_set_property),
159         (gst_test_mono_source_class_init), (GST_START_TEST),
160         (gst_controller_suite):
161         * docs/gst/gstreamer-docs.sgml:
162         * docs/gst/gstreamer-sections.txt:
163         * docs/gst/gstreamer.types:
164         * docs/libs/gstreamer-libs-docs.sgml:
165         * docs/libs/gstreamer-libs-sections.txt:
166         * gst/base/gstadapter.c:
167         * libs/gst/controller/gst-controller.c:
168         (gst_controlled_property_new), (gst_controlled_property_free),
169         (gst_controller_new_valist),
170         (gst_controller_remove_properties_valist),
171         (gst_controller_sink_values), (_gst_controller_finalize):
172         * libs/gst/controller/gst-controller.h:
173         * libs/gst/controller/gst-helper.c:
174         (gst_object_control_properties), (gst_object_uncontrol_properties),
175         (gst_object_get_controller), (gst_object_set_controller),
176         (gst_object_sink_values), (gst_object_get_value_arrays),
177         (gst_object_get_value_array):
178           more tests (and fixes) for the controller
179           more docs for the controller
180           integrated companies docs for the adapter 
181
182 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
183
184         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
185         (GST_START_TEST), (fakesrc_suite):
186           add tests for sizetype
187
188 2005-08-04  Andy Wingo  <wingo@pobox.com>
189
190         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
191         fixes buffer_alloc proxying among other things.
192
193         * gst/base/gstbasetransform.c:
194         * gst/base/gstbasetransform.h:
195         Revert patch to gstbasetransform from 7-28 removing
196         delay_configure.
197
198         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
199         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
200         Semantics changed, should return not the size of the output buffer
201         but the byte size of a buffer with a given caps.
202
203         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
204         debug object.
205         (gst_base_transform_configure_caps): Don't set out_size here: (in,
206         out) are not the pad caps until setcaps finishes.
207         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
208         not-in-place case as well. Deal with changing from in-place to
209         not-in-place within calling pad_alloc_buffer. Still a bit
210         concerned about the overhead here...
211
212 2005-08-03  Andy Wingo  <wingo@pobox.com>
213
214         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
215         fixating is an error.
216
217 2005-08-04  Edward Hervey  <edward@fluendo.com>
218
219         * gst/base/gstadapter.h: 
220         Added gst_adapter_get_type() to the header
221
222 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
223
224         * check/Makefile.am:
225         * check/gst-libs/controller.c:
226         * libs/gst/controller/gst-controller.c:
227         (gst_controller_new_valist):
228           added check test suite for the controller
229         * gst/base/gstpushsrc.c:
230           fixed a doc typo
231
232 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
233
234         * docs/gst/Makefile.am:
235         * docs/gst/gstreamer-docs.sgml:
236         * docs/gst/gstreamer-sections.txt:
237         * docs/gst/gstreamer.types:
238         * docs/gst/tmpl/gstfakesrc.sgml:
239         * gst/base/README:
240         * gst/base/gstbasesink.c:
241         * gst/base/gstbasesink.h:
242         * gst/base/gstbasesrc.c:
243         * gst/base/gstbasesrc.h:
244         * gst/base/gstbasetransform.c:
245         * gst/base/gstpushsrc.c:
246         * gst/base/gstpushsrc.h:
247           add short/long description docs to base classes
248           add pushsrc to the docs
249           remove consolidated doc fragments
250
251 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
252
253         * configure.ac:
254         * docs/libs/Makefile.am:
255         * docs/libs/gstreamer-libs-docs.sgml:
256         * docs/libs/gstreamer-libs-sections.txt:
257         * docs/libs/gstreamer-libs.types:
258         * examples/Makefile.am:
259         * examples/controller/.cvsignore:
260         * examples/controller/Makefile.am:
261         * examples/controller/audio-example.c: (main):
262         * libs/gst/Makefile.am:
263         * libs/gst/controller/.cvsignore:
264         * libs/gst/controller/Makefile.am:
265         * libs/gst/controller/gst-controller.c:
266         (on_object_controlled_property_changed), (gst_timed_value_compare),
267         (gst_timed_value_find),
268         (gst_controlled_property_set_interpolation_mode),
269         (gst_controlled_property_new), (gst_controlled_property_free),
270         (gst_controller_find_controlled_property),
271         (gst_controller_new_valist), (gst_controller_new),
272         (gst_controller_remove_properties_valist),
273         (gst_controller_remove_properties), (gst_controller_set),
274         (gst_controller_set_from_list), (gst_controller_unset),
275         (gst_controller_get), (gst_controller_get_all),
276         (gst_controller_sink_values), (gst_controller_get_value_arrays),
277         (gst_controller_get_value_array),
278         (gst_controller_set_interpolation_mode),
279         (_gst_controller_finalize), (_gst_controller_init),
280         (_gst_controller_class_init), (gst_controller_get_type):
281         * libs/gst/controller/gst-controller.h:
282         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
283         (g_object_uncontrol_properties), (g_object_get_controller),
284         (g_object_set_controller), (g_object_sink_values),
285         (g_object_get_value_arrays), (g_object_get_value_array):
286         * libs/gst/controller/gst-interpolation.c:
287         (gst_controlled_property_find_timed_value_node),
288         (interpolate_none_get), (interpolate_trigger_get),
289         (interpolate_trigger_get_value_array):
290         * libs/gst/controller/lib.c: (gst_controller_init):
291         * pkgconfig/Makefile.am:
292         * pkgconfig/gstreamer-control-uninstalled.pc.in:
293         * pkgconfig/gstreamer-control.pc.in:
294         * testsuite/Makefile.am:
295         * testsuite/controller/.cvsignore:
296         * testsuite/controller/Makefile.am:
297         * testsuite/controller/interpolator.c: (main):
298           added controller code
299           removed dparam pc files
300
301 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
302         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
303         (gst_collectpads_stop):
304           Broadcast the condition when shutting down, to make sure we wake all
305           threads up. Shut down pads on finalize, for safety.
306
307 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
308         * gst/base/gstbasetransform.c: (gst_base_transform_init),
309         (gst_base_transform_handle_buffer),
310         (gst_base_transform_change_state):
311           Handle PAUSED->READY->PAUSED transition after negotiation
312           occurred already.
313         * gst/gstmessage.c: (gst_message_init):
314           Extra piece of debug for new messages.
315
316 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
317
318         * configure.ac:
319         * docs/gst/tmpl/gstbasesrc.sgml:
320         * docs/gst/tmpl/gstelement.sgml:
321         * docs/gst/tmpl/gstevent.sgml:
322         * docs/gst/tmpl/gstfakesrc.sgml:
323         * docs/gst/tmpl/gstformat.sgml:
324         * docs/gst/tmpl/gstghostpad.sgml:
325         * docs/gst/tmpl/gstpad.sgml:
326         * docs/gst/tmpl/gstquery.sgml:
327         * docs/gst/tmpl/gststructure.sgml:
328         * docs/gst/tmpl/gsttaglist.sgml:
329         * docs/gst/tmpl/gstvalue.sgml:
330         * docs/libs/gstreamer-libs-docs.sgml:
331         * docs/libs/gstreamer-libs-sections.txt:
332         * docs/libs/gstreamer-libs.types:
333         * libs/gst/Makefile.am:
334         * libs/gst/control/.cvsignore:
335         * libs/gst/control/Makefile.am:
336         * libs/gst/control/control.c:
337         * libs/gst/control/control.h:
338         * libs/gst/control/dparam.c:
339         * libs/gst/control/dparam.h:
340         * libs/gst/control/dparam_smooth.c:
341         * libs/gst/control/dparam_smooth.h:
342         * libs/gst/control/dparamcommon.h:
343         * libs/gst/control/dparammanager.c:
344         * libs/gst/control/dparammanager.h:
345         * libs/gst/control/dplinearinterp.c:
346         * libs/gst/control/dplinearinterp.h:
347         * libs/gst/control/unitconvert.c:
348         * libs/gst/control/unitconvert.h:
349         * testsuite/Makefile.am:
350         * testsuite/dynparams/.cvsignore:
351         * testsuite/dynparams/Makefile.am:
352         * testsuite/dynparams/dparamstest.c:
353         * tools/Makefile.am:
354         * tools/gst-inspect.c: (print_element_info), (main):
355         * tools/gst-xmlinspect.c: (print_element_info), (main):
356           deactivate and remove dparams (libgstcontrol)
357
358 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
359
360         * gst/elements/gsttypefindelement.c:
361         (gst_type_find_element_have_type), (gst_type_find_element_init),
362         (stop_typefinding), (gst_type_find_element_handle_event),
363         (gst_type_find_element_chain), (gst_type_find_element_getrange):
364         * gst/elements/gsttypefindelement.h:
365           Set caps on all outgoing buffers, not just the first one.
366
367 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
368
369         * gst/elements/gsttypefindelement.c:
370         (gst_type_find_element_have_type),
371         (gst_type_find_element_check_set_buffer_caps),
372         (gst_type_find_element_init), (stop_typefinding),
373         (gst_type_find_element_handle_event),
374         (gst_type_find_element_chain), (gst_type_find_element_getrange):
375         * gst/elements/gsttypefindelement.h:
376           Set caps on first outgoing buffer when we've found the type.
377
378 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
379
380         * docs/gst/gstreamer-docs.sgml:
381         * docs/gst/gstreamer-sections.txt:
382         * docs/gst/tmpl/gstscheduler.sgml:
383         * docs/gst/tmpl/gstschedulerfactory.sgml:
384           Remove some old cruft from docs.
385
386 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
387
388         * gst/gstpad.h:
389           Fix inline docs for GstPadLinkReturn.
390           
391         * gst/gststructure.c: (gst_structure_has_name):
392         * gst/gststructure.h:
393         * docs/gst/gstreamer-sections.txt:
394           New API: gst_structure_has_name().
395
396 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
397
398         * configure.ac:
399           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
400           and _LARGEFILE_SOURCE in config.h as required. Do not 
401           export those flags in our .pc files any longer (#142209).
402
403           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
404
405         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
406         (gst_file_sink_do_seek), (gst_file_sink_event),
407         (gst_file_sink_get_current_offset), (gst_file_sink_render):
408           Redo seek/tell calls with large file support in mind; add some
409           debugging messages; add log message that tells us when large
410           file support is unavailable or not enabled for some reason.
411
412         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
413           Add log message that tells us when large file support 
414           is unavailable or not enabled for some reason.
415
416 2005-07-29  Wim Taymans  <wim@fluendo.com>
417
418         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
419         Added test for removing an element with ghostpad from a bin.
420         Fixed test as current implementation does the right thing.
421
422         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
423         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
424         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
425         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
426         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
427         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
428         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
429         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
430         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
431         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
432         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
433         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
434         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
435         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
436         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
437         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
438         * gst/gstghostpad.h:
439         Clean up ghostpads, remove properties for internal stuff.
440         Make threadsafe.
441         Fix refcounting.
442         Prepare for switching targets, not all use cases work yet.
443
444 2005-07-29  Wim Taymans  <wim@fluendo.com>
445
446         * docs/design/part-gstghostpad.txt:
447         Small update.
448
449         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
450         (gst_bin_remove_func):
451         Unlinking pads while holding the bin LOCK is not a good
452         idea.
453
454         * gst/gstpad.c: (gst_pad_class_init),
455         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
456         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
457         No prob setting template after creating the pad.
458
459 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
460
461         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
462         (gst_bus_peek), (gst_bus_source_dispatch),
463         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
464         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
465           gst_bus_poll may be called from other threads. Handle
466           this nicely by not making poll_data disappear off the
467           stack once gst_bus_poll returns.
468           gst_bus_peek now increments the refcount on the returned
469           message.
470
471 2005-07-29  Wim Taymans  <wim@fluendo.com>
472
473         * docs/design/part-gstghostpad.txt:
474         Overview of current GhostPad datastructures and use
475         cases for changing the target.
476
477 2005-07-28  Wim Taymans  <wim@fluendo.com>
478
479         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
480         Added checks for hierarchy consistency whan adding linked
481         elements to bins.
482
483         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
484         Added check to test element scheduling without bin/pipeline.
485
486         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
487         First add elements to bin, then link.
488         
489         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
490         (gst_bin_remove_func):
491         Unlink pads from elements added/removed from bin to maintain
492         hierarchy consistency.
493
494 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
495
496         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
497         (gst_base_transform_handle_buffer):
498         * gst/base/gstbasetransform.h:
499           Remove broken delay_configure (fixes renegotiation of software
500           scaling pipelines); remove some leftover printf()s.
501
502 2005-07-28  Wim Taymans  <wim@fluendo.com>
503
504         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
505         Added some more tests for wrong hierarchy
506
507         * docs/design/part-overview.txt:
508         Some updates.
509
510         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
511         Cleanups.
512
513         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
514         (gst_element_dispose):
515         Some more cleanups.
516
517         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
518         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
519         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
520         (gst_pad_set_caps), (gst_pad_send_event):
521         Check for correct hierarchy when linking pads. Moving to
522         strict requirement for ghostpads when linking elements in
523         different bins.
524
525         * gst/gstpad.h:
526         Clean ups. Added WRONG_HIERARCHY return value.
527
528 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
529
530         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
531           Better debug if no transform is possible.
532
533 2005-07-27  Wim Taymans  <wim@fluendo.com>
534
535         * docs/random/wtay/network-transp:
536         Some old doc I had.
537
538 2005-07-27  Wim Taymans  <wim@fluendo.com>
539
540         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
541         (gst_dp_event_from_packet):
542         Fix serialization of seek events.
543
544 2005-07-27  Wim Taymans  <wim@fluendo.com>
545
546         * check/gst-libs/gdp.c: (GST_START_TEST):
547         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
548         Fix compilation and fix event serialization.
549
550 2005-07-27  Wim Taymans  <wim@fluendo.com>
551
552         * CHANGES-0.9:
553         * docs/design/part-TODO.txt:
554         * docs/design/part-events.txt:
555         Some docs updates
556
557         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
558         (gst_base_sink_event), (gst_base_sink_do_sync),
559         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
560         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
561         (gst_base_src_do_seek), (gst_base_src_event_handler),
562         (gst_base_src_loop):
563         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
564         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
565         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
566         (gst_base_transform_event), (gst_base_transform_handle_buffer),
567         (gst_base_transform_set_passthrough),
568         (gst_base_transform_is_passthrough):
569         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
570         * gst/elements/gstfilesink.c: (gst_file_sink_event):
571         Event updates.
572
573         * gst/gstbuffer.h:
574         Use faster casts.
575
576         * gst/gstelement.c: (gst_element_seek):
577         * gst/gstelement.h:
578         Update gst_element_seek.
579
580         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
581         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
582         (gst_event_new_flush_start), (gst_event_new_flush_stop),
583         (gst_event_new_eos), (gst_event_new_newsegment),
584         (gst_event_parse_newsegment), (gst_event_new_tag),
585         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
586         (gst_event_parse_qos), (gst_event_new_seek),
587         (gst_event_parse_seek), (gst_event_new_navigation):
588         * gst/gstevent.h:
589         Make GstEvent use GstStructure. Add parsing code, make sure the
590         API is sufficiently generic.
591         Mark possible directions of events and serialization.
592
593         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
594         (_gst_message_copy), (gst_message_new_segment_start),
595         (gst_message_new_segment_done), (gst_message_new_custom),
596         (gst_message_parse_segment_start),
597         (gst_message_parse_segment_done):
598         Small cleanups.
599
600         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
601         (gst_pad_set_caps), (gst_pad_send_event):
602         Update for new events. 
603         Catch events sent in wrong directions.
604
605         * gst/gstqueue.c: (gst_queue_link_src),
606         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
607         (gst_queue_handle_src_query):
608         Event updates.
609
610         * gst/gsttag.c:
611         * gst/gsttag.h:
612         Remove event code from this file.
613
614         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
615         (gst_dp_event_from_packet):
616         Event updates.
617
618 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
619
620         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
621         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
622         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
623           Make debugging actually useful.
624
625 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
626
627         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
628         (gst_pad_fixate_caps):
629           Implement default fixation once again, so that gst_pad_fixate()
630           actually does anything at all. This probably needs to be some
631           sort of a last resort, and use profile-based fixation first, but
632           since that doesn't exist yet, this is the best we have. Fixes
633           visualization in Totem.
634
635 2005-07-22  Wim Taymans  <wim@fluendo.com>
636
637         * docs/design/part-events.txt:
638         Small update.
639
640         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
641         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
642         (gst_base_sink_activate_pull):
643         Some more comments.
644
645         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
646         (gst_fake_src_create):
647         Fix handoff marshall.
648
649         * gst/elements/gstidentity.c: (gst_identity_class_init),
650         (gst_identity_transform_ip):
651         We're a real inplace element.
652
653         * gst/gstbus.c: (gst_bus_post):
654         Added some comments.
655
656         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
657         * tests/muxing/case1.c: (main):
658         * tests/sched/dynamic-pipeline.c: (main):
659         * tests/sched/interrupt1.c: (main):
660         * tests/sched/interrupt2.c: (main):
661         * tests/sched/interrupt3.c: (main):
662         * tests/sched/runxml.c: (main):
663         * tests/sched/sched-stress.c: (main):
664         * tests/seeking/seeking1.c: (event_received), (main):
665         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
666         (main):
667         * tests/threadstate/threadstate3.c: (main):
668         * tests/threadstate/threadstate4.c: (main):
669         * tests/threadstate/threadstate5.c: (main):
670         Fix the tests.
671
672 2005-07-21  Wim Taymans  <wim@fluendo.com>
673
674         * docs/design/part-seeking.txt:
675         Some small additions.
676
677         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
678         (gst_base_sink_get_times), (gst_base_sink_do_sync),
679         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
680         * gst/base/gstbasesink.h:
681         discont values are gint64, handle the math correctly.
682
683         * gst/base/gstbasesrc.c: (gst_base_src_loop):
684         Make the basesrc report error if the source pad is not linked.
685
686         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
687         (gst_queue_loop), (gst_queue_handle_src_query),
688         (gst_queue_src_activate_push):
689         Make queue collect data even if the srcpad is not linked.
690         Start pushing out data as soon as it is linked.
691
692         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
693         * gst/gstutils.h:
694         Added gst_flow_get_name() to ease error reporting.
695
696 2005-07-20  Wim Taymans  <wim@fluendo.com>
697
698         * gst/gstmessage.c: (gst_message_new_segment_start),
699         (gst_message_new_segment_done), (gst_message_parse_segment_start),
700         (gst_message_parse_segment_done):
701         * gst/gstmessage.h:
702         Added a bunch of messages for advanced seeking.
703
704         * gst/parse/grammar.y:
705         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
706         (gst_dpman_state_changed):
707         Fix some new-pad -> pad-added signals
708
709 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
710
711         * docs/manual/appendix-porting.xml:
712         * docs/pwg/appendix-porting.xml:
713           Document new-pad/state-change signal renames and the FixedList
714           type rename.
715
716 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
717
718         * docs/manual/advanced-autoplugging.xml:
719         * docs/manual/basics-helloworld.xml:
720         * docs/manual/basics-pads.xml:
721         * docs/random/ds/0.9-suggested-changes:
722         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
723         * gst/gstelement.h:
724         * gst/gstevent.h:
725         * gst/gstformat.h:
726         * gst/gstquery.h:
727         * gst/gststructure.c: (gst_structure_value_get_generic_type),
728         (gst_structure_parse_array), (gst_structure_parse_value):
729         * gst/gstvalue.c: (gst_type_is_fixed),
730         (gst_value_list_prepend_value), (gst_value_list_append_value),
731         (gst_value_list_get_size), (gst_value_list_get_value),
732         (gst_value_transform_array_string), (gst_value_serialize_array),
733         (gst_value_deserialize_array), (gst_value_intersect_array),
734         (gst_value_is_fixed), (_gst_value_initialize):
735         * gst/gstvalue.h:
736           GstElement::new-pad -> pad-added, GstElement::state-change ->
737           state-changed, GstValueFixedList -> GstValueArray, add format and
738           flags as their own arguments in gst_element_seek() (should improve
739           "bindeability"), remove function generators since they don't work
740           under a whole bunch of compilers (they were deprecated already
741           anyway).
742
743 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
744
745         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
746         (_gst_debug_register_funcptr):
747         * gst/gstinfo.h:
748           Fix illegal cast on some platforms (#309253).
749
750 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
751
752         * gst/gstmessage.c: (gst_message_new_custom):
753         * gst/gstmessage.h:
754           Add _new_custom, make _new_application a macro to _new_custom.
755
756 2005-07-20  Wim Taymans  <wim@fluendo.com>
757
758         * gst/base/gstbasesrc.c: (gst_base_src_init),
759         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
760         * gst/base/gstbasesrc.h:
761         Add a gboolean to decide when to push out a discont.
762
763         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
764         (gst_queue_loop), (gst_queue_handle_src_query),
765         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
766         (gst_queue_set_property), (gst_queue_get_property):
767         Some cleanups.
768
769         * tests/threadstate/threadstate1.c: (main):
770         Make a thread test compile and run... very silly..
771
772
773 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
774
775         * docs/manual/appendix-porting.xml:
776           Mention removal of libgstgconf-0.9.la and existence of gconf
777           elements.
778
779 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
780
781         * docs/pwg/advanced-clock.xml:
782         * docs/pwg/appendix-porting.xml:
783         * docs/pwg/intro-preface.xml:
784         * docs/pwg/other-base.xml:
785         * docs/pwg/other-manager.xml:
786         * docs/pwg/other-nton.xml:
787         * docs/pwg/other-ntoone.xml:
788         * docs/pwg/other-oneton.xml:
789         * docs/pwg/pwg.xml:
790           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
791           demuxer), remove n-to-n (was never written), fix some code examples
792           and links and update the porting section to include all this.
793
794 2005-07-19  Wim Taymans  <wim@fluendo.com>
795
796         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
797         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
798         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
799         (gst_queue_src_activate_push), (gst_queue_change_state),
800         (gst_queue_get_property):
801         * gst/gstqueue.h:
802         Propagate GstFlowReturn more intelligently upstream and output
803         an ERROR/EOS when streaming stopped due to fatal error.
804
805 2005-07-19  Wim Taymans  <wim@fluendo.com>
806
807         * tools/gst-launch.c: (check_intr), (event_loop), (main):
808         Don't block forever for the state change to complete, the
809         pipeline already did with a sensible timeout.
810
811 2005-07-19  Wim Taymans  <wim@fluendo.com>
812
813         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
814         Make sure we never call the create function is we
815         got deactivated.
816
817 2005-07-19  Andy Wingo  <wingo@pobox.com>
818
819         * gst/parse/parse.l: Attempt to solve bug #172815.
820
821 2005-07-19  Wim Taymans  <wim@fluendo.com>
822
823         * docs/design/part-clocks.txt:
824         * docs/design/part-events.txt:
825         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
826         Small docs updates.
827         Only update the seeking values when we are not
828         busy streaming.
829
830 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
831
832         * gst/base/gstbasesrc.c: (gst_base_src_loop):
833           Oops, ignore the result of gst_pad_push_event here.
834
835 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
836
837         * gst/base/gstbasesrc.c: (gst_base_src_loop),
838         (gst_base_src_activate_push):
839           Send discont event from the loop function, as pads
840           aren't activated yet in the activate_push handler.
841
842         * gst/gstbin.c: (bin_bus_handler):
843           Don't leak element name.
844
845 2005-07-18  Andy Wingo  <wingo@pobox.com>
846
847         * configure.ac: Use AS_LIBTOOL_TAGS.
848
849 2005-07-18  Wim Taymans  <wim@fluendo.com>
850
851         * docs/gst/gstreamer.types:
852         Remove deleted types.
853
854 2005-07-18  Wim Taymans  <wim@fluendo.com>
855
856         * check/elements/gstfakesrc.c: (GST_START_TEST):
857         * configure.ac:
858         * gst/Makefile.am:
859         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
860         (init_popt_callback):
861         * gst/gst.h:
862         * gst/gst_private.h:
863         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
864         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
865         * gst/gstbin.h:
866         * gst/gstbus.h:
867         * gst/gstconfig.h.in:
868         * gst/gstelement.c: (gst_element_class_init),
869         (gst_element_set_base_time), (gst_element_get_base_time),
870         (iterator_fold_with_resync), (gst_element_change_state),
871         (gst_element_dispose), (gst_element_get_bus):
872         * gst/gstelement.h:
873         * gst/gstelementfactory.h:
874         * gst/gsterror.c: (_gst_core_errors_init):
875         * gst/gsterror.h:
876         * gst/gstevent.h:
877         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
878         * gst/gstindex.c:
879         * gst/gstinfo.c: (_gst_debug_init):
880         * gst/gstmessage.c: (_gst_message_copy):
881         * gst/gstmessage.h:
882         * gst/gstminiobject.h:
883         * gst/gstobject.c:
884         * gst/gstobject.h:
885         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
886         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
887         * gst/gstpad.h:
888         * gst/gstparse.h:
889         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
890         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
891         (gst_pipeline_get_last_stream_time):
892         * gst/gstpipeline.h:
893         * gst/gstpluginfeature.h:
894         * gst/gstquery.h:
895         * gst/gstscheduler.c:
896         * gst/gstscheduler.h:
897         * gst/gststructure.h:
898         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
899         (gst_task_finalize), (gst_task_func), (gst_task_create),
900         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
901         (gst_task_stop), (gst_task_pause):
902         * gst/gsttask.h:
903         * gst/gsttypefind.h:
904         * gst/gsttypes.h:
905         * gst/registries/gstlibxmlregistry.c: (load_feature),
906         (gst_xml_registry_load), (gst_xml_registry_save_feature):
907         * gst/registries/gstxmlregistry.c:
908         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
909         * gst/schedulers/threadscheduler.c:
910         * libs/gst/control/dparammanager.h:
911         * tools/gst-inspect.c: (print_element_list),
912         (print_plugin_features), (print_element_features):
913         * tools/gst-xmlinspect.c: (print_element_list),
914         (print_plugin_info), (main):
915         Removed plugable schedulers.
916         Removed Scheduler/Manager from elements.
917         Removed gsttypes.h, rearranged includes.
918         Removed dependency pad<->element, element<>pipeline, and
919         various others,  fix includes.
920         implement gst_pad_get_parent() with gst_object_get_parent()
921         Make GstTask sefcontained.
922         Fix _get_state() on GstBin, it did not return ASYNC with a 0
923         timeout.
924         Fix endless loop in iterator_fold_with_resync.
925
926
927 2005-07-18  Wim Taymans  <wim@fluendo.com>
928
929         * gst/Makefile.am:
930         * gst/gstarch.h:
931         Remove old file.
932
933 2005-07-18  Wim Taymans  <wim@fluendo.com>
934
935         * gst/Makefile.am:
936         No more cothreads.h
937
938 2005-07-18  Wim Taymans  <wim@fluendo.com>
939
940         * gst/cothreads.c:
941         * gst/cothreads.h:
942         Let's remove these.
943
944 2005-07-18  Wim Taymans  <wim@fluendo.com>
945
946         * docs/design/part-dynamic.txt:
947         * docs/design/part-events.txt:
948         * docs/design/part-seeking.txt:
949         Some more docs in the works.
950
951         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
952         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
953         (gst_base_transform_setcaps), (gst_base_transform_get_size),
954         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
955         (gst_base_transform_handle_buffer),
956         (gst_base_transform_sink_activate_push),
957         (gst_base_transform_src_activate_pull),
958         (gst_base_transform_set_passthrough),
959         (gst_base_transform_is_passthrough):
960         Refcounting fixes.
961
962         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
963         Cleanups.
964
965         * gst/gstevent.c: (gst_event_finalize):
966         Set SRC to NULL.
967
968         * gst/gstutils.c: (gst_element_unlink),
969         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
970         (gst_pad_proxy_setcaps):
971         * gst/gstutils.h:
972         Add _get_parent_element() to get a pads parent as an element.
973
974 2005-07-18  Wim Taymans  <wim@fluendo.com>
975
976         * check/gst/gstbin.c: (GST_START_TEST):
977         Remove bogus test.
978
979 2005-07-18  Wim Taymans  <wim@fluendo.com>
980
981         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
982         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
983         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
984         (gst_base_sink_event), (gst_base_sink_do_sync),
985         (gst_base_sink_chain), (gst_base_sink_loop),
986         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
987         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
988         Refcounting fixes.
989         Fix logic for returning ASYNC when not prerolled.
990
991 2005-07-18  Wim Taymans  <wim@fluendo.com>
992
993         * gst/gstqueue.c: (gst_queue_handle_sink_event):
994         Fix nasty refcount bug.
995
996 2005-07-16 Philippe Khalaf <burger@speedy.org>
997         * gst/elements/gstfdsrc.c:
998         * gst/elements/gstfdsrc.h:
999         * gst/elements/gstelements.c:
1000         * gst/elements/Makefile.am:
1001         Ported fdsrc to 0.9.
1002
1003 2005-07-16  Wim Taymans  <wim@fluendo.com>
1004
1005         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1006         (gst_base_sink_do_sync):
1007         Fix compile error.
1008
1009 2005-07-16  Wim Taymans  <wim@fluendo.com>
1010
1011         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1012         (gst_base_sink_event), (gst_base_sink_get_times),
1013         (gst_base_sink_do_sync), (gst_base_sink_change_state):
1014         * gst/base/gstbasesink.h:
1015         Store and use discont values when syncing buffers as described
1016         in design docs.
1017         
1018         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1019         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
1020         (gst_base_src_activate_push):
1021         Push discont event when starting.
1022
1023         * gst/elements/gstidentity.c: (gst_identity_transform):
1024         Small cleanups.
1025
1026         * gst/gstbin.c: (gst_bin_change_state):
1027         Small cleanups in base_time  distribution.
1028
1029         * gst/gstelement.c: (gst_element_set_base_time),
1030         (gst_element_get_base_time), (gst_element_change_state):
1031         * gst/gstelement.h:
1032         Added methods for the base_time of the element.
1033         Some MT fixes.
1034
1035         * gst/gstpipeline.c: (gst_pipeline_send_event),
1036         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1037         (gst_pipeline_get_last_stream_time):
1038         * gst/gstpipeline.h:
1039         MT fixes.
1040         Handle seeking as described in design doc, remove stream_time
1041         hack.
1042         Cleanups clock and stream_time selection code. Added accessors
1043         for the stream_time.
1044         
1045
1046 2005-07-16  Andy Wingo  <wingo@pobox.com>
1047
1048         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
1049         (#305291).
1050
1051 2005-07-16  Wim Taymans  <wim@fluendo.com>
1052
1053         * check/gst/gstbin.c: (GST_START_TEST):
1054         Make elements silent as the deep_notify refs the
1055         parent, which might make the test fail.
1056
1057         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1058         Don't hold the lock for too long.
1059
1060 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
1061
1062         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
1063           Don't unref the caps we passed to gst_caps_make_writable() after
1064           passing them. gst_caps_make_writable() will do that for us.
1065
1066 2005-07-15  Andy Wingo  <wingo@pobox.com>
1067
1068         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
1069         (#157311).
1070
1071         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
1072         own marshalling function for the handoff signal. Properly type the
1073         buffer as a buffer. Fixes some warnings. Should do a more general
1074         solution.
1075         (gst_identity_class_init): Plug into the right marshaller.
1076
1077 2005-07-15  Wim Taymans  <wim@fluendo.com>
1078
1079         * docs/design/part-TODO.txt:
1080         * docs/design/part-clocks.txt:
1081         * docs/design/part-element-sink.txt:
1082         * docs/design/part-events.txt:
1083         * docs/design/part-gstpipeline.txt:
1084         Updated docs, mostly DISCONT related.
1085
1086 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1087
1088         * docs/pwg/building-pads.xml:
1089           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1090
1091 2005-07-15  Andy Wingo  <wingo@pobox.com>
1092
1093         * tools/gst-typefind.c: Update, add copyright block.
1094
1095         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1096         Normalize and truncate caps before fixation.
1097
1098         * gst/gstcaps.h:
1099         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1100         discards all but the first structure from its argument.
1101
1102 2005-07-15  Wim Taymans  <wim@fluendo.com>
1103
1104         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1105         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1106         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1107         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1108         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1109         (gst_base_transform_chain), (gst_base_transform_change_state),
1110         (gst_base_transform_set_passthrough),
1111         (gst_base_transform_is_passthrough):
1112         * gst/base/gstbasetransform.h:
1113         Make passthrough work using the bufferpools.
1114         Changed API a bit, subclasses have to write into a buffer
1115         provided by the base class.
1116         More debug info in nego functions.
1117         
1118         * gst/elements/gstidentity.c: (gst_identity_init),
1119         (gst_identity_transform):
1120         Port to new base class.
1121
1122 2005-07-15  Wim Taymans  <wim@fluendo.com>
1123
1124         * gst/gstmessage.c: (gst_message_new_state_changed):
1125         * tools/gst-launch.c: (event_loop), (main):
1126         Totally dump messages in -launch with the -m option.
1127         Fix message name for State messages,
1128
1129 2005-07-14  Wim Taymans  <wim@fluendo.com>
1130
1131         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1132         Post error messages on errors.
1133
1134 2005-07-14  Wim Taymans  <wim@fluendo.com>
1135
1136         * gst/gstcaps.c: (gst_caps_do_simplify):
1137         Remove debug info.
1138
1139         * gst/gsterror.h:
1140         Define error for stream stopped.
1141
1142         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1143         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1144         Do proper return values.
1145
1146         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1147         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1148         (gst_pad_get_range):
1149         Better return values.
1150
1151         * gst/gstpad.h:
1152         Reorganise return values, add macro to check for fatal errors.
1153
1154         * gst/gstqueue.c: (gst_queue_chain):
1155         Return proper GstFlowReturn values,
1156
1157 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1158
1159         * docs/gst/gstreamer-sections.txt:
1160         * docs/gst/gstreamer.types:
1161         * docs/gst/tmpl/gst.sgml:
1162         * docs/gst/tmpl/gstbasesink.sgml:
1163         * docs/gst/tmpl/gstbasesrc.sgml:
1164         * docs/gst/tmpl/gstbasetransform.sgml:
1165         * docs/gst/tmpl/gstbin.sgml:
1166         * docs/gst/tmpl/gstbuffer.sgml:
1167         * docs/gst/tmpl/gstcaps.sgml:
1168         * docs/gst/tmpl/gstclock.sgml:
1169         * docs/gst/tmpl/gstcompat.sgml:
1170         * docs/gst/tmpl/gstconfig.sgml:
1171         * docs/gst/tmpl/gstelement.sgml:
1172         * docs/gst/tmpl/gstelementdetails.sgml:
1173         * docs/gst/tmpl/gstelementfactory.sgml:
1174         * docs/gst/tmpl/gstenumtypes.sgml:
1175         * docs/gst/tmpl/gsterror.sgml:
1176         * docs/gst/tmpl/gstevent.sgml:
1177         * docs/gst/tmpl/gstfakesink.sgml:
1178         * docs/gst/tmpl/gstfakesrc.sgml:
1179         * docs/gst/tmpl/gstfilesink.sgml:
1180         * docs/gst/tmpl/gstfilesrc.sgml:
1181         * docs/gst/tmpl/gstfilter.sgml:
1182         * docs/gst/tmpl/gstformat.sgml:
1183         * docs/gst/tmpl/gstghostpad.sgml:
1184         * docs/gst/tmpl/gstimplementsinterface.sgml:
1185         * docs/gst/tmpl/gstindex.sgml:
1186         * docs/gst/tmpl/gstindexfactory.sgml:
1187         * docs/gst/tmpl/gstinfo.sgml:
1188         * docs/gst/tmpl/gstiterator.sgml:
1189         * docs/gst/tmpl/gstmacros.sgml:
1190         * docs/gst/tmpl/gstmemchunk.sgml:
1191         * docs/gst/tmpl/gstminiobject.sgml:
1192         * docs/gst/tmpl/gstobject.sgml:
1193         * docs/gst/tmpl/gstpad.sgml:
1194         * docs/gst/tmpl/gstpadtemplate.sgml:
1195         * docs/gst/tmpl/gstparse.sgml:
1196         * docs/gst/tmpl/gstpipeline.sgml:
1197         * docs/gst/tmpl/gstplugin.sgml:
1198         * docs/gst/tmpl/gstpluginfeature.sgml:
1199         * docs/gst/tmpl/gstquery.sgml:
1200         * docs/gst/tmpl/gstqueue.sgml:
1201         * docs/gst/tmpl/gstregistry.sgml:
1202         * docs/gst/tmpl/gstregistrypool.sgml:
1203         * docs/gst/tmpl/gstscheduler.sgml:
1204         * docs/gst/tmpl/gstschedulerfactory.sgml:
1205         * docs/gst/tmpl/gststructure.sgml:
1206         * docs/gst/tmpl/gstsystemclock.sgml:
1207         * docs/gst/tmpl/gsttaglist.sgml:
1208         * docs/gst/tmpl/gsttagsetter.sgml:
1209         * docs/gst/tmpl/gsttrace.sgml:
1210         * docs/gst/tmpl/gsttrashstack.sgml:
1211         * docs/gst/tmpl/gsttypefind.sgml:
1212         * docs/gst/tmpl/gsttypefindfactory.sgml:
1213         * docs/gst/tmpl/gsttypes.sgml:
1214         * docs/gst/tmpl/gsturihandler.sgml:
1215         * docs/gst/tmpl/gsturitype.sgml:
1216         * docs/gst/tmpl/gstutils.sgml:
1217         * docs/gst/tmpl/gstvalue.sgml:
1218         * docs/gst/tmpl/gstversion.sgml:
1219         * docs/gst/tmpl/gstxml.sgml:
1220         * docs/libs/tmpl/gstcontrol.sgml:
1221         * docs/libs/tmpl/gstdataprotocol.sgml:
1222         * docs/libs/tmpl/gstdparam.sgml:
1223         * docs/libs/tmpl/gstdplinint.sgml:
1224         * docs/libs/tmpl/gstdpman.sgml:
1225         * docs/libs/tmpl/gstdpsmooth.sgml:
1226         * docs/libs/tmpl/gstgetbits.sgml:
1227         * docs/libs/tmpl/gstunitconvert.sgml:
1228         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1229         (gst_push_src_base_init), (gst_push_src_class_init),
1230         (gst_push_src_init), (gst_push_src_create):
1231         * gst/base/gstpushsrc.h:
1232         * gst/elements/gstelements.c:
1233         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1234         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1235         (gst_fake_sink_init), (gst_fake_sink_set_property),
1236         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1237         (gst_fake_sink_event), (gst_fake_sink_preroll),
1238         (gst_fake_sink_render), (gst_fake_sink_change_state):
1239         * gst/elements/gstfakesink.h:
1240         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1241         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1242         (gst_fake_src_base_init), (gst_fake_src_class_init),
1243         (gst_fake_src_init), (gst_fake_src_event_handler),
1244         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1245         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1246         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1247         (gst_fake_src_create_buffer), (gst_fake_src_create),
1248         (gst_fake_src_start), (gst_fake_src_stop):
1249         * gst/elements/gstfakesrc.h:
1250         * gst/elements/gstfilesink.c: (_do_init),
1251         (gst_file_sink_base_init), (gst_file_sink_class_init),
1252         (gst_file_sink_init), (gst_file_sink_dispose),
1253         (gst_file_sink_set_location), (gst_file_sink_set_property),
1254         (gst_file_sink_get_property), (gst_file_sink_open_file),
1255         (gst_file_sink_close_file), (gst_file_sink_query),
1256         (gst_file_sink_event), (gst_file_sink_render),
1257         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1258         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1259         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1260         * gst/elements/gstfilesink.h:
1261         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1262         (gst_file_src_class_init), (gst_file_src_init),
1263         (gst_file_src_finalize), (gst_file_src_set_location),
1264         (gst_file_src_set_property), (gst_file_src_get_property),
1265         (gst_file_src_map_region), (gst_file_src_map_small_region),
1266         (gst_file_src_create_mmap), (gst_file_src_create_read),
1267         (gst_file_src_create), (gst_file_src_is_seekable),
1268         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1269         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1270         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1271         (gst_file_src_uri_handler_init):
1272         * gst/elements/gstfilesrc.h:
1273           more autistic cleanliness in functions/names/defines
1274
1275 2005-07-13  Andy Wingo  <wingo@pobox.com>
1276
1277         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1278         source couldn't negotiate.
1279
1280         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1281         connections again.
1282
1283         * gst/gstutils.h:
1284         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1285         function. I am channeling Hades. Put your boots on suckers!!!
1286
1287 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1288
1289         * testsuite/caps/Makefile.am:
1290         * testsuite/caps/value_compare.c:
1291         * testsuite/caps/value_intersect.c:
1292         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1293           move two testsuite apps over to the check dir
1294
1295 2005-07-12  Wim Taymans  <wim@fluendo.com>
1296
1297         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1298         Added more debug info in the negotiate process.
1299
1300         * gst/gstmessage.h:
1301         Prepare for segment playback.
1302
1303         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1304         Better debugging.
1305
1306         * gst/gstutils.c:
1307         Some more docs.
1308
1309         * tools/gst-launch.c: (main):
1310         NULL pipeline on errors.
1311
1312 2005-07-12  Andy Wingo  <wingo@pobox.com>
1313
1314         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1315         not it comes from a malloc region. Make sure our copy gets freed.
1316
1317 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1318
1319         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1320         * check/gst/gstmessage.c: (GST_START_TEST):
1321         * check/gst/gststructure.c: (GST_START_TEST),
1322         (gst_structure_suite), (main):
1323           more testing
1324         * gst/gstelement.c: (gst_element_message_full):
1325           clean up GError and debug string now that they get copied
1326         * gst/gstmessage.c: (gst_message_new_error),
1327         (gst_message_new_warning), (gst_message_parse_error),
1328         (gst_message_parse_warning):
1329           use GST_TYPE_G_ERROR for structure_new, and take copies of
1330           arguments, so that we don't mess up refcounting
1331
1332 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1333
1334         * check/Makefile.am:
1335           add per-test valgrind targets
1336         * check/gst-libs/gdp.c: (GST_START_TEST),
1337         (gst_data_protocol_suite), (main):
1338           clean up
1339
1340 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1341
1342         * check/Makefile.am:
1343           instate more valgrindable tests
1344         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1345         (GST_START_TEST), (fakesrc_suite):
1346         * check/gst/gstpad.c: (GST_START_TEST):
1347         * check/gst/gststructure.c: (GST_START_TEST):
1348           fix test leaks
1349         * docs/gst/tmpl/gstminiobject.sgml:
1350         * gst/gstpad.c: (gst_pad_finalize):
1351           fix the static mutex leak
1352
1353 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1354
1355         * check/Makefile.am:
1356           add two more tests for valgrinding
1357         * check/gst/gstvalue.c: (GST_START_TEST):
1358           test refcount of deserialized buffer, found a leak
1359         * docs/gst/gstreamer-docs.sgml:
1360         * docs/gst/gstreamer-sections.txt:
1361         * docs/gst/gstreamer.types:
1362         * docs/gst/tmpl/gstminiobject.sgml:
1363           add miniobject to docs
1364         * gst/gstminiobject.c:
1365           add some docs
1366         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1367         (gst_string_unwrap):
1368           fix a hard-to-find invalid write for one of the tests
1369           fix a leak for deserialized buffers
1370
1371 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1372
1373         * docs/pwg/advanced-events.xml:
1374         * docs/pwg/advanced-request.xml:
1375         * docs/pwg/advanced-scheduling.xml:
1376         * docs/pwg/appendix-porting.xml:
1377         * docs/pwg/building-boiler.xml:
1378         * docs/pwg/intro-preface.xml:
1379         * docs/pwg/other-ntoone.xml:
1380           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1381           of example code and explanation for pad activation, loop() and
1382           getrange() functions and a bit more. Remove old comments pointing
1383           to loop-functions.
1384         * examples/pwg/Makefile.am:
1385           Add loop/getrange examples.
1386
1387 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1388
1389         * configure.ac:
1390           check for valgrind binary + some fixes
1391         * check/gst.supp:
1392           valgrind suppressions for the tests
1393         * check/Makefile.am:
1394           add a valgrind: target that valgrinds the unit tests
1395         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1396         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1397         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1398         * check/gst/gstghostpad.c:
1399           added some cleanup
1400         * check/gst/gstdata.c:
1401           removed
1402         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1403         (thread_unref), (gst_mini_object_suite), (main):
1404           added
1405         * gst/gst.c: (gst_deinit):
1406         * gst/gst.h:
1407           add a method to clean up.
1408         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1409         (gst_system_clock_obtain):
1410           allow for disposing the system clock.
1411         * tools/gst-launch.c: (main):
1412           deinit
1413
1414 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1415
1416         * docs/gst/tmpl/gstbasesrc.sgml:
1417         * docs/gst/tmpl/gstfakesrc.sgml:
1418         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1419         (gst_base_src_init), (gst_base_src_set_property),
1420         (gst_base_src_get_property), (gst_base_src_get_range),
1421         (gst_base_src_start):
1422         * gst/base/gstbasesrc.h:
1423           add num-buffers property
1424         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1425         (gst_fakesrc_init), (gst_fakesrc_set_property),
1426         (gst_fakesrc_get_property), (gst_fakesrc_create),
1427         (gst_fakesrc_start):
1428           remove num-buffers property
1429
1430 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1431
1432         * docs/gst/gstreamer-sections.txt:
1433         * docs/gst/tmpl/gstbasesink.sgml:
1434         * docs/gst/tmpl/gstbasesrc.sgml:
1435         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1436         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1437         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1438         (gst_base_sink_set_property), (gst_base_sink_get_property),
1439         (gst_base_sink_handle_object), (gst_base_sink_event),
1440         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1441         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1442         (gst_base_sink_loop), (gst_base_sink_deactivate),
1443         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1444         (gst_base_sink_change_state):
1445         * gst/base/gstbasesink.h:
1446         * gst/base/gstbasesrc.h:
1447         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1448         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1449         (gst_filesink_init):
1450           more macro splitting
1451
1452 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1453
1454         * gst/gstelement.c: (gst_element_get_bus):
1455           add debug
1456         * tools/gst-launch.c: (check_intr), (event_loop):
1457           fix bus leaks
1458
1459 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1460
1461         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1462           fix a caps leak
1463
1464 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1465
1466         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1467         (gst_base_src_finalize):
1468           add finalize method and clean up properly
1469         * gst/gstpipeline.c: (gst_pipeline_dispose):
1470           add debug
1471
1472 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1473
1474         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1475         (gst_bin_suite):
1476           add more things to check
1477         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1478         * gst/gstelement.c:
1479           more debug
1480
1481 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1482
1483         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1484         (GST_START_TEST), (fakesrc_suite):
1485         * check/gst-libs/gdp.c: (GST_START_TEST):
1486         * check/gst/gst.c: (GST_START_TEST):
1487         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1488         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1489         * check/gst/gstbus.c: (GST_START_TEST):
1490         * check/gst/gstcaps.c: (GST_START_TEST):
1491         * check/gst/gstdata.c: (GST_START_TEST):
1492         * check/gst/gstelement.c: (GST_START_TEST):
1493         * check/gst/gstghostpad.c: (GST_START_TEST):
1494         * check/gst/gstiterator.c: (GST_START_TEST):
1495         * check/gst/gstmessage.c: (GST_START_TEST):
1496         * check/gst/gstobject.c: (GST_START_TEST):
1497         * check/gst/gstpad.c: (GST_START_TEST):
1498         * check/gst/gststructure.c: (GST_START_TEST):
1499         * check/gst/gstsystemclock.c: (GST_START_TEST),
1500         (gst_systemclock_suite):
1501         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1502         * check/gst/gstvalue.c: (GST_START_TEST):
1503         * check/pipelines/cleanup.c: (GST_START_TEST):
1504         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1505         * check/states/sinks.c: (GST_START_TEST):
1506         * check/gstcheck.c: (gst_check_init):
1507         * check/gstcheck.h:
1508           add debugging category
1509           use GST_START_TEST now, so we add a debug line
1510
1511 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1512
1513         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1514           add test for state change message on a bin
1515         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1516           add another test
1517         * gst/gstbin.c: (gst_bin_init):
1518         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1519         * gst/gstelement.c: (gst_element_post_message),
1520         (gst_element_set_state):
1521         * gst/gstelementfactory.c: (gst_element_factory_create):
1522         * gst/gstmessage.c: (gst_message_new):
1523         * gst/gstscheduler.c:
1524           various debugging additions and cleanups
1525
1526 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1527
1528         * check/Makefile.am:
1529         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1530         (main):
1531           adding tests for elements
1532         * gst/gstelement.c: (gst_element_dispose):
1533
1534 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1535
1536         * gst/registries/gstlibxmlregistry.c: (load_feature):
1537           plug more leaks.  A simple gst_init() now is leakfree, yay.
1538
1539 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1540
1541         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1542         (gst_xml_registry_load):
1543           plug another memleak
1544
1545 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1546
1547         * configure.ac:
1548           use GST_SET_ERROR_CFLAGS
1549         * docs/faq/cvs.xml:
1550           change to ERROR_CFLAGS
1551
1552 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1553
1554         * configure.ac:
1555           make GST_ERROR_CFLAGS overridable and re-enable Werror
1556         * docs/faq/cvs.xml:
1557           add a note about error CFLAGS
1558         * docs/gst/tmpl/gstfakesrc.sgml:
1559         * gst/elements/gstfakesrc.c:
1560           comment out some unused code
1561         * gst/gst.c: (split_and_iterate):
1562         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1563         (load_feature):
1564           plug some memleaks
1565
1566 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1567
1568         * common/Makefile.am:
1569         * common/gtk-doc.mak:
1570         * docs/gst/Makefile.am:
1571           factor out gtk-doc.mak
1572
1573 2005-07-07  Wim Taymans  <wim@fluendo.com>
1574
1575         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1576         (gst_thread_scheduler_dispose):
1577         Unlock the STREAM_LOCK completely.
1578
1579 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1580
1581         * check/Makefile.am:
1582         * check/elements/.cvsignore:
1583         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1584         (START_TEST), (fakesrc_suite), (main):
1585         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1586         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1587         (gst_fakesrc_create), (gst_fakesrc_start):
1588         * gst/elements/gstfakesrc.h:
1589           adding a first element test
1590
1591 2005-07-07  Andy Wingo  <wingo@pobox.com>
1592
1593         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1594         debug message.
1595
1596 2005-07-07  Wim Taymans  <wim@fluendo.com>
1597
1598         * gst/gstquery.c:
1599         * gst/gstquery.h:
1600         Remove old types
1601
1602 2005-07-07  Wim Taymans  <wim@fluendo.com>
1603
1604         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1605         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1606         Allow subclasses to implement their own negotiation.
1607
1608 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1609
1610         * docs/design/part-gstbin.txt:
1611         * docs/design/part-gstpipeline.txt:
1612           Update design notes to reflect the movement of
1613           responsibility for bus handling from GstPipeline to
1614           GstBin
1615
1616 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1617
1618         * configure.ac:
1619           Remove unnecessary queue2/3/4 examples.
1620
1621 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1622
1623         * examples/Makefile.am:
1624         * examples/helloworld/helloworld.c: (event_loop), (main):
1625         * examples/queue/queue.c: (event_loop), (main):
1626         * examples/queue2/queue2.c: (main):
1627           Update a couple of the examples to work again.
1628
1629         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1630         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1631          Spelling corrections and extra debug.
1632         
1633         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1634         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1635         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1636         * gst/gstbin.h:
1637         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1638         (gst_pipeline_change_state):
1639         * gst/gstpipeline.h:
1640           Move the bus handler for children to the GstBin, and create a
1641           separate bus for receiving messages from children to the one the
1642           bus sends 'upwards' on.
1643
1644 2005-07-06  Wim Taymans  <wim@fluendo.com>
1645
1646         * gst/base/README:
1647         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1648         (gst_base_sink_handle_object), (gst_base_sink_loop),
1649         (gst_base_sink_change_state):
1650         * gst/base/gstbasesink.h:
1651         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1652         (gst_base_src_init), (gst_base_src_setcaps),
1653         (gst_base_src_getcaps), (gst_base_src_loop),
1654         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1655         (gst_base_src_start), (gst_base_src_change_state):
1656         * gst/base/gstbasesrc.h:
1657         Make basesrc negotiate.
1658         Handle the case where preroll fails in basesink.
1659         Update README.
1660
1661 2005-07-06  Wim Taymans  <wim@fluendo.com>
1662
1663         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1664         Implement the fixate function.
1665         Clean up acceptcaps.
1666
1667 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1668
1669         * docs/pwg/building-filterfactory.xml:
1670         * docs/pwg/pwg.xml:
1671           Remove never-written filter-factory chapter; I'll add the various
1672           base classes to part 4 ("other element types") later on.
1673
1674 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1675
1676         * docs/pwg/advanced-negotiation.xml:
1677         * docs/pwg/building-boiler.xml:
1678         * docs/pwg/building-pads.xml:
1679         * docs/pwg/pwg.xml:
1680         * examples/pwg/Makefile.am:
1681           Add a chapter on caps negotiation, simplify the original code
1682           samples a bit w.r.t. caps negotiation, add link to the advanced
1683           section. Add a bunch of examples showing different use cases of
1684           different types of caps negotiation. Upstream renegotiation isn't
1685           fully documented yet since nobody knows how that works.
1686
1687 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1688
1689         * check/gst/gstpad.c:
1690         * check/gstcheck.c:
1691         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1692           if pad has no parent, return NULL as list of internal links
1693
1694 2005-07-05  Andy Wingo  <wingo@pobox.com>
1695
1696         * gst/elements/gstfilesrc.c:
1697         * gst/elements/gstfakesrc.c: 
1698         * gst/base/gstpushsrc.c:
1699         * gst/base/gstbasesrc.h: 
1700         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1701         
1702 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1703
1704         * Makefile.am:
1705           better report generation target (lcov needs a patch)
1706
1707 2005-07-05  Andy Wingo  <wingo@pobox.com>
1708
1709         * gst/elements, testsuite: Null if we got it...
1710
1711 2005-07-05  Wim Taymans  <wim@fluendo.com>
1712
1713         * configure.ac:
1714         * libs/gst/dataprotocol/Makefile.am:
1715         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1716         * libs/gst/dataprotocol/dataprotocol.h:
1717         * pkgconfig/Makefile.am:
1718         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1719         * pkgconfig/gstreamer-dataprotocol.pc.in:
1720         Ported dataprotol to 0.9. 
1721         Added pkgconfig files.
1722
1723 2005-07-05  Andy Wingo  <wingo@pobox.com>
1724
1725         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1726         Default to returning TRUE for the case when tranform_caps returns
1727         a fixed caps, like for identity or volume.
1728
1729         * check/gst/gstbus.c (pound_bus_with_messages): 
1730         * check/gst/gstmessage.c (START_TEST): 
1731         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1732         message API change.
1733
1734         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1735         logic weaks here: always run transform_caps, trying passthrough
1736         operation only if the original caps intersects with the transform.
1737
1738         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1739         source and sink caps.
1740
1741         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1742         Intersect the peer caps with the pad template before going into
1743         transform_caps.
1744         (gst_base_transform_transform_caps): More debugging.
1745
1746         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1747         src argument.
1748
1749 2005-07-04  Edward Hervey  <edward@fluendo.com>
1750
1751         * gst/gstutils.c:
1752         * gst/gstutils.h:
1753         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1754         in bindings.
1755
1756 2005-07-04  Andy Wingo  <wingo@pobox.com>
1757
1758         * check/gst/gstpad.c: Only set explicit caps on pads.
1759
1760 2005-07-01  Andy Wingo  <wingo@pobox.com>
1761
1762         * tests/network-clock.scm: Commentary update.
1763
1764         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1765         Didn't really make sense, not implementable with basetransform,
1766         etc.
1767         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1768         attempt at implementing the sync property, needs an unlock method.
1769
1770         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1771         New func, by default returns the same caps (the identity
1772         transformation).
1773         (gst_base_transform_getcaps): Uses transform_caps to return
1774         something sensible.
1775         (gst_base_transform_setcaps): Complicated logic to get caps on
1776         both pads, even if they are different, and to call set_caps once
1777         for every time both pads get their caps set.
1778         (gst_base_transform_handle_buffer): Give the ref to the transform
1779         function. Allows in-place modification of the buffer.
1780
1781         * gst/base/gstbasetransform.h (transform_caps): New class method.
1782         Given caps on one side, what can I do on the other.
1783         (set_caps): Take two caps, one for each side of the element.
1784
1785         * gst/gstpad.h:
1786         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1787         caps in place. This is safe because we can check the mutability of
1788         the caps, and a good idea because fixate functions are just called
1789         as a matter of last resort. (Not actually implemented.)
1790         (gst_pad_set_caps): If the caps we're setting is actually the same
1791         as the existing pad caps, just update the pointer without calling
1792         setcaps. Assert that caps is either NULL or fixed, as per the
1793         docs.
1794
1795         * gst/gstghostpad.c: Update for fixate changes.
1796
1797 2005-07-02  Andy Wingo  <wingo@pobox.com>
1798
1799         * gst/gstcaps.c:
1800         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1801         two refcounts makes it immutable, which is enough. Doc more.
1802
1803 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1804
1805         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1806           Put the mini_object into GValue as a mini_object,
1807           not a gpointer, since that's how we declared
1808           the signal.
1809
1810 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1811
1812         * examples/pwg/Makefile.am:
1813           Fix buildbot again.
1814
1815 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1816
1817         * docs/pwg/building-testapp.xml:
1818           Add extra check.
1819         * examples/pwg/Makefile.am:
1820           Fix buildbot.
1821
1822 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1823
1824         * configure.ac:
1825         * examples/Makefile.am:
1826         * examples/pwg/Makefile.am:
1827         * examples/pwg/extract.pl:
1828           Enable building the PWG examples.
1829         * docs/pwg/advanced-interfaces.xml:
1830           Add URI interface stub.
1831         * docs/pwg/advanced-types.xml:
1832         * docs/pwg/other-autoplugger.xml:
1833         * docs/pwg/appendix-porting.xml:
1834         * docs/pwg/pwg.xml:
1835           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1836         * docs/pwg/building-boiler.xml:
1837         * docs/pwg/building-chainfn.xml:
1838         * docs/pwg/building-pads.xml:
1839         * docs/pwg/building-props.xml:
1840         * docs/pwg/building-state.xml:
1841         * docs/pwg/building-testapp.xml:
1842           Update the building-*.xml parts for 0.9 changes. All examples
1843           code blocks compile in examples/pwg/*.
1844
1845 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1846
1847         * docs/manual/advanced-autoplugging.xml:
1848         * docs/manual/appendix-checklist.xml:
1849         * docs/manual/appendix-integration.xml:
1850         * docs/manual/highlevel-components.xml:
1851           Fix playbin/decodebin examples, update docs a bit, mention bus
1852           instead of signals in various places, mention kmplayer and
1853           kaffeine since they have a working GStreamer backend in the KDE
1854           section.
1855
1856 2005-06-30  Wim Taymans  <wim@fluendo.com>
1857
1858         * CHANGES-0.9:
1859         * docs/design/draft-ghostpads.txt:
1860         * docs/design/draft-push-pull.txt:
1861         * docs/design/draft-query.txt:
1862         * docs/design/part-TODO.txt:
1863         * docs/design/part-query.txt:
1864         Added CHANGES-0.9 doc, updated status of other docs.
1865         
1866         * gst/gstquery.h:
1867         Remove "hmm" macro
1868
1869 2005-06-30  Wim Taymans  <wim@fluendo.com>
1870
1871         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1872         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1873         (gst_base_sink_change_state):
1874         * gst/base/gstbasesink.h:
1875         Some tweaks, only EOS and a buffer complete a preroll.
1876
1877 2005-06-30  Andy Wingo  <wingo@pobox.com>
1878
1879         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1880         activate_push down to the internal pad as well.
1881
1882 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1883
1884         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1885
1886         * gst/gsttaginterface.c:
1887           Some documentation fixes (#307394 and #307397).
1888
1889 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1890
1891         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1892
1893         * gst/gstvalue.c: (gst_value_intersect_list):
1894           Fix memleak (#309125).
1895
1896 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1897
1898         * docs/manual/advanced-dataaccess.xml:
1899           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1900         * docs/manual/basics-pads.xml:
1901           Add reference for filtered caps to above chapter.
1902
1903 2005-06-30  Wim Taymans  <wim@fluendo.com>
1904
1905         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1906         (gst_bin_change_state):
1907         Probes are gone.
1908         Lame attempt at making the state change function a bit
1909         more readable.
1910
1911 2005-06-30  Wim Taymans  <wim@fluendo.com>
1912
1913         * docs/design/part-clocks.txt:
1914         * docs/design/part-element-sink.txt:
1915         * docs/design/part-events.txt:
1916         * docs/design/part-preroll.txt:
1917         * docs/design/part-states.txt:
1918         Some more tweeks and additions to the docs.
1919
1920 2005-06-30  Wim Taymans  <wim@fluendo.com>
1921
1922         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1923         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1924         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1925         (gst_pad_check_pull_range), (gst_pad_get_range),
1926         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1927         * gst/gstpad.h:
1928         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1929         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1930         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1931         (gst_pad_remove_buffer_probe):
1932         Removed atomic operations, use existing LOCK.
1933         Move exception handling out of main code path.
1934
1935 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1936
1937         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1938         (silly_return_true_function), (gst_pad_class_init),
1939         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1940         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1941         (gst_pad_send_event):
1942           Fix accumulator, add default value by using _emitv() instead
1943           of _emit() for signal emission.
1944
1945 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1946
1947         * docs/manual/advanced-dataaccess.xml:
1948         * examples/manual/Makefile.am:
1949           Add probe example.
1950         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1951           Make work (??).
1952
1953 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1954
1955         * gst/elements/gstfilesink.c: (gst_filesink_render):
1956           Simplify code so that we don't have to handle short
1957           writes and return GST_FLOW_ERROR if an error occured.
1958
1959 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1960
1961         * docs/gst/gstreamer-docs.sgml:
1962           Remove probes more.
1963
1964 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1965
1966         * docs/gst/gstreamer-sections.txt:
1967         * docs/gst/tmpl/gstpad.sgml:
1968         * docs/gst/tmpl/gstprobe.sgml:
1969         * gst/Makefile.am:
1970         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1971         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1972         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1973         (gst_pad_push_event), (gst_pad_send_event):
1974         * gst/gstpad.h:
1975         * gst/gstutils.c: (gst_pad_add_data_probe),
1976         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1977         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1978         (gst_pad_remove_buffer_probe):
1979         * gst/gstutils.h:
1980           Remove old probes, add new g-signal-based probes and some utility
1981           functions.
1982
1983 2005-06-29  Edward Hervey  <edward@fluendo.com>
1984
1985         * gst/gstelementfactory.c:
1986         * gst/gstutils.h:
1987         * gst/gstutils.c:
1988         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1989         the definition to the header file.
1990
1991 2005-06-29  Andy Wingo  <wingo@pobox.com>
1992
1993         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1994         plugins from the source directory.
1995
1996 2005-06-29  Wim Taymans  <wim@fluendo.com>
1997
1998         * docs/gst/tmpl/gstbuffer.sgml:
1999         * docs/gst/tmpl/gstclock.sgml:
2000         Some fixings for blantently wrong text.
2001
2002 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2003
2004         * check/Makefile.am:
2005         * gst/gst.c: (add_path_func), (init_pre):
2006         * gst/gstregistry.c: (gst_registry_add_path):
2007           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
2008           only scan the GST_PLUGIN_PATH locations, and not add
2009           system locations
2010
2011 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2012
2013         * docs/gst/gstreamer-sections.txt:
2014         * docs/gst/tmpl/gstbasesrc.sgml:
2015         * gst/gstelement.c:
2016         * gst/gstelement.h:
2017         * gst/gstevent.c:
2018         * gst/gstutils.c:
2019           doc fixes
2020
2021 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2022
2023         * docs/manual/advanced-autoplugging.xml:
2024           Fix autoplugging example.
2025
2026 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2027
2028         * docs/manual/advanced-autoplugging.xml:
2029         * docs/manual/mime-world.fig:
2030           Try to get autoplugging working, fix type detection. Fix text
2031           in hello-world image.
2032
2033 2005-06-29  Wim Taymans  <wim@fluendo.com>
2034
2035         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2036         (gst_base_sink_change_state):
2037         Small debug line.
2038
2039         * gst/gstclock.h:
2040         map SIGNAL and BROADCAST to the right function.
2041
2042         * gst/gstobject.h:
2043         Remove redundant braces.
2044
2045         * gst/gstpad.c: (gst_pad_set_caps):
2046         Don't call setcaps function when reseting caps to NULL.
2047
2048         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2049         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
2050         (gst_system_clock_id_unschedule):
2051         Use BROADCAST as this is what we do.
2052
2053 2005-06-29  Wim Taymans  <wim@fluendo.com>
2054
2055         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2056         We are actually prerolling before commiting the state
2057         change. 
2058
2059 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2060
2061         * docs/manual/advanced-clocks.xml:
2062         * docs/manual/advanced-interfaces.xml:
2063         * docs/manual/advanced-metadata.xml:
2064         * docs/manual/advanced-position.xml:
2065         * docs/manual/advanced-schedulers.xml:
2066         * docs/manual/advanced-threads.xml:
2067         * docs/manual/appendix-porting.xml:
2068         * docs/manual/basics-bins.xml:
2069         * docs/manual/basics-bus.xml:
2070         * docs/manual/basics-elements.xml:
2071         * docs/manual/basics-helloworld.xml:
2072         * docs/manual/basics-pads.xml:
2073         * docs/manual/highlevel-components.xml:
2074         * docs/manual/manual.xml:
2075         * docs/manual/thread.fig:
2076           Update (until threads/scheduling) Application Development Manual;
2077           remove GstThread, add GstBus, add simple porting checklist, add
2078           documentation for tag writing, clocks, make all examples until this
2079           part compile and run.
2080         * examples/manual/Makefile.am:
2081           Update from changes to Application Development Manual; add bus
2082           example, remove thread example.
2083
2084 2005-06-28  Wim Taymans  <wim@fluendo.com>
2085
2086         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2087         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2088         (gst_bus_source_dispatch):
2089         Add debugging messages.
2090         Make internal methods static.
2091         Handle the case where the bus is flushed in the handler.
2092         
2093         * gst/gstelement.c: (gst_element_get_bus):
2094         Fix refcount in _get_bus();
2095
2096         * gst/gstpipeline.c: (gst_pipeline_change_state),
2097         (gst_pipeline_get_clock_func):
2098         Clock refcounting fixes.
2099         Handle the case where preroll timed out more gracefully.
2100         
2101         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2102         Clean up the internal thread in dispose. This is needed
2103         for subclasses that actually get disposed.
2104         
2105         * gst/schedulers/threadscheduler.c:
2106         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2107         (gst_thread_scheduler_dispose):
2108         Free thread pool in dispose.
2109
2110 2005-06-28  Andy Wingo  <wingo@pobox.com>
2111
2112         * tests/network-clock-utils.scm (debug, print-event): New utils.
2113
2114         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2115         (*packet-loss*): Unified loss probability.
2116         (network-time): Report out-of-band events.
2117
2118         * tests/plot-data: Add support for out-of-band events. Hack it
2119         into this script instead of passing it down the pipe; should fix
2120         this later.
2121
2122 2005-06-28  Wim Taymans  <wim@fluendo.com>
2123
2124         * docs/gst/gstreamer.types:
2125         * docs/gst/tmpl/gstbasesrc.sgml:
2126         * docs/gst/tmpl/gstpad.sgml:
2127         Docs fixes.
2128
2129 2005-06-28  Wim Taymans  <wim@fluendo.com>
2130
2131         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2132         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2133         (gst_proxy_pad_do_fixatecaps):
2134         Correctly proxy the check_pull_range function.
2135
2136 2005-06-28  Andy Wingo  <wingo@pobox.com>
2137
2138         * tests/network-clock.scm: Removed need for slib.
2139         
2140 2005-06-28  Wim Taymans  <wim@fluendo.com>
2141
2142         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2143         (gst_basesink_preroll_queue_flush):
2144         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2145         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2146         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2147         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2148         (gst_proxy_pad_set_property):
2149         * gst/gstpad.c:
2150         * gst/gstpad.h:
2151         * gst/gstqueue.c: (gst_queue_init):
2152         The deprecated pad loop function is removed now.
2153
2154 2005-06-28  Andy Wingo  <wingo@pobox.com>
2155
2156         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2157         New parameters, simulate network packet loss.
2158
2159         * tests/network-clock-utils.scm: Initialize the RNG.
2160
2161 2005-06-28  Wim Taymans  <wim@fluendo.com>
2162
2163         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2164         (gst_basesink_event), (gst_basesink_deactivate):
2165         Flushing the preroll queue always needs to unlock the waiters.
2166
2167 2005-06-28  Edward Hervey  <edward@fluendo.com>
2168
2169         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2170         Wheen a seek was successful on a pipeline, set the stream_time to the
2171         seek offset in order to have a synchronized stream_time.
2172
2173 2005-06-28  Wim Taymans  <wim@fluendo.com>
2174
2175         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2176         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2177         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2178         (gst_proxy_pad_do_fixatecaps):
2179         Call wrapper function instead of just calling the function
2180         pointers. This takes care of any locking and whatmore.
2181
2182 2005-06-28  Wim Taymans  <wim@fluendo.com>
2183
2184         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2185         (gst_pad_pull_range):
2186         * gst/gstpad.h:
2187         CONNECTED -> LINKED.
2188
2189 2005-06-28  Andy Wingo  <wingo@pobox.com>
2190
2191         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2192         source-munging commit!!!
2193
2194         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2195         (gst_object_sink): Take gpointer arguments, not GstObject --
2196         avoids casts. Like GLib.
2197
2198         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2199         activate.
2200
2201 2005-06-27  Andy Wingo  <wingo@pobox.com>
2202
2203         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2204         remaining buffer.
2205
2206         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2207         returns a sorted copy of the trace list.
2208         (gst_alloc_trace_print_live): New API, only prints traces with
2209         live objects. Sort the list.
2210         (gst_alloc_trace_print_all): Sort the list.
2211         (gst_alloc_trace_print): Align columns.
2212
2213         * gst/elements/gstttypefindelement.c:
2214         * gst/elements/gsttee.c:
2215         * gst/base/gstbasesrc.c:
2216         * gst/base/gstbasesink.c:
2217         * gst/base/gstbasetransform.c:
2218         * gst/gstqueue.c: Adapt for pad activation changes.
2219
2220         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2221         sched.
2222         (gst_pipeline_dispose): Drop ref on sched.
2223
2224         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2225         (gst_pad_activate_default): Push mode by default.
2226         (pre_activate_switch, post_activate_switch): New stubs, things to
2227         do before and after switching activation modes on pads.
2228         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2229         the pad's activate function to choose which mode to activate.
2230         Shortcut on deactivation and call the right function directly.
2231         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2232         mode.
2233         (gst_pad_activate_push): New API, same for push mode.
2234         (gst_pad_set_activate_function) 
2235         (gst_pad_set_activatepull_function) 
2236         (gst_pad_set_activatepush_function): Setters for new API.
2237
2238         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2239         Trace all miniobjects.
2240         (gst_mini_object_make_writable): Unref the arg if we copy, like
2241         gst_caps_make_writable.
2242
2243         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2244
2245         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2246         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2247         Adapt for new pad API.
2248
2249         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2250
2251         * gst/gstelement.h:
2252         * gst/gstelement.c (gst_element_iterate_src_pads) 
2253         (gst_element_iterate_sink_pads): New API functions.
2254         
2255         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2256         should fold into gstiterator.c in some form.
2257         (gst_element_pads_activate): Simplified via use of fold and
2258         delegation of decisions to gstpad->activate.
2259
2260         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2261         help in debugging.
2262
2263         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2264         class once in init, like gstmessage. Didn't run into this issue
2265         but it seems correct. Don't initialize a trace, gstminiobject does
2266         that.
2267
2268         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2269         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2270         to the bus.
2271         (assert_live_count): New util function, uses alloc traces to check
2272         cleanup.
2273
2274         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2275         To be modified when unlink drops the internal pad.
2276
2277 2005-06-27  Wim Taymans  <wim@fluendo.com>
2278
2279         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2280         (gst_bin_change_state):
2281         Cleanup the get_state() function a little, make sure it
2282         iterates the same set of elements.
2283         Added stub iterate_state_order().
2284
2285 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2286
2287         * docs/gst/gstreamer-docs.sgml:
2288         * docs/gst/gstreamer-sections.txt:
2289         * docs/gst/gstreamer.types:
2290         * docs/gst/tmpl/gstbasesink.sgml:
2291         * docs/gst/tmpl/gstbasesrc.sgml:
2292         * docs/gst/tmpl/gstbasetransform.sgml:
2293         * docs/gst/tmpl/gstelement.sgml:
2294         * docs/gst/tmpl/gstiterator.sgml:
2295         * gst/base/gstbasesrc.c:
2296         * gst/base/gstbasesrc.h:
2297         * gst/base/gstbasetransform.h:
2298         * gst/gstelement.c:
2299         * gst/gstiterator.h:
2300           adding basetransform and iterator docs
2301
2302 2005-06-27  Andy Wingo  <wingo@pobox.com>
2303
2304         * docs/design/part-activation.txt: Notes on how activation should
2305         work -- not quite implemented yet.
2306
2307 2005-06-25  Wim Taymans  <wim@fluendo.com>
2308
2309         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2310         At least get the chain function correct, needs more
2311         fixing.
2312
2313 2005-06-25  Wim Taymans  <wim@fluendo.com>
2314
2315         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2316         (gst_basesink_handle_object), (gst_basesink_event),
2317         (gst_basesink_do_sync), (gst_basesink_handle_event),
2318         (gst_basesink_change_state):
2319         * gst/gsttask.h:
2320         Right, two problems here: ghostpads don't take locks and
2321         glib _rec_mutex_lock_full() with depth==0 still locks.
2322         Catch illegal locking and g_warn them.
2323
2324 2005-06-25  Wim Taymans  <wim@fluendo.com>
2325
2326         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2327         Have to check for completion now...
2328
2329 2005-06-25  Wim Taymans  <wim@fluendo.com>
2330
2331         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2332         (gst_basesink_handle_object), (gst_basesink_event),
2333         (gst_basesink_do_sync), (gst_basesink_handle_event),
2334         (gst_basesink_change_state):
2335         * gst/gstpad.h:
2336         Unlock STREAM_LOCK whatever the recursion was.
2337
2338 2005-06-25  Wim Taymans  <wim@fluendo.com>
2339
2340         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2341         (gst_basesink_preroll_queue_empty),
2342         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2343         (gst_basesink_event), (gst_basesink_do_sync),
2344         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2345         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2346         (gst_basesink_change_state):
2347         Reworked the base sink, handle event and buffer serialisation
2348         correctly and removed possible deadlock.
2349         Handle EOS correctly.
2350
2351 2005-06-25  Wim Taymans  <wim@fluendo.com>
2352
2353         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2354         (gst_pipeline_change_state):
2355         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2356         Allow elements to post EOS in the state change function.
2357         Fix up -launch, make it exit the poll loop when the
2358         pipeline actually changed state.
2359         Fix up warning parsing in -launch.
2360
2361 2005-06-25  Wim Taymans  <wim@fluendo.com>
2362
2363         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2364         (gst_tee_sink_activate):
2365         Core takes STREAM_LOCK for us now.
2366
2367 2005-06-25  Wim Taymans  <wim@fluendo.com>
2368
2369         * gst/gstelement.c: (gst_element_get_state_func),
2370         (gst_element_set_state):
2371         * gst/gstelement.h:
2372         * gst/gstmessage.c: (gst_message_parse_error),
2373         (gst_message_parse_warning):
2374         Keep track of current target state while performing a state
2375         change so that subclasses can do something interesting.
2376         Fix parsing of warning/error messages when GError is NULL.
2377
2378 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2379
2380         * docs/gst/Makefile.am:
2381         * docs/gst/gstreamer-docs.sgml:
2382         * docs/gst/gstreamer-sections.txt:
2383         * docs/gst/gstreamer.types:
2384         * docs/gst/tmpl/gstbasesink.sgml:
2385         * docs/gst/tmpl/gstbasesrc.sgml:
2386         * docs/gst/tmpl/gstbin.sgml:
2387         * docs/gst/tmpl/gstcompat.sgml:
2388         * docs/gst/tmpl/gstfakesink.sgml:
2389         * docs/gst/tmpl/gstfakesrc.sgml:
2390         * docs/gst/tmpl/gstfilesink.sgml:
2391         * docs/gst/tmpl/gstfilesrc.sgml:
2392         * docs/gst/tmpl/gstindex.sgml:
2393         * docs/manual/appendix-quotes.xml:
2394         * gst/base/gstbasesrc.h:
2395         * gst/elements/gstfakesrc.h:
2396         * gst/gstmessage.h:
2397           start pulling in base classes and elements in our docs
2398
2399 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2400
2401         * docs/gst/Makefile.am:
2402         * docs/libs/Makefile.am:
2403           fixed make distcheck with gtk-doc 1.3
2404
2405 2005-06-23  Wim Taymans  <wim@fluendo.com>
2406
2407         * gst/gstelement.c: (gst_element_get_state_func),
2408         (gst_element_set_state), (gst_element_change_state):
2409         When the state did not change, also report NO_PREROLL
2410         when it matters.
2411
2412 2005-06-23  Wim Taymans  <wim@fluendo.com>
2413
2414         * gst/gstpad.c: (gst_pad_event_default):
2415         * gst/gstqueue.c: (gst_queue_loop):
2416         No unsafe task pausing please.
2417
2418 2005-06-23  Wim Taymans  <wim@fluendo.com>
2419
2420         * gst/schedulers/threadscheduler.c:
2421         (gst_thread_scheduler_task_start),
2422         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2423         Ref the task before pushing it on the threadpool. This
2424         makes sure that we have a ref when the threadfunction is
2425         actually called.
2426
2427 2005-06-23  Andy Wingo  <wingo@pobox.com>
2428
2429         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2430         offset is greater than the file's size.
2431
2432         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2433         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2434         * gst/gstobject.c (gst_object_class_init): Make the class lock
2435         recursive. Wim won't let me drop deep_notify. Decodebin works
2436         again, whoopdy doo.
2437
2438         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2439         internal pad, and hacks accordingly. Doesn't do it on the target
2440         pad because we change its caps. Probably catches all cases of
2441         interest tho.
2442         (gst_ghost_pad_set_property): Connect to notify::caps as
2443         appropritate.
2444
2445         * tests/network-clock.scm (plot-simulation): Pipe data to the
2446         elite python skript.
2447
2448         * tests/network-clock-utils.scm (define-parameter): New macro,
2449         defines a parameter that can be set via the command line.
2450         (set-parameter!, parse-parameter-arguments): Command line args
2451         parser.
2452
2453         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2454         stdin.
2455
2456 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2457
2458         * gst/elements/gsttypefindelement.c:
2459         (gst_type_find_element_handle_event):
2460           Don't restart typefinding on a discont.
2461         * gst/gstelement.c: (gst_element_set_state):
2462           Debug spelling fix.
2463         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2464           Allow changing mode of an active pad.
2465           Debug output fixes.
2466         * gst/registries/gstlibxmlregistry.c: (load_feature):
2467           Don't cast a static pad template to a normal pad template.
2468
2469 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2470
2471         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2472         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2473           remove gst_strtoll completely, since it didn't actually do
2474           anything more than what g_ascii_strtoull already does.
2475           check for range errors when deserializing
2476           do a cast for the unsigned cases; but further fixing needs
2477           a decision on what the interpretation of "(int)" and
2478           deserialization should be for values that fall outside the
2479           type's boundaries (ie, refuse, or interpret as casting)
2480
2481 2005-06-23  Wim Taymans  <wim@fluendo.com>
2482
2483         * check/Makefile.am:
2484         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2485         * docs/design/part-live-source.txt:
2486         * docs/design/part-states.txt:
2487         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2488         (gst_basesrc_set_live), (gst_basesrc_is_live),
2489         (gst_basesrc_get_range), (gst_basesrc_activate),
2490         (gst_basesrc_change_state):
2491         * gst/base/gstbasesrc.h:
2492         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2493         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2494         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2495         * gst/gstelement.c: (gst_element_get_state_func),
2496         (gst_element_set_state):
2497         * gst/gstelement.h:
2498         * gst/gsttypes.h:
2499         * tools/gst-launch.c: (event_loop), (main):
2500         Added support for live sources and other elements that
2501         cannot do preroll.
2502         Updated design docs, added live-source design doc.
2503         Implemented live source functionality in basesrc
2504         Fix error condition in _bin_get_state()
2505         Implement live source handling in -launch.
2506         Added check for live sources.
2507         Fixed case in GstBin where elements were changed state
2508         multiple times.
2509
2510
2511 2005-06-23  Andy Wingo  <wingo@pobox.com>
2512
2513         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2514         borken refcounting.
2515
2516         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2517         gst_caps_replace takes care of this for us.
2518
2519         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2520         gst_pad_set_caps on the target, not just its setcaps() function.
2521
2522         * tests/network-clock.scm: 
2523         * tests/network-clock-utils.scm: A network clock simulator.
2524         Something of an algorithmic testbed before doing something in C.
2525
2526 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2527
2528         * check/Makefile.am:
2529         * check/gst/capslist.h:
2530           copy over from 0.8, and add two with bitmasks specified with
2531           (int) 0xFF...
2532         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2533           add test to parse everything from capslist.h
2534         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2535         (main):
2536           add test for structure deserialization
2537         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2538           add tests for deserialization of strings to int types
2539         * gst/gststructure.c: (gst_structure_nth_field_name):
2540         * gst/gststructure.h:
2541           add a way to get the name of a field referenced by index
2542         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2543           instead of checking if the resulting long long lies between
2544           min and max, we check if the long long would fit into
2545           a number of bytes for the final type.
2546           This fixes cases where a string represents 2^32 - 1, which
2547           when cast to int would be the (valid) -1, but is bigger than
2548           G_MAXINT
2549
2550 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2551
2552         * gst/parse/grammar.y:
2553           add a log line for type deserialization
2554
2555 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2556
2557         * check/gst/gstvalue.c: (START_TEST):
2558         * gst/gstvalue.c: (gst_value_deserialize):
2559           return long long, not int, so gint64 deserialization actually
2560           works.  Is there any flag that makes the compiler check this ?
2561           Fixes #308559
2562
2563 2005-06-22  Wim Taymans  <wim@fluendo.com>
2564
2565         * gst/gstbuffer.h:
2566         Added convenience macros for setting buffers in GValue.
2567
2568 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2569
2570         * check/gst/.cvsignore:
2571         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2572           add a test deserializing int64, and comment part out because
2573           it fails, yay !
2574
2575 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2576
2577         * check/Makefile.am:
2578         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2579         * testsuite/Makefile.am:
2580         * testsuite/caps/Makefile.am:
2581         * testsuite/caps/value_serialize.c:
2582         * testsuite/test_gst_init.c:
2583           move a value_serialize test over
2584
2585 2005-06-20  Wim Taymans  <wim@fluendo.com>
2586
2587         * gst/gstpad.c:
2588         Small doc updates.
2589         
2590         * gst/gstvalue.c: (gst_value_compare_buffer),
2591         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2592         (gst_value_compare_flags), (gst_value_serialize_flags),
2593         (gst_value_deserialize_flags), (_gst_value_initialize):
2594         Fix serialisation of buffers, they are not boxed types anymore
2595
2596 2005-06-20  Wim Taymans  <wim@fluendo.com>
2597
2598         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2599         Testcase to show error in buffer-on-caps serialisation.
2600
2601 2005-06-20  Andy Wingo  <wingo@pobox.com>
2602
2603         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2604         will be adding to later.
2605
2606         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2607         if its socks fill with rocks.
2608         (gst_system_clock_obtain): Set the name on object construction.
2609         Avoid double-checked locking.
2610
2611 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2612
2613         * gst/gsturi.c: (gst_element_make_from_uri):
2614           Fix potential endless loop.
2615
2616 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2617
2618         * check/Makefile.am:
2619           add gsttag
2620         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2621         (main):
2622           move over from testsuite dir and clean up
2623         * configure.ac:
2624         * gst/gsttag.c:
2625         * testsuite/Makefile.am:
2626         * testsuite/tags/.cvsignore:
2627         * testsuite/tags/Makefile.am:
2628         * testsuite/tags/merge.c:
2629           remove testsuite/tags
2630
2631 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2632
2633         * docs/gst/gstreamer-sections.txt:
2634         * docs/gst/tmpl/gstenumtypes.sgml:
2635         * win32/gstenumtypes.c:
2636           clean up documentation build a little
2637
2638 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2639
2640         * check/gstcheck.h:
2641           add macros for checking refcounts on objects and caps
2642         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2643           add some more unit tests
2644         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2645         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2646           fix leaked refcounts (I hope :)) so unittest works
2647         * gst/gstpad.h:
2648           whitespace removal
2649
2650 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2651
2652         * configure.ac: back to HEAD
2653
2654 === release 0.9.1 ===
2655
2656 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2657
2658         * NEWS:
2659         * RELEASE:
2660           updated
2661
2662 2005-06-17  Andy Wingo  <wingo@pobox.com>
2663
2664         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2665         assert; it's always possible that the pad gets deactivated in
2666         between the checks in gstpad.c and the implementation. Rely on
2667         finish_preroll() to return a FLUSHING or similar instead of on the
2668         assert.
2669         
2670         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2671         clock and post an EOS message if we come out of finish_preroll in
2672         the playing state.
2673
2674 2005-06-16  David Schleef  <ds@schleef.org>
2675
2676         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2677         (gst_capsfilter_set_property): Allow NULL as possible value
2678         for filter_caps property, indicating GST_CAPS_ANY.
2679
2680 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2681
2682         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2683           fix debug output
2684         * gst/schedulers/Makefile.am:
2685           use libgst prefix
2686         * gstreamer.spec.in:
2687           fix spec for it
2688
2689 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2690
2691         * gstreamer.spec.in:
2692           clean up
2693
2694 2005-06-08  Andy Wingo  <wingo@pobox.com>
2695
2696         * gst/gstutils.c: RPAD fixes all around.
2697         (gst_element_link_pads): Refcounting fixes.
2698
2699         * tools/gst-inspect.c:
2700         * tools/gst-xmlinspect.c:
2701         * parse/grammar.y:
2702         * gst/base/gsttypefindhelper.c:
2703         * gst/base/gstbasesink.c:
2704         * gst/gstqueue.c: RPAD fixes.
2705
2706         * gst/gstghostpad.h:
2707         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2708         pads. The tricky thing is they provide both source and sink
2709         interfaces, since they proxy the internal pad for the external
2710         pad, and vice versa. Implement with lower-level ProxyPad objects,
2711         with the interior proxy pad as a child of the exterior ghost pad.
2712         Should write a doc on this.
2713         
2714         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2715         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2716         gst_object API.
2717         
2718         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2719         pads are real pads. No ghost pads in this file. Not documenting
2720         the myriad s/RPAD/PAD/ and REALIZE fixes.
2721         (gst_pad_class_init): Add properties for "direction" and
2722         "template". Both are construct-only, so they can't change during
2723         the life of the pad. Fixes properly deriving from GstPad.
2724         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2725         derived objects, just set properties when creating the objects via
2726         g_object_new.
2727         (gst_pad_get_parent): Implement as a function, return NULL if the
2728         parent is not an element.
2729         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2730         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2731         
2732         * gst/gstobject.c (gst_object_class_init): Make name a construct
2733         property. Don't set it in the object init.
2734
2735         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2736         with UNKNOWN direction.
2737         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2738         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2739         (gst_element_remove_pad): Remove ghost-pad special cases.
2740         (gst_element_pads_activate): Remove rpad cruft.
2741
2742         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2743         catch the pad's-parent-not-an-element case.
2744
2745         * gst/gst.h: Include gstghostpad.h.
2746
2747         * gst/gst.c (init_post): No more real, ghost pads.
2748
2749         * gst/Makefile.am: Add gstghostpad.[ch].
2750
2751         * check/Makefile.am:
2752         * check/gst/gstbin.c:
2753         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2754         into a bin creates ghost pads, and that the refcounts are right.
2755         Partly moved from gstbin.c.
2756
2757 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2758
2759         * check/gst-libs/.cvsignore:
2760         * check/gst/.cvsignore:
2761         * check/pipelines/.cvsignore:
2762           ignore more
2763         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2764         (START_TEST), (cleanup_suite), (main):
2765           add some tests related to cleanup after running pipelines
2766
2767 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2768
2769         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2770           add a testsuite for GstBuffer
2771
2772 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2773
2774         * gst/gstminiobject.h:
2775           add defines for accessing the refcount
2776
2777 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2778
2779         * Makefile.am: added support for html unit test coverage reports
2780
2781 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2782
2783         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2784           Free existing caps if the capsfilter changes. Add a FIXME about
2785           setting those caps on the pads.
2786
2787         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2788           Before adding a ghost pad to a parent bin, check that there isn't
2789           already one for the element on the bin. Prevents infinite recursion
2790           when using decodebin in parse pipelines. Andy says he'll rewrite the
2791           way this works anyway, so ignore the hack.
2792
2793 2005-06-02  Andy Wingo  <wingo@pobox.com>
2794
2795         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2796         file size, pass it on to the type find helper.
2797
2798         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2799         segment_start and segment_end properly according to the seek
2800         method. Segment_end is still a bit flaky because offset can be
2801         negative for CUR and END cases, but it takes -1 as an "unset"
2802         value.
2803
2804 2005-06-02  Wim Taymans  <wim@fluendo.com>
2805
2806         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2807         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2808         (gst_basesink_activate):
2809         * gst/base/gstbasesink.h:
2810         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2811         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2812         (gst_pad_query), (gst_pad_start_task):
2813         * gst/gstpad.h:
2814         * gst/gstqueue.c: (gst_queue_bufferalloc),
2815         (gst_queue_handle_sink_event), (gst_queue_chain):
2816         Bufferalloc: return GstFlowReturn to more accuratly report
2817         why allocation failed.
2818
2819 2005-06-02  Wim Taymans  <wim@fluendo.com>
2820
2821         * gst/gstpipeline.c: (gst_pipeline_send_event):
2822         Take snapshot of state without blocking.
2823
2824 2005-06-02  Wim Taymans  <wim@fluendo.com>
2825
2826         * docs/design/part-TODO.txt:
2827         * docs/design/part-caps.txt:
2828         * docs/design/part-clocks.txt:
2829         * docs/design/part-negotiation.txt:
2830         * docs/design/part-preroll.txt:
2831         Small doc updates 
2832
2833 2005-05-30  Wim Taymans  <wim@fluendo.com>
2834
2835         * gst/elements/gstidentity.c: (gst_identity_event),
2836         (gst_identity_transform), (gst_identity_get_property):
2837         Protect last_message property as it is accessed from
2838         multiple threads.
2839
2840 2005-05-30  Wim Taymans  <wim@fluendo.com>
2841
2842         * gst/gstelement.c: (gst_element_init),
2843         (gst_element_pads_activate), (gst_element_change_state):
2844         Slicker pad activation code.
2845
2846 2005-05-30  Wim Taymans  <wim@fluendo.com>
2847
2848         * gst/Makefile.am:
2849         * gst/gstelement.h:
2850         * gst/gstelementfactory.h:
2851         * gst/gsttypes.h:
2852         Move elementfactory methods to separate .h file.
2853
2854 2005-05-30  Wim Taymans  <wim@fluendo.com>
2855
2856         * docs/design/part-overview.txt:
2857         * gst/gstsystemclock.h:
2858         Small typo fixes, doc updates.
2859
2860 2005-05-30  Wim Taymans  <wim@fluendo.com>
2861
2862         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2863         (init_popt_callback):
2864         Remove cpu-opt flag.
2865
2866 2005-05-30  Wim Taymans  <wim@fluendo.com>
2867
2868         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2869         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2870         * gst/gstbuffer.h:
2871         Avoid typechecking in places where not needed.
2872         Added accessor for malloc_data.
2873
2874 2005-05-30  Wim Taymans  <wim@fluendo.com>
2875
2876         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2877         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2878         (gst_pad_configure_sink), (gst_pad_configure_src),
2879         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2880         (gst_pad_start_task):
2881         Propagate errors from _set_caps() in configure_src/sink
2882         functions instead of returning TRUE.
2883         FLUSH events can travel up and downstream
2884
2885
2886 2005-05-30  Wim Taymans  <wim@fluendo.com>
2887
2888         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2889         (gst_basesink_activate):
2890         Handle EOS in preroll.
2891
2892 2005-05-30  Wim Taymans  <wim@fluendo.com>
2893
2894         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2895         (gst_queue_loop), (gst_queue_handle_src_event):
2896         Remove old pieces of code
2897         Flushing the queue in an upstream event is a very bad idea.
2898
2899 2005-05-26  Andy Wingo  <wingo@pobox.com>
2900
2901         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2902         gst_value_set_mini_object so as to add a ref on the object (which
2903         will be removed when the value is unset).
2904
2905         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2906         arg type in ::handoff.
2907
2908         * gst/gstelement.c (gst_element_change_state): Also deactivate
2909         pads in READY->NULL, just in case the element didn't make it to
2910         PAUSED. Wingo tested, Wim approved.
2911
2912 2005-05-26  Wim Taymans  <wim@fluendo.com>
2913
2914         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2915         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2916         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2917         A flushing pad cannot be used to alloc_buffer from.
2918
2919 2005-05-26  Wim Taymans  <wim@fluendo.com>
2920
2921         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2922         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2923         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2924         (gst_bus_create_watch), (gst_bus_add_watch_full):
2925         * gst/gstbus.h:
2926         Implement a real GSource and use g_main_context_wakeup() to
2927         signal new messages instead of the socketpair.
2928
2929 2005-05-25  Wim Taymans  <wim@fluendo.com>
2930
2931         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2932         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2933         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2934         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2935         (gst_pad_send_event), (gst_pad_start_task):
2936         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2937         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2938         (gst_queue_sink_activate), (gst_queue_src_activate),
2939         (gst_queue_change_state):
2940         * gst/gstqueue.h:
2941         Fix state changes for non sinks. We now change sinks, then elements
2942         with unconnected srcpads, then the rest.
2943         More efficient queue unlocking in flush and state changes.
2944         Set the pad activate mode even if it does not have an activate
2945         function.
2946
2947 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2948
2949         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2950           Don't go in pull mode for non-seekable sources.
2951         * gst/elements/gsttypefindelement.h:
2952         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2953         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2954         (free_entry), (stop_typefinding),
2955         (gst_type_find_element_handle_event), (find_peek),
2956         (gst_type_find_element_chain), (do_pull_typefind),
2957         (gst_type_find_element_change_state):
2958           Allow typefinding (w/o seeking) in push-mode, simplified version
2959           of what was in 0.8.
2960         * gst/gstutils.c: (gst_buffer_join):
2961         * gst/gstutils.h:
2962           gst_buffer_join() from 0.8.
2963
2964 2005-05-25  Wim Taymans  <wim@fluendo.com>
2965
2966         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2967         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2968         (gst_pad_send_event), (gst_pad_start_task):
2969         Disable attempt at mode switching until it is figured out.
2970
2971 2005-05-25  Wim Taymans  <wim@fluendo.com>
2972
2973         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2974         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2975         (gst_basesink_finish_preroll), (gst_basesink_chain),
2976         (gst_basesink_loop), (gst_basesink_activate),
2977         (gst_basesink_change_state):
2978         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2979         (gst_basesrc_get_range), (gst_basesrc_loop),
2980         (gst_basesrc_activate):
2981         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2982         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2983         (gst_real_pad_init), (gst_real_pad_set_property),
2984         (gst_real_pad_get_property), (gst_pad_set_active),
2985         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2986         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2987         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2988         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2989         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2990         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2991         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2992         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2993         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2994         (gst_pad_stop_task):
2995         * gst/gstpad.h:
2996         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2997         (gst_queue_loop), (gst_queue_src_activate):
2998         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2999         (gst_task_get_state):
3000         * gst/gsttask.h:
3001         * gst/schedulers/threadscheduler.c:
3002         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
3003         Implement gst_pad_pause/start/stop_task(), take STREAM lock
3004         in task function.
3005         Remove ACTIVE pad flag, use FLUSHING everywhere
3006         Added _pad_chain(), _pad_get_range() to call chain/getrange 
3007         functions.
3008         Add locks around IS_FLUSHING when reading.
3009         Take STREAM lock in chain(), get_range() functions so plugins
3010         don't need to take it anymore.
3011         
3012
3013
3014 2005-05-25  Wim Taymans  <wim@fluendo.com>
3015
3016         * tools/gst-launch.c: (event_loop):
3017         Unref message after using its contents instead of
3018         before.
3019
3020 2005-05-24  Wim Taymans  <wim@fluendo.com>
3021
3022         * docs/design/draft-ghostpads.txt:
3023         * docs/design/draft-push-pull.txt:
3024         * docs/design/draft-query.txt:
3025         * docs/design/part-overview.txt:
3026         Docs updates, added general overview doc.
3027
3028 2005-05-21  David Schleef  <ds@schleef.org>
3029
3030         * docs/gst/tmpl/old/GstBin.sgml:
3031         * docs/gst/tmpl/old/GstBuffer.sgml:
3032         * docs/gst/tmpl/old/GstCaps.sgml:
3033         * docs/gst/tmpl/old/GstClock.sgml:
3034         * docs/gst/tmpl/old/GstCompat.sgml:
3035         * docs/gst/tmpl/old/GstData.sgml:
3036         * docs/gst/tmpl/old/GstElement.sgml:
3037         * docs/gst/tmpl/old/GstEvent.sgml:
3038         * docs/gst/tmpl/old/GstIndex.sgml:
3039         * docs/gst/tmpl/old/GstStructure.sgml:
3040         * docs/gst/tmpl/old/GstTag.sgml:
3041         * docs/gst/tmpl/old/cothreads.sgml:
3042         * docs/gst/tmpl/old/cothreads_compat.sgml:
3043         * docs/gst/tmpl/old/gettext.sgml:
3044         * docs/gst/tmpl/old/gobject2gtk.sgml:
3045         * docs/gst/tmpl/old/grammar.tab.sgml:
3046         * docs/gst/tmpl/old/gst-i18n-app.sgml:
3047         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
3048         * docs/gst/tmpl/old/gst_private.sgml:
3049         * docs/gst/tmpl/old/gstaggregator.sgml:
3050         * docs/gst/tmpl/old/gstarch.sgml:
3051         * docs/gst/tmpl/old/gstatomic_impl.sgml:
3052         * docs/gst/tmpl/old/gstbufferstore.sgml:
3053         * docs/gst/tmpl/old/gstdata_private.sgml:
3054         * docs/gst/tmpl/old/gstdisksink.sgml:
3055         * docs/gst/tmpl/old/gstdisksrc.sgml:
3056         * docs/gst/tmpl/old/gstelementfactory.sgml:
3057         * docs/gst/tmpl/old/gstextratypes.sgml:
3058         * docs/gst/tmpl/old/gstfakesink.sgml:
3059         * docs/gst/tmpl/old/gstfakesrc.sgml:
3060         * docs/gst/tmpl/old/gstfdsink.sgml:
3061         * docs/gst/tmpl/old/gstfdsrc.sgml:
3062         * docs/gst/tmpl/old/gstfilesink.sgml:
3063         * docs/gst/tmpl/old/gstfilesrc.sgml:
3064         * docs/gst/tmpl/old/gsthttpsrc.sgml:
3065         * docs/gst/tmpl/old/gstidentity.sgml:
3066         * docs/gst/tmpl/old/gstindexfactory.sgml:
3067         * docs/gst/tmpl/old/gstmarshal.sgml:
3068         * docs/gst/tmpl/old/gstmd5sink.sgml:
3069         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
3070         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
3071         * docs/gst/tmpl/old/gstpadtemplate.sgml:
3072         * docs/gst/tmpl/old/gstpipefilter.sgml:
3073         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
3074         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3075         * docs/gst/tmpl/old/gstshaper.sgml:
3076         * docs/gst/tmpl/old/gstspider.sgml:
3077         * docs/gst/tmpl/old/gstspideridentity.sgml:
3078         * docs/gst/tmpl/old/gststatistics.sgml:
3079         * docs/gst/tmpl/old/gsttee.sgml:
3080         * docs/gst/tmpl/old/gsttimecache.sgml:
3081         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3082         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3083         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3084         * docs/gst/tmpl/old/types.sgml:
3085           I didn't intend to add these or check them in.
3086
3087 2005-05-19  David Schleef  <ds@schleef.org>
3088
3089         * configure.ac: Use -no-common everywhere.  In a sane world, it
3090           would be the default in libtool, because without it, you can't
3091           build DLLs on Windows.
3092         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3093         * docs/gst/gstreamer-sections.txt:
3094         * docs/gst/tmpl/gstcpu.sgml:
3095         * docs/gst/tmpl/gstdata.sgml:
3096         * docs/gst/tmpl/gstthread.sgml:
3097
3098 2005-05-19  David Schleef  <ds@schleef.org>
3099
3100         * gst/gstminiobject.c: (gst_value_set_mini_object),
3101         (gst_value_take_mini_object), (gst_value_get_mini_object):
3102         * gst/gstminiobject.h: Add GValue set/get functions.
3103
3104 2005-05-19  Wim Taymans  <wim@fluendo.com>
3105
3106         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3107         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3108         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3109         * gst/gstbuffer.h:
3110         * gst/gstbus.c: (gst_bus_post):
3111         * gst/gstelement.c: (gst_element_get_random_pad):
3112         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3113         Make subbufer unref the parent in finalize.
3114         some more debugging info.
3115
3116
3117 2005-05-19  Wim Taymans  <wim@fluendo.com>
3118
3119         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3120         (gst_basesink_init), (gst_basesink_finalize),
3121         (gst_basesink_activate), (gst_basesink_change_state):
3122         Don't free preroll queue too early.
3123
3124 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3125
3126         * gst/Makefile.am:
3127         * gst/ROADMAP:
3128           Hi, I'm outdated. Please shoot me.
3129
3130 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3131
3132         * gst/gstpipeline.c: (gst_pipeline_send_event):
3133           Do not access variables after they have been deleted.
3134
3135 2005-05-19  Wim Taymans  <wim@fluendo.com>
3136
3137         * tools/gst-inspect.c: (print_plugin_features):
3138         A plugin feature does unfortunatly not use the
3139         object name yet...
3140
3141 2005-05-18  Wim Taymans  <wim@fluendo.com>
3142
3143         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3144         Port _span() functions to new subbuffers.
3145
3146 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3147
3148         * gst/gstbin.c: (gst_bin_add_func):
3149           Fix clock settery in bins when adding kids after the clock has
3150           been selected.
3151
3152 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3153
3154         * gst/elements/gstidentity.c: (gst_identity_class_init):
3155           Workaround until signals support GstMiniObject.
3156
3157 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3158
3159         * gst/gstbuffer.c:
3160         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3161
3162 2005-05-18  Wim Taymans  <wim@fluendo.com>
3163
3164         * gst/base/Makefile.am:
3165         * gst/base/gstadapter.c: (gst_adapter_base_init),
3166         (gst_adapter_class_init), (gst_adapter_init),
3167         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3168         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3169         (gst_adapter_flush), (gst_adapter_available),
3170         (gst_adapter_available_fast):
3171         * gst/base/gstadapter.h:
3172         Ported and added adapter to the base classes.
3173
3174 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3175
3176         * gst/gst.c:
3177         * gst/gstmessage.c:
3178           Make sure the class is reffed/unreffed once before threads can be
3179           used.  Fixes #304551.
3180
3181 2005-05-17  Wim Taymans  <wim@fluendo.com>
3182
3183         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3184         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3185         * gst/gstminiobject.c: (gst_mini_object_get_type),
3186         (gst_mini_object_free):
3187         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3188         (gst_pad_push), (gst_pad_push_event):
3189         * gst/gstqueue.c: (gst_queue_change_state):
3190         Don't queue buffers in basesink when we are flushing.
3191         Unref buffer when flushing in basesink.
3192         Flush queue when going to READY
3193         Unref buffer when _push() returns an error.
3194         Don't free MiniObject instance when refcount is incremented
3195         in _finalize() so that we can recover objects.
3196
3197 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3198
3199         * docs/manual/advanced-schedulers.xml:
3200         * docs/manual/appendix-checklist.xml:
3201         * docs/pwg/advanced-clock.xml:
3202         * docs/pwg/advanced-interfaces.xml:
3203         * docs/pwg/advanced-request.xml:
3204         * docs/pwg/advanced-types.xml:
3205         * docs/pwg/intro-preface.xml:
3206         * examples/plugins/example.c: (gst_example_get_type),
3207         (gst_example_class_init), (gst_example_chain),
3208         (gst_example_set_property), (gst_example_get_property),
3209         (gst_example_change_state), (plugin_init):
3210         * examples/plugins/example.h:
3211           small doc fixes
3212
3213 2005-05-17  Wim Taymans  <wim@fluendo.com>
3214
3215         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3216         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3217         * gst/gstqueue.c: (gst_queue_change_state):
3218         Clear queue when going to READY.
3219         Remove IN_SETCAPS flag too.
3220
3221 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3222
3223         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3224           Remove implicit cast from gboolean to GstElementStateReturn;
3225           make sure we still return failure in paused => ready case if
3226           the parent class fails to change state and our own stop 
3227           vfunc succeeds.
3228
3229 2005-05-17  Wim Taymans  <wim@fluendo.com>
3230
3231         * tools/gst-launch.c: (event_loop):
3232         Message was unreffed too soon.
3233
3234 2005-05-16  Andy Wingo  <wingo@pobox.com>
3235
3236         * gst/gstbin.c (sink_iterator_filter): Err... um...
3237
3238         * check/gst/gstbin.c (test_ghost_pads): New test for the
3239         ghosting-if-elements-not-in-same-bin behavior.
3240
3241 2005-05-16  David Schleef  <ds@schleef.org>
3242
3243         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3244         accessing refcount directly.
3245
3246 2005-05-15  David Schleef  <ds@schleef.org>
3247
3248         * check/Makefile.am: remove GstData checks
3249         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3250         * gst/Makefile.am: add miniobject, remove data
3251         * gst/gst.h: add miniobject, remove data
3252         * gst/gstdata.c: remove
3253         * gst/gstdata.h: remove
3254         * gst/gstdata_private.h: remove
3255         * gst/gsttypes.h: remove GstEvent and GstMessage
3256         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3257         * gst/gstmarshal.list: change BOXED -> OBJECT
3258
3259         Implement GstMiniObject.
3260         * gst/gstminiobject.c:
3261         * gst/gstminiobject.h:
3262
3263         Modify to be subclasses of GstMiniObject.
3264         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3265         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3266         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3267         (gst_subbuffer_get_type), (gst_subbuffer_init),
3268         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3269         (gst_buffer_span):
3270         * gst/gstbuffer.h:
3271         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3272         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3273         (_gst_event_copy), (gst_event_new):
3274         * gst/gstevent.h:
3275         * gst/gstmessage.c: (_gst_message_initialize),
3276         (gst_message_get_type), (gst_message_class_init),
3277         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3278         (gst_message_new), (gst_message_new_error),
3279         (gst_message_new_warning), (gst_message_new_tag),
3280         (gst_message_new_state_changed), (gst_message_new_application):
3281         * gst/gstmessage.h:
3282         * gst/gstprobe.c: (gst_probe_perform),
3283         (gst_probe_dispatcher_dispatch):
3284         * gst/gstprobe.h:
3285         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3286         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3287         (_gst_query_copy), (gst_query_new):
3288
3289         Update elements for GstData -> GstMiniObject changes
3290         * gst/gstquery.h:
3291         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3292         (gst_queue_chain), (gst_queue_loop):
3293         * gst/elements/gstbufferstore.c:
3294         (gst_buffer_store_add_buffer_func),
3295         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3296         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3297         (gst_fakesink_render):
3298         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3299         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3300         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3301         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3302         (gst_filesrc_create_read):
3303         * gst/elements/gstidentity.c: (gst_identity_class_init):
3304         * gst/elements/gsttypefindelement.c:
3305         (gst_type_find_element_src_event), (free_entry_buffers),
3306         (gst_type_find_element_handle_event):
3307         * libs/gst/dataprotocol/dataprotocol.c:
3308         (gst_dp_header_from_buffer):
3309         * libs/gst/dataprotocol/dataprotocol.h:
3310         * libs/gst/dataprotocol/dp-private.h:
3311
3312 2005-05-15  David Schleef  <ds@schleef.org>
3313
3314         * gst/elements/gstelements.c: Don't include headers that were
3315         just removed.
3316
3317 2005-05-15  David Schleef  <ds@schleef.org>
3318
3319         * gst/elements/Makefile.am: Remove some elements that don't
3320         need to be in the core (or even exist at all).
3321         * gst/elements/gstaggregator.c:
3322         * gst/elements/gstaggregator.h:
3323         * gst/elements/gstmd5sink.c:
3324         * gst/elements/gstmd5sink.h:
3325         * gst/elements/gstmultifilesrc.c:
3326         * gst/elements/gstmultifilesrc.h:
3327         * gst/elements/gstpipefilter.c:
3328         * gst/elements/gstpipefilter.h:
3329         * gst/elements/gstshaper.c:
3330         * gst/elements/gstshaper.h:
3331         * gst/elements/gststatistics.c:
3332         * gst/elements/gststatistics.h:
3333         * po/POTFILES.in: Remove above files.
3334
3335 2005-05-14  Andy Wingo  <wingo@pobox.com>
3336
3337         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3338         so as to get the refs right.
3339         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3340         unreffing objects that don't pass the filter.
3341
3342         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3343         gst_element_set_bus.
3344         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3345         normal cases, this will destroy the bus.
3346
3347         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3348         object.
3349
3350         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3351         has no sinks.
3352
3353 2005-05-13  Andy Wingo  <wingo@pobox.com>
3354
3355         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3356         gst_pad_link, call pad_link_maybe_ghosting,
3357         (pad_link_maybe_ghosting): Links pads, making sure that the
3358         elements being linked are in the same bin.
3359         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3360         Helpers for pad_link_maybe_ghosting.
3361
3362 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3363
3364         * configure.ac:
3365           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3366
3367 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3368
3369         * docs/design/part-element-source.txt:
3370           Mention GstPushSrc
3371
3372 2005-05-12  Wim Taymans  <wim@fluendo.com>
3373
3374         * gst/base/gstbasesink.c: (gst_basesink_init),
3375         (gst_basesink_activate):
3376         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3377         (gst_basesrc_is_seekable):
3378         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3379         (bin_element_is_sink), (gst_bin_change_state):
3380         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3381         * gst/gstelement.h:
3382         Identify sinks by their flag to avoid overly complicated
3383         checks (fow now).
3384         Do state changes even for elements not reachable from the
3385         sinks.
3386         BaseSink is a sink now :)
3387         Some more debugging info in the basesrc.
3388
3389
3390 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3391
3392         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3393           Implement _query on a bin, similar to _send_event.
3394
3395 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3396
3397         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3398           Discont event offset format should be GST_FORMAT_BYTES,
3399           not GST_FORMAT_TIME.
3400
3401 2005-05-12  Wim Taymans  <wim@fluendo.com>
3402
3403         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3404         Same fix as Ronald's but without the signal. 
3405
3406 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3407
3408         * gst/gstutils.c: (gst_element_query_position):
3409           No, an element is not a pad.
3410
3411 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3412
3413         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3414         (gst_bin_get_state):
3415           If a child is removed from a bin while we remove the child from
3416           the bin and while we're retrieving its state, signal this to the
3417           get_state function so we abort the wait (instead of waiting for
3418           a timeout) and can immediately re-iterate over all other elements.
3419
3420 2005-05-12  Wim Taymans  <wim@fluendo.com>
3421
3422         * gst/base/Makefile.am:
3423         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3424         (gst_basesrc_start):
3425         * gst/base/gstbasesrc.h:
3426         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3427         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3428         (gst_pushsrc_init), (gst_pushsrc_create):
3429         * gst/base/gstpushsrc.h:
3430         Added is_seekable to BaseSrc
3431         Added simple PushSrc.
3432
3433 2005-05-11  Wim Taymans  <wim@fluendo.com>
3434
3435         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3436         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3437         (gst_element_link_pads), (gst_element_query_position),
3438         (gst_element_query_convert), (intersect_caps_func),
3439         (gst_pad_query_position), (gst_pad_query_convert):
3440         Fix refcounting in utils function.
3441         No point in trying to activate a pad when it's added, it could
3442         be added from the state change function and then we deadlock, the
3443         element has to decide what to do.
3444
3445 2005-05-10  Andy Wingo  <wingo@pobox.com>
3446
3447         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3448         *all* the arguments.
3449
3450         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3451         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3452         lock (according to the docs -- if this is wrong change the docs).
3453
3454         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3455         flush messages in the NULL state.
3456
3457         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3458         message immediately and return.
3459         (gst_bus_set_flushing): New function. If a bus is flushing, it
3460         flushes out any queued messages and immediately unrefs new
3461         messages. This is so when an element goes to NULL, all of the
3462         unhandled messages coming from it can be freed, and their
3463         references to the element dropped. In other words: message source
3464         ref considered harmful :P
3465
3466         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3467         we're finished with it.
3468
3469         * gst/gstmessage.c (gst_message_new_state_changed): 
3470
3471 2005-05-10  Wim Taymans  <wim@fluendo.com>
3472
3473         * gst/gstvalue.c: (gst_value_compare_flags),
3474         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3475         (_gst_value_initialize):
3476         Added flags serialize/deserialize/compare code.
3477
3478 2005-05-09  Andy Wingo  <wingo@pobox.com>
3479
3480         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3481         Intersect the peer's caps with our caps.
3482
3483 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3484
3485         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3486         * gst/elements/gsttypefindelement.c: (find_peek):
3487           Handle negative offsets better. Fixes decodebin.
3488
3489 2005-05-09  Wim Taymans  <wim@fluendo.com>
3490
3491         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3492         (gst_base_transform_event):
3493         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3494         Implement accept_caps.
3495         Fix silly lock/unlock mismatch in base class.
3496
3497 2005-05-09  Wim Taymans  <wim@fluendo.com>
3498
3499         * docs/design/draft-push-pull.txt:
3500         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3501         * gst/elements/gstfilesink.c: (gst_filesink_init),
3502         (gst_filesink_query):
3503         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3504         (gst_type_find_handle_src_query), (find_element_get_length):
3505         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3506         * gst/gstelement.h:
3507         * gst/gstmessage.c:
3508         * gst/gstmessage.h:
3509         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3510         (gst_real_pad_get_caps_unlocked),
3511         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3512         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3513         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3514         (gst_real_pad_dispose), (gst_real_pad_finalize),
3515         (gst_pad_load_and_link), (gst_pad_save_thyself),
3516         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3517         (gst_pad_check_pull_range), (gst_pad_pull_range),
3518         (gst_pad_template_get_type), (gst_pad_template_class_init),
3519         (gst_pad_template_init), (gst_pad_template_dispose),
3520         (name_is_valid), (gst_static_pad_template_get),
3521         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3522         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3523         (gst_pad_get_element_private), (gst_pad_start_task),
3524         (gst_pad_pause_task), (gst_pad_stop_task),
3525         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3526         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3527         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3528         (gst_ghost_pad_new):
3529         * gst/gstpad.h:
3530         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3531         (gst_query_new_position), (gst_query_set_position),
3532         (gst_query_parse_position), (gst_query_new_convert),
3533         (gst_query_set_convert), (gst_query_parse_convert):
3534         * gst/gstquery.h:
3535         * gst/gstqueryutils.c:
3536         * gst/gstqueryutils.h:
3537         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3538         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3539         (gst_queue_handle_src_query):
3540         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3541         (gst_element_query_position), (gst_element_query_convert),
3542         (intersect_caps_func), (gst_pad_query_position),
3543         (gst_pad_query_convert):
3544         * gst/gstutils.h:
3545         * tools/gst-inspect.c: (print_pad_info):
3546         * tools/gst-xmlinspect.c: (print_element_info):
3547         Remove old query functions. Ported old code.
3548         Added position/convert helper functions to gstutils.
3549         Reordered gstpad.c code, grouping relevant things.
3550         Remove gst_message_new(), always need to speficy a specific
3551         message.
3552
3553
3554 2005-05-09  Andy Wingo  <wingo@pobox.com>
3555
3556         * gst/gstiterator.h: Add some includes.
3557
3558         * gst/gstqueryutils.h: Include more headers.
3559
3560         * gst/gstpad.h:
3561         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3562         some uses of gst_pad_query.
3563
3564         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3565         NULL out parameters.
3566         (gst_query_new_position): New proc, allocates a new position
3567         query.
3568
3569         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3570         gstqueryutils.c to the build.
3571
3572         * gst/gststructure.c (gst_structure_set_valist): Implement with
3573         the generic G_VALUE_COLLECT.
3574         
3575 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3576
3577         * gst/Makefile.am: (gst_headers):
3578         Added gstqueryutils.h to the list of headers to install, that was
3579         a 'nachty' move wingo :)
3580
3581 2005-05-06  Andy Wingo  <wingo@pobox.com>
3582
3583         * gst/gstquery.h
3584         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3585         GstData, init a memchunk.
3586         (standard_definitions): Add a few query types, deprecate a few.
3587         (gst_query_get_type): New proc.
3588         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3589         implementation.
3590         (gst_query_new_application, gst_query_get_structure): New public
3591         procs.
3592
3593         * docs/design/draft-query.txt: Removed LINKS from the query types,
3594         because all the rest can be dispatched to other pads -- seemed
3595         ugly to have a query that couldn't be dispatched. internal_links
3596         is fine as a pad method.
3597
3598         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3599         in gstpad.c, but maintain binary compatibility for the moment.
3600         Will fix before 0.9 is out.
3601
3602         * gst/gstqueryutils.c: 
3603         * gst/gstqueryutils.h: New files, implement 3 methods for each
3604         query type: parse_query, parse_response, and set. Probably need an
3605         allocator as well.
3606
3607         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3608
3609         * gst/elements/gstfilesink.c (gst_filesink_query2):
3610         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3611         query_types, and formats methods.
3612
3613         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3614         (gst_pad_set_query2_function): New functions.
3615         (gst_real_pad_init): Set query2_default as the default query2
3616         function. Basically just dispatches to internally linked pads.
3617
3618         Needs review!
3619         
3620         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3621         without using the atomic operations. Only one thread can possibly
3622         be accessing the data at this point. Changed so as to avoid
3623         gst_atomic operations.
3624
3625 2005-05-06  Wim Taymans  <wim@fluendo.com>
3626
3627         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3628         Also set caps if we use the fallback buffer alloc.
3629
3630 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3631
3632         * docs/gst/Makefile.am:
3633         * docs/gst/gstreamer-docs.sgml:
3634         * docs/gst/gstreamer-sections.txt:
3635         * docs/gst/tmpl/gstatomic.sgml:
3636         * docs/gst/tmpl/gstmemchunk.sgml:
3637         * testsuite/elements/struct_i386.h:
3638         * win32/GStreamer.vcproj:
3639         * win32/Makefile:
3640           Purge GstAtomic stuff from docs and win32 makefiles as well
3641
3642 2005-05-06  Wim Taymans  <wim@fluendo.com>
3643
3644         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3645         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3646         * gst/gstpad.c: (gst_pad_peer_get_caps):
3647         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3648         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3649         (gst_queue_src_activate), (gst_queue_change_state):
3650         * gst/gstqueue.h:
3651         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3652         (intersect_caps_func):
3653         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3654         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3655         Some fixes for the peer_get_caps() change.
3656
3657 2005-05-06  Wim Taymans  <wim@fluendo.com>
3658
3659         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3660         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3661         (gst_basesink_activate):
3662         Actually do something with error codes returned from the push
3663         functions.
3664
3665 2005-05-06  Wim Taymans  <wim@fluendo.com>
3666
3667         * docs/design/part-element-sink.txt:
3668         * docs/design/part-element-source.txt:
3669         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3670         (gst_basesink_event), (gst_basesink_activate):
3671         * gst/base/gstbasesink.h:
3672         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3673         (gst_basesrc_activate):
3674         * gst/base/gstbasesrc.h:
3675         * gst/gstelement.c: (gst_element_pads_activate):
3676         Some more documentation.
3677         Fixed scheduling decision in _pads_activate().
3678
3679 2005-05-05  Andy Wingo  <wingo@pobox.com>
3680
3681         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3682         the test suite.
3683
3684 2005-05-05  Wim Taymans  <wim@fluendo.com>
3685
3686         * gst/base/Makefile.am:
3687         * gst/base/gstbasesink.h:
3688         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3689         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3690         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3691         (gst_collectpads_class_init), (gst_collectpads_init),
3692         (gst_collectpads_finalize), (gst_collectpads_new),
3693         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3694         (find_pad), (gst_collectpads_remove_pad),
3695         (gst_collectpads_is_active), (gst_collectpads_collect),
3696         (gst_collectpads_collect_range), (gst_collectpads_start),
3697         (gst_collectpads_stop), (gst_collectpads_peek),
3698         (gst_collectpads_pop), (gst_collectpads_available),
3699         (gst_collectpads_read), (gst_collectpads_flush),
3700         (gst_collectpads_chain):
3701         * gst/base/gstcollectpads.h:
3702         * gst/elements/Makefile.am:
3703         * gst/elements/gstelements.c:
3704         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3705         (gst_fakesink_get_times), (gst_fakesink_event),
3706         (gst_fakesink_preroll), (gst_fakesink_render):
3707         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3708         (gst_filesink_init), (gst_filesink_set_location),
3709         (gst_filesink_open_file), (gst_filesink_close_file),
3710         (gst_filesink_pad_query), (gst_filesink_event),
3711         (gst_filesink_render), (gst_filesink_change_state):
3712         * gst/elements/gstfilesink.h:
3713         Added object to help in making collect pad based elements.
3714         Ported filesink.
3715         Make event function in sink baseclass return gboolean.
3716
3717 2005-05-05  Wim Taymans  <wim@fluendo.com>
3718
3719         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3720         (gst_bin_get_by_name):
3721         * gst/gstbuffer.h:
3722         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3723         (gst_clock_finalize):
3724         * gst/gstdata.c: (gst_data_replace):
3725         * gst/gstdata.h:
3726         * gst/gstelement.c: (gst_element_request_pad),
3727         (gst_element_pads_activate):
3728         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3729         (gst_object_unref):
3730         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3731         (gst_pad_set_checkgetrange_function),
3732         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3733         (gst_pad_check_pull_range), (gst_pad_pull_range),
3734         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3735         (gst_pad_pause_task), (gst_pad_stop_task):
3736         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3737         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3738         Fix name lookup in GstBin.
3739         Added _data_replace() function and _buffer_replace()
3740         Use finalize method to clean up clock.
3741         Fix refcounting on request pads.
3742         Fix pad schedule mode error.
3743         Some more object refcounting debug info,
3744
3745
3746 2005-05-04  Andy Wingo <wingo@pobox.com>
3747
3748         * check/Makefile.am:
3749         * docs/gst/tmpl/gstatomic.sgml:
3750         * docs/gst/tmpl/gstplugin.sgml:
3751         * gst/base/gstbasesink.c: (gst_basesink_activate):
3752         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3753         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3754         (gst_basesrc_query), (gst_basesrc_set_property),
3755         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3756         (gst_basesrc_activate):
3757         * gst/base/gstbasesrc.h:
3758         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3759         (gst_base_transform_src_activate):
3760         * gst/elements/gstelements.c:
3761         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3762         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3763         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3764         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3765         (gst_type_find_element_checkgetrange),
3766         (gst_type_find_element_activate):
3767         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3768         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3769         (gst_caps_load_thyself):
3770         * gst/gstelement.c: (gst_element_pads_activate),
3771         (gst_element_save_thyself), (gst_element_restore_thyself):
3772         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3773         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3774         * gst/gstpad.h:
3775         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3776         (gst_xml_parse_file), (gst_xml_parse_memory),
3777         (gst_xml_get_element), (gst_xml_make_element):
3778         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3779         (_file_index_id_save_xml), (gst_file_index_commit):
3780         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3781         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3782         (load_paths):
3783         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3784         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3785         * tools/gst-complete.c: (main):
3786         * tools/gst-compprep.c: (main):
3787         * tools/gst-inspect.c: (print_element_properties_info):
3788         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3789         * tools/gst-xmlinspect.c: (print_element_properties):
3790         GCC 4 fixen.
3791         
3792 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3793
3794         * gst/gstplugin.c: (gst_plugin_check_module),
3795         (gst_plugin_check_file), (gst_plugin_load_file):
3796             apply patch from #172526 to make register work on MacOSX
3797
3798 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3799
3800         * docs/gst/tmpl/gstconfig.sgml:
3801         * gst/gstconfig.h.in:
3802           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3803         * testsuite/debug/printf_extension.c: (main):
3804           Do not use GST_PTR_FORMAT on pointers to types with
3805           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3806         * testsuite/elements/property.h:
3807           use correct printf format
3808
3809 2005-05-02  Wim Taymans  <wim@fluendo.com>
3810
3811         * docs/design/draft-push-pull.txt:
3812         * docs/design/draft-query.txt:
3813         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3814         (gst_basesrc_start):
3815         Added draft for new query API.
3816         Added draft for better selecting scheduling methods.
3817         Make basesrc ignore length if the subclass does not support
3818         it.
3819
3820 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3821
3822         * gst/Makefile.am:
3823           possible fixes for automake-1.5 - _LIBADD is reserved
3824
3825 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3826
3827         * docs/faq/Makefile.am:
3828         * docs/manual/Makefile.am:
3829         * docs/manuals.mak:
3830         * docs/pwg/Makefile.am:
3831         * gst/Makefile.am:
3832           possible fixes for automake-1.5
3833
3834 2005-04-28  Wim Taymans  <wim@fluendo.com>
3835
3836         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3837         (gst_basesink_pad_getcaps), (gst_basesink_init),
3838         (gst_basesink_do_sync):
3839         * gst/gstclock.c: (gst_clock_entry_new):
3840         * gst/gstevent.c: (gst_event_discont_get_value):
3841         * gst/gstpipeline.c: (pipeline_bus_handler),
3842         (gst_pipeline_change_state):
3843         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3844         Better debugging of clocking info.
3845         Allow NULL values when getting discont values.
3846
3847 2005-04-27  Wim Taymans  <wim@fluendo.com>
3848
3849         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3850         * check/gst/gstpad.c: (gst_pad_suite):
3851         Increase timeout for checks.
3852
3853 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3854
3855         * check/Makefile.am:
3856           fix the broken rule for cleanup.  Apparently this rule is
3857           only needed on FC2, so maybe this warrants further autotool
3858           inspection.
3859
3860 2005-04-26  Wim Taymans  <wim@fluendo.com>
3861
3862         * gst/gsttrashstack.h:
3863         Ooohh. a nasty one! After having a failed pop() from the stack,
3864         it's possible that the stack is empty. In that case, don't
3865         follow the NULL pointer.
3866
3867 2005-04-25  Wim Taymans  <wim@fluendo.com>
3868
3869         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3870         (gst_pad_set_checkgetrange_function),
3871         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3872         (gst_pad_check_pull_range), (gst_pad_pull_range),
3873         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3874         (gst_pad_pause_task), (gst_pad_stop_task):
3875         * gst/gstplugin.c: (gst_plugin_load):
3876         * gst/gstplugin.h:
3877         Remove gst_library_load as it does more harm than good with
3878         the new g_module flags.
3879         Revert bogus caps template check in pad linking, pad caps
3880         are important when linking not the template, which is more
3881         general than the current caps.
3882
3883 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3884
3885         * gst/autoplug/.cvsignore:
3886         * gst/autoplug/Makefile.am:
3887         * gst/autoplug/gstsearchfuncs.c:
3888         * gst/autoplug/gstsearchfuncs.h:
3889         * gst/autoplug/gstspider.c:
3890         * gst/autoplug/gstspider.h:
3891         * gst/autoplug/gstspideridentity.c:
3892         * gst/autoplug/gstspideridentity.h:
3893         * gst/autoplug/spidertest.c:
3894           Die, spider, die.
3895
3896 2005-04-25  Wim Taymans  <wim@fluendo.com>
3897
3898         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3899         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3900         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3901         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3902         * gst/gstpad.h:
3903         Added stubs for unimplemented functions. 
3904
3905 2005-04-24  David Schleef  <ds@schleef.org>
3906
3907         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3908         please fix.
3909
3910 2005-04-24  David Schleef  <ds@schleef.org>
3911
3912         Convert everything from GstAtomicInt to g_atomic_int_*, and
3913         remove gstatomic.
3914         * gst/Makefile.am:
3915         * gst/gstatomic.c:
3916         * gst/gstatomic.h:
3917         * gst/gstatomic_impl.h:
3918         * gst/gstbuffer.c:
3919         * gst/gstcaps.c:
3920         * gst/gstcaps.h:
3921         * gst/gstclock.c:
3922         * gst/gstclock.h:
3923         * gst/gstdata.c:
3924         * gst/gstdata.h:
3925         * gst/gstdata_private.h:
3926         * gst/gstevent.c:
3927         * gst/gstinfo.c:
3928         * gst/gstinfo.h:
3929         * gst/gstmessage.c:
3930         * gst/gstobject.c:
3931         * gst/gstobject.h:
3932         * gst/gststructure.c:
3933         * gst/gststructure.h:
3934         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3935         * gst/gstutils.h:
3936
3937 2005-04-24  David Schleef  <ds@schleef.org>
3938
3939         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3940         make the regressions tests work.  Remove some code that is no
3941         longer true.
3942         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3943         Disable warning for pads without templates.
3944
3945 2005-04-24  David Schleef  <ds@schleef.org>
3946
3947         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3948         functions that handle filtered links.
3949         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3950         removed functions.
3951         * gst/gstutils.c: Fix/remove utility functions that handle
3952         filtered caps.
3953         * gst/gstutils.h:
3954         * gst/gstvalue.c: Add serialization/deserialization of caps
3955         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3956         requires fixing so that the filter caps notation creates
3957         a capsfilter element and sets the filter_caps property.  I
3958         think everyone probably wants to keep the shorthand notation.
3959         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3960         * docs/gst/tmpl/gstpad.sgml:
3961
3962         * gst/elements/gstelements.c: Register capsfilter element.
3963         * gst/Makefile.am: fix spacing
3964         * docs/random/ds/0.9-suggested-changes: random
3965
3966 2005-04-23  David Schleef  <ds@schleef.org>
3967
3968         * gst/elements/Makefile.am:
3969         * gst/elements/gstcapsfilter.c: New element that acts like an
3970         identity, but filters caps.  Will eventually replace filtered
3971         caps in pad linking.
3972         * gst/gstutils.c: (gst_element_create_all_pads): New function
3973         to create all the ALWAYS pads that are registered with an
3974         element class.  This functionality should eventually be
3975         merged in with GstElement initialization.
3976         * gst/gstutils.h:
3977         * testsuite/trigger/README: part of trigger test code that should
3978         have been checked in a long time ago.
3979
3980 2005-04-23  David Schleef  <ds@schleef.org>
3981
3982         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3983         needed with new versions of libtool (nobody will confirm this),
3984         and hard to carry around.
3985         * gst/autoplug/Makefile.am:
3986         * gst/base/Makefile.am:
3987         * gst/elements/Makefile.am:
3988         * gst/indexers/Makefile.am:
3989         * gst/schedulers/Makefile.am:
3990         * libs/gst/bytestream/Makefile.am:
3991         * libs/gst/control/Makefile.am:
3992         * libs/gst/dataprotocol/Makefile.am:
3993         * libs/gst/getbits/Makefile.am:
3994
3995 2005-04-21  Wim Taymans  <wim@fluendo.com>
3996
3997         * docs/design/draft-push-pull.txt:
3998         * docs/design/part-MT-refcounting.txt:
3999         * docs/design/part-TODO.txt:
4000         * docs/design/part-caps.txt:
4001         * docs/design/part-events.txt:
4002         * docs/design/part-gstbus.txt:
4003         * docs/design/part-gstpipeline.txt:
4004         * docs/design/part-messages.txt:
4005         * docs/design/part-push-pull.txt:
4006         * docs/design/part-query.txt:
4007         Some more docs.
4008
4009 2005-04-21  Wim Taymans  <wim@fluendo.com>
4010
4011         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
4012         (gst_message_new), (gst_message_new_error),
4013         (gst_message_new_warning), (gst_message_new_tag),
4014         (gst_message_new_state_changed), (gst_message_new_application),
4015         (gst_message_get_structure):
4016         * gst/gstmessage.h:
4017         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4018         (gst_structure_copy_conditional):
4019         Use parent refcount in GstMessage to ensure GstStructure
4020         consistency.
4021         Cleaned up headers a bit.
4022         
4023
4024 2005-04-20  Wim Taymans  <wim@fluendo.com>
4025
4026         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4027         (gst_basesink_pad_getcaps), (gst_basesink_init),
4028         (gst_basesink_chain_unlocked):
4029         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
4030         (gst_type_find_helper):
4031         * gst/elements/gsttypefindelement.c:
4032         (gst_type_find_element_have_type), (gst_type_find_element_init),
4033         (stop_typefinding), (gst_type_find_element_handle_event),
4034         (find_suggest), (gst_type_find_element_chain),
4035         (gst_type_find_element_checkgetrange),
4036         (gst_type_find_element_getrange), (do_typefind),
4037         (gst_type_find_element_activate):
4038         * gst/gstbuffer.c: (_gst_buffer_sub_free),
4039         (gst_buffer_default_free), (gst_buffer_default_copy),
4040         (gst_buffer_set_caps):
4041         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
4042         (gst_caps_replace):
4043         * gst/gstmessage.c: (gst_message_new),
4044         (gst_message_new_state_changed):
4045         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4046         (gst_pad_set_checkgetrange_function),
4047         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
4048         (gst_pad_set_caps), (gst_pad_check_pull_range),
4049         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
4050         * gst/gstpad.h:
4051         * gst/gsttypefind.c: (gst_type_find_register):
4052         Make gst_caps_replace() work like other _replace() functions.
4053         Use _caps_replace() where possible.
4054         Make sure _message_new() initialises its field.
4055         Add gst_static_pad_template_get_caps()
4056
4057
4058 2005-04-18  Andy Wingo  <wingo@pobox.com>
4059
4060         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
4061         on the peer, not the pad. I think that was a typo. Pass an extra
4062         arg to see if random access is possible. Activate the pads as
4063         PULL_RANGE if possible.
4064
4065         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
4066
4067         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
4068         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
4069         to PROP_....
4070
4071 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4072
4073         * docs/faq/using.xml:
4074           Add note on gstreamer-properties (#154996).
4075
4076 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4077
4078         * docs/random/bbb/optional-properties:
4079           Some analysis on optional properties.
4080
4081 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4082
4083         * docs/gst/tmpl/gstelementfactory.sgml:
4084         * gst/gstelement.h:
4085         * gst/gstelementfactory.c: (gst_element_factory_init),
4086         (gst_element_factory_cleanup), (gst_element_register),
4087         (__gst_element_factory_add_static_pad_template),
4088         (gst_element_factory_get_static_pad_templates),
4089         (gst_element_factory_can_src_caps),
4090         (gst_element_factory_can_sink_caps):
4091         * gst/registries/Makefile.am:
4092         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4093         (gst_xml_registry_class_init), (gst_xml_registry_init),
4094         (gst_xml_registry_new), (gst_xml_registry_set_property),
4095         (gst_xml_registry_get_property), (get_time), (make_dir),
4096         (gst_xml_registry_get_perms_func),
4097         (plugin_times_older_than_recurse), (plugin_times_older_than),
4098         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4099         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4100         (add_to_char_array), (read_string), (read_uint), (read_enum),
4101         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4102         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4103         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4104         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4105         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4106         (gst_xml_registry_rebuild):
4107         * gst/registries/gstlibxmlregistry.h:
4108         * tools/gst-compprep.c: (main):
4109         * tools/gst-inspect.c: (print_pad_templates_info):
4110         * tools/gst-xmlinspect.c: (print_element_info):
4111           Use libxml2 for registry parsing, use staticpadtemplates in
4112           elementfactories. Makes gst_init() +/- 10x faster.
4113
4114 2005-04-12  Wim Taymans  <wim@fluendo.com>
4115
4116         * gst/base/Makefile.am:
4117         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4118         (gst_basesink_pad_getcaps), (gst_basesink_init),
4119         (gst_basesink_event), (gst_basesink_change_state):
4120         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4121         (gst_basesrc_init), (gst_basesrc_query),
4122         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4123         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4124         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4125         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4126         (gst_basesrc_stop), (gst_basesrc_activate),
4127         (gst_basesrc_change_state):
4128         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4129         (helper_find_suggest), (gst_type_find_helper):
4130         * gst/base/gsttypefindhelper.h:
4131         * gst/elements/Makefile.am:
4132         * gst/elements/gstelements.c:
4133         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4134         (gst_fakesink_get_times), (gst_fakesink_event),
4135         (gst_fakesink_preroll), (gst_fakesink_render):
4136         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4137         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4138         (gst_fakesrc_get_property), (gst_fakesrc_create),
4139         (gst_fakesrc_start), (gst_fakesrc_stop):
4140         * gst/elements/gstfakesrc.h:
4141         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4142         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4143         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4144         (gst_filesrc_create_read), (gst_filesrc_create),
4145         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4146         (gst_filesrc_start):
4147         * gst/elements/gsttypefindelement.c:
4148         (gst_type_find_element_have_type), (gst_type_find_element_init),
4149         (start_typefinding), (stop_typefinding), (push_buffer_store),
4150         (gst_type_find_element_handle_event),
4151         (gst_type_find_element_chain),
4152         (gst_type_find_element_checkgetrange),
4153         (gst_type_find_element_getrange), (do_typefind),
4154         (gst_type_find_element_activate),
4155         (gst_type_find_element_change_state):
4156         * gst/elements/gsttypefindelement.h:
4157         * gst/gstpipeline.c: (pipeline_bus_handler):
4158         Added typefind helper.
4159         Small preroll fix in the base sink.
4160         Disable typefind code in basesrc.
4161         Crude port of typefindelement.
4162         Fakesrc cleanups.
4163
4164
4165 2005-04-11  Wim Taymans  <wim@fluendo.com>
4166
4167         * check/gst/gstbus.c: (gstbus_suite):
4168         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4169         * check/gstcheck.h:
4170           Fix up the timeout so that the test does not fail.
4171
4172 2005-04-06  Wim Taymans  <wim@fluendo.com>
4173
4174         * gst/base/README:
4175         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4176         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4177         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4178         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4179         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4180         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4181         (gst_basesrc_stop), (gst_basesrc_activate),
4182         (gst_basesrc_change_state), (basesrc_find_peek),
4183         (basesrc_find_suggest), (gst_basesrc_type_find):
4184         * gst/base/gstbasesrc.h:
4185         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4186         (gst_filesrc_class_init), (gst_filesrc_init),
4187         (gst_filesrc_finalize), (gst_filesrc_set_location),
4188         (gst_filesrc_set_property), (gst_filesrc_get_property),
4189         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4190         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4191         (gst_filesrc_create_read), (gst_filesrc_create),
4192         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4193         * gst/elements/gstfilesrc.h:
4194         * gst/gstelement.c: (gst_element_get_state_func),
4195         (gst_element_lost_state), (gst_element_pads_activate):
4196         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4197         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4198         (gst_pad_pull_range):
4199         * gst/gstpad.h:
4200         More work on the generic source base class, implement seeking,
4201         query.
4202         Make filesrc extend the base source class.
4203         Added gst_pad_set_checkgetrange_function to GstPad.
4204
4205 2005-04-06  Andy Wingo  <wingo@pobox.com>
4206
4207         * pkgconfig/gstreamer-base.pc.in:
4208         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4209
4210         * pkgconfig/Makefile.am:
4211         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4212
4213 2005-04-04  Wim Taymans  <wim@fluendo.com>
4214
4215         * gst/base/Makefile.am:
4216         * gst/base/README:
4217         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4218         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4219         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4220         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4221         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4222         (gst_basesrc_base_init), (gst_basesrc_class_init),
4223         (gst_basesrc_init), (gst_basesrc_get_formats),
4224         (gst_basesrc_get_query_types), (gst_basesrc_query),
4225         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4226         (gst_basesrc_set_property), (gst_basesrc_get_property),
4227         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4228         (gst_basesrc_loop), (gst_basesrc_activate),
4229         (gst_basesrc_change_state):
4230         * gst/base/gstbasesrc.h:
4231         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4232         (gst_fakesrc_class_init), (gst_fakesrc_init),
4233         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4234         (gst_fakesrc_get_property), (gst_fakesrc_create):
4235         * gst/elements/gstfakesrc.h:
4236         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4237         (gst_filesrc_open_file), (gst_filesrc_loop),
4238         (gst_filesrc_activate), (filesrc_find_peek),
4239         (gst_filesrc_type_find):
4240         Made base source class, make fakesrc extend it.
4241         Add comments to basesink class.
4242         Some filesrc cleanup.
4243
4244 2005-03-31  David Schleef  <ds@schleef.org>
4245
4246         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4247         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4248         expected to link against libgstreamer.
4249         * gst/base/Makefile.am: link against libgstreamer
4250         * gst/elements/Makefile.am: same
4251
4252 2005-03-31  Andy Wingo  <wingo@pobox.com>
4253
4254         * tests/instantiate/Makefile.am:
4255         * tests/instantiate/caps.c: Add test to test speed of caps copy
4256         and free.
4257
4258         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4259         GMemChunk to be fair.
4260
4261         * gst/gsttrashstack.h: Remove warning about using the fallback
4262         trash stack implementation, it's still faster than malloc.
4263
4264 2005-03-30  Andy Wingo  <wingo@pobox.com>
4265
4266         * tests/complexity.c: Add a copyright.
4267
4268 2005-03-31  Wim Taymans  <wim@fluendo.com>
4269
4270         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4271         (gst_base_transform_class_init), (gst_base_transform_init),
4272         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4273         (gst_base_transform_get_property),
4274         (gst_base_transform_sink_activate),
4275         (gst_base_transform_src_activate),
4276         (gst_base_transform_change_state):
4277         * gst/base/gstbasetransform.h:
4278         * gst/elements/gstidentity.c: (gst_identity_class_init),
4279         (gst_identity_event), (gst_identity_check_perfect),
4280         (gst_identity_transform), (gst_identity_start),
4281         (gst_identity_stop):
4282         Added start/stop methods to transform base class so subclasses 
4283         don't need to deal with state changes even.
4284
4285 2005-03-31  Wim Taymans  <wim@fluendo.com>
4286
4287         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4288         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4289         * gst/gstevent.h:
4290         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4291         (gst_pad_pull_range):
4292         Added rate to the discont event to prepare for variable speed
4293         and reverse playback.
4294
4295 2005-03-29  David Schleef  <ds@schleef.org>
4296
4297         * configure.ac:
4298         * testsuite/trigger/Makefile.am:
4299         * testsuite/trigger/trigger.c: A little example program to show
4300         how trigger-based elements can work.
4301
4302 2005-03-29  Wim Taymans  <wim@fluendo.com>
4303
4304         * gst/base/Makefile.am:
4305         * gst/base/README:
4306         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4307         (gst_basesink_base_init), (gst_basesink_class_init),
4308         (gst_basesink_pad_getcaps), (gst_basesink_init),
4309         (gst_basesink_activate), (gst_basesink_change_state):
4310         * gst/base/gstbasesink.h:
4311         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4312         (gst_base_transform_base_init), (gst_base_transform_finalize),
4313         (gst_base_transform_class_init), (gst_base_transform_init),
4314         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4315         (gst_base_transform_event), (gst_base_transform_getrange),
4316         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4317         (gst_base_transform_set_property),
4318         (gst_base_transform_get_property),
4319         (gst_base_transform_sink_activate),
4320         (gst_base_transform_src_activate),
4321         (gst_base_transform_change_state):
4322         * gst/base/gstbasetransform.h:
4323         * gst/elements/gstidentity.c: (gst_identity_finalize),
4324         (gst_identity_class_init), (gst_identity_init),
4325         (gst_identity_event), (gst_identity_check_perfect),
4326         (gst_identity_transform), (gst_identity_set_property),
4327         (gst_identity_get_property), (gst_identity_change_state):
4328         * gst/elements/gstidentity.h:
4329         * gst/gstelement.c: (gst_element_get_state_func),
4330         (gst_element_lost_state), (gst_element_pads_activate):
4331         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4332         (gst_pad_check_pull_range), (gst_pad_pull_range):
4333         * gst/gstpad.h:
4334         Simplify pad activation.
4335         Added function to check if pull_range can be performed.
4336         Error out when pulling inactive or flushing pads.
4337         Removed const from refcounted types as it does not make sense.
4338         Simplify pad templates in basesink
4339         Added base class for simple 1-to-1 transforms.
4340         Make identity subclass the base transform.
4341
4342 2005-03-29  Andy Wingo  <wingo@pobox.com>
4343
4344         * docs/libs/gstreamer-libs-overrides.txt: 
4345         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4346         really don't understand what's going on, but like whatever. I want
4347         green buildbot!
4348
4349         * docs/gst/Makefile.am:
4350         * docs/libs/Makefile.am: Dist the overrides files.
4351
4352         * check/Makefile.am (clean-local): Remove .libs directories.
4353
4354         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4355         elements to EXTRA_DIST, so po/ files are happy.
4356
4357         * po/POTFILES.in: Er, remove it here.
4358
4359         * po/POTFILES: Remove gstspider.c.
4360
4361         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4362
4363         * docs/libs/gstreamer-libs-docs.sgml: 
4364         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4365         bytestream.
4366
4367         * tests/complexity.c (main): Set the length of the preroll queue
4368         on the sinks to prevent a lockup.
4369
4370         * libs/gst/dataprotocol/Makefile.am: 
4371         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4372         the same as the one in check/gst-libs/gdp.c.
4373
4374         * po/, docs/gst/: Commit automatic changes to docs and po files.
4375
4376         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4377         the versioned libgstbase.
4378
4379         * check/Makefile.am: Depend on an unversioned gst-register, seems
4380         to make autoconf happier.
4381
4382         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4383
4384 2005-03-28  Wim Taymans  <wim@fluendo.com>
4385
4386         * configure.ac:
4387         * docs/design/part-gstelement.txt:
4388         * docs/design/part-negotiation.txt:
4389         * docs/design/part-preroll.txt:
4390         * docs/design/part-scheduling.txt:
4391         * docs/design/part-states.txt:
4392         * gst/Makefile.am:
4393         * gst/base/Makefile.am:
4394         * gst/base/README:
4395         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4396         (gst_basesink_base_init), (gst_basesink_class_init),
4397         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4398         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4399         (gst_basesink_set_pad_functions),
4400         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4401         (gst_basesink_set_property), (gst_basesink_get_property),
4402         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4403         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4404         (gst_basesink_preroll_queue_push),
4405         (gst_basesink_preroll_queue_empty),
4406         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4407         (gst_basesink_event), (gst_basesink_get_times),
4408         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4409         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4410         (gst_basesink_loop), (gst_basesink_activate),
4411         (gst_basesink_change_state):
4412         * gst/base/gstbasesink.h:
4413         * gst/elements/Makefile.am:
4414         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4415         (gst_fakesink_class_init), (gst_fakesink_init),
4416         (gst_fakesink_set_property), (gst_fakesink_get_property),
4417         (gst_fakesink_get_times), (gst_fakesink_event),
4418         (gst_fakesink_preroll), (gst_fakesink_render),
4419         (gst_fakesink_change_state):
4420         * gst/elements/gstfakesink.h:
4421         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4422         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4423         * gst/gstelement.c: (gst_element_add_pad),
4424         (gst_element_get_state_func), (gst_element_abort_state),
4425         (gst_element_commit_state), (gst_element_lost_state),
4426         (gst_element_set_state), (gst_element_pads_activate):
4427         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4428         * gst/gstpipeline.c: (gst_pipeline_send_event),
4429         (gst_pipeline_change_state):
4430         Added state change code.
4431         Added/updated docs.
4432         Added sink base class, make fakesink extend the base class.
4433         Small cleanups in GstPipeline.
4434
4435 2005-03-26  David Schleef  <ds@schleef.org>
4436
4437         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4438         is broken and should be implemented in a different library.
4439         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4440         * gst/gst.h: remove gstcpu.h
4441         * gst/gstcpu.c: remove
4442         * gst/gstcpu.h: remove
4443         * gst/Makefile.am.future: Remove this file.  It's ancient.
4444
4445 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4446
4447         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4448         (gst_bin_send_event):
4449           Add default event/set_manager handlers. The set_manager handler
4450           takes care that the manager is distributed over kids that were
4451           already in the bin before the manager was set. The event handler
4452           is a utility virtual function that sends the event over all sinks,
4453           so that gst_element_send_event (bin, event); has the expected
4454           behaviour.
4455         * gst/gstpad.c: (gst_pad_event_default):
4456           Re-install default event handling for discontinuities, so that
4457           seeking works without requiring hacks in applications or extra
4458           code in sinks.
4459         * gst/gstpipeline.c: (gst_pipeline_class_init),
4460         (gst_pipeline_send_event):
4461           Half hack, half utility: set a pipeline to PAUSED for seek events,
4462           since that is the only way we can guarantee a/v sync. Means that
4463           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4464           and it "just works".
4465
4466 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4467
4468         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4469           Lock/unlock mismatch.
4470
4471 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4472
4473         * docs/faq/gst-uninstalled:
4474           add gst-plugins-base
4475         * docs/gst/Makefile.am:
4476           don't error out until docs are fixed
4477         * docs/gst/gstreamer.types:
4478           remove thread
4479
4480 2005-03-22  Wim Taymans  <wim@fluendo.com>
4481
4482         * check/Makefile.am:
4483         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4484         * gst/gststructure.c: (gst_structure_set_valist),
4485         (gst_structure_copy_conditional):
4486         Activated more tests.
4487         Added message test.
4488         Added G_TYPE_POINTER to GstStructure.
4489         
4490
4491 2005-03-22  Wim Taymans  <wim@fluendo.com>
4492
4493         * docs/design/part-TODO.txt:
4494         * docs/design/part-events.txt:
4495         * docs/design/part-gstbin.txt:
4496         * docs/design/part-gstbus.txt:
4497         * docs/design/part-gstpipeline.txt:
4498         * docs/design/part-messages.txt:
4499         * gst/gstbus.c:
4500         * gst/gstmessage.c:
4501         Docs updates
4502
4503 2005-03-21  Wim Taymans  <wim@fluendo.com>
4504
4505         * gst/gstbus.c: (gst_bus_post):
4506         Fix copy-and-paste error.
4507
4508 2005-03-21  Wim Taymans  <wim@fluendo.com>
4509
4510         * check/Makefile.am:
4511         * gst/Makefile.am:
4512         * gst/elements/Makefile.am:
4513         * gst/elements/gstelements.c:
4514         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4515         (gst_fakesink_event), (gst_fakesink_chain):
4516         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4517         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4518         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4519         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4520         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4521         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4522         (gst_fakesrc_loop), (gst_fakesrc_activate),
4523         (gst_fakesrc_change_state):
4524         * gst/elements/gstfakesrc.h:
4525         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4526         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4527         (gst_filesrc_open_file), (gst_filesrc_loop),
4528         (gst_filesrc_activate), (gst_filesrc_change_state),
4529         (filesrc_find_peek), (filesrc_find_suggest),
4530         (gst_filesrc_type_find):
4531         * gst/elements/gstidentity.c: (gst_identity_finalize),
4532         (gst_identity_class_init), (gst_identity_init),
4533         (gst_identity_proxy_getcaps), (identity_queue_push),
4534         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4535         (gst_identity_getrange), (gst_identity_chain),
4536         (gst_identity_sink_loop), (gst_identity_src_loop),
4537         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4538         (gst_identity_set_property), (gst_identity_get_property),
4539         (gst_identity_change_state):
4540         * gst/elements/gstidentity.h:
4541         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4542         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4543         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4544         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4545         (gst_tee_sink_activate):
4546         * gst/elements/gsttee.h:
4547         * gst/gst.c: (gst_register_core_elements), (init_post):
4548         * gst/gst.h:
4549         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4550         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4551         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4552         (gst_bin_change_state):
4553         * gst/gstbin.h:
4554         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4555         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4556         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4557         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4558         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4559         (bus_watch_callback), (bus_watch_destroy),
4560         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4561         (poll_timeout), (gst_bus_poll):
4562         * gst/gstbus.h:
4563         * gst/gstcaps.h:
4564         * gst/gstdata.h:
4565         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4566         (gst_element_post_message), (gst_element_message_full),
4567         (gst_element_get_state_func), (gst_element_get_state),
4568         (gst_element_abort_state), (gst_element_commit_state),
4569         (gst_element_lost_state), (gst_element_set_state),
4570         (gst_element_pads_activate), (gst_element_change_state),
4571         (gst_element_dispose), (gst_element_set_manager_func),
4572         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4573         (gst_element_set_manager), (gst_element_get_manager),
4574         (gst_element_set_bus), (gst_element_get_bus),
4575         (gst_element_set_scheduler), (gst_element_get_scheduler):
4576         * gst/gstelement.h:
4577         * gst/gstevent.c: (gst_event_new_segment_seek),
4578         (gst_event_new_flush):
4579         * gst/gstevent.h:
4580         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4581         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4582         (gst_message_new_eos), (gst_message_new_error),
4583         (gst_message_new_warning), (gst_message_new_tag),
4584         (gst_message_new_state_changed), (gst_message_new_application),
4585         (gst_message_get_structure), (gst_message_parse_tag),
4586         (gst_message_parse_state_changed), (gst_message_parse_error),
4587         (gst_message_parse_warning):
4588         * gst/gstmessage.h:
4589         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4590         (gst_real_pad_set_property), (gst_pad_set_active),
4591         (gst_pad_is_active), (gst_pad_set_blocked_async),
4592         (gst_pad_set_blocked), (gst_pad_is_blocked),
4593         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4594         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4595         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4596         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4597         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4598         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4599         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4600         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4601         (gst_pad_set_caps), (gst_pad_configure_sink),
4602         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4603         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4604         (gst_real_pad_dispose), (gst_real_pad_finalize),
4605         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4606         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4607         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4608         * gst/gstpad.h:
4609         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4610         (pipeline_bus_handler), (gst_pipeline_change_state),
4611         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4612         * gst/gstpipeline.h:
4613         * gst/gstprobe.h:
4614         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4615         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4616         (gst_queue_link_src), (gst_queue_bufferalloc),
4617         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4618         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4619         (gst_queue_loop), (gst_queue_handle_src_event),
4620         (gst_queue_handle_src_query), (gst_queue_src_activate),
4621         (gst_queue_change_state):
4622         * gst/gstqueue.h:
4623         * gst/gstscheduler.c: (gst_scheduler_init),
4624         (gst_scheduler_dispose), (gst_scheduler_create_task),
4625         (gst_scheduler_factory_create):
4626         * gst/gstscheduler.h:
4627         * gst/gststructure.c: (gst_structure_get_type),
4628         (gst_structure_copy_conditional):
4629         * gst/gststructure.h:
4630         * gst/gsttaginterface.h:
4631         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4632         (gst_task_init), (gst_task_dispose), (gst_task_create),
4633         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4634         (gst_task_pause):
4635         * gst/gsttask.h:
4636         * gst/gstthread.c:
4637         * gst/gstthread.h:
4638         * gst/gsttypes.h:
4639         * gst/schedulers/Makefile.am:
4640         * gst/schedulers/cothreads_compat.h:
4641         * gst/schedulers/entryscheduler.c:
4642         * gst/schedulers/faircothreads.c:
4643         * gst/schedulers/faircothreads.h:
4644         * gst/schedulers/fairscheduler.c:
4645         * gst/schedulers/gstbasicscheduler.c:
4646         * gst/schedulers/gstoptimalscheduler.c:
4647         * gst/schedulers/gthread-cothreads.h:
4648         * gst/schedulers/threadscheduler.c:
4649         (gst_thread_scheduler_task_get_type),
4650         (gst_thread_scheduler_task_class_init),
4651         (gst_thread_scheduler_task_init),
4652         (gst_thread_scheduler_task_start),
4653         (gst_thread_scheduler_task_stop),
4654         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4655         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4656         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4657         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4658         (plugin_init):
4659         * libs/gst/Makefile.am:
4660         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4661         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4662         (gst_file_pad_parent_set):
4663         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4664         (gst_dp_event_from_packet):
4665         * tests/complexity.c: (main):
4666         * tests/mass_elements.c: (main):
4667         * testsuite/states/locked.c: (message_received), (main):
4668         * testsuite/states/parent.c: (main):
4669         * tools/gst-inspect.c: (print_element_flag_info),
4670         (print_implementation_info), (print_pad_info):
4671         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4672         (main):
4673         * tools/gst-md5sum.c: (event_loop), (main):
4674         * tools/gst-typefind.c: (main):
4675         * tools/gst-xmlinspect.c: (print_element_info):
4676         Next big merge.
4677         Added GstBus for mainloop integration.
4678         Added GstMessage for sending notifications on the bus.
4679         Added GstTask as an abstraction for pipeline entry points.
4680         Removed GstThread.
4681         Removed Schedulers.
4682         Simplified GstQueue for multithreaded core.
4683         Made _link threadsafe, removed old capsnego.
4684         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4685         Added pad blocking functions.
4686         Reworked scheduling functions in GstPad to prepare for
4687         scheduling updates soon.
4688         Moved events out of data stream.
4689         Simplified GstEvent types.
4690         Added return values to push/pull.
4691         Removed clocking from GstElement.
4692         Added prototypes for state change function for next merge.
4693         Removed iterate from bins and state change management.
4694         Fixed some elements, disabled others for now.
4695         Fixed -inspect and -launch.
4696         Added check for GstBus.
4697
4698 2005-03-10  Wim Taymans  <wim@fluendo.com>
4699
4700         * docs/design/part-MT-refcounting.txt:
4701         * docs/design/part-clocks.txt:
4702         * docs/design/part-gstelement.txt:
4703         * docs/design/part-gstobject.txt:
4704         * docs/design/part-standards.txt:
4705         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4706         (gst_bin_remove_func), (gst_bin_remove):
4707         * gst/gstbin.h:
4708         * gst/gstbuffer.c:
4709         * gst/gstcaps.h:
4710         * testsuite/clock/clock1.c: (main):
4711         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4712         (main):
4713         * testsuite/dlopen/loadgst.c: (do_test):
4714         * testsuite/refcounting/bin.c: (add_remove_test1),
4715         (add_remove_test2), (main):
4716         * testsuite/refcounting/element.c: (main):
4717         * testsuite/refcounting/element_pad.c: (main):
4718         * testsuite/refcounting/pad.c: (main):
4719         * tools/gst-launch.c: (sigint_handler_sighandler):
4720         * tools/gst-typefind.c: (main):
4721         Doc updates.
4722         Added doc about clock.
4723         removed gst_bin_iterate_recurse_up(), marked methods
4724         for removal.
4725         Fix more testsuites.
4726
4727 2005-03-09  Wim Taymans  <wim@fluendo.com>
4728
4729         * gst/gstpad.c: (gst_pad_get_direction),
4730         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4731         (gst_pad_collect_valist):
4732         * testsuite/bins/interface.c: (main):
4733         * testsuite/caps/audioscale.c: (test_caps):
4734         * testsuite/caps/caps.c: (test1), (test2), (test3):
4735         * testsuite/caps/deserialize.c: (main):
4736         * testsuite/caps/enumcaps.c: (main):
4737         * testsuite/caps/filtercaps.c: (main):
4738         * testsuite/caps/intersect2.c: (main):
4739         * testsuite/caps/random.c: (main):
4740         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4741         * testsuite/caps/sets.c: (check_caps):
4742         * testsuite/caps/simplify.c: (check_caps), (main):
4743         * testsuite/caps/subtract.c: (check_caps):
4744         Fix _pad_get_direction wrt ghostpads.
4745         Fix caps testsuite.
4746
4747 2005-03-09  Wim Taymans  <wim@fluendo.com>
4748
4749         * check/Makefile.am:
4750         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4751         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4752         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4753         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4754         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4755         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4756         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4757         (bin_element_is_sink), (gst_bin_iterate_sinks),
4758         (gst_bin_iterate_all_by_interface):
4759         * gst/gstbin.h:
4760         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4761         (gst_element_change_state), (gst_element_dispose),
4762         (gst_element_finalize), (gst_element_set_loop_function):
4763         * gst/gstelement.h:
4764         * gst/gstiterator.c: (find_custom_fold_func):
4765         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4766         (gst_pad_collectv), (gst_pad_collect_valist),
4767         (gst_pad_template_new):
4768         * gst/gstpipeline.c: (gst_pipeline_class_init),
4769         (gst_pipeline_dispose), (gst_pipeline_set_property),
4770         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4771         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4772         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4773         * gst/gstutils.h:
4774         * gst/schedulers/entryscheduler.c:
4775         * gst/schedulers/gstbasicscheduler.c:
4776         (gst_basic_scheduler_cothreaded_chain),
4777         (gst_basic_scheduler_chain_add_element):
4778         * testsuite/bins/interface.c: (main):
4779         Added GstBin test.
4780         Added GstSystemClock test.
4781         Implemented clock distribution code in GstBin.
4782         Implemented iterate sinks method for future use.
4783         Rearranged gstelement.h
4784         Fix GstIterator comparison bug.
4785         Moved some code to GstPipeline, mostly clocking related.
4786
4787 2005-03-09  Wim Taymans  <wim@fluendo.com>
4788
4789         * configure.ac:
4790         * gst/gst_private.h:
4791         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4792         (gst_bin_remove_func), (gst_bin_remove),
4793         (gst_bin_get_by_name_recurse_up):
4794         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4795         (gst_clock_id_compare_func), (gst_clock_id_wait),
4796         (gst_clock_id_wait_async), (gst_clock_init),
4797         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4798         * gst/gstelement.h:
4799         * gst/gstinfo.c: (_gst_debug_init):
4800         * gst/gstobject.h:
4801         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4802         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4803         * gst/gstpad.h:
4804         Bump version number, we're now 0.9.0
4805         Add future debugging category.
4806         Fix NULL _unref() in _get_by_name_recurse_up
4807         Rearrange gstpad.h.
4808         Update some docs.
4809
4810 2005-03-08  Wim Taymans  <wim@fluendo.com>
4811
4812         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4813         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4814         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4815         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4816         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4817         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4818         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4819         * gst/elements/gstidentity.c: (gst_identity_class_init):
4820         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4821         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4822         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4823         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4824         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4825         (gst_tee_link):
4826         * gst/gstelement.c: (gst_element_class_init),
4827         (gst_element_base_class_init), (gst_element_init),
4828         (gst_element_get_random_pad), (gst_element_wait_state_change),
4829         (gst_element_change_state), (gst_element_dispose),
4830         (gst_element_finalize), (gst_element_set_loop_function):
4831         * gst/gstelement.h:
4832         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4833         * gst/gstthread.c: (gst_thread_class_init),
4834         (gst_thread_release_children_locks), (gst_thread_change_state):
4835         * gst/schedulers/gstbasicscheduler.c:
4836         (gst_basic_scheduler_loopfunc_wrapper),
4837         (gst_basic_scheduler_chain_wrapper),
4838         (gst_basic_scheduler_src_wrapper),
4839         (gst_basic_scheduler_remove_element):
4840         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4841         Remove threadsafe properties. Fix elements because GObject
4842         complains when installing a property before declaring a
4843         set/get_property handler.
4844         Rearrange gstelement.h file, use STATE macros for state locks.
4845         Free mutexes in the finalize method instead of dispose.
4846
4847 2005-03-08  Wim Taymans  <wim@fluendo.com>
4848
4849         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4850         * gst/gstthread.c: (gst_thread_release_children_locks):
4851         Added parentage check.
4852         Fix build og GstThread again.
4853
4854 2005-03-08  Wim Taymans  <wim@fluendo.com>
4855
4856         * docs/design/part-MT-refcounting.txt:
4857         * docs/design/part-conventions.txt:
4858         * docs/design/part-gstobject.txt:
4859         * docs/design/part-relations.txt:
4860         * docs/design/part-standards.txt:
4861         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4862         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4863         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4864         (gst_bin_iterate_all_by_interface):
4865         * gst/gstbuffer.h:
4866         * gst/gstclock.h:
4867         * gst/gstelement.c: (gst_element_class_init),
4868         (gst_element_change_state), (gst_element_set_loop_function):
4869         * gst/gstelement.h:
4870         * gst/gstiterator.c:
4871         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4872         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4873         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4874         (gst_object_set_parent), (gst_object_unparent),
4875         (gst_object_check_uniqueness):
4876         * gst/gstobject.h:
4877         Docs updates, clean up some headers.
4878
4879 2005-03-07  Wim Taymans  <wim@fluendo.com>
4880
4881         * check/.cvsignore:
4882         * check/Makefile.am:
4883         * check/gst-libs/.cvsignore:
4884         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4885         * check/gst/.cvsignore:
4886         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4887         (START_TEST), (gstbus_suite), (main):
4888         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4889         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4890         (gst_data_suite), (main):
4891         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4892         (add_fold_func), (gstiterator_suite), (main):
4893         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4894         (thread_name_object), (thread_name_object_default),
4895         (gst_object_name_compare), (gst_object_suite), (main):
4896         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4897         (gst_pad_suite), (main):
4898         * check/gstcheck.c: (gst_check_log_message_func),
4899         (gst_check_log_critical_func), (gst_check_init):
4900         * check/gstcheck.h:
4901         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4902         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4903         Added checks.
4904
4905 2005-03-07  Wim Taymans  <wim@fluendo.com>
4906
4907         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4908         (gst_list_iterator_next), (gst_list_iterator_resync),
4909         (gst_list_iterator_free), (gst_iterator_new_list),
4910         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4911         (gst_iterator_free), (gst_iterator_push), (filter_next),
4912         (filter_resync), (filter_uninit), (filter_free),
4913         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4914         (gst_iterator_foreach), (find_custom_fold_func),
4915         (gst_iterator_find_custom):
4916         * gst/gstiterator.h:
4917         Added missing files.
4918
4919 2005-03-07  Wim Taymans  <wim@fluendo.com>
4920
4921         * Makefile.am:
4922         * configure.ac:
4923         * docs/design/part-MT-refcounting.txt:
4924         * docs/design/part-conventions.txt:
4925         * docs/design/part-gstobject.txt:
4926         * docs/design/part-relations.txt:
4927         * examples/mixer/mixer.c: (main):
4928         * examples/thread/thread.c: (eos), (main):
4929         * gst/Makefile.am:
4930         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4931         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4932         (gst_spider_plug_from_srcpad):
4933         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4934         (gst_spider_identity_change_state),
4935         (gst_spider_identity_sink_loop_type_finding):
4936         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4937         * gst/elements/gstidentity.c: (gst_identity_init):
4938         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4939         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4940         * gst/elements/gsttypefindelement.c: (free_entry):
4941         * gst/gst.c:
4942         * gst/gst.h:
4943         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4944         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4945         (gst_bin_set_index), (gst_bin_set_element_sched),
4946         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4947         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4948         (gst_bin_iterate_elements), (iterate_child_recurse),
4949         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4950         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4951         (compare_interface), (gst_bin_get_by_interface),
4952         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4953         * gst/gstbin.h:
4954         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4955         (gst_buffer_default_free), (gst_buffer_default_copy),
4956         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4957         (gst_buffer_create_sub):
4958         * gst/gstbuffer.h:
4959         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4960         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4961         (gst_caps_unref), (gst_static_caps_get),
4962         (gst_caps_remove_and_get_structure), (gst_caps_append),
4963         (gst_caps_append_structure), (gst_caps_remove_structure),
4964         (gst_caps_copy_nth), (gst_caps_set_simple),
4965         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4966         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4967         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4968         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4969         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4970         (gst_caps_structure_figure_out_union),
4971         (gst_caps_switch_structures), (gst_caps_do_simplify),
4972         (gst_caps_replace), (gst_caps_from_string),
4973         (gst_caps_copy_conditional):
4974         * gst/gstcaps.h:
4975         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4976         (_gst_clock_id_free), (gst_clock_id_unref),
4977         (gst_clock_id_compare_func), (gst_clock_id_wait),
4978         (gst_clock_id_wait_async), (gst_clock_class_init),
4979         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4980         (gst_clock_get_time), (gst_clock_set_time_adjust),
4981         (gst_clock_set_property), (gst_clock_get_property):
4982         * gst/gstclock.h:
4983         * gst/gstcompat.h:
4984         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4985         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4986         * gst/gstdata.h:
4987         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4988         (gst_element_requires_clock), (gst_element_provides_clock),
4989         (gst_element_set_clock), (gst_element_clock_wait),
4990         (gst_element_wait), (gst_element_set_time_delay),
4991         (gst_element_is_indexable), (gst_element_add_pad),
4992         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4993         (pad_compare_name), (gst_element_get_static_pad),
4994         (gst_element_request_pad), (gst_element_get_request_pad),
4995         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4996         (gst_element_class_get_pad_template_list),
4997         (gst_element_class_get_pad_template), (gst_element_error_func),
4998         (gst_element_get_random_pad), (gst_element_get_event_masks),
4999         (gst_element_send_event), (gst_element_seek),
5000         (gst_element_get_query_types), (gst_element_query),
5001         (gst_element_get_formats), (gst_element_convert),
5002         (gst_element_is_locked_state), (gst_element_set_locked_state),
5003         (gst_element_sync_state_with_parent), (gst_element_change_state),
5004         (gst_element_finalize), (gst_element_yield),
5005         (gst_element_interrupt), (gst_element_set_scheduler),
5006         (gst_element_get_scheduler), (gst_element_set_loop_function):
5007         * gst/gstelement.h:
5008         * gst/gstevent.h:
5009         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
5010         (gst_format_get_by_nick), (gst_format_get_details),
5011         (gst_format_iterate_definitions):
5012         * gst/gstformat.h:
5013         * gst/gstindex.c: (gst_index_gtype_resolver):
5014         * gst/gstinfo.c:
5015         * gst/gstinfo.h:
5016         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
5017         (gst_mem_chunk_free):
5018         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
5019         (gst_object_ref), (gst_object_unref), (gst_object_sink),
5020         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
5021         (gst_object_dispatch_properties_changed),
5022         (gst_object_set_name_default), (gst_object_set_name),
5023         (gst_object_get_name), (gst_object_set_name_prefix),
5024         (gst_object_get_name_prefix), (gst_object_set_parent),
5025         (gst_object_get_parent), (gst_object_unparent),
5026         (gst_object_check_uniqueness), (gst_object_save_thyself),
5027         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
5028         (gst_object_set_property), (gst_object_get_property),
5029         (gst_object_get_path_string):
5030         * gst/gstobject.h:
5031         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
5032         (gst_real_pad_init), (gst_real_pad_get_property),
5033         (gst_pad_custom_new), (gst_pad_get_direction),
5034         (gst_pad_set_active), (gst_pad_is_active),
5035         (gst_pad_set_event_function), (gst_pad_is_linked),
5036         (gst_pad_link_free), (gst_pad_link_intersect),
5037         (gst_pad_link_fixate), (gst_pad_set_caps),
5038         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
5039         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
5040         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
5041         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
5042         (gst_pad_get_caps), (gst_pad_peer_get_caps),
5043         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
5044         (gst_pad_realize), (gst_pad_get_allowed_caps),
5045         (gst_real_pad_dispose), (gst_real_pad_finalize),
5046         (gst_pad_collectv), (gst_pad_collect_valist),
5047         (gst_pad_template_dispose), (gst_pad_template_new),
5048         (gst_pad_get_internal_links):
5049         * gst/gstpad.h:
5050         * gst/gstpipeline.c: (gst_pipeline_dispose),
5051         (gst_pipeline_change_state):
5052         * gst/gstpipeline.h:
5053         * gst/gstplugin.c:
5054         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
5055         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
5056         * gst/gstpluginfeature.h:
5057         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5058         * gst/gstquery.c: (_gst_query_type_initialize),
5059         (gst_query_type_register), (gst_query_type_get_by_nick),
5060         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
5061         * gst/gstquery.h:
5062         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
5063         * gst/gstscheduler.c: (gst_scheduler_add_element),
5064         (gst_scheduler_factory_create):
5065         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5066         (gst_structure_free), (gst_structure_set_name),
5067         (gst_structure_id_set_value), (gst_structure_set_value),
5068         (gst_structure_set_valist), (gst_structure_remove_field),
5069         (gst_structure_remove_fields),
5070         (gst_structure_remove_fields_valist),
5071         (gst_structure_remove_all_fields), (gst_structure_foreach),
5072         (gst_structure_map_in_place),
5073         (gst_caps_structure_fixate_field_nearest_int),
5074         (gst_caps_structure_fixate_field_nearest_double):
5075         * gst/gststructure.h:
5076         * gst/gstsystemclock.c: (gst_system_clock_class_init),
5077         (gst_system_clock_init), (gst_system_clock_dispose),
5078         (gst_system_clock_async_thread),
5079         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
5080         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5081         * gst/gstsystemclock.h:
5082         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5083         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5084         * gst/gsttaginterface.c:
5085         * gst/gstthread.c: (gst_thread_dispose),
5086         (gst_thread_release_children_locks), (gst_thread_change_state),
5087         (gst_thread_main_loop):
5088         * gst/gsttrashstack.h:
5089         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5090         * gst/gsttypes.h:
5091         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5092         (gst_element_request_pad), (gst_element_get_pad_from_template),
5093         (gst_element_request_compatible_pad),
5094         (gst_element_get_compatible_pad_filtered),
5095         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5096         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5097         (gst_element_link_many), (gst_element_link),
5098         (gst_element_link_pads), (gst_element_unlink_pads),
5099         (gst_element_unlink_many), (gst_element_unlink),
5100         (gst_pad_can_link_filtered), (gst_pad_can_link),
5101         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5102         (gst_object_default_error), (gst_bin_add_many),
5103         (gst_bin_remove_many), (gst_element_populate_std_props),
5104         (gst_element_class_install_std_props), (gst_buffer_merge),
5105         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5106         (link_fold_func), (gst_pad_proxy_setcaps):
5107         * gst/gstutils.h:
5108         * gst/gstvalue.c: (gst_value_deserialize_string):
5109         * gst/parse/grammar.y:
5110         * gst/schedulers/gstbasicscheduler.c:
5111         (gst_basic_scheduler_cothreaded_chain),
5112         (gst_basic_scheduler_chain_recursive_add),
5113         (gst_basic_scheduler_pad_link):
5114         * gst/schedulers/gstoptimalscheduler.c:
5115         (get_group_schedule_function),
5116         (gst_opt_scheduler_state_transition),
5117         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5118         * libs/gst/bytestream/bytestream.c:
5119         * libs/gst/dataprotocol/dataprotocol.c:
5120         (gst_dp_header_from_buffer):
5121         * po/nb.po:
5122         * po/ru.po:
5123         * tests/threadstate/threadstate2.c: (eos):
5124         * tools/gst-compprep.c: (main):
5125         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5126         (print_pad_info), (print_children_info):
5127         * tools/gst-launch.c: (idle_func), (main):
5128         * tools/gst-md5sum.c: (idle_func), (main):
5129         * tools/gst-xmlinspect.c: (print_element_info):
5130         First THREADED backport attempt, focusing on adding locks and
5131         making sure the API is threadsafe. Needs more work. More docs
5132         follow this week.
5133
5134 2005-02-24  Andy Wingo  <wingo@pobox.com>
5135
5136         * tests/bench-complexity.scm:
5137         * tests/complexity.gnuplot: New files, good for running complexity
5138         benchmarks.
5139
5140         * tests/Makefile.am:
5141         * tests/complexity.c: New test, sets up N elements, at each level
5142         teeing into M streams per element. Eeeenteresting.
5143
5144         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5145         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5146         running bench-mass_elements.scm.
5147
5148         * tests/bench-mass_elements.scm: New script, runs mass_elements
5149         for various numbers of identities, outputting the results to a
5150         file. Requires guile 1.6. Just for testing.
5151
5152 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5153
5154         * gst/schedulers/fairscheduler.c:
5155           compile with debug disabled
5156
5157 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5158
5159         * configure.ac:
5160           hunting season on 0.9 is now OPEN
5161
5162 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5163
5164         * docs/libs/tmpl/gstcontrol.sgml:
5165         * docs/libs/tmpl/gstdparam.sgml:
5166         * docs/libs/tmpl/gstdplinint.sgml:
5167         * docs/libs/tmpl/gstdpman.sgml:
5168         * docs/libs/tmpl/gstdpsmooth.sgml:
5169         * docs/libs/tmpl/gstunitconvert.sgml:
5170           more docs for the state of dparams
5171
5172 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5173
5174         * gst/gstelementfactory.c: (gst_element_factory_create):
5175         * gst/gstobject.c: (gst_object_init),
5176         (gst_object_set_name_default), (gst_object_set_name):
5177           name objects by default, not in gst_element_factory_create. Allows
5178           using elements created with g_object_new. (fixes #167283)
5179
5180 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5181
5182         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5183           make the time that debugging functions print relative to when
5184           gst_init was called
5185
5186 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5187
5188         * gst/gsttaginterface.c:
5189           Fix inline docs: tag setter vararg functions are NULL-terminated,
5190           GST_TAG_INVALID doesn't exist any more.
5191
5192 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5193
5194         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5195         Allocate the 1 byte more memory that was forgotten!!!!!
5196         fixes memory corruption on 64bit platforms
5197
5198 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5199
5200         * docs/pwg/building-pads.xml:
5201         * docs/pwg/intro-basics.xml:
5202           fixed a few typos, relabeled introductionary list of types
5203         * docs/random/ensonic/dparams.txt:
5204           more notes abut dparam changes
5205         * libs/gst/control/dparam.c: (gst_dparam_attach):
5206         * libs/gst/control/dparammanager.c:
5207         * libs/gst/control/dparammanager.h:
5208           - many comments and notes on dparam implementation
5209           - new dparams are were not initialized to the default value
5210             from param spec
5211
5212 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5213
5214         submitted by: Peter Astakhov
5215
5216         * po/LINGUAS:
5217         * po/ru.po:
5218           adding Russian translation
5219
5220 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5221
5222         * configure.ac:
5223         * docs/gst/Makefile.am:
5224         * docs/libs/Makefile.am:
5225           make sure popt is added to gtk-doc flags.  Fixes #147782.
5226
5227 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5228
5229         * docs/faq/using.xml:
5230           Fix typo in FAQ (artssink => artsdsink)
5231
5232 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5233
5234         * tools/gst-launch.1.in:
5235           Fix typo (#166699).
5236
5237 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5238
5239         * docs/faq/using.xml:
5240           Add -v argument to fakesrc/fakesink gst-launch line,
5241           so that the promised output will actually show up.
5242
5243 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5244
5245         * gst/gstthread.c: (gst_thread_change_state):
5246           Implement state-change error handling (#166073).
5247
5248 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5249
5250         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5251           Release interrupt after handling (#166250).
5252
5253 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5254
5255         * configure.ac:
5256           back to HEAD
5257
5258 === release 0.8.9 ===
5259
5260 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5261
5262         * NEWS:
5263         * RELEASE:
5264         * configure.ac:
5265           releasing 0.8.9, "Like Eating Glass"
5266
5267 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5268
5269         submitted by: Clytie Siddall
5270
5271         * po/vi.po: Added Vietnamese translation
5272
5273 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5274
5275         patch by: Tim Philipp-Müller
5276
5277         * configure.ac:
5278         * gst/gstpad.c:
5279           unref data when probe function returns FALSE.  Fixes #166362
5280
5281 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5282
5283         * gst/gst.c: (gst_init_get_popt_table):
5284           Fix typo (#166269).
5285
5286 2005-02-04  Andy Wingo  <wingo@pobox.com>
5287
5288         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5289         the debugging on whether the caps are compatible.
5290
5291 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5292
5293         * docs/manual/basics-elements.xml:
5294           Fix two typos.
5295
5296 2005-02-02  Wim Taymans  <wim@fluendo.com>
5297
5298         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5299         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5300         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5301         Remove some FIXMEs after analysing and commenting why they
5302         are not issues.
5303
5304 2005-02-02  Wim Taymans  <wim@fluendo.com>
5305
5306         * gst/schedulers/gstoptimalscheduler.c:
5307         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5308         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5309         (get_invalid_call), (chain_invalid_call),
5310         (get_group_schedule_function), (loop_group_schedule_function),
5311         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5312         (gst_opt_scheduler_state_transition),
5313         (gst_opt_scheduler_add_element),
5314         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5315         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5316         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5317         (gst_opt_scheduler_show):
5318         Added lock to protect scheduler data structures.
5319
5320 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5321
5322         * testsuite/threads/threadi.c: (cb_data):
5323           Fix buglet in test.
5324
5325 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5326
5327         * testsuite/threads/Makefile.am:
5328         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5329           On Wim's request, split the test in three separately-compiled
5330           tests that each test a very specific bug. Two of them still fail,
5331           will create bugs for those. threadi.c indicates why they fail.
5332
5333 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5334
5335         * gst/schedulers/gstoptimalscheduler.c:
5336         (get_group_schedule_function):
5337           Try to work with the threading mess that queue_link is.
5338
5339 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5340
5341         * gst/gstbin.c: (gst_bin_remove_func):
5342           Explicitely make an element release locks in a group when being
5343           remove from a bin.
5344         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5345           If there's no scheduler, always return immediately (similar to
5346           gst_element_interrupt).
5347
5348 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5349
5350         * gst/gstbin.c: (gst_bin_child_state_change_func):
5351           Remove a piece of code that could never be reached.
5352         * docs/gst/gstreamer-sections.txt:
5353         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5354         (gst_pad_call_get_function):
5355         * gst/gstpad.h:
5356         * testsuite/pad/Makefile.am:
5357           Fix #150546, enable tests.
5358
5359 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5360
5361         * docs/pwg/advanced-types.xml:
5362           Fix description for buffer-frames=0.
5363         * docs/gst/tmpl/gstbin.sgml:
5364         * gst/gstbin.c: (gst_bin_child_state_change_func),
5365         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5366         * gst/gstbin.h:
5367         * testsuite/threads/Makefile.am:
5368         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5369         (cb_state), (cb_play), (main):
5370           Fix non-recursive state changes to *really* change the state
5371           of the object, and not just call parent_class->state_change.
5372           Fix a lot of lockups caused by this. Fixes #132775. Add test
5373           for the problem. Also enable test to show #142588 (fixed).
5374         * gst/gstthread.c: (gst_thread_change_state),
5375         (gst_thread_child_state_change):
5376           Don't exit the thread if we go to NULL and are inside thread
5377           context. Instead, return control to the main thread context
5378           and exit from there.
5379         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5380           Don't unset virtual functions, since those may still be used.
5381           That's not necessarily correct, but suffices for now.
5382         * configure.ac:
5383         * testsuite/Makefile.am:
5384         * testsuite/pad/Makefile.am:
5385         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5386         (gst_test_sink_base_init), (gst_test_sink_chain),
5387         (gst_test_sink_init), (main):
5388         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5389         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5390         (main):
5391         * testsuite/pad/link.c: (gst_test_element_class_init),
5392         (gst_test_element_base_init), (gst_test_src_get),
5393         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5394         (gst_test_filter_loop), (gst_test_filter_init),
5395         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5396         (cb_error), (main):
5397           Add tests to show #150546. Pass, but should fail (currently
5398           disabled from the testsuite).
5399         * gst/gstscheduler.c: (gst_scheduler_dispose):
5400           Dereference child schedulers on dispose (#94464).
5401         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5402           Fix typo.
5403         * testsuite/threads/thread.c: (main):
5404           Add more debug.
5405
5406 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5407
5408         * gst/gstpad.c: (gst_pad_push):
5409           Oops, revert previous commit, broke testsuite...
5410
5411 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5412
5413         * gst/gstpad.c: (gst_pad_push):
5414           Add check that the pad on which the push is performed is not a
5415           get-based pad (#150546).
5416
5417 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5418
5419         * gst/elements/gsttypefindelement.c:
5420         (gst_type_find_element_handle_event):
5421           Fix buffer pushing if stream EOSes during typefinding.
5422
5423 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5424
5425         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5426
5427         * gst/gstvalue.c: (gst_string_wrap):
5428           Allow NULL-strings as argument (#165365).
5429
5430 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5431
5432         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5433
5434         * gst/schedulers/faircothreads.c:
5435         (gst_fair_scheduler_cothread_queue_show):
5436           Fix build without debug enabled.
5437
5438 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5439
5440         * docs/gst/gstreamer-sections.txt:
5441         * docs/libs/gstreamer-libs-docs.sgml:
5442         * docs/libs/gstreamer-libs-sections.txt:
5443         * docs/libs/tmpl/gstcontrol.sgml:
5444         * docs/libs/tmpl/gstdparam.sgml:
5445         * docs/libs/tmpl/gstdplinint.sgml:
5446         * docs/libs/tmpl/gstdpman.sgml:
5447         * docs/libs/tmpl/gstdpsmooth.sgml:
5448         * docs/libs/tmpl/gstputbits.sgml:
5449         * docs/libs/tmpl/gstunitconvert.sgml:
5450         * libs/gst/control/dparam.c:
5451         * libs/gst/control/dparam.h:
5452         * libs/gst/control/dparammanager.c:
5453         (gst_dpman_add_required_dparam_callback),
5454         (gst_dpman_add_required_dparam_direct),
5455         (gst_dpman_add_required_dparam_array),
5456         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5457         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5458         (gst_dpman_get_manager)
5459           restructured DParam docs
5460
5461 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5462
5463         * gst-element-check.m4:
5464           Only check for gst-inspect if we haven't already
5465           found it in previous element check runs
5466
5467 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5468
5469         * docs/gst/Makefile.am:
5470         * docs/libs/Makefile.am:
5471           fixed install rules to treat style.css as optional
5472
5473 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5474
5475         * docs/gst/Makefile.am:
5476         * docs/libs/Makefile.am:
5477           install style.css along with docs
5478         * docs/gst/tmpl/gstbin.sgml:
5479         * docs/gst/tmpl/gstclock.sgml:
5480         * docs/gst/tmpl/gstdata.sgml:
5481         * docs/gst/tmpl/gstelement.sgml:
5482         * gst/gstbin.h:
5483         * gst/gstelement.c: (gst_element_class_init):
5484         * gst/gstelement.h:
5485           fixing incomplete docs
5486
5487 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5488
5489         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5490           Don't unref seek event twice when fflush() fails
5491           
5492 2005-01-22  David Schleef  <ds@schleef.org>
5493
5494         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5495
5496 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5497
5498         * docs/gst/Makefile.am:
5499         * docs/libs/Makefile.am:
5500           added params for deprecation guards
5501         * gst/gst.c:
5502         * gst/gst.h:
5503         * gst/gsterror.c: (_gst_resource_errors_init),
5504         (_gst_stream_errors_init):
5505         * gst/gsterror.h:
5506           documented some more enums
5507
5508 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5509         * gst/autoplug/gstspideridentity.c:
5510         Cosmetic fix - spider_find_peek should be static
5511         * gst/parse/parse.l:
5512         Applying fix for #164261
5513
5514 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5515
5516         * docs/gst/gstreamer-sections.txt:
5517         * docs/gst/tmpl/gstplugin.sgml:
5518         * docs/libs/gstreamer-libs-sections.txt:
5519         * docs/libs/tmpl/gstcontrol.sgml:
5520         * gst/gstbuffer.h:
5521         * gst/gsttag.h:
5522         * gst/gstvalue.c:
5523           added docs for the TAG defines
5524
5525 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5526
5527         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5528           Only unref entry if there is an entry.
5529
5530 2005-01-17  Wim Taymans  <wim@fluendo.com>
5531
5532         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5533         (remove_from_group), (schedule_group), (normalize_group),
5534         (gst_opt_scheduler_iterate):
5535         Also ref/unref decoupled elements before iterating the
5536         group since they are not added to the list of elements.
5537
5538 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5539
5540         * docs/manual/highlevel-components.xml:
5541           Add subtitle/streamselection as new features to playbin.
5542
5543 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5544
5545         * docs/manual/manual.xml:
5546           Re-enable dataaccess docs (oops).
5547
5548 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5549
5550         * docs/pwg/advanced-types.xml:
5551         * docs/random/mimetypes:
5552           Add documentation on libsndfile types (#163309), by Steve Baker
5553           <steve@stevebaker.org>.
5554         * gst/gstelement.c: (gst_element_release_request_pad):
5555           If an element has no explicit function, just remove the pad.
5556
5557 2005-01-17  Luca Ognibene  <luogni@tin.it>
5558
5559         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5560
5561         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5562           Fix memleak (#163801).
5563
5564 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5565
5566         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5567           I think this is actually more correct...
5568
5569 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5570
5571         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5572           Another workaround for memory access while destroyed in callback.
5573           Please, someone with refcount knowledge, have a look at this.
5574
5575 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5576
5577         * docs/faq/faq.xml:
5578         * docs/faq/legal.xml:
5579           move the legal Q&A here
5580
5581 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5582
5583         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5584         (gst_tee_request_new_pad):
5585           Fix negotiation.
5586
5587 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5588
5589         * docs/random/omega/caps2:
5590         * testsuite/caps/caps_strings:
5591           replace framerate aproximations by their real value
5592           (24000/1001, 30000/1001, 60000/1001)
5593           Partially fixes bug #164049
5594
5595 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5596
5597         * docs/gst/Makefile.am:
5598           don't fail on the stupid GstPoptOption
5599
5600 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5601
5602         * gst/gstpad.h:
5603         * gst/gstprobe.c:
5604           allow probes to work on ghost pads by realizing the pad
5605           probe debugging
5606
5607 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5608
5609         * docs/gst/gstreamer-sections.txt:
5610         * docs/gst/tmpl/gstpad.sgml:
5611         * gst/gstpad.c: (gst_pad_set_active_recursive):
5612         * gst/gstpad.h:
5613           Add gst_pad_set_active_recursive().
5614
5615 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5616
5617         * docs/random/release:
5618           updates
5619         * gst/gst_private.h:
5620         * gst/gstinfo.c:
5621         * gst/gstobject.c:
5622           move deep_notify logging to a new category
5623         * gst/gstprobe.c:
5624         * gst/gstprobe.h:
5625           add stuff so bindings can wrap probes
5626
5627 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5628
5629         * gst/gstplugin.c: (gst_plugin_load):
5630           Fix plugin loading if plugin/lib was already loaded. Fixes
5631           #163383
5632
5633 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5634
5635         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5636
5637         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5638           Protect plugin loading by a mutex so it's threadsafe. Fixes
5639           #163234.
5640
5641 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5642
5643         * gst/gstevent.c: (_gst_event_copy):
5644           Reference source object when copying events, since it'll be
5645           dereferenced on event dereferencing as well.
5646
5647 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5648
5649         * docs/gst/gstreamer-sections.txt:
5650         * docs/gst/tmpl/gstevent.sgml:
5651         * gst/gstevent.c: (gst_event_new_filler_stamped),
5652         (gst_event_filler_get_duration):
5653         * gst/gstevent.h:
5654           Add two new functions for filler events (which are used to
5655           synchronize streams if one of them is not having any data
5656           for a while) without interrupting the actual data-stream.
5657           Basically a no-op.
5658         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5659         (gst_queue_link_sink), (gst_queue_link_src),
5660         (gst_queue_change_state):
5661           Allow for renegotiation while filled. Required for stream
5662           switching while playing.
5663
5664 2005-01-08  Benjamin Otte  <otte@gnome.org>
5665
5666         * gst/gstelement.c: (gst_element_link_many):
5667           fix up g_return_if_fail's
5668         * po/LINGUAS:
5669         * po/de.po:
5670           add German translation, that was somehow not included
5671
5672 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5673
5674         * docs/random/mimetypes:
5675           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5676           do not add them to riff-lib as they are not common
5677
5678 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5679
5680         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5681           Check for existence of probe after performing the probe before
5682           re-accessing it to prevent segfaults caused by removal of the
5683           probe in the callback.
5684
5685 2005-01-05  David Schleef  <ds@schleef.org>
5686
5687         * testsuite/registry/Makefile.am:
5688         * testsuite/registry/gst-print-formats.c:
5689         (print_pad_templates_info), (print_element_list),
5690         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5691         (g_list_uniqify), (get_pad_templates_info),
5692         (get_element_mime_list), (print_mime_list), (main): A little
5693         program that looks through the registry to find elements of
5694         a given type.  Not particularly interesting as a test, except
5695         that there's no other test covering the same area.
5696
5697 2005-01-05  David Schleef  <ds@schleef.org>
5698
5699         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5700         (fault_handler_sigaction), (fault_spin),
5701         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5702         in signal.h-type signal handlers by not calling forbidden functions,
5703         including gst_element_set_state().
5704
5705 2005-01-05  David Schleef  <ds@schleef.org>
5706
5707         * gst/gstvalue.h: Mark _gst_reserved[] as private
5708
5709 2005-01-05  David Schleef  <ds@schleef.org>
5710
5711         * gst/gstvalue.c: Fix doc build problem.
5712
5713 2005-01-05  David Schleef  <ds@schleef.org>
5714
5715         * gst/gstvalue.c: Add some documentation
5716
5717 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5718
5719         * docs/README:
5720           another shell oneliner for empty return value docs
5721         * gst/gstcaps.c:
5722         * gst/gstvalue.c:
5723         * libs/gst/control/dparam.c:
5724           more doc fixes (parameters and return values)
5725
5726 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5727
5728         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5729
5730         * gst/gstregistry.h:
5731         * gst/registries/gstxmlregistry.c:
5732           Fix macro's for Mingw (fixes #162276).
5733
5734 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5735
5736         * docs/README:
5737           quick shell oneliner to find undocumented members
5738         * docs/gst/tmpl/gstplugin.sgml:
5739         * docs/gst/tmpl/gstscheduler.sgml:
5740         * docs/gst/tmpl/gstthread.sgml:
5741           more enumtypes cleanup
5742         * gst/gsterror.h:
5743           activated documentation comments, now someone needs to document
5744           the enums :(
5745
5746 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5747
5748         * docs/manual/manual.xml:
5749           Add dataaccess part (doh!).
5750
5751 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5752
5753         * docs/manual/advanced-autoplugging.xml:
5754           Fix typo (intiate -> initiate).
5755
5756 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5757
5758         * docs/random/bbb/streamselection:
5759           Add some notes on how to handle multi-subtitle/-audio streams.
5760
5761 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5762
5763         * docs/gst/gstreamer-docs.sgml:
5764         * docs/gst/gstreamer-sections.txt:
5765         * docs/gst/tmpl/gstenumtypes.sgml:
5766         * docs/gst/tmpl/gsterror.sgml:
5767         * docs/gst/tmpl/gstevent.sgml:
5768         * docs/gst/tmpl/gstpad.sgml:
5769         * docs/gst/tmpl/gstpadtemplate.sgml:
5770         * docs/gst/tmpl/gstthread.sgml:
5771           removed gstenumtypes section from docs and put all the enums into
5772           their sections
5773
5774 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5775
5776         * gst/gstplugin.c:
5777           document gst_library_load a bit more (riff special case + return
5778           value if already loaded)
5779         * testsuite/bytestream/filepadsink.c:
5780           plugin name is 'gstbytestream', not 'bytestream'
5781
5782 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5783
5784         * docs/random/bbb/subtitles:
5785           Add some first mind rumblings on proper subtitle support.
5786
5787 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5788
5789         * po/ca.po:
5790         * po/sv.po:
5791           updated translations
5792
5793 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5794
5795         * docs/manual/advanced-dataaccess.xml:
5796           Add section on how to use fakesrc/fakesink/identity in your
5797           application, plus section on how to embed plugins. Also mention
5798           probes.
5799         * docs/manual/appendix-checklist.xml:
5800         * docs/manual/appendix-debugging.xml:
5801         * docs/manual/appendix-gnome.xml:
5802         * docs/manual/appendix-integration.xml:
5803           Debug -> checklist, GNOME -> integration, add sections on Linux,
5804           KDE integration and add other things useful for application
5805           development.
5806         * docs/manual/manual.xml:
5807           Remove some fixmes, update some file pointers.
5808         * docs/pwg/appendix-checklist.xml:
5809           Fix typo.
5810         * docs/pwg/building-boiler.xml:
5811           Remove ugly header and add commented fixme.
5812         * docs/pwg/pwg.xml:
5813           Add fixme.
5814         * examples/manual/Makefile.am:
5815           Add example for added docs.
5816
5817 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5818
5819         * configure.ac:
5820           back to HEAD
5821
5822 === release 0.8.8 ===
5823
5824 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5825
5826         * NEWS:
5827         * RELEASE:
5828         * configure.ac:
5829           Releasing 0.8.8, "I'll Take Care Of You"
5830
5831 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5832
5833         * configure.ac:
5834           second prerelease
5835
5836 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5837
5838         patch by: Wim Taymans
5839
5840         * gst/gstbin.c:
5841           Fix for #159852 - make iterate emission threadsafe
5842
5843 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5844
5845         * docs/faq/cvs.xml:
5846           notes about new fdo account request
5847
5848 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5849
5850         * docs/gst/gstreamer-docs.sgml:
5851         * docs/gst/tmpl/gstenumtypes.sgml:
5852         * docs/gst/tmpl/gstplugin.sgml:
5853         * docs/libs/gstreamer-libs-docs.sgml:
5854           Added missing short docs. Added ids for navigation.
5855
5856 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5857
5858         * docs/manual/advanced-autoplugging.xml:
5859         * docs/manual/advanced-schedulers.xml:
5860         * docs/manual/advanced-threads.xml:
5861           Rewrites. Remove cothreads, go a bit into opt specifically,
5862           document threads and their gotchas, and do some technical stuff
5863           on autoplugging plus add some working examples. Fixes #157395.
5864         * examples/manual/Makefile.am:
5865           Add typefind/autoplugger example (one that actually works).
5866           Remove queue example since it's a duplicate of the thread one.
5867
5868 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5869
5870         * gst/gstvalue.c: (gst_value_deserialize_string):
5871           use deprecated g_value_set_string_take_ownership to keep compatible
5872           with glib 2.2
5873
5874 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5875
5876         * gst/gstvalue.c: (gst_value_deserialize_string):
5877           revert last patch, only dom a g_utf8_validate now before accepting
5878           the string - caps parsing strips " from strings so we can't rely on
5879           them
5880         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5881           disable a test that tested the above and comment it
5882
5883 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5884
5885         Patch reviewed by David Schleef  <ds@schleef.org>
5886
5887         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5888         bug #153882)
5889         * win32/gstenumtypes.h: same
5890
5891 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5892
5893         * gst/gstpad.c: (gst_pad_query):
5894           Do query on realized pad, similar to how convert/send_event handle
5895           this. Also makes sense, since this pad belongs to the function to
5896           which this query will be sent. Fixes #158163.
5897
5898 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5899
5900         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5901
5902 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5903
5904         * docs/faq/general.xml: fix pipeline to actually work
5905
5906 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5907
5908         * gst/gstvalue.c: (gst_value_deserialize_string):
5909           check that a simple string that gets deserialized does not contain
5910           invalid characters
5911         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5912           remove a test that tested a wring behaviour
5913
5914 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5915
5916         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5917
5918         * docs/manual/intro-motivation.xml:
5919           Fix typos.
5920
5921 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5922
5923         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5924
5925         * docs/gst/tmpl/gstprobe.sgml:
5926           Fix documentation of probe callback - it is supposed to return
5927           FALSE, not TRUE, to remove data from the stream (#159087).
5928
5929 2004-12-16  Daniel Gazard  <dany42@free.fr>
5930
5931         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5932
5933         * gst/gstelementfactory.c: (gst_element_factory_create):
5934           Fix compile failure if compiling without libxml2 support (#149936).
5935
5936 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5937
5938         * docs/manual/advanced-autoplugging.xml:
5939         * docs/manual/highlevel-components.xml:
5940           Move spider from autoplugging to components. Autoplugging is for
5941           internals, not for solutions. ;-).
5942
5943 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5944
5945         * docs/random/ds/0.9-suggested-changes:
5946           Make note on device/location/uri property names.
5947
5948 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5949
5950         * docs/manual/advanced-autoplugging.xml:
5951         * docs/manual/advanced-clocks.xml:
5952         * docs/manual/advanced-interfaces.xml:
5953         * docs/manual/advanced-metadata.xml:
5954         * docs/manual/advanced-position.xml:
5955         * docs/manual/advanced-schedulers.xml:
5956         * docs/manual/advanced-threads.xml:
5957         * docs/manual/appendix-gnome.xml:
5958         * docs/manual/appendix-programs.xml:
5959         * docs/manual/appendix-quotes.xml:
5960         * docs/manual/autoplugging.xml:
5961         * docs/manual/basics-bins.xml:
5962         * docs/manual/basics-data.xml:
5963         * docs/manual/basics-elements.xml:
5964         * docs/manual/basics-helloworld.xml:
5965         * docs/manual/basics-init.xml:
5966         * docs/manual/basics-pads.xml:
5967         * docs/manual/basics-plugins.xml:
5968         * docs/manual/bins-api.xml:
5969         * docs/manual/bins.xml:
5970         * docs/manual/buffers-api.xml:
5971         * docs/manual/buffers.xml:
5972         * docs/manual/clocks.xml:
5973         * docs/manual/components.xml:
5974         * docs/manual/cothreads.xml:
5975         * docs/manual/debugging.xml:
5976         * docs/manual/dparams-app.xml:
5977         * docs/manual/dynamic.xml:
5978         * docs/manual/elements-api.xml:
5979         * docs/manual/elements.xml:
5980         * docs/manual/factories.xml:
5981         * docs/manual/gnome.xml:
5982         * docs/manual/goals.xml:
5983         * docs/manual/helloworld.xml:
5984         * docs/manual/helloworld2.xml:
5985         * docs/manual/highlevel-components.xml:
5986         * docs/manual/highlevel-xml.xml:
5987         * docs/manual/init-api.xml:
5988         * docs/manual/intro-basics.xml:
5989         * docs/manual/intro-motivation.xml:
5990         * docs/manual/intro-preface.xml:
5991         * docs/manual/intro.xml:
5992         * docs/manual/links-api.xml:
5993         * docs/manual/links.xml:
5994         * docs/manual/manual.xml:
5995         * docs/manual/motivation.xml:
5996         * docs/manual/pads-api.xml:
5997         * docs/manual/pads.xml:
5998         * docs/manual/plugins-api.xml:
5999         * docs/manual/plugins.xml:
6000         * docs/manual/programs.xml:
6001         * docs/manual/queues.xml:
6002         * docs/manual/quotes.xml:
6003         * docs/manual/schedulers.xml:
6004         * docs/manual/states-api.xml:
6005         * docs/manual/states.xml:
6006         * docs/manual/threads.xml:
6007         * docs/manual/typedetection.xml:
6008         * docs/manual/win32.xml:
6009         * docs/manual/xml.xml:
6010           Try 2. This time, include a short preface as a "general
6011           introduction", also add code blocks around all code samples
6012           so they get compiled. We still need a way to tell readers
6013           the filename of the code sample. In some cases, don't show
6014           all code in the documentation, but do include it in the generated
6015           code. This allows for focussing on specific bits in the docs,
6016           while still having a full test application available.
6017         * examples/manual/Makefile.am:
6018           Fix up examples for new ADM. Add several of the new examples that
6019           were either added or were missing from the build system.
6020         * examples/manual/extract.pl:
6021           Allow nameless blocks.
6022
6023 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6024
6025         * docs/manual/elements-api.xml:
6026         * docs/manual/helloworld.xml:
6027         * examples/manual/extract.pl:
6028           fix last example.  Add example of adding code blocks that are not
6029           shown in docbook output.
6030
6031 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6032
6033         * docs/manual/dynamic.xml:
6034         * docs/manual/elements-api.xml:
6035         * docs/manual/gnome.xml:
6036         * docs/manual/helloworld2.xml:
6037         * docs/manual/init-api.xml:
6038         * docs/manual/queues.xml:
6039         * docs/manual/threads.xml:
6040         * docs/manual/xml.xml:
6041         * examples/manual/extract.pl:
6042           Make it possible to extract example code from separate blocks.
6043           Should make Ronald happy.
6044
6045 2004-12-15  Wim Taymans  <wim@fluendo.com>
6046
6047         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6048         (remove_from_group), (group_elements_set_visited),
6049         (normalize_group), (gst_opt_scheduler_iterate):
6050         Fix bug where a flag was not updated on a decoupled entry point 
6051         because we were just checking the group element list and decoupled
6052         elements are not in that list..
6053
6054 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6055
6056         * docs/manual/advanced-autoplugging.xml:
6057         * docs/manual/advanced-clocks.xml:
6058         * docs/manual/advanced-dparams.xml:
6059         * docs/manual/advanced-interfaces.xml:
6060         * docs/manual/advanced-metadata.xml:
6061         * docs/manual/advanced-position.xml:
6062         * docs/manual/advanced-schedulers.xml:
6063         * docs/manual/advanced-threads.xml:
6064         * docs/manual/appendix-debugging.xml:
6065         * docs/manual/appendix-gnome.xml:
6066         * docs/manual/appendix-programs.xml:
6067         * docs/manual/appendix-quotes.xml:
6068         * docs/manual/appendix-win32.xml:
6069         * docs/manual/autoplugging.xml:
6070         * docs/manual/basics-bins.xml:
6071         * docs/manual/basics-data.xml:
6072         * docs/manual/basics-elements.xml:
6073         * docs/manual/basics-helloworld.xml:
6074         * docs/manual/basics-init.xml:
6075         * docs/manual/basics-pads.xml:
6076         * docs/manual/basics-plugins.xml:
6077         * docs/manual/bins-api.xml:
6078         * docs/manual/bins.xml:
6079         * docs/manual/buffers-api.xml:
6080         * docs/manual/buffers.xml:
6081         * docs/manual/clocks.xml:
6082         * docs/manual/components.xml:
6083         * docs/manual/cothreads.xml:
6084         * docs/manual/debugging.xml:
6085         * docs/manual/dparams-app.xml:
6086         * docs/manual/dynamic.xml:
6087         * docs/manual/elements-api.xml:
6088         * docs/manual/elements.xml:
6089         * docs/manual/factories.xml:
6090         * docs/manual/gnome.xml:
6091         * docs/manual/goals.xml:
6092         * docs/manual/helloworld.xml:
6093         * docs/manual/helloworld2.xml:
6094         * docs/manual/highlevel-components.xml:
6095         * docs/manual/highlevel-xml.xml:
6096         * docs/manual/init-api.xml:
6097         * docs/manual/intro-motivation.xml:
6098         * docs/manual/intro-preface.xml:
6099         * docs/manual/intro.xml:
6100         * docs/manual/links-api.xml:
6101         * docs/manual/links.xml:
6102         * docs/manual/manual.xml:
6103         * docs/manual/motivation.xml:
6104         * docs/manual/pads-api.xml:
6105         * docs/manual/pads.xml:
6106         * docs/manual/plugins-api.xml:
6107         * docs/manual/plugins.xml:
6108         * docs/manual/programs.xml:
6109         * docs/manual/queues.xml:
6110         * docs/manual/quotes.xml:
6111         * docs/manual/schedulers.xml:
6112         * docs/manual/states-api.xml:
6113         * docs/manual/states.xml:
6114         * docs/manual/threads.xml:
6115         * docs/manual/typedetection.xml:
6116         * docs/manual/win32.xml:
6117         * docs/manual/xml.xml:
6118           First try at rewriting the ADM. Needs lotsamore work, but some
6119           parts might already be somewhat useful.
6120         * docs/pwg/advanced-interfaces.xml:
6121           Remove properties interface, it never actually existed (except for
6122           on my HD...).
6123
6124 2004-12-13  David Schleef  <ds@schleef.org>
6125
6126         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6127         be NULL (bug #160220).
6128
6129 2004-12-13  David Schleef  <ds@schleef.org>
6130
6131         * configure.ac: remove all mmx stuff, because it's not used.
6132         * docs/random/ds/0.9-suggested-changes: additional notes
6133         * include/Makefile.am: we don't use these anymore
6134         * include/mmx.h: remove
6135         * include/sse.h: remove
6136
6137 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6138
6139         * docs/random/mimetypes:
6140           Add FOURCC code for h264 codec (VSSH)
6141           Add alternate FOURCC codes for h263 related codecs
6142
6143 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6144
6145         * docs/manual/programs.xml:
6146           Added more gst-launch examples.
6147
6148 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6149
6150         * gst/gstqueue.c: (gst_queue_handle_src_query):
6151           Check for availability again.
6152
6153 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6154
6155         * gst/gstcaps.c: (gst_caps_compare_structures):
6156           Simple caps go first. This has the nice side-effect of fixing an
6157           obscure warning.
6158
6159 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6160
6161         * gst/gstversion.h.in:
6162           Protect header.
6163
6164 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6165
6166         * gst/schedulers/gstoptimalscheduler.c:
6167         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6168         (gst_opt_scheduler_get_wrapper):
6169           When we're recursing into a chain run, only run the directly
6170           related group, not all queued ones. This will fix a possible
6171           deadlock in chains with more than two groups.
6172
6173 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6174
6175         * autogen.sh:
6176           remove patch if autopoint fails
6177
6178 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6179
6180         * docs/gst/gstreamer-sections.txt:
6181           Document Thomas' addition, fix build, make Luis the sheriff happy.
6182
6183 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6184
6185         * gst/gstplugin.c:
6186         * gst/gstplugin.h:
6187           add accessor for version field
6188
6189 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6190
6191         submitted by: Luca Ferretti <elle.uca@infinito.it>
6192
6193         * po/LINGUAS:
6194         * po/it.po:
6195           New tranlation added: Italian
6196
6197 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6198
6199         * gst/gstpad.c: (gst_pad_is_negotiated),
6200         (gst_pad_get_negotiated_caps):
6201           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6202           it doesn't actually check the contents), so be sure to hand it
6203           a RealPad else we'll crash.
6204
6205 2004-12-03  Wim Taymans  <wim@fluendo.com>
6206
6207         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6208         (gst_queue_link), (gst_queue_handle_src_query):
6209         Reverted to 1.110 until this makes the testsuite and various
6210         apps work.
6211
6212 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6213
6214         * docs/upload.mak: fix included CVS conflict strings
6215
6216 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6217
6218         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6219
6220         * gst/gstelement.c: (gst_element_error_full):
6221           Use g_error_new_literal because error text may have
6222           percentage signs in it. Fixes #160019.
6223
6224 2004-12-01  Benjamin Otte  <otte@gnome.org>
6225
6226         * gst/elements/gstbufferstore.c:
6227         (gst_buffer_store_add_buffer_func):
6228           don't try to make subbuffers bigger than they can be. (fixes
6229           #159970)
6230
6231 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6232
6233         * docs/gst/gstreamer-sections.txt:
6234         * docs/gst/tmpl/gstvalue.sgml:
6235           Add new function to docs to fix build.
6236
6237 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6238
6239         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6240         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6241         (_gst_pad_default_fixate_foreach):
6242         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6243         * gst/gstvalue.h:
6244           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6245           in some cases (arrays), the fixedness depends on the content.
6246         * gst/gstqueue.c: (gst_queue_handle_src_query):
6247           Check for availability before doing something.
6248
6249 2004-11-29  Wim Taymans  <wim@fluendo.com>
6250
6251         * testsuite/threads/Makefile.am:
6252         * testsuite/threads/signals.c: (gst_test_get_type),
6253         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6254         (gst_test_set_property), (gst_test_get_property),
6255         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6256         (gst_test_do_prop), (run_thread), (main):
6257         Added a bunch of testcases that show threadsafety bugs in glib.
6258
6259 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6260
6261         * docs/manual/programs.xml:
6262           Added a first batch of gst-launch examples, as provided by Ronald
6263           and others from the devel-mlist
6264
6265 2004-11-28  Benjamin Otte  <otte@gnome.org>
6266
6267         * gst/gstelement.c: (gst_element_negotiate_pads):
6268           simplify
6269         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6270         (gst_value_serialize_string), (gst_value_deserialize_string):
6271           add unwrapping of previously wrapped strings. Fix bug in wrapping
6272           while at it.
6273         * testsuite/caps/value_serialize.c: (test1),
6274         (test_string_serialization), (test_string_deserialization), (main):
6275           add tests for string (de)serialization
6276
6277 2004-11-26  Wim Taymans  <wim@fluendo.com>
6278
6279         * testsuite/threads/159566.c: (object_deep_notify), (main):
6280         * testsuite/threads/Makefile.am:
6281         Added testsuite to show bug #159566
6282
6283 2004-11-25  Wim Taymans  <wim@fluendo.com>
6284
6285         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6286         (gst_thread_child_state_change), (gst_thread_main_loop):
6287         Ref the thread object in the GThread mainloop. Break out of the
6288         thread mainloop if it holds the last ref. This properly exits
6289         the threads when disposing the thread from its own context. It
6290         also avoids possible deadlocks in the dispose function.
6291
6292 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6293
6294         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6295         it is necessary to wait.
6296
6297 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6298
6299         * docs/pwg/building-boiler.xml:
6300           Make description somewhat clearer.
6301
6302 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6303
6304         * docs/upload.mak:
6305           Apparently docs changed location on FDO's server.
6306
6307 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6308
6309         * docs/pwg/appendix-checklist.xml:
6310           Add some random notes on things to check when writing an element.
6311           This list can be extended as people see fit.
6312
6313 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6314
6315         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6316         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6317         pad. The queue will now wait until it is empty and forward the new
6318         caps to the source.
6319         * gst/gstbin.c (gst_bin_set_element_sched)
6320         (gst_bin_unset_element_sched): Make sure that all elements and
6321         links are registered and unregistered with the scheduler exactly
6322         once. This elaborates on a fix by Benjamin Otte, but
6323         guarantees that decoupled elements are also registered.
6324
6325 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6326
6327         * docs/manual/quotes.xml:
6328           add a quote
6329         * configure.ac:
6330         * gst/gst.c:
6331         * gst/gstinfo.c:
6332           add LIBDIR and move init message higher up so it's at the start
6333
6334 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6335
6336         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6337         * gstreamer.spec.in: add fair
6338
6339 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6340
6341         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6342         * gst/elements/gstidentity.c: (gst_identity_class_init):
6343           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6344           <teuf@gnome.org> (#157263).
6345         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6346         (gst_type_find_handle_src_query):
6347           Subtract size of internally stored data from position queries.
6348
6349 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6350
6351         * gst/schedulers/fairscheduler.c:
6352         * gst/schedulers/faircothreads.c:
6353         * gst/schedulers/faircothreads.h:
6354         New cothread based scheduler: Fair scheduler.
6355         * gst/schedulers/gthread-cothreads.h: 
6356         Add the standard #if around the whole file.
6357         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6358         compilation of the functions defined in this file. This is
6359         necessary to be able to use this file as a normal header.
6360         * gst/schedulers/Makefile.am: Add compiling support for fair
6361         scheduler.
6362         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6363         scheduler cothreads layer from documentation generation.
6364
6365 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6366
6367         * gst/autoplug/gstspideridentity.c:
6368         (gst_spider_identity_sink_loop_type_finding):
6369           Don't crash if that function is not implemented.
6370
6371 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6372
6373         * docs/pwg/advanced-types.xml:
6374           Another typo.
6375
6376 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6377
6378         * docs/pwg/intro-preface.xml:
6379           Hm, ok, so the brackets weren't really useful...
6380         * docs/pwg/other-ntoone.xml:
6381           Fix embarassing typo.
6382
6383 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6384
6385         * docs/pwg/intro-preface.xml:
6386           Rewrite preface.
6387
6388 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6389
6390         * docs/pwg/advanced-scheduling.xml:
6391         * docs/pwg/advanced-tagging.xml:
6392         * docs/pwg/advanced-types.xml:
6393         * docs/pwg/building-boiler.xml:
6394         * docs/pwg/building-chainfn.xml:
6395         * docs/pwg/building-signals.xml:
6396         * docs/pwg/building-state.xml:
6397         * docs/pwg/building-testapp.xml:
6398         * docs/pwg/intro-basics.xml:
6399         * docs/pwg/other-manager.xml:
6400         * docs/pwg/other-source.xml:
6401           Typo fixes.
6402         * docs/pwg/other-manager.xml:
6403           Add some first content. No example code yet.
6404         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6405           Remove double newlines.
6406
6407 2004-11-04  Wim Taymans  <wim@fluendo.com>
6408
6409         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6410         (remove_from_group), (normalize_group), (group_migrate_connected),
6411         (gst_opt_scheduler_iterate):
6412         * testsuite/schedulers/.cvsignore:
6413         * testsuite/schedulers/Makefile.am:
6414         * testsuite/schedulers/queue_link.c: (main):
6415         Added testcase for scheduler segfault.
6416         Fix scheduler segfault when removing a decoupled
6417         entry point as the last element from a group.
6418
6419 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6420
6421         * gst/gstmarshal.list: add missing marshaller, fixes build
6422
6423 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6424
6425         * docs/random/signal: added notes about using BOXED for GstBuffer
6426         signal marshallers, not POINTER
6427
6428 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6429
6430         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6431         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6432         POINTER=>BOXED changes to marshal GstBuffers
6433
6434 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6435
6436         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6437         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6438
6439 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6440
6441         * docs/gst/gstreamer-sections.txt:
6442         * docs/gst/tmpl/gstcaps.sgml:
6443         * docs/gst/tmpl/gsterror.sgml:
6444         * docs/gst/tmpl/gstinfo.sgml:
6445         * docs/gst/tmpl/gstmacros.sgml:
6446         * docs/gst/tmpl/gstutils.sgml:
6447         * docs/random/ensonic/interfaces.txt:
6448         * gst/gstinfo.h:
6449           added some more docs, removed two obsolete defines
6450
6451 2004-11-02  Kjartan Maraas <as at gnome.org>
6452
6453         reviewed by: Wim Taymans, Ronald Bultje.
6454
6455         * gst/cothreads.c: (cothread_create):
6456         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6457         (gst_bin_child_state_change_func):
6458         * gst/gstbuffer.c: (gst_buffer_span):
6459         * gst/gstelement.c: (gst_element_get_index),
6460         (gst_element_get_event_masks), (gst_element_get_query_types),
6461         (gst_element_get_formats):
6462         * gst/gsterror.c: (_gst_core_errors_init),
6463         (_gst_library_errors_init), (_gst_resource_errors_init),
6464         (_gst_stream_errors_init):
6465         * gst/gstobject.c: (gst_object_default_deep_notify):
6466         * gst/gstpad.c: (gst_pad_get_event_masks),
6467         (gst_pad_get_internal_links_default):
6468         * gst/gstplugin.c: (gst_plugin_register_func),
6469         (gst_plugin_get_module):
6470         * gst/gststructure.c: (gst_structure_get_string),
6471         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6472         (gst_structure_to_abbr):
6473         * gst/gstutils.c: (gst_print_element_args):
6474         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6475         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6476         Aplied part of patch #157127: Cleanup of issues reported by 
6477         sparse.
6478         Also do not try to use cothreads when there is no cothread
6479         context yet.
6480
6481 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6482
6483         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6484         (gst_opt_scheduler_iterate):
6485         Applied patch #154061. Running a pipeline in which an element 
6486         calls GST_ELEMENT_ERROR in the chain function, the opt 
6487         scheduler doesn't unref the chain so it never gets freed.
6488
6489 2004-11-02  Wim Taymans  <wim@fluendo.com>
6490
6491         * gst/gststructure.c: (gst_structure_get_abbrs),
6492         (gst_structure_from_abbr), (gst_structure_to_abbr):
6493         Remove that ugly if-then thing in the code that converts
6494         between strings and types.
6495
6496 2004-11-02  Wim Taymans  <wim@fluendo.com>
6497
6498         * gst/gstscheduler.c: (gst_scheduler_add_element),
6499         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6500         Aplied clock distribution patch, this should fix bug
6501         #148787.
6502
6503 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6504
6505         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6506
6507         * po/LINGUAS:
6508         * po/nb.po:
6509           Added Norwegian Bokmaal translation
6510
6511 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6512
6513         * tools/gst-inspect.c: (print_signal_info):
6514           print signal arguments as pointers if they are
6515
6516 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6517
6518         * docs/pwg/building-boiler.xml:
6519           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6520
6521 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6522
6523         * gst/parse/parse.l:
6524         * testsuite/parse/parse1.c: (main):
6525         Since parse can do 'element name=a:b' make 'a:b.' work as
6526         well. 
6527         Added testcase to verify fix.
6528
6529 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6530
6531         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6532         Use the realpad when printing the direction.
6533         Add extra \n when printing extensions of typefind factories.
6534
6535 2004-10-13  David Schleef  <ds@schleef.org>
6536
6537         * examples/manual/Makefile.am: $< isn't portable in Makefile
6538         rules.
6539
6540 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6541
6542         * docs/gst/tmpl/gstobject.sgml:
6543         * docs/gst/tmpl/gstplugin.sgml:
6544         * docs/gst/tmpl/gstpluginfeature.sgml:
6545         * docs/gst/tmpl/gstregistry.sgml:
6546         * docs/gst/tmpl/gstversion.sgml:
6547         * gst/gstbin.c:
6548           more api documentation
6549         * gst/gstplugin.c: (gst_plugin_register_func),
6550         (gst_plugin_check_file), (gst_plugin_load_file):
6551           better error signaling and logging
6552
6553 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6554
6555         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6556           Subtract current queue contents from position queries.
6557
6558 2004-10-11  Johan Dahlin  <johan@gnome.org>
6559
6560         * gst/gsturi.c (gst_uri_get_location): unescape string
6561         (gst_uri_construct): escape string.
6562
6563 2004-10-11  Benjamin Otte  <otte@gnome.org>
6564
6565         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6566         (gst_pad_try_set_caps_nonfixed):
6567           allow renegotiation of unconnected pads (as inside spider). Simply
6568           return OK if unconnected - mimic try_set_caps there.
6569
6570 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6571
6572         * gst/gstbin.c: (gst_bin_sync_children_state):
6573           Add missing break.
6574
6575 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6576
6577         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6578         Set element to EOS before sending EOS event
6579
6580 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6581
6582         * gst/elements/gsttypefindelement.c:
6583         (gst_type_find_element_handle_event):
6584         Handle EOS events when doing the transition from
6585         typefind to data passing. This should fix the
6586         infinite loops in short files.
6587
6588 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6589
6590         * gst/gstthread.c: (gst_thread_change_state),
6591         (gst_thread_child_state_change):
6592         Make sure no iteration happens while performing
6593         the state change as it could mess up the internal
6594         consistency of the thread state.
6595
6596 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6597
6598         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6599         (gst_thread_change_state), (gst_thread_child_state_change):
6600         Do not try to grab the iterate lock in the state change method
6601         when we are in the same thread as the iterate or else we
6602         could deadlock. Some other cleanups.
6603
6604 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6605
6606         * configure.ac:
6607           bump nano to cvs
6608
6609 === release 0.8.7 ===
6610
6611 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6612
6613         * configure.ac:
6614         * NEWS:
6615         * RELEASE:
6616         * configure.ac:
6617           releasing 0.8.7, "A Cruise"
6618
6619 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6620
6621         * docs/random/mimetypes:
6622         Add an entry for Sony ATRAC3 audio format with mime-type
6623         used by rmdemux et riff-read
6624
6625 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6626
6627         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6628         Push the buffer store instead of clearing it in case that
6629         the stream is not seekable.
6630
6631 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6632
6633         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6634         (gst_thread_main_loop):
6635         Lock the iteration and the state change so that automatic
6636         negotiation and fixation does not happen at the same time
6637         as the in stream negotiation.
6638
6639 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6640
6641         * configure.ac:
6642           bump nano to cvs
6643
6644 === release 0.8.6 ===
6645
6646 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6647
6648         * configure.ac:
6649         * NEWS:
6650         * RELEASE:
6651         * configure.ac:
6652           releasing 0.8.6, "Narc"
6653
6654 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6655
6656         * configure.ac:
6657           prerel bump
6658
6659 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6660
6661         patch by: Steve Lhomme
6662
6663         * gst/elements/gstfakesrc.c:
6664         * gst/elements/gstidentity.c:
6665         * gst/gstthread.c:
6666           Fix for #153881
6667
6668 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6669
6670         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6671         Fix threadsafety of the crc checking function.
6672
6673 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6674
6675         patch by: Ronald Bultje
6676
6677         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6678         (gst_type_find_element_handle_event),
6679         (gst_type_find_element_chain):
6680         * gst/elements/gsttypefindelement.h:
6681          #153657.
6682          Filter out discont event from seekable sources when typefind
6683          asks them to seek.  Fixes typefind with demuxers for
6684          avi, asf and matroska.
6685
6686 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6687
6688         * docs/gst/gstreamer-sections.txt:
6689         * gst/gstcaps.c:
6690         * gst/gstcaps.h:
6691         * gst/gstpad.c:
6692           Revert preferred caps: (#147789)
6693
6694 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6695
6696         * win32/dirent.c:
6697           fix a memory leak
6698
6699 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6700
6701         * configure.ac:
6702           bump for prerelease
6703
6704 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6705
6706         * docs/Makefile.am:
6707         * docs/manual/elements-api.xml:
6708           restructure so that common stuff is shown first
6709         * docs/manual/init-api.xml:
6710           convert to examples
6711         * docs/manual/manual.xml:
6712         * docs/manuals.mak:
6713         * docs/url.entities:
6714           link to API on the website, possibly override later in build
6715         * examples/manual/.cvsignore:
6716           ignore more
6717         * examples/manual/Makefile.am:
6718           add more examples
6719         * examples/manual/extract.pl:
6720           error out on failure
6721
6722 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6723
6724         * docs/gst/tmpl/gstthread.sgml:
6725         * docs/manual/init-api.xml:
6726         * examples/manual/Makefile.am:
6727           convert two code bits to examples
6728
6729 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6730
6731         * gst/gstelement.c: (gst_element_change_state):
6732           Well, actually, I was about to remove this insane assert when
6733           I noticed Wim already did that. A warning is nice so we can
6734           fix actual ugs (using --g-fatal-warnings and backtraces), so
6735           I added that instead.
6736
6737 2004-09-06  Wim Taymans  <wim@fluendo.com>
6738
6739         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6740         (gst_element_threadsafe_properties_post_run),
6741         (gst_element_set_state), (gst_element_change_state):
6742         Added extra refcounting around various places. 
6743
6744 2004-09-06  Wim Taymans  <wim@fluendo.com>
6745
6746         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6747         Fix debug info.
6748
6749 2004-09-06  Wim Taymans  <wim@fluendo.com>
6750
6751         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6752         (remove_from_group):
6753         Some more debug info.
6754
6755 2004-09-03  Wim Taymans  <wim@fluendo.com>
6756
6757         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6758         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6759         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6760         (gst_fakesrc_get), (gst_fakesrc_change_state):
6761         * gst/elements/gstfakesrc.h:
6762         * gst/elements/gstidentity.c: (gst_identity_class_init),
6763         (gst_identity_init), (gst_identity_chain),
6764         (gst_identity_set_property), (gst_identity_get_property),
6765         (gst_identity_change_state):
6766         * gst/elements/gstidentity.h:
6767         Added datarate properties to limit the datarate.
6768
6769 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6770
6771         * gst/autoplug/gstspider.c: (plugin_init):
6772           don't set a rank. We don't want to autoplug by inserting spiders.
6773
6774 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6775
6776         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6777         (gst_spider_identity_plug):
6778           add a template for spider's sink
6779         * gst/gst.c: (gst_register_core_elements):
6780           queue's rank should be NULL, we don't want spider to add it.
6781
6782 2004-08-18  David Schleef  <ds@schleef.org>
6783
6784         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6785         * docs/libs/Makefile.am: same
6786         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6787         * docs/random/ds/0.9-planning: random additions
6788         * docs/random/ds/0.9-suggested-changes: same
6789         * gst/gstxml.h: remove vestigal GstXMLNs definition
6790
6791         Preferred caps: (#147789)
6792         * docs/gst/gstreamer-sections.txt: Add symbols
6793         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6794         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6795         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6796         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6797         (gst_caps_get_preferred), (gst_caps_set_preferred),
6798         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6799         (gst_caps_use_preferred): Handle caps preferences
6800         * gst/gstcaps.h: Add caps preferences
6801         * gst/gstpad.c: (gst_pad_link_get_preferred),
6802         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6803         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6804         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6805         negotiation.
6806
6807 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6808
6809         * gst/autoplug/gstspideridentity.c:
6810         (gst_spider_identity_request_new_pad):
6811         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6812         (gst_aggregator_init):
6813         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6814         (gst_fakesink_init):
6815         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6816         (gst_fakesrc_init):
6817         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6818         (gst_fdsink_init):
6819         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6820         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6821         (gst_filesink_init):
6822         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6823         (gst_filesrc_init):
6824         * gst/elements/gstidentity.c: (gst_identity_base_init),
6825         (gst_identity_init):
6826         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6827         (gst_multifilesrc_init):
6828         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6829         (gst_pipefilter_init):
6830         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6831         (gst_statistics_init):
6832         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6833         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6834           s/gst_pad_new/&_from_template/
6835           register pad templates in the base_init function
6836           add static pad template definitions
6837
6838 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6839
6840         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6841         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6842         * testsuite/refcounting/pad.c: (main):
6843         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6844           s/gst_pad_new/&_from_template/
6845           prepare deprecation of gst_pad_new
6846
6847 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6848
6849         patch by: Luca Ognibene <skaboy81@virgilio.it>
6850
6851         * gst/gstcaps.c:
6852         * gst/gstelement.c:
6853         * gst/gstpad.c:
6854         * gst/gstxml.c:
6855           fix memleaks.  Fixes #150001
6856
6857 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6858
6859         * docs/random/ds/0.9-suggested-changes:
6860           add notes - mostly about pad templates
6861
6862 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6863
6864         * win32/GStreamer.vcproj:
6865           temporary locale files are .gmo not .mo
6866
6867 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6868
6869         * configure.ac: bump nano to cvs
6870
6871 === release 0.8.5 ===
6872
6873 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6874
6875         * configure.ac:
6876           releasing 0.8.5, "Stuttgart"
6877         * NEWS:
6878         * RELEASE:
6879         * configure.ac:
6880         * docs/random/release:
6881           updates for release
6882
6883 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6884
6885         patch by: Wim Taymans (wim@fluendo.com)
6886
6887         * gst/gstbuffer.c:
6888         * gst/gstindex.h:
6889         * libs/gst/dataprotocol/dataprotocol.c:
6890           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6891
6892 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6893
6894         * Makefile.am:
6895         * win32/MANIFEST:
6896           add win32 dir to the build.  Fixes #149981.
6897
6898 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6899
6900         * configure.ac:
6901           bump libtool versioning
6902         * gst/gststructure.c:
6903           mark function as static
6904         * po/af.po:
6905         * po/az.po:
6906         * po/ca.po:
6907         * po/cs.po:
6908         * po/en_GB.po:
6909         * po/fr.po:
6910         * po/nl.po:
6911         * po/sq.po:
6912         * po/sr.po:
6913         * po/sv.po:
6914         * po/tr.po:
6915         * po/uk.po:
6916           translations update
6917         * win32/README.txt:
6918           trademark protection
6919
6920 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6921
6922         * configure.ac:
6923           fix GST_ORIGIN
6924           set GST_PACKAGE to source, and distinguish between release and other
6925         * tools/gst-inspect.c:
6926           print out plugin an element factory is part of so we see this info
6927
6928 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6929
6930         * docs/gst/gstreamer-sections.txt:
6931         * docs/gst/tmpl/gstbuffer.sgml:
6932         * docs/gst/tmpl/gstschedulerfactory.sgml:
6933           reorder docs a little, make GstBuffer's more sensible.
6934         * gst/gstbuffer.h:
6935           API: added GST_BUFFER_FLAG_DELTA_UNIT
6936         * gst/gstscheduler.c:
6937           comment API addition
6938
6939 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6940
6941         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6942           work with non-regular files that can be mmapped (like /dev/zero)
6943         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6944           get rid of typefinds that require a seek when we can't seek instead
6945           of trying them over and over again
6946         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6947           return non-zero failure value when the pipeline was interrupted or
6948           an error occurred
6949
6950 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6951
6952         * win32/config.h:
6953         * win32/GStreamer.vcproj:
6954           compile and install the locales
6955
6956 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6957
6958         * gst/gstvalue.c:
6959           fix a possible memory leak under Windows
6960
6961 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6962
6963         * win32/GStreamer.vcproj:
6964           fix a memory leak that occured under Windows
6965         * win32/gstreamer.def:
6966           add gst_scheduler_register
6967
6968 2004-08-11  Benjamin Otte  <otte@gnome.org>
6969
6970         * docs/gst/gstreamer-sections.txt:
6971         * gst/gstscheduler.c: (gst_scheduler_register):
6972         * gst/gstscheduler.h:
6973           API:
6974           add gst_scheduler_register shortcut similar to gst_element_register
6975         * gst/schedulers/entryscheduler.c: (plugin_init):
6976         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6977         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6978           use it
6979
6980 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6981
6982         * gst/gstvalue.h:
6983           fix a memory leak that occured under Windows
6984
6985 2004-08-10  Colin Walters  <walters@redhat.com>
6986
6987         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6988         Don't use O_EXCL to open temporary registry.  It will prevent
6989         registry creation if a temporary one already exists, which
6990         is unnecessary.
6991
6992 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6993
6994         * docs/gst/gstreamer-sections.txt:
6995         * docs/gst/tmpl/gstvalue.sgml:
6996           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6997
6998 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6999
7000         * win32/gstbytestream.vcproj:
7001         * win32/gstelements.vcproj:
7002         * win32/gstgetbits.vcproj:
7003         * win32/gst-inspect.vcproj:
7004         * win32/gst-launch.vcproj:
7005         * win32/gstoptimalscheduler.vcproj:
7006         * win32/GStreamer.vcproj:
7007         * win32/gst-register.vcproj:
7008         * win32/gstspider.vcproj:
7009           update the include and lib dirs to fit standard libraries as
7010           described in the Win32 manual
7011
7012 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7013
7014         * win32/config.h:
7015         * win32/gstversion.h:
7016           enable NLS again, push the version number for the coming 0.8.5 release
7017
7018 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7019
7020         * gst/gstvalue.h:
7021           export gst_type_XXX for windows DLLs
7022
7023 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7024
7025         * docs/faq/gst-uninstalled:
7026           fix PKG_CONFIG_PATH and PYTHONPATH
7027         * gst/schedulers/Makefile.am:
7028           cleanup
7029         * libs/gst/bytestream/bytestream.c:
7030           remove newline
7031         * po/LINGUAS:
7032         * po/sq.po:
7033           adding Albanian translation (Laurent Dhima)
7034         * po/cs.po:
7035           updated
7036
7037 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7038
7039         * po/ca.po:
7040         * po/sv.po:
7041           updated translations
7042
7043 2004-08-04  Benjamin Otte  <otte@gnome.org>
7044
7045         * tests/mass_elements.c: (main):
7046           allow specifying src and sink element explicitly, so I can test
7047           videotestsrc instead of fakesrc
7048
7049 2004-08-04  Benjamin Otte  <otte@gnome.org>
7050
7051         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
7052         (gst_structure_id_empty_new), (gst_structure_empty_new),
7053         (gst_structure_copy):
7054           add gst_structure_id_empty_new_with_size to allow preallocating
7055           value array sizes. Use this in gst_structure_copy to get rid of
7056           reallocs.
7057           don't do quark=>string=>quark when copying structures
7058
7059 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
7060
7061         * docs/manual/win32.xml:
7062         * win32/README.txt:
7063           update documentation with the clean version of dependencies
7064
7065 2004-08-03  Benjamin Otte  <otte@gnome.org>
7066
7067         * gst/schedulers/entryscheduler.c:
7068         (gst_entry_scheduler_remove_element):
7069           fix for GST_DISABLE_DEBUG
7070         * tools/gst-launch.c: (print_tag):
7071           fixes for G_DISABLE_ASSERT
7072
7073 2004-08-03  Benjamin Otte  <otte@gnome.org>
7074
7075         * gst/gst.c: (gst_register_core_elements):
7076           fix for G_DISABLE_ASSERT
7077         * gst/gstinfo.c: (__gst_in_valgrind):
7078           add for GST_DISABLE_DEBUG
7079
7080 2004-08-03  Benjamin Otte  <otte@gnome.org>
7081
7082         * gst/parse/parse.l:
7083           fix for G_DISABLE_ASSERT
7084
7085 2004-08-03  Wim Taymans  <wim@fluendo.com>
7086
7087         * gst/gstbin.c: (gst_bin_get_type),
7088         (gst_bin_child_state_change_func):
7089         * gst/gstthread.c: (gst_thread_change_state):
7090         Backported some debug logging from a reverted patch
7091         Don't try to destroy the thread twice. Added some more
7092         debugging in GstThread. Unlock and signal even if we
7093         are in the thread context.
7094
7095 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7096
7097         * po/uk.po:
7098           updated translation
7099
7100 2004-07-30  David Schleef  <ds@schleef.org>
7101
7102         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7103
7104 2004-07-29  David Schleef  <ds@schleef.org>
7105
7106         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7107         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7108
7109 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7110
7111         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7112         (gst_bin_add_func), (gst_bin_remove_func),
7113         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7114         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7115         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7116         (gst_bin_sync_children_state):
7117         * gst/gstbin.h:
7118         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7119         (gst_thread_change_state):
7120         * testsuite/states/Makefile.am:
7121           revert state change patches as agreed so we can rework them
7122           gradually
7123
7124 2004-07-29  Benjamin Otte  <otte@gnome.org>
7125
7126         * libs/gst/control/Makefile.am:
7127           link to libgstreamer (fixes Debian bug 262019, see
7128           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7129
7130 2004-07-29  Wim Taymans  <wim@fluendo.com>
7131
7132         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7133         (check_from_fraction_convert), (transform_test), (main):
7134         Make the test less pedantic about float roundoff errors.
7135
7136 2004-07-29  Benjamin Otte  <otte@gnome.org>
7137
7138         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7139         (gst_filesrc_srcpad_event):
7140           make seek events to before start/after end of file not fail, but
7141           seek to start/end instead
7142         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7143           add more output
7144
7145 2004-07-29  Benjamin Otte  <otte@gnome.org>
7146
7147         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7148           check that caps are fixed
7149         * gst/gstpad.c: (gst_pad_template_new):
7150           don't try to simplify caps, costs too much time on gst_init
7151         * gst/gstplugin.c: (gst_plugin_add_feature):
7152           G_ERROR if features are added twice
7153         * gst/gsttypefind.c: (gst_type_find_register):
7154         * gst/gstelementfactory.c: (gst_element_register):
7155           don't add features twice
7156         * docs/random/ds/0.9-suggested-changes:
7157           add note about possible gst_init optimization
7158
7159 2004-07-28  David Schleef  <ds@schleef.org>
7160
7161         * testsuite/elements/Makefile.am:
7162         * testsuite/elements/struct_i386.h:
7163         * testsuite/elements/struct_size.c: (main):  A little test
7164         to keep distcheck from working if someone changes a structure
7165         size accidentally.
7166
7167 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7168
7169         * docs/libs/Makefile.am:
7170         * docs/libs/gstreamer-libs-docs.sgml:
7171         * docs/libs/gstreamer-libs-sections.txt:
7172         * docs/libs/tmpl/gstbytestream.sgml:
7173         * docs/libs/tmpl/gstcontrol.sgml:
7174         * docs/libs/tmpl/gstdataprotocol.sgml:
7175         * docs/libs/tmpl/gstgetbits.sgml:
7176         * libs/gst/bytestream/Makefile.am:
7177         * libs/gst/bytestream/bytestream.c:
7178         * libs/gst/bytestream/bytestream.h:
7179         * libs/gst/control/Makefile.am:
7180         * libs/gst/dataprotocol/Makefile.am:
7181         * libs/gst/getbits/Makefile.am:
7182         * libs/gst/getbits/getbits.h:
7183           various doc and style fixes, adding bytestream to libs docs.
7184
7185 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7186
7187         * docs/gst/gstreamer-docs.sgml:
7188         * docs/libs/Makefile.am:
7189         * docs/libs/gstreamer-libs-docs.sgml:
7190         * docs/libs/gstreamer-libs-sections.txt:
7191         * libs/gst/control/dparam.c:
7192           more doc fixes.  gst-libs docs now build the same way as gst.
7193
7194 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7195
7196         * configure.ac:
7197         * testsuite/Makefile.am:
7198         * testsuite/bins/Makefile.am:
7199         * testsuite/caps/Makefile.am:
7200         * testsuite/cleanup/Makefile.am:
7201         * testsuite/clock/Makefile.am:
7202         * testsuite/debug/Makefile.am:
7203         * testsuite/dlopen/Makefile.am:
7204         * testsuite/dynparams/Makefile.am:
7205         * testsuite/elements/.cvsignore:
7206         * testsuite/elements/Makefile.am:
7207         * testsuite/enumcaps/Makefile.am:
7208         * testsuite/enumcaps/enumcaps.c:
7209         * testsuite/ghostpads/Makefile.am:
7210         * testsuite/indexers/Makefile.am:
7211         * testsuite/negotiation/Makefile.am:
7212         * testsuite/parse/Makefile.am:
7213         * testsuite/plugin/Makefile.am:
7214         * testsuite/refcounting/Makefile.am:
7215         * testsuite/schedulers/.cvsignore:
7216         * testsuite/states/Makefile.am:
7217         * testsuite/tags/Makefile.am:
7218         * testsuite/threads/Makefile.am:
7219           fold enumcaps into caps dir
7220           clean up Makefile.am's for testsuite
7221
7222 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7223
7224         * docs/gst/Makefile.am:
7225         * docs/libs/Makefile.am:
7226           clean up docs build.  Fixes needless rebuilding of template files.
7227
7228 2004-07-28  Wim Taymans  <wim@fluendo.com>
7229
7230         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7231         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7232         Make sure that a bin state change tries to keep the children
7233         in sync. 
7234         Added debug logging to the thread.
7235
7236 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7237
7238         * win32/GStreamer.vcproj:
7239         * win32/gstreamer.def:
7240           more exports for the plugins
7241
7242 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7243
7244         * win32/gstgetbits.vcproj:
7245         * win32/gstgetbits.def:
7246         * win32/msvc71.sln:
7247           add support for the getbits plugin
7248
7249 2004-07-27  Wim Taymans  <wim@fluendo.com>
7250
7251         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7252         (gst_value_transform_fraction_double), (_gst_value_initialize):
7253         * testsuite/caps/Makefile.am:
7254         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7255         (check_from_fraction_convert), (transform_test), (main):
7256         Added transform functions between double and fraction.
7257         Added testcase to verify transforms
7258
7259 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7260
7261         * win32/GStreamer.vcproj:
7262           rename GStreamer-0.8.lib to libgstreamer.lib
7263
7264 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7265
7266         * win32/gstelements.vcproj:
7267         * win32/gstoptimalscheduler.vcproj:
7268           fixes for the Release build
7269
7270 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7271
7272         * win32/config.h:
7273           update the version number
7274
7275 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7276
7277         * win32/GStreamer.vcproj:
7278           add gstinterface to the build
7279
7280 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7281
7282         * win32/gstreamer.def:
7283           add many definitions needed by plugins,
7284           GST_CAT_DEFAULT only available in the Debug build ?
7285
7286 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7287
7288         * gst/gstelement.c: (gst_element_set_eos_recursive):
7289           various whitespace fixes.
7290           doc fix, fixes #148497
7291
7292 2004-07-25  Benjamin Otte  <otte@gnome.org>
7293
7294         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7295           don't delay links on the sink elements, it causes unnegotiated
7296           links.
7297         * gst/elements/gsttypefindelement.c:
7298         (gst_type_find_element_base_init):
7299           add our padtemplates, we indeed do have some.
7300         * gst/elements/gsttypefindelement.c:
7301         (gst_type_find_element_handle_event),
7302         (gst_type_find_element_chain):
7303           don't push data when typefinding failed.
7304         * gst/gstpad.c: (gst_pad_link_fixate):
7305           check that no fixate function returns empty caps.
7306         * gst/gstpad.c: (gst_pad_push):
7307           check that the link is negotiated before data gets pushed.
7308         * tools/gst-register.c: (main):
7309           don't assert (fixes #148283)
7310
7311 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7312
7313         * docs/gst/gstreamer-sections.txt:
7314         * docs/gst/tmpl/gstconfig.sgml:
7315           add GST_PLUGIN_EXPORT definition
7316
7317 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7318
7319         * gst/gstplugin.h:
7320         * gst/gstconfig.h.in:
7321         * win32/gstconfig.h:
7322         * win32/gstelements.def:
7323         * win32/gstelements.vcproj:
7324         * win32/gstoptimalscheduler.def:
7325         * win32/gstoptimalscheduler.vcproj:
7326         * win32/gstspider.def:
7327         * win32/gstspider.vcproj:
7328           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7329
7330 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7331
7332         * docs/gst/gstreamer-sections.txt:
7333           remove GST_CAT_DEFAULT because the type has changed
7334
7335 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7336
7337         * win32/gstbytestream.vcproj:
7338         * win32/gstelements.vcproj:
7339         * win32/gst-inspect.vcproj:
7340         * win32/gst-launch.vcproj:
7341         * win32/gstoptimalscheduler.vcproj:
7342         * win32/GStreamer.vcproj:
7343         * win32/gst-register.vcproj:
7344         * win32/gstspider.vcproj:
7345         * win32/msvc71.sln:
7346           Copy the files where needed after building, The testsuite will be
7347           built separately
7348
7349 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7350
7351         * win32/config.h:
7352         * win32/README.txt:
7353         * docs/manual/win32.xml:
7354         Fixed the plugin and GStreamer location
7355
7356 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7357
7358         * win32/gstreamer.def:
7359         More exports for the plugins
7360
7361 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7362
7363         * gst/gstinfo.h:
7364         Marc was right, we need to export literally GST_CAT_DEFAULT
7365
7366 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7367
7368         * win32/config.h:
7369         NLS crashes in gettext, disabled until this is solved
7370
7371 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7372
7373         * win32/gst-inspect.vcproj:
7374         * win32/gst-launch.vcproj:
7375         Should use NLS when available
7376
7377 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7378
7379         * gst/registries/gstxmlregistry.c:
7380         removing the file doesn't seem to be a good idea on Linux
7381
7382 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7383
7384         * gst/registries/gstxmlregistry.c:
7385         Remove the registry before renaming the tempfile (needed for Windows)
7386
7387 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7388
7389         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7390         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7391         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7392         * gst/elements/gstmultifilesrc.h:
7393         Added newmedia property so it generates newmedia events between each
7394         file when property is set, as well as fixed eos handling
7395
7396 2004-07-22  David Schleef  <ds@schleef.org>
7397
7398         * gst/gststructure.c: (gst_structure_id_empty_new),
7399         (gst_structure_empty_new):  Set type field correctly.
7400         * gst/gststructure.h: Check type field correctly.
7401         * testsuite/caps/Makefile.am:
7402         * testsuite/caps/structure.c: (test1), (main): Add a very small
7403         test for structures.
7404
7405 2004-07-22  David Schleef  <ds@schleef.org>
7406
7407         * docs/random/ds/0.9-suggested-changes: more comments
7408         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7409
7410 2004-07-22  Benjamin Otte  <otte@gnome.org>
7411
7412         * gst/gstelementfactory.c: (gst_element_register):
7413           set the factory in the class struct, so gst_element_get_factory
7414           actually works
7415         * gst/parse/grammar.y:
7416           set element to playing when it gets unlocked as we can't rely on the
7417           bin state - all elements in the bin state might still be locked in
7418           NULL)
7419
7420 2004-07-22  Benjamin Otte  <otte@gnome.org>
7421
7422         * gst/gstelement.c: (gst_element_set_state_func):
7423           make this a static function
7424
7425 2004-07-22  Wim Taymans  <wim@fluendo.com>
7426
7427         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7428         (gst_opt_scheduler_pad_link):
7429         fix 147894-2 and the group_link problem.
7430
7431 2004-07-22  Wim Taymans  <wim@fluendo.com>
7432
7433         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7434         (handoff_identity), (main):
7435         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7436         (handoff_identity), (main):
7437         * testsuite/schedulers/Makefile.am:
7438         * testsuite/schedulers/group_link.c: (main):
7439         Show bug in scheduler when linking chain and loop based element 
7440         where the chain based element was not yet in a group.
7441
7442 2004-07-21  Benjamin Otte  <otte@gnome.org>
7443
7444         * gst/.cvsignore:
7445         * gst/autoplug/.cvsignore:
7446         * gst/elements/.cvsignore:
7447         * gst/indexers/.cvsignore:
7448         * libs/gst/bytestream/.cvsignore:
7449         * libs/gst/control/.cvsignore:
7450         * libs/gst/getbits/.cvsignore:
7451         * testsuite/states/.cvsignore:
7452         * testsuite/threads/.cvsignore:
7453           keep this up to date, since I seem to be the only one who cares
7454           about not missing files on commits (editor's note: no you don't,
7455           but feel free to change them at the time you add stuff instead
7456           of later on)
7457
7458 2004-07-21  Benjamin Otte  <otte@gnome.org>
7459
7460         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7461         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7462         (gst_bin_child_state_change_func), (set_kid_state_func),
7463         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7464           make state changes work correctly and reentrant (so removing
7465           elements from bins during state changes of bins doesn't cause
7466           segfaults or even wrong states)
7467           add debugging category and debugging output to print children states
7468         * gst/gstbin.c: (gst_bin_dispose): 
7469           add some assertion checks
7470         * gst/gstbin.h:
7471         * gst/gstbin.c: (gst_bin_sync_children_state):
7472           deprecate this function - it just does gst_bin_set_state (bin,
7473           GST_STATE (bin)) 
7474         * testsuite/threads/queue.c: (main):
7475           don't use gst_bin_sync_children_state anymore
7476         * testsuite/states/Makefile.am:
7477         * testsuite/states/bin.c:
7478           test that the state changes of bins work as expected
7479         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7480           some adjustments to change states correctly, too
7481         * gst/gstthread.c: (gst_thread_change_state):
7482           don't enable/disable "threadsafe" properties, they're unused and
7483           cause random segfaults
7484         * testsuite/threads/Makefile.am:
7485           the queue check randomly passes now, ignore it
7486
7487 2004-07-21  Benjamin Otte  <otte@gnome.org>
7488
7489         * gst/gstpad.c:
7490           check if data is NULL before outputting debug info. (fixes #145100)
7491
7492 2004-07-21  Benjamin Otte  <otte@gnome.org>
7493
7494         * gst/schedulers/entryscheduler.c:
7495         (gst_entry_scheduler_loop_wrapper),
7496         (gst_entry_scheduler_chain_wrapper),
7497         (gst_entry_scheduler_get_wrapper):
7498           reset the state when the cothread starts, so we don't get assertion
7499           failures on restarting of cothreads
7500
7501 2004-07-20  Benjamin Otte  <otte@gnome.org>
7502
7503         * gst/gstelement.c: (gst_element_link_pads_filtered):
7504           use correct sinkpad, if only sinkpad is specified, but not srcpad
7505           (fixes #147889)
7506         * gst/gstelement.c: (gst_element_set_state_func),
7507         (gst_element_change_state): ref/unref the element, signal handlers
7508         could get rid of the element otherwise
7509
7510 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7511
7512         * docs/random/ds/0.9-suggested-changes:
7513           Make note about renaming fixed-list to array.
7514         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7515         (_gst_value_initialize):
7516           Add array intersections.
7517         * testsuite/caps/intersect2.c: (main):
7518           Add test for array intersections.
7519
7520 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7521
7522         * configure.ac: back to cvs
7523
7524 === release 0.8.4 ===
7525
7526 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7527
7528         * configure.ac:
7529           releasing 0.8.4, "Paella"
7530           bump libtool versioning
7531
7532 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7533
7534         * po/LINGUAS:
7535         * po/ca.po:
7536           adding Catalan translation (Jordi Mallach)
7537
7538 2004-07-20  Wim Taymans  <wim@fluendo.com>
7539
7540         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7541         (handoff_identity), (main):
7542         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7543         (handoff_identity), (main):
7544         * testsuite/schedulers/Makefile.am:
7545         Added failing testcase for variant of #147894
7546
7547 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7548
7549         patch by: David Moore
7550
7551         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7552         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7553         (group_migrate_connected):
7554         * testsuite/schedulers/Makefile.am:
7555           fix for #142813 (Deadlock in optimal scheduler)
7556
7557 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7558
7559         patch by: Wim Taymans
7560
7561         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7562         (gst_opt_scheduler_schedule_run_queue),
7563         (gst_opt_scheduler_get_wrapper), (get_group),
7564         (group_migrate_connected):
7565         * testsuite/schedulers/Makefile.am:
7566           fix for #147819 (Add some checks in the opt scheduler)
7567
7568 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7569
7570         patch by: Benjamin Otte
7571
7572         * gst/gstelementfactory.c: (__gst_element_details_set):
7573           fix for #147929: running gst-register in non-utf8 locale can cause
7574           invalid registry
7575
7576 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7577
7578         patch by: Wim Taymans
7579
7580         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7581         (group_has_element), (element_get_reachables_func),
7582         (group_migrate_connected):
7583           fix for #147894 (opt scheduler decoupled elements mismanagement)
7584         * testsuite/schedulers/Makefile.am:
7585           testsuite app now passes
7586
7587 2004-07-19  Wim Taymans  <wim@fluendo.com>
7588
7589         * testsuite/schedulers/147819.c: (handoff_identity1),
7590         (handoff_identity2), (main):
7591         * testsuite/schedulers/Makefile.am:
7592         Added testcase for bug 147819
7593
7594 2004-07-19  Wim Taymans  <wim@fluendo.com>
7595
7596         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7597         (handoff_identity), (main):
7598         * testsuite/schedulers/Makefile.am:
7599         Added testcase for bug 147894
7600
7601 2004-07-16  Wim Taymans  <wim@fluendo.com>
7602
7603         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7604         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7605         * testsuite/schedulers/Makefile.am:
7606         Added testsuite for bug 142183 in its two incarnations. Refcount
7607         is not increased for scheduled elements and threadsafe properties
7608         mutexes are not properly unlocked.
7609
7610 2004-07-16  Wim Taymans  <wim@fluendo.com>
7611
7612         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7613         (create_chain), (destroy_chain), (create_group), (destroy_group),
7614         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7615         (group_dec_link), (gst_opt_scheduler_pad_link),
7616         (group_inc_links_for_element), (group_migrate_connected):
7617         Call group_inc_link with the proper src->sink ordering -- 
7618         break this, and we break sort_chain. patch from wingo for bug
7619         147713.
7620         Partially revert patch 1.89. When adding a loop based element to 
7621         the scheduler, the links to other groups are automatically followed
7622         and incremented. This should not happen because the bin will call
7623         pad_link explicitly for those connection, resulting in them counted 
7624         twice. Results in assertion failure on pipeline cleanup.
7625
7626 2004-07-16  Wim Taymans  <wim@fluendo.com>
7627
7628         * testsuite/schedulers/143777-2.c: (main):
7629         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7630         (main):
7631         * testsuite/schedulers/Makefile.am:
7632         Added cleanup code to testcase 143777-2.
7633         Added testcase to show bug 147713, does not really show the
7634         deadlock as I can't figure out how to trigger it, but it does
7635         demonstrate bad ordering in the scheduler.
7636
7637 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7638
7639         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7640           change strndup to g_strndup.  Fixes #147707
7641
7642 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7643
7644         * po/af.po:
7645         * po/az.po:
7646         * po/cs.po:
7647         * po/en_GB.po:
7648         * po/fr.po:
7649         * po/nl.po:
7650         * po/sr.po:
7651         * po/sv.po:
7652         * po/tr.po:
7653         * po/uk.po:
7654           updated translations
7655
7656 2004-07-16  Benjamin Otte  <otte@gnome.org>
7657
7658         * gst/gstvalue.c: (gst_greatest_common_divisor):
7659           use ints and return ints, fractions only use ints, too, so this
7660           avoids accidently casting multiplications to unsigned
7661         (gst_value_lcopy_fraction): it's ints, not uint32
7662         (gst_value_set_fraction): disallow minint, multiplying and negation
7663           are broken with it
7664         (gst_value_fraction_multiply): fix to make large numbers work and get
7665         rid of the assumption that the multiplication of two ints fits an
7666         int64 - dunno if that's true for all systems
7667         * testsuite/caps/Makefile.am:
7668         * testsuite/caps/fraction-multiply-and-zero.c:
7669         (check_multiplication), (check_equal), (zero_test), (main):
7670           add tests for all the stuff above
7671         * testsuite/caps/value_compare.c: (test1):
7672           fix comment
7673         * tests/.cvsignore:
7674         * testsuite/caps/.cvsignore:
7675         * testsuite/debug/.cvsignore:
7676         * testsuite/dlopen/.cvsignore:
7677         * testsuite/states/.cvsignore:
7678           get up to date
7679
7680 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7681
7682         * docs/manual/bins-api.xml:
7683         * docs/manual/factories.xml:
7684         * docs/manual/helloworld.xml:
7685         * docs/manual/links-api.xml: 
7686           fixes for out of date info, incorrect info and grammar
7687
7688 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7689
7690         * docs/manual/pads.xml:
7691         * docs/manual/pads-api.xml: grammar fix
7692
7693 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7694
7695         * docs/manual/pads-api.xml: typo + grammar fix
7696
7697 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7698
7699         * docs/gst/gstreamer-sections.txt:
7700           add new symbols
7701         * docs/gst/tmpl/gstelement.sgml:
7702         * docs/gst/tmpl/gstpad.sgml:
7703         * docs/gst/tmpl/gsttypes.sgml:
7704         * docs/gst/tmpl/gstvalue.sgml:
7705           update docs
7706         * gst/gststructure.c: (gst_structure_set_valist),
7707         (gst_structure_from_abbr), (gst_structure_to_abbr):
7708         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7709         (gst_greatest_common_divisor), (gst_value_init_fraction),
7710         (gst_value_copy_fraction), (gst_value_collect_fraction),
7711         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7712         (gst_value_get_fraction_numerator),
7713         (gst_value_get_fraction_denominator),
7714         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7715         (gst_value_deserialize_fraction),
7716         (gst_value_transform_fraction_string),
7717         (gst_value_transform_string_fraction),
7718         (gst_value_compare_fraction), (_gst_value_initialize):
7719         * gst/gstvalue.h:
7720           adding GstFraction GValue type, get/set, and multiply
7721         * testsuite/caps/Makefile.am:
7722         * testsuite/caps/fraction.c: (test), (main):
7723         * testsuite/caps/string-conversions.c: (main):
7724         * testsuite/caps/value_compare.c: (test1), (main):
7725           add regression tests for GstFraction
7726
7727 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7728         
7729         * docs/manual/init-api.xml: Grammar fix
7730
7731 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7732
7733         * docs/manual/states.xml: Fix inconsistent information
7734
7735 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7736
7737         * gst/gstelement.c: (gst_element_set_state):
7738         * gst/gstpad.c: (gst_pad_try_set_caps):
7739         * gst/gststructure.c:
7740         * gst/gstthread.c: (gst_thread_child_state_change):
7741         * gst/gstvalue.c: (gst_value_compare_double):
7742         * gst/gstvalue.h:
7743         * testsuite/parse/parse1.c: (main):
7744           debugging additions and style cleanups
7745
7746 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7747
7748         * docs/manual/states.xml: Grammar fix
7749
7750 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7751
7752         * docs/manual/pads.xml: Grammar fix
7753
7754 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7755
7756         * docs/manual/elements.xml: Fixed image reference
7757
7758 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7759
7760         * docs/manual/goals.xml: Grammar fix
7761
7762 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7763
7764         * docs/manual/motivation.xml:
7765         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7766
7767 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7768
7769         * docs/manual/motivation.xml: Fix spelling
7770
7771 2004-07-15  Benjamin Otte  <otte@gnome.org>
7772
7773         * gst/gstelement.h: 
7774           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7775           strings.
7776         * gst/gstelement.c (gst_element_class_init):
7777           GError's are boxed, not objects
7778         * gst/gstmarshal.list:
7779           update list for the fixed error signal
7780
7781 2004-07-14  Andy Wingo  <wingo@pobox.com>
7782
7783         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7784         there all along, but the function wasn't. (guile-gstreamer's build
7785         system uses the address of the function -- I wasn't actually
7786         trying to use this.)
7787
7788 2004-07-14  Andy Wingo  <wingo@pobox.com>
7789
7790         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7791         as gst_pad_proxy_pad_link) just link to every other pad when they
7792         are called. In the case where the graph has cycles, this will mean
7793         that a call to try_set_caps will recurse. Allow this recursion
7794         and return OK, while we wait for the first try_set_caps to give a
7795         proper return value.
7796         (gst_pad_link_call_link_functions): Since this function is the
7797         only one to set the NEGOTIATING flag on a pad, if the flag is set
7798         it means that the link functions have indirectly recursed. If this
7799         happens, error out to avoid infinite recursion and an eventual
7800         SEGV.
7801         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7802         (gst_pad_proxy_getcaps): Intersect the result with the template
7803         caps to ensure that the return value is valid.
7804
7805 2004-07-14  Andy Wingo  <wingo@pobox.com>
7806
7807         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7808         one refcount, the calling function is the owner of the buffer.
7809
7810 2004-07-14  Wim Taymans  <wim@fluendo.com>
7811
7812         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7813         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7814         Fix stupid warning when an element is to be migrated but
7815         is already migrated.
7816
7817 2004-07-14  Wim Taymans  <wim@fluendo.com>
7818
7819         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7820         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7821         Make sure that a single non-loop-based element does not 
7822         end up in a group. This fixes the testsuite again.
7823
7824 2004-07-14  Wim Taymans  <wim@fluendo.com>
7825
7826         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7827         (add_to_group), (merge_groups), (schedule_group),
7828         (gst_opt_scheduler_get_wrapper), (group_elements),
7829         (group_dec_link), (gst_opt_scheduler_pad_link),
7830         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7831         (gst_opt_scheduler_iterate):
7832         move isolated groups to a new chain.
7833         Emit a warning instead of segfaulting in some error cases.
7834         Fix a bug where the link count between groups was not calculated 
7835         correctly. Fixes #144510.
7836
7837 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7838         * gst/elements/gstfilesrc.c:
7839           Binary files support under Windows now OK
7840       
7841 2004-07-13  Benjamin Otte  <otte@gnome.org>
7842
7843           compatibility fixes for Solaris 8/gcc 2.95
7844         * configure.ac:
7845           include libintl libs in LDFLAGS
7846         * gstvalue.c (gst_value_deserialize_buffer):
7847           cast isxdigit stuff to int to silence compiler warning
7848
7849 2004-07-12  Benjamin Otte  <otte@gnome.org>
7850
7851         * gst/gsttypes.h:
7852           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7853           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7854           just causes support madness
7855         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7856           make it work without this
7857         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7858         (gst_file_index_commit):
7859           glib IO channels don't want binary mode
7860         * testsuite/bytestream/filepadsink.c: (main):
7861         * testsuite/bytestream/test1.c: (read_param_file):
7862           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7863
7864 2004-07-12  Benjamin Otte  <otte@gnome.org>
7865
7866         * gst/gstelement.c: (gst_element_class_init),
7867         (gst_element_set_state), (gst_element_set_state_func):
7868           virutalize gst_element_set_state, use set_state member in class
7869           struct that was already added in 0.7 for this.
7870         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7871         (gst_bin_change_state):
7872           make gst_bin_foreach works similar to other foreach functions, plug
7873           memleaks in it. Make functions using it work with the new approach.
7874           Document gst_bin_foreach, so it can be exported if we want to
7875         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7876           use virtualized set_state to make set_state on bins set the state of
7877           all its children.
7878
7879 2004-07-12  Benjamin Otte  <otte@gnome.org>
7880
7881         * configure.ac:
7882           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7883           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7884         * gst/gstpad.c: (gst_pad_alloc_buffer):
7885           allow buffer_alloc functions to return NULL and allocate a normal
7886           buffer in that case
7887
7888 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7889         * gst/elements/gstfilesink.c:
7890         * gst/elements/gstfilesrc.c:
7891         * gst/indexers/gstfileindex.c:
7892         * gst/gsttypes.h:
7893         * testsuite/bytestream/filepadsink.c:
7894         * testsuite/bytestream/test1.c:
7895           Handle binary files under Windows
7896
7897 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7898         * docs/manual/win32.xml:
7899         * win32/config.h:
7900         * win32/gst-register.vcproj:
7901         * win32/gstreamer.def:
7902           Update to another gettext public build
7903
7904 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7905         * gst/gstplugin.c:
7906           Fix an impossible C syntax
7907         * win32/config.h:
7908           Disable i18n under Windows for the moment
7909         * win32/gst-register.vcproj:
7910           Use this configuration
7911
7912 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7913         * docs/manual/quotes.xml:
7914           Keep the quotes file alive
7915         * docs/random/ds/0.9-suggested-changes:
7916           Add the suggestion of including a 'rowstride' as part of video
7917           format caps
7918
7919 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7920
7921         * gst/gstelement.c: (gst_element_set_state),
7922         (gst_element_change_state):
7923           d'oh.  Set PENDING state correctly before forcing bin to change.
7924         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7925         (gst_structure_parse_fixed_list):
7926         * gst/schedulers/gstoptimalscheduler.c:
7927         (gst_opt_scheduler_state_transition):
7928         * testsuite/states/parent.c: (main):
7929           remove comment now that it's fixed.
7930
7931 2004-07-11  Benjamin Otte  <otte@gnome.org>
7932
7933         * gst/gstclock.h:
7934           GST_SECOND shouldn't cause a conversion to unsigned.
7935         * testsuite/clock/.cvsignore:
7936         * testsuite/clock/Makefile.am:
7937         * testsuite/clock/signedness.c: (main):
7938           make sure it never will again
7939
7940 2004-07-11  Andy Wingo  <wingo@pobox.com>
7941
7942         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7943         whose state is higher than the bin state, raise the bin state to
7944         ensure that bin state := highest child state.
7945         
7946 2004-07-11  Andy Wingo  <wingo@pobox.com>
7947
7948         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7949         procedure on the children of a bin. Assumes that the procedure can
7950         change the set of children.
7951         (set_kid_state_func): New static function.
7952         (gst_bin_change_state): Use gst_bin_foreach to call
7953         set_kid_state_func. Fixes a bug: if a child had a state-change
7954         handler that removes it from the bin, there would be a segfault.
7955         Hopefully it should also work in the case where the state-change
7956         handler on one child adds or removes other children. In any case,
7957         fixes should go to gst_bin_foreach.
7958
7959 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7960
7961         * gst/gstelement.c: (gst_element_set_state):
7962           compatibility fix for latest plugins release.  Change loop back
7963           to while {}
7964
7965 2004-07-09  Wim Taymans  <wim@fluendo.com>
7966
7967         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7968         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7969         (gst_thread_main_loop):
7970         Since remove is virtual in GstBin we must not assume the 
7971         elements GList to have anothing useful.
7972         Add some more logging to GstThread and be a bit more paranoid
7973         when resetting the scheduler.
7974         Set the state of the bin to NULL before removing the children.
7975
7976 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7977
7978         * testsuite/threads/Makefile.am:
7979         * testsuite/threads/threadg.c:
7980           added test to check if problem when removing all elements from a
7981           GstThread before setting GstThread state to NULL
7982
7983 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7984
7985         * docs/gst/tmpl/gstelement.sgml:
7986         * docs/gst/tmpl/gsttypes.sgml:
7987         * gst/gstbin.c: (gst_bin_change_state):
7988         * gst/gstelement.c: (gst_element_set_state),
7989         (gst_element_change_state):
7990           rework so that for bins we try to set the state on all children
7991           as well even if the bin is in the correct state already.
7992           change while to do so at least one iteration is done.
7993           For regular elements, we fall back to the previous behaviour for
7994           now since we first need a new plugins release.
7995         * testsuite/states/parent.c: (main):
7996           test for this case
7997           Fixes #123774
7998
7999 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8000
8001         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
8002         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
8003         (gst_queue_release_locks), (gst_queue_change_state),
8004         (gst_queue_set_property):
8005           add proper lock debugging.  Change dispose to finalize, since
8006           we're freeing mutexes and other stuff which should happen only once.
8007
8008 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8009
8010         * docs/gst/tmpl/gstelement.sgml:
8011         * docs/gst/tmpl/gstplugin.sgml:
8012         * docs/gst/tmpl/gsttypes.sgml:
8013         * docs/pwg/building-state.xml:
8014         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
8015         * gst/gstelement.c: (gst_element_change_state):
8016         * gst/gstthread.c: (gst_thread_change_state):
8017           catch wrong state changes in element base class.
8018
8019 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8020
8021         * gst/gstinfo.h:
8022           clean up layout a little.
8023
8024 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8025
8026         * configure.ac:
8027         * testsuite/Makefile.am:
8028         * testsuite/states/Makefile.am:
8029         * testsuite/states/parent.c: (main):
8030           re-enable states testsuite dir.  Add test for state changes and
8031           parent behaviour
8032
8033 2004-07-09  Wim Taymans  <wim@fluendo.com>
8034
8035         * gst/schedulers/gstoptimalscheduler.c:
8036         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
8037         (element_get_reachables_func), (element_get_reachables),
8038         (debug_element), (rechain_group), (group_migrate_connected),
8039         (gst_opt_scheduler_pad_unlink):
8040         Do not try to migrate decoupled elements to a new group since
8041         they are not added to groups.
8042
8043 2004-07-08  Benjamin Otte  <otte@gnome.org>
8044
8045         * gst/gstelement.c: (gst_element_error_func):
8046           make reentrant (= allow removing elements in error handler)
8047
8048 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8049
8050         * gst/gstpad.c: (gst_pad_event_default_dispatch),
8051         (gst_pad_send_event), (gst_pad_call_chain_function):
8052           events sent to elements below PAUSED cannot be handled, so
8053           don't try to
8054
8055 2004-07-08  Wim Taymans  <wim@fluendo.com>
8056
8057         * gst/schedulers/gstoptimalscheduler.c:
8058         (chain_recursively_migrate_group), (create_group),
8059         (schedule_group), (gst_opt_scheduler_pad_link),
8060         (group_elements_set_visited), (element_get_reachables_func),
8061         (element_get_reachables), (group_can_reach_group), (debug_element),
8062         (rechain_group), (group_migrate_connected),
8063         (gst_opt_scheduler_pad_unlink):
8064         * testsuite/schedulers/Makefile.am:
8065         Implemented group splitting and rechaining.
8066         Fixes 143777 and 143777-2 in the testsuite.
8067
8068 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8069
8070         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8071           extra debugging
8072         * gst/gstevent.h:
8073         * gst/gstinfo.c: (gst_debug_log_default):
8074           print time nicely.  add thread pointer until someone figures out
8075           a completely portable way of getting at thread id's.
8076         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
8077         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
8078         (gst_pad_call_chain_function):
8079           extra debugging
8080         * gst/schedulers/gstoptimalscheduler.c:
8081         (get_group_schedule_function), (loop_group_schedule_function),
8082         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8083         (pad_clear_queued), (gst_opt_scheduler_iterate):
8084           rename BUFPEN and friends to DATAPEN since that's what they are.
8085
8086 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8087
8088         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8089         * gst/gstbuffer.h:
8090         * gst/gstpad.c:
8091           cleanups and debugging
8092
8093 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8094
8095         * configure.ac:
8096         * gst/gstvalue.c: (gst_value_compare_enum),
8097         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8098         (gst_value_can_compare), (gst_value_compare):
8099         * testsuite/Makefile.am:
8100         * testsuite/enumcaps/Makefile.am:
8101         * testsuite/enumcaps/enumcaps.c:
8102           Fix enum serialization, deserialization, comparison in caps, add
8103           a test to ensure that this continues working in the future.
8104
8105 2004-07-06  David Schleef  <ds@schleef.org>
8106
8107         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8108         Fix memleak.
8109
8110 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8111
8112         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8113         * gst/gstplugin.h:
8114         * gst/registries/gstxmlregistry.c:
8115         (plugin_times_older_than_recurse), (plugin_times_older_than),
8116         (gst_xml_registry_parse_padtemplate):
8117           only rebuild registry when actual plugins have a newer time than
8118           the registry.  Fixes #145520
8119
8120 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8121
8122         * docs/manual/manual.xml:
8123         * docs/manual/win32.xml:
8124           add chapter on win32 building.  fixes #142422
8125
8126 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8127
8128         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8129
8130         * gst/autoplug/gstspider.c: (gst_spider_init),
8131         (gst_spider_dispose):
8132           fix spider memleaks.  fixes #137863
8133
8134 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8135
8136         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8137
8138         * gst/schedulers/gstoptimalscheduler.c:
8139         (gst_opt_scheduler_pad_unlink):
8140           fix SIGBUS error, fixes #145338
8141
8142 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8143
8144         * gst/gstobject.c: (gst_object_replace):
8145         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8146         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8147           clean up clock lifecycle.  Fixes #109831
8148
8149 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8150
8151         * po/LINGUAS:
8152         * po/cs.po:
8153           added Czech translation (Miloslav Trmac)
8154
8155 2004-07-04  David Schleef  <ds@schleef.org>
8156
8157         * tools/Makefile.am:
8158         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8159
8160 2004-07-04  David Schleef  <ds@schleef.org>
8161
8162         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8163
8164 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8165
8166         * gst/gstbin.c: (gst_bin_restore_thyself):
8167           chain to parent restore so the bins get restored correctly
8168           in the editor
8169
8170 2004-07-03  David Schleef  <ds@schleef.org>
8171
8172         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8173         Actually do something in these functions, like before the big
8174         caps change.  (bug #145137)
8175
8176 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8177
8178         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8179         (gst_element_get_compatible_pad_filtered):
8180         * gst/gstthread.c: (gst_thread_main_loop):
8181           more debugging
8182
8183 2004-07-02  David Schleef  <ds@schleef.org>
8184
8185         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8186         * gst/gstobject.h:
8187         * gst/gstparse.h:
8188         * gst/gsttrace.h:
8189         * gst/gstxml.h:
8190
8191 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8192
8193         * gst/gstpad.c: (gst_pad_check_schedulers),
8194         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8195         (gst_pad_link_prepare):
8196           revert until testsuite is fixed
8197
8198 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8199
8200         * testsuite/Makefile.am:
8201         * testsuite/caps/filtercaps.c: (main):
8202         * testsuite/clock/clock1.c: (main):
8203         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8204           fix some more tests
8205
8206 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8207
8208         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8209         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8210         * testsuite/cleanup/cleanup4.c: (main):
8211           fix testsuite
8212
8213 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8214
8215         * libs/gst/control/control.c:
8216         * libs/gst/control/dparam.c:
8217         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8218         * libs/gst/control/dparammanager.c:
8219         * libs/gst/control/dparammanager.h:
8220         * testsuite/dynparams/Makefile.am:
8221         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8222         (gst_dptest_change_state), (gst_dptest_chain), (main):
8223           fix testcase for dparams
8224           add debugging category
8225
8226 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8227
8228         * testsuite/Rules:
8229           change path
8230
8231 2004-07-02  Benjamin Otte  <otte@gnome.org>
8232
8233         * tests/.cvsignore:
8234         * tests/Makefile.am:
8235         * tests/mass_elements.c: (gst_get_current_time), (main):
8236           add simple benchmark to test various speeds of fakesrc ! identity !
8237           identity ! ... ! fakesink.
8238           Usage: mass_elements [num_identities] [num_buffers]
8239           If not specified they default to 1000.
8240
8241 2004-07-02  Benjamin Otte  <otte@gnome.org>
8242
8243         * gst/gstpad.c: (gst_pad_check_schedulers),
8244         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8245         (gst_pad_link_prepare):
8246           check that pads that get linked belong to the same manager. The old
8247           code allowed linking elements before putting them into bins, so it
8248           worked to link them and then put them in different threads, which
8249           lead to weird behaviour.
8250           Since this effectively disallows linking elements before putting
8251           them in a bin, some applications might not work after this and error
8252           out. If these applications are too critical, we might need to revert
8253           that patch. Please test this before the next release...
8254
8255 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8256
8257         * gst/gstpad.c: (gst_pad_get_caps):
8258           throw an error if the getcaps function does not return a subset of
8259           the template caps.
8260         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8261           make disconts without position info an error in debugging
8262         * tests/spidey_bench.c: (handoff), (main):
8263           don't count first try when averaging
8264
8265 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8266
8267         * gst/gstplugin.c: (gst_plugin_load_file):
8268           figure out problem with dynamic test
8269
8270 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8271
8272         * docs/gst/Makefile.am:
8273           fix docs build
8274
8275 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8276
8277         * po/POTFILES.in:
8278         * po/af.po:
8279         * po/az.po:
8280         * po/en_GB.po:
8281         * po/fr.po:
8282         * po/nl.po:
8283         * po/sr.po:
8284         * po/sv.po:
8285         * po/tr.po:
8286         * po/uk.po:
8287         * tools/gst-register.c: (plugin_added_func), (main):
8288           i18n-ize -register, fix plural
8289
8290 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8291
8292         * gst/elements/gstidentity.c: (gst_identity_class_init),
8293         (gst_identity_init), (gst_identity_chain),
8294         (gst_identity_set_property), (gst_identity_get_property):
8295         * gst/elements/gstidentity.h:
8296           check for perfect stream
8297
8298 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8299
8300         * gst/elements/gstidentity.c: (gst_identity_chain):
8301           print offset_end
8302
8303 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8304
8305         * docs/gst/Makefile.am:
8306         * docs/gst/gstreamer-docs.sgml:
8307           doc fixes
8308
8309 2004-06-24  David Schleef  <ds@schleef.org>
8310
8311         * autogen.sh:  Remove call to env, since the buildbot isn't
8312         broken anymore.
8313
8314 2004-06-24  Wim Taymans  <wim@fluendo.com>
8315
8316         * gst/elements/Makefile.am:
8317         * gst/elements/gstelements.c:
8318         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8319         (gst_multifdsink_class_init), (gst_multifdsink_init),
8320         (gst_multifdsink_add), (gst_multifdsink_remove),
8321         (gst_multifdsink_clear), (gst_multifdsink_chain),
8322         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8323         * gst/elements/gstmultifdsink.h:
8324         Added an element that writes to multiple filedescriptors at once.
8325
8326 2004-06-24  Benjamin Otte  <otte@gnome.org>
8327
8328         * gst/parse/grammar.y:
8329           don't try to link elements before they have been added to bins
8330
8331 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8332
8333         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8334         (gst_file_pad_get_length):
8335         * libs/gst/bytestream/filepad.h:
8336           add 2 new functions
8337
8338 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8339
8340         * docs/gst/gstreamer-sections.txt:
8341         remove from docs, the define that Benjamin removed from gstelement.h
8342
8343 2004-06-22  Benjamin Otte  <otte@gnome.org>
8344
8345         * gst/gstelement.h:
8346           remove define that referenced a nonexisting GstElement struct member
8347
8348 2004-06-20  Benjamin Otte  <otte@gnome.org>
8349
8350         * gst/gstdata.c: (gst_data_is_writable):
8351           whoops, return values were wrong, so writable data was marked as
8352           non-writable and vice versa. (fixes #143953, spotted by Francis
8353           Labonte)
8354           Shows how rarely we need to copy data ;)
8355
8356 2004-06-20  Benjamin Otte  <otte@gnome.org>
8357
8358         * testsuite/schedulers/.cvsignore:
8359         * testsuite/schedulers/Makefile.am:
8360         * testsuite/schedulers/143777-2.c: (main):
8361           add test for opt breakage in bug #143777
8362
8363 2004-06-20  Benjamin Otte  <otte@gnome.org>
8364
8365         * gst/gstpad.c: (gst_pad_call_chain_function):
8366           check for if we were unlinked while inside the chainfunction (fixes
8367           entrygthread having issues with #143777)
8368         * testsuite/schedulers/143777.c: (main):
8369         * testsuite/schedulers/Makefile.am:
8370           add a test for that fix
8371
8372 2004-06-20  Benjamin Otte  <otte@gnome.org>
8373
8374         * gst/gstvalue.c: (gst_value_set_int_range):
8375           test that start is smaller then end
8376         * libs/gst/bytestream/Makefile.am:
8377         * libs/gst/bytestream/filepad.c: 
8378         * libs/gst/bytestream/filepad.h:
8379           add GstFilePad - a pad that behaves like a FILE*
8380         * testsuite/bytestream/.cvsignore:
8381         * testsuite/bytestream/Makefile.am:
8382         * testsuite/bytestream/filepadsink.c: 
8383           test for the GstFilePad
8384
8385 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8386
8387         * gst/elements/gstidentity.c: (gst_identity_class_init),
8388         (gst_identity_init), (gst_identity_set_clock),
8389         (gst_identity_chain), (gst_identity_set_property),
8390         (gst_identity_get_property):
8391         * gst/elements/gstidentity.h:
8392         * gst/gstclock.c: (gst_clock_id_wait):
8393           add a "sync" property to sync to the clock
8394
8395 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8396
8397         * gst/gstelementfactory.c: (gst_element_factory_create):
8398           make the freakin "elementfactory bla has no type" message more
8399           useful. So we actually can do something when someone shows up
8400           complaining about it.
8401
8402 2004-06-15  Johan Dahlin  <johan@gnome.org>
8403
8404         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8405         found. This matches the old behavior better. Thanks to Thomas for
8406         pointing out.
8407
8408 2004-06-14  David Schleef  <ds@schleef.org>
8409
8410         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8411         -fomit-frame-pointer.  Appears to generate correct code in
8412         other cases as well.
8413
8414 2004-06-14  Johan Dahlin  <johan@gnome.org>
8415
8416         * tools/gst-inspect.c (main): Add two new command line options: -a
8417         to print all elements and -n to print the name on each line. Also
8418         fix some error reporting.
8419         (main): Simplify, remove -n and always print names if -a is specified
8420
8421 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8422
8423         * win32/gstconfig.h:
8424         * win32/GSTreamer.vcproj:
8425         * win32/Makefile:
8426         * gst/gstconfig.h.in:
8427         * gst/gst.h:
8428         * gst/gstbin.h:
8429         * gst/gstelement.h:
8430         * gst/gstevent.h:
8431         * gst/gstobject.h:
8432         * gst/gstpad.h:
8433         * docs/gst/gstreamer-sections.txt:
8434         * docs/gst/tmpl/gstconfig.sgml:
8435           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8436
8437 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8438         * docs/gst/gstreamer-sections.txt:
8439         * docs/gst/tmpl/gstconfig.sgml:
8440         Add the GSTREAMER_EXPORT macro to the docs
8441
8442 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8443
8444         * tools/gst-compprep.c: (handle_xmlerror), (main):
8445         Add a check for the version that introduced SetStructuredError to fix
8446         the build on FC1
8447
8448 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8449
8450         * win32/msvc71.sln:
8451         * win32/testsuite/:
8452           prepare to compile the testsuite with MSVC
8453
8454 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8455
8456         * docs/manual/win32.xml:
8457           attempt to transform the Win32 README into an XML doc
8458
8459 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8460
8461         * gst/gst.c:
8462         * gst/gstbin.*:
8463         * gst/config.h.in:
8464         * gst/gstelement.*:
8465         * gst/gstevent.h:
8466         * gst/gstobject.*:
8467         * gst/gstpad.h:
8468         * tools/gst-register.c:
8469         * win32/gstreamer.def:
8470           extern symbols are now exported for the Windows DLL
8471
8472 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8473
8474         * gst/gstinfo.h:
8475           fix a problem to enable/disable DEBUG under MSVC
8476
8477 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8478
8479         * win32/:
8480           enable more debug code in DEBUG build
8481
8482 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8483
8484         * win32/config.h:
8485         * gst/gst-i18n-app.h:
8486           enable NLS under Windows
8487
8488 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8489         * tools/gst-compprep.c: (handle_xmlerror), (main):
8490           Make an error that baffled me a bit clearer
8491
8492 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8493
8494         * gst/gstqueue.c:
8495           don't use g_queue_get_length () because it's 2.4, use ->length
8496
8497 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8498
8499         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8500
8501         * tools/gst-inspect.c: (print_signal_info):
8502           don't free random data twice. (fixes #144185)
8503
8504 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8505
8506         * gst/gstqueue.c:
8507         * gst/gstqueue.h:
8508           fix removing from the wrong queue on event timeout
8509           fix disposing of the event queue by casting correctly
8510           add mutexes for handling the event queue
8511           someone was sleeping when fixing queue last time around :)
8512
8513 2004-06-10  Johan Dahlin  <johan@gnome.org>
8514
8515         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8516         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8517
8518 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8519
8520         * docs/random/gdp:
8521         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8522         * libs/gst/dataprotocol/dataprotocol.c:
8523         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8524         (gst_dp_buffer_from_header):
8525         * libs/gst/dataprotocol/dataprotocol.h:
8526         * libs/gst/dataprotocol/dp-private.h:
8527           rev version to 0.1, add buffer flags and copy them
8528
8529 2004-06-09  Johan Dahlin  <johan@gnome.org>
8530
8531         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8532         the flags from the buffer we're copying.
8533
8534 2004-06-09  Wim Taymans  <wim@fluendo.com>
8535
8536         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8537         * gst/elements/gstidentity.c: (gst_identity_init),
8538         (gst_identity_chain):
8539         Print more buffer info in fakesink.
8540         Make identity output similar to fakesink.
8541
8542 2004-06-07  Daniel Gazard  <dany42@free.fr>
8543
8544         reviewed by Benjamin Otte  <otte@gnome.org>
8545
8546         * configure.ac:
8547           fix cross compiling not working. (fixes #143741)
8548
8549 2004-06-07  Benjamin Otte  <otte@gnome.org>
8550
8551         * gst/gstelement.c: (gst_element_set_time_delay):
8552           add failure check
8553         * gst/gstinfo.h:
8554           put brackets around macro arguments of GST_TIME_ARGS, add note to
8555           move it to correct header in 0.9
8556
8557 2004-06-07  Benjamin Otte  <otte@gnome.org>
8558
8559         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8560         (gst_file_index_load), (_file_index_id_save_entries),
8561         (gst_file_index_commit), (gst_file_index_add_association),
8562         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8563         (gst_file_index_plugin_init):
8564           make debugging use a default category
8565
8566 2004-06-06  David Moore  <dcm@acm.org>
8567
8568         reviewed by Benjamin Otte  <otte@gnome.org>
8569
8570         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8571         (gst_fdsrc_change_state):
8572           reset offset counter when going READY => PAUSED. (fixes #142903)
8573
8574 2004-06-06  ed@catmur.co.uk
8575
8576         reviewed by Benjamin Otte  <otte@gnome.org>
8577
8578         * gst/registries/gstxmlregistry.c:
8579         (gst_xml_registry_rebuild_recurse):
8580           don't rely on g_dir_open to figure out if a file is a directory, use
8581           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8582           directories. (fixes #142850)
8583
8584 2004-06-06  Benjamin Otte  <otte@gnome.org>
8585
8586         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8587           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8588         * libs/gst/bytestream/adapter.c:
8589         * libs/gst/bytestream/adapter.h:
8590           fix copyright in header and typo in debugging category name
8591
8592 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8593
8594         * configure.ac:
8595           bump nano to cvs
8596
8597 === release 0.8.3 ===
8598
8599 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8600
8601         * configure.ac:
8602           update libtool versioning
8603           do a new release
8604         * docs/gst/tmpl/gstelement.sgml:
8605         * docs/gst/tmpl/gsttypes.sgml:
8606         * gst/gstinfo.c: (_gst_debug_init):
8607           put back GST_CAT_DATAFLOW to fix API breakage
8608
8609 2004-06-04  David Schleef  <ds@schleef.org>
8610
8611         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8612
8613 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8614
8615         * configure.ac:
8616           bump nano to cvs
8617
8618 === release 0.8.2 ===
8619
8620 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8621
8622         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8623           check GST_DEBUG environment variable which is parsed the same way
8624           as --gst-debug=
8625
8626 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8627
8628         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8629                             gstmd5sink.c gstshaper.c gsttee.c
8630                             gsttypefindelement.c
8631         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8632
8633           - removing trailing commas at end of enums
8634             it is correct C99 code but C90 compilers would complain
8635             (AIX, Forte, ...)
8636             ('should' fix #143290, at least partially)
8637
8638 2004-05-27  Wim Taymans  <wim@fluendo.com>
8639
8640         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8641         (chain_group_set_enabled), (create_group), (add_to_group),
8642         (merge_groups), (setup_group_scheduler), (group_elements),
8643         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8644         Don't try to follow the pad connections with other groups
8645         when a loop based element is added to the scheduler because
8646         the bin will inform the scheduler about the pad links a little
8647         later.
8648
8649 2004-05-27  Wim Taymans  <wim@fluendo.com>
8650
8651         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8652         (remove_from_chain), (chain_group_set_enabled),
8653         (setup_group_scheduler), (group_element_set_enabled),
8654         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8655         (gst_opt_scheduler_show):
8656         Elements without a group can do a state change as well, just wait
8657         with the setup of the scheduling function when it is added to a
8658         chain.
8659
8660 2004-05-27  Wim Taymans  <wim@fluendo.com>
8661
8662         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8663         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8664         (merge_groups), (setup_group_scheduler),
8665         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8666         (gst_opt_scheduler_show):
8667         Fixes to maintain internal consistency of the scheduler data
8668         structures. 
8669          - adding an enabled group to a chain should increment the
8670            number of enabled elements in that chain.
8671          - removing an enabled group from a chain could disable the
8672            chain.
8673          - removing a disabled group from a chain could enable the
8674            chain.
8675          - add g_assert when internal inconsistency is detected.
8676          - adding an element to a group could increase the number of
8677            links this group has with other groups.
8678          - merging two groups also merges the chains.
8679          - also show group links in the _show method.
8680            
8681
8682 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8683
8684         * gst/gstcaps.c: (gst_caps_structure_simplify):
8685           don't print error messages when there is no error
8686         * gst/gstvalue.c: (gst_value_compare_int_range):
8687           compare the second value, too
8688         * testsuite/caps/Makefile.am:
8689         * testsuite/caps/random.c: (assert_on_error), (main):
8690           add tests to make sure the two things above are checked for
8691
8692 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8693
8694         * configure.ac:
8695         * libs/gst/dataprotocol/Makefile.am:
8696         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8697         * libs/gst/dataprotocol/dataprotocol.h:
8698           wrap header in GST_ENABLE_NEW.  make code use it
8699
8700 2004-05-23  Johan Dahlin  <johan@gnome.org>
8701
8702         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8703         so verbose and print GstElement signal names all the time.
8704
8705 2004-05-22  David Schleef  <ds@schleef.org>
8706
8707         * gst/registries/gstxmlregistry.c:
8708         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8709         (bug #142957)
8710
8711 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8712
8713         * configure.ac:
8714           scrub cflags for glib2 so gcc doesn't complain when glib is in
8715           /usr/local
8716
8717 2004-05-21  Johan Dahlin  <johan@gnome.org>
8718
8719         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8720         __GNUC__, patch from Brian Cameron, fixes bug #142804
8721
8722 2004-05-20  David Schleef  <ds@schleef.org>
8723
8724         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8725         comparison code.  (bug #142819)
8726
8727 2004-05-20  Wim Taymans  <wim@fluendo.com>
8728
8729         * gst/gstbuffer.c: (gst_buffer_default_copy):
8730         * gst/gstbuffer.h:
8731         Added Comment to a flag.
8732         copy relevant flags in _buffer_copy.
8733
8734 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8735
8736         reviewed by: Wim Taymans <wim at fluendo dot com>
8737
8738         * gst/gstbuffer.h:
8739           add GST_BUFFER_IN_CAPS buffer flag
8740         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8741         (gst_structure_parse_any_list), (gst_structure_parse_list),
8742         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8743         * gst/gstvalue.c: (gst_value_serialize_any_list),
8744         (gst_value_transform_any_list_string),
8745         (gst_value_list_prepend_value), (gst_value_list_append_value),
8746         (gst_value_list_get_size), (gst_value_list_get_value),
8747         (gst_value_transform_list_string),
8748         (gst_value_transform_fixed_list_string),
8749         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8750         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8751         (_gst_value_initialize):
8752         * gst/gstvalue.h:
8753           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8754           < , > as a format.
8755         * testsuite/caps/string-conversions.c: (main):
8756           add regression tests for < >
8757
8758 2004-05-20  Johan Dahlin  <johan@gnome.org>
8759
8760         * docs/gst/Makefile.am (all-local): Re-add
8761
8762 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8763
8764         * docs/gst/Makefile.am:
8765         * docs/gst/gstreamer-docs.sgml:
8766         * docs/libs/Makefile.am:
8767         * docs/libs/gstreamer-libs-docs.sgml:
8768           fix distcheck issues
8769
8770 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8771
8772         * libs/gst/dataprotocol/Makefile.am:
8773           add to autotest
8774
8775 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8776
8777         * libs/gst/dataprotocol/Makefile.am:
8778         * libs/gst/dataprotocol/dataprotocol.c:
8779         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8780         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8781         * libs/gst/dataprotocol/dp-private.h:
8782           use GST macros to read/write fixed length ints
8783           add some more asserts
8784
8785 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8786
8787         * docs/libs/gstreamer-libs-docs.sgml:
8788         * docs/libs/gstreamer-libs-sections.txt:
8789           remove idct and putbits
8790         * configure.ac:
8791         * docs/libs/tmpl/gstdataprotocol.sgml:
8792         * libs/gst/Makefile.am:
8793         * libs/gst/dataprotocol/Makefile.am:
8794         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8795         (buffer_test), (caps_test), (event_test), (main):
8796         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8797         (gst_dp_dump_byte_array), (gst_dp_init),
8798         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8799         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8800         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8801         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8802         (gst_dp_validate_header), (gst_dp_validate_payload),
8803         (gst_dp_validate_packet), (plugin_init):
8804         * libs/gst/dataprotocol/dataprotocol.h:
8805         * libs/gst/dataprotocol/dp-private.h:
8806           add dataprotocol
8807
8808 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8809
8810         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8811           fix int variable deserialization and add a helper so we can actually
8812           debug this.
8813
8814 2004-05-18  David Schleef  <ds@schleef.org>
8815
8816         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8817           argv[0].  Calling yourself is probably not the best way to
8818           construct a test like this, btw.
8819
8820 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8821
8822         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8823           don't claim to be more intelligent than a scheduler when the
8824           scheduler claims the pipeline is stopped
8825         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8826         (safe_cothread_destroy),
8827         (gst_entry_scheduler_remove_all_cothreads),
8828         (gst_entry_scheduler_reset), (_remove_cothread),
8829         (gst_entry_scheduler_state_transition):
8830           hold off cothread destruction if we're not in main cothread
8831         * configure.ac:
8832         * testsuite/Makefile.am:
8833           add new test dir
8834         * testsuite/schedulers/.cvsignore:
8835         * testsuite/schedulers/Makefile.am:
8836           add tests
8837         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8838           check relinking and adding/removing elements from a running pipeline
8839         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8840           check unlinking in a running pipeline
8841         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8842           check unreffing a running pipeline
8843         * testsuite/schedulers/useless_iteration.c: (main):
8844           check iterating a pipeline that contains running threads works
8845
8846 2004-05-18  David Schleef  <ds@schleef.org>
8847
8848         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8849           is false.
8850
8851 2004-05-18  Wim Taymans  <wim@fluendo.com>
8852
8853         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8854         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8855         Fixed an error introduced with patch for 1.63. When setting
8856         a get based element as the entry point in a group, make sure
8857         to mark the group as GET based.
8858
8859 2004-05-18  Wim Taymans  <wim@fluendo.com>
8860
8861         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8862         (setup_group_scheduler), (loop_group_schedule_function),
8863         (gst_opt_scheduler_pad_link):
8864         Added some more debug info and fixed a bug where the group
8865         type was set to LOOP but it was in fact unknown.
8866
8867 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8868
8869         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8870           make resetting scheduler work twice in a row
8871
8872 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8873
8874         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8875         (CREATE_USERIALIZATION), (_gst_value_initialize),
8876         (gst_value_compare_float), (gst_value_serialize_float),
8877         (gst_value_deserialize_float), (gst_value_compare_enum),
8878         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8879           add serialization and comparison functions for long, int64, enum and
8880           float values
8881         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8882           use best serialization function in type hierarchy instead of only a
8883           matching one. This is required for enums to work.
8884         * gst/parse/grammar.y:
8885           use gst_caps_deserialize
8886         * testsuite/parse/Makefile.am:
8887           parse1 now works
8888         * testsuite/parse/parse1.c: (main):
8889           remove aggregator check, aggregator is broken, this test works now
8890           but fails because of bug #138012
8891         * testsuite/parse/parse2.c: (main):
8892           s/xvideosink/xvimagesink - this test looks a lot like we should
8893           disable it
8894
8895 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8896
8897         * gst/gstelement.c: (gst_element_class_init):
8898           whoops, store the signal id correctly
8899         * gst/schedulers/gstbasicscheduler.c:
8900         (gst_basic_scheduler_chain_wrapper):
8901           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8902           chain function isn't linked
8903
8904 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8905         * configure.ac:
8906         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8907         support until we decide where the flags should be used
8908         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8909         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8910         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8911         Output refused caps in the debug info
8912
8913 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8914
8915         * gst/elements/gstidentity.c: (gst_identity_chain):
8916           add duration debug
8917         * gst/gstinfo.c: (gst_debug_log_default):
8918           add timestamp
8919
8920 2004-05-13  Benjamin Otte  <otte@gnome.org>
8921
8922         * gst/gstpipeline.c: (gst_pipeline_dispose),
8923         (gst_pipeline_change_state):
8924           call gst_scheduler_reset on dispose (fixes #141416)
8925
8926 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8927
8928         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8929           compute mapsize correctly
8930         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8931           use correct datatypes when calling a varargs function
8932         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8933           push a DISCONT event as first thing
8934         * gst/gst_private.h:
8935         * gst/gstinfo.c: (_gst_debug_init):
8936           remove GST_DATAFLOW debugging category
8937         * gst/gstbin.c: (gst_bin_iterate):
8938           use GST_SCHEDULING category
8939         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8940         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8941         (gst_pad_call_get_function):
8942           add GST_DATAFLOW to easily track flow of buffers or events.
8943         * gst/gstqueue.c: (gst_queue_get_type),
8944         (gst_queue_handle_pending_events), (gst_queue_chain),
8945         (gst_queue_get), (gst_queue_handle_src_event):
8946           use own static debugging category GST_DATAFLOW for dataflow,
8947           use DEBUG category for showing which path events go, use LOG
8948           category for buffers.
8949
8950 2004-05-10  David Schleef  <ds@schleef.org>
8951
8952         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8953
8954 2004-05-10  David Schleef  <ds@schleef.org>
8955
8956         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8957         symbols, because otherwise we don't know what they are.  Thanks,
8958         the GStreamer team.
8959         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8960
8961 2004-05-10  David Schleef  <ds@schleef.org>
8962
8963         (from Steve Lhomme)
8964         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8965         are deleted.  Fix.
8966         * win32/Makefile.inspect:
8967         * win32/Makefile.launch:
8968         * win32/Makefile.register:
8969
8970 2004-05-10  David Schleef  <ds@schleef.org>
8971
8972         * gst/gstinfo.h: Add missing inline function.
8973         * gst/gsttrace.c: add include
8974         * gst/parse/grammar.y: remove unused code
8975         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8976         more portable.
8977         * tools/gst-register.c: wrap unistd.h
8978         
8979         More additions/fixes from Steve for the MSVC build.
8980         * win32/GStreamer.vcproj:
8981         * win32/Makefile:
8982         * win32/Makefile.inspect:
8983         * win32/Makefile.launch:
8984         * win32/Makefile.register:
8985         * win32/README.txt:
8986         * win32/gst-inspect.vcproj:
8987         * win32/gst-launch.vcproj:
8988         * win32/gst-register.vcproj:
8989         * win32/gstbytestream.def:
8990         * win32/gstbytestream.vcproj:
8991         * win32/gstconfig.h:
8992         * win32/gstelements.def:
8993         * win32/gstelements.vcproj:
8994         * win32/gstenumtypes.c:
8995         * win32/gstenumtypes.h:
8996         * win32/gstoptimalscheduler.def:
8997         * win32/gstoptimalscheduler.vcproj:
8998         * win32/gstreamer.def:
8999         * win32/gstspider.def:
9000         * win32/gstspider.vcproj:
9001         * win32/gstversion.h:
9002         * win32/msvc71.sln:
9003
9004 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9005
9006         * gst/gstelement.c: (gst_element_class_init),
9007         (gst_element_no_more_pads):
9008         * gst/gstelement.h:
9009           add gst_element_no_more_pads and the "no-more-pads" signal
9010
9011 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9012
9013         * gst/gstregistry.c: (gst_registry_add_plugin):
9014           refuse to add plugins when a plugin with same name is already
9015           registered. Fixes a bunch of "How to remove plugins?" issues.
9016           May lead to other problems though, let's test
9017
9018 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9019
9020         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
9021         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
9022         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
9023
9024 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9025
9026         * tests/Makefile.am: fix am16 issue
9027
9028 2004-05-09  Benjamin Otte  <otte@gnome.org>
9029
9030         * libs/gst/bytestream/Makefile.am:
9031           we should indeed add .c files to makefiles or they won't be built
9032           (d'oh)
9033
9034 2004-05-08  Benjamin Otte  <otte@gnome.org>
9035
9036         * gst/gstpad.c: (gst_pad_proxy_fixate):
9037           really reduce the set of caps
9038
9039 2004-05-08  Benjamin Otte  <otte@gnome.org>
9040
9041         * tests/Makefile.am:
9042         * tests/spidey_bench.c: (handoff), (main):
9043           add benchmark to test how long spider needs to create a pipeline
9044
9045 2004-05-08  Benjamin Otte  <otte@gnome.org>
9046
9047         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
9048           mark links as unengaged when unnegotiating instead of deactivating.
9049           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
9050
9051 2004-05-08  Benjamin Otte  <otte@gnome.org>
9052
9053         * docs/manual/helloworld.xml:
9054           s/audiosink/osssink (patch by Patrick Guimond)
9055
9056 2004-05-07  David Schleef  <ds@schleef.org>
9057
9058         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
9059         since it contains important stuff.
9060
9061 2004-05-07  David Schleef  <ds@schleef.org>
9062
9063         * testsuite/caps/caps.c: (test3), (main): A check for appending
9064         ANY caps.
9065
9066 2004-05-07  David Schleef  <ds@schleef.org>
9067
9068         * common/m4/as-compiler-flag.m4: Properly quote arguments,
9069         which may contain commas.  Fixes detection of -Wa,-mregnames
9070
9071 2004-05-06  David Schleef  <ds@schleef.org>
9072
9073         Changes to handle compilers that don't have variadic macro
9074         support.  In particular, glib headers define some inlines
9075         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
9076         builds.
9077         * gst/Makefile.am:
9078         * gst/cothreads.c:
9079         * gst/elements/gstfdsink.c:
9080         * gst/elements/gstfdsrc.c:
9081         * gst/elements/gstfilesink.c:
9082         * gst/elements/gstfilesrc.c:
9083         * gst/gst_private.h:
9084         * gst/gstatomic.c:
9085         * gst/gstcaps.c: (gst_caps_append):
9086         * gst/gstcpu.c: (gst_cpuid_i386):
9087         * gst/gstelement.c:
9088         * gst/gsterror.c:
9089         * gst/gstfilter.c:
9090         * gst/gstinfo.h:
9091         * gst/gstprobe.c:
9092         * gst/gstquery.c:
9093         * gst/gstregistry.c:
9094         * gst/gststructure.c:
9095         * gst/gsttaginterface.c:
9096         * gst/gsttrace.c: (gst_trace_new):
9097         * gst/gsttrashstack.c:
9098         * gst/gsturi.c:
9099         * gst/gstvalue.c:
9100         * gst/parse/grammar.y:
9101         * gst/parse/parse.l:
9102         * tools/gst-inspect.c: (main):
9103         * tools/gst-launch.c: (main):
9104         * tools/gst-xmlinspect.c: (PUT_STRING):
9105
9106 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9107
9108         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9109         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9110         * gst/elements/gstfilesrc.h:
9111           send NEW_MEDIA events correctly
9112         * gst/elements/gsttypefindelement.c: (start_typefinding),
9113         (gst_type_find_element_handle_event):
9114           restart typefinding when we get a NEW_MEDIA event
9115         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9116         (gst_bin_dispose):
9117           don't die when someone removes elements in callbacks
9118         * gst/gstelement.c: (gst_element_change_state):
9119           improve debugging
9120         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9121           we need a NEW_MEDIA event to engage a link
9122         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9123           don't g_print debugging stuff
9124         * testsuite/caps/simplify.c: (check_caps):
9125
9126 2004-05-04  Benjamin Otte  <otte@gnome.org>
9127
9128         * gst/parse/grammar.y:
9129           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9130
9131 2004-05-04  Benjamin Otte  <otte@gnome.org>
9132
9133         * testsuite/caps/renegotiate.c: (main):
9134           improve output in error case
9135
9136 2004-05-04  Benjamin Otte  <otte@gnome.org>
9137
9138         * gst/parse/grammar.y:
9139           fix assert to not trigger when there's no error argument
9140         * gst/parse/parse.l:
9141           fix definition of caps to allow more than two structures
9142         * testsuite/caps/Makefile.am:
9143         * testsuite/caps/renegotiate.c: (main):
9144           it's sinesrc and works in that case
9145
9146 2004-05-04  Wim Taymans  <wim@fluendo.com>
9147
9148         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9149         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9150         when removing an element from a group, we always need to
9151         decrement the link count that this group had with other 
9152         groups through the element.
9153         added an extra assert to catch inconsistencies when decrementing
9154         the link count.
9155
9156 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9157
9158         * configure.ac:
9159         * docs/gst/Makefile.am:
9160         * docs/gst/gstreamer-sections.txt:
9161         * docs/gst/tmpl/gstcompat.sgml:
9162         * examples/appreader/Makefile.am:
9163         * examples/cutter/Makefile.am:
9164         * examples/events/Makefile.am:
9165         * examples/helloworld/Makefile.am:
9166         * examples/helloworld2/Makefile.am:
9167         * examples/launch/Makefile.am:
9168         * examples/manual/Makefile.am:
9169         * examples/mixer/Makefile.am:
9170         * examples/pingpong/Makefile.am:
9171         * examples/plugins/Makefile.am:
9172         * examples/queue/Makefile.am:
9173         * examples/queue2/Makefile.am:
9174         * examples/queue3/Makefile.am:
9175         * examples/queue4/Makefile.am:
9176         * examples/retag/Makefile.am:
9177         * examples/thread/Makefile.am:
9178         * examples/typefind/Makefile.am:
9179         * examples/xml/Makefile.am:
9180         * gst/Makefile.am:
9181         * gst/autoplug/Makefile.am:
9182         * gst/elements/Makefile.am:
9183         * gst/gstcompat.h:
9184         * gst/indexers/Makefile.am:
9185         * gst/parse/Makefile.am:
9186         * gst/registries/Makefile.am:
9187         * gst/schedulers/Makefile.am:
9188         * libs/gst/bytestream/Makefile.am:
9189         * libs/gst/control/Makefile.am:
9190         * libs/gst/getbits/Makefile.am:
9191         * po/af.po:
9192         * po/az.po:
9193         * po/en_GB.po:
9194         * po/fr.po:
9195         * po/nl.po:
9196         * po/sr.po:
9197         * po/sv.po:
9198         * po/tr.po:
9199         * po/uk.po:
9200         * tests/Makefile.am:
9201         * tests/bufspeed/Makefile.am:
9202         * tests/instantiate/Makefile.am:
9203         * tests/memchunk/Makefile.am:
9204         * tests/muxing/Makefile.am:
9205         * tests/negotiation/Makefile.am:
9206         * tests/probes/Makefile.am:
9207         * tests/sched/Makefile.am:
9208         * tests/seeking/Makefile.am:
9209         * tests/threadstate/Makefile.am:
9210         * testsuite/caps/Makefile.am:
9211         * testsuite/cleanup/Makefile.am:
9212         * testsuite/dlopen/Makefile.am:
9213         * testsuite/dynparams/Makefile.am:
9214         * testsuite/plugin/Makefile.am:
9215         * testsuite/states/Makefile.am:
9216         * tools/Makefile.am:
9217           reorganize compile/link flags to be consistent
9218           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9219
9220 2004-05-04  David Schleef  <ds@schleef.org>
9221
9222         The "once more, with feeling" check-in.
9223         * testsuite/caps/Makefile.am: dist caps_strings
9224         * testsuite/caps/renegotiate.c: (main): This test triggers a
9225           segfault in the core.  Marking as failing.
9226
9227 2004-05-03  David Schleef  <ds@schleef.org>
9228
9229         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9230           by the build bots.
9231         * testsuite/caps/renegotiate.c: (main): Same.
9232
9233 2004-05-03  David Schleef  <ds@schleef.org>
9234
9235         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9236
9237 2004-05-03  David Schleef  <ds@schleef.org>
9238
9239         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9240           variable to find our source file.
9241
9242 2004-05-03  David Schleef  <ds@schleef.org>
9243
9244         * configure.ac:  Link plugins with libgstreamer and dependent
9245           libraries
9246         * testsuite/caps/Makefile.am:
9247         * testsuite/caps/caps_strings:
9248         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9249           through a file of caps strings and test each one
9250
9251 2004-05-04  Benjamin Otte  <otte@gnome.org>
9252
9253         * libs/gst/bytestream/Makefile.am:
9254         * libs/gst/bytestream/adapter.c: 
9255         * libs/gst/bytestream/adapter.h:
9256           add GstAdapter, similar to bytestream, but doesn't require ugly event
9257           handling or uglier loopbased elements
9258
9259 2004-05-03  David Schleef  <ds@schleef.org>
9260
9261         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9262         * testsuite/caps/erathostenes.c:
9263         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9264
9265 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9266
9267         * docs/pwg/pwg.xml:
9268           remove hardcoded stylesheet path (duh)
9269         * docs/random/release:
9270         * docs/gst/gstreamer-sections.txt:
9271         * gst/Makefile.am:
9272         * gst/gst.h:
9273         * gst/gst_private.h:
9274         * gst/gstcaps.c:
9275         * gst/gstevent.c:
9276         * gst/gstformat.c:
9277         * gst/gstinfo.c:
9278         * gst/gstinfo.h:
9279         * gst/gstinterface.c:
9280         * gst/gstmemchunk.c:
9281         * gst/gstprobe.c:
9282         * gst/gstquery.c:
9283         * gst/gstregistry.c:
9284         * gst/gstregistrypool.c:
9285         * gst/gststructure.c:
9286         * gst/gsttaginterface.c:
9287         * gst/gstthread.c:
9288         * gst/gsttrace.c:
9289         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9290         * gst/gsturi.c:
9291         * gst/gstvalue.c:
9292           deprecate gst_info; remove gstlog.h
9293    
9294
9295 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9296
9297         * Makefile.am:
9298         * po/en_GB.po:
9299         * po/sv.po:
9300         * po/uk.po:
9301           updated translations
9302
9303 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9304
9305         * gst/gstbin.c: (gst_bin_dispose):
9306           better debugging
9307
9308 2004-05-03  Johan Dahlin  <johan@gnome.org>
9309
9310         * gst/schedulers/gstoptimalscheduler.c
9311         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9312         really is a GstElement. Avoids critical when running gst-launch -v
9313         and a oggdemux/decoding pipeline.
9314
9315 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9316
9317         * docs/gst/tmpl/gstpipeline.sgml :
9318         * docs/manual/elements-api.xml :
9319                 doc fix by Patrick Guimond (Protector) from devel ML
9320                 reviewed by ronald
9321
9322 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9323
9324         * docs/gst/Makefile.am :
9325         * docs/libs/Makefile.am :
9326                 apply a patch from Arwed v. Merkatz so that gtk-doc
9327                 generated docs install (same for .devhelp file)
9328                 (fixes part 1 of #138836)
9329
9330 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9331
9332         * docs/faq/dependencies.xml: typo
9333         * docs/faq/getting.xml :
9334             - fix download URL for new gstreamer site
9335             - hide sf.net download page as latest version aren't there
9336             - fix apt URLs
9337             - fill "get via CVS" paragraph (link to dev page on the site)
9338         * docs/faq/general.xml:
9339             hide status tables as they no more exists
9340             change case on plugins license file to reflect reality
9341         * docs/faq/troubleshooting.xml:
9342             remove the wiki question/answer as there is no more wiki
9343
9344 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9345
9346         * gst/gsterror.h:
9347           include the headers needed for declarations used in this header
9348
9349 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9350
9351         * docs/random/uraeus/gstreamer_and_midi.txt :
9352           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9353           (fixes #132288)
9354
9355 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9356
9357         reviewed by Benjamin Otte  <otte@gnome.org>
9358
9359         * gst/schedulers/gthread-cothreads.h:
9360           free allocated data for main cothread, too when destroying context
9361           (fixes #141417)
9362
9363 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9364
9365         * docs/manual/goals.xml : remove duplicated paragraph at end 
9366         of doc page (fixes #141448)
9367
9368 2004-04-29  David Schleef  <ds@schleef.org>
9369
9370         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9371         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9372
9373 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9374
9375         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9376           fix property
9377         * gst/gstcaps.c:
9378           fix doc string
9379         * po/POTFILES.in:
9380           rename typefind source file
9381
9382 2004-04-28  David Schleef  <ds@schleef.org>
9383
9384         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9385         * win32/GStreamer.vcproj:
9386         * win32/Makefile:
9387         * win32/config.h:
9388         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9389         (_trewinddir), (_ttelldir), (_tseekdir):
9390         * win32/dirent.h:
9391         * win32/gst-inspect.vcproj:
9392         * win32/gst-launch.vcproj:
9393         * win32/gst-register.vcproj:
9394         * win32/gstbytestream.vcproj:
9395         * win32/gstelements.vcproj:
9396         * win32/gstoptimalscheduler.vcproj:
9397         * win32/gstspider.vcproj:
9398         * win32/gtchar.h:
9399         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9400         * win32/mman.h:
9401         * win32/mman.inl:
9402         * win32/msvc71.sln:
9403
9404 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9405
9406         * gst/gst.c: (init_post):
9407         * gst/gstinfo.c:
9408           remove useless _gst_progname stuff
9409         * tools/gst-inspect.c: (print_field), (print_caps):
9410           improve caps output
9411
9412 2004-04-28  David Schleef  <ds@schleef.org>
9413
9414         Disable parsing of a lot of files that aren't part of the
9415         exported API.  Move corresponding template files to old/,
9416         waiting for removal when they don't contain anything
9417         interesting.
9418         * docs/gst/Makefile.am:
9419         * docs/gst/gstreamer-sections.txt:
9420         * docs/gst/tmpl/cothreads.sgml:
9421         * docs/gst/tmpl/cothreads_compat.sgml:
9422         * docs/gst/tmpl/gettext.sgml:
9423         * docs/gst/tmpl/gobject2gtk.sgml:
9424         * docs/gst/tmpl/grammar.tab.sgml:
9425         * docs/gst/tmpl/gst-i18n-app.sgml:
9426         * docs/gst/tmpl/gst-i18n-lib.sgml:
9427         * docs/gst/tmpl/gst_private.sgml:
9428         * docs/gst/tmpl/gstaggregator.sgml:
9429         * docs/gst/tmpl/gstarch.sgml:
9430         * docs/gst/tmpl/gstatomic_impl.sgml:
9431         * docs/gst/tmpl/gstbufferstore.sgml:
9432         * docs/gst/tmpl/gstdata_private.sgml:
9433         * docs/gst/tmpl/gstdisksink.sgml:
9434         * docs/gst/tmpl/gstdisksrc.sgml:
9435         * docs/gst/tmpl/gstelementfactory.sgml:
9436         * docs/gst/tmpl/gstextratypes.sgml:
9437         * docs/gst/tmpl/gstfakesink.sgml:
9438         * docs/gst/tmpl/gstfakesrc.sgml:
9439         * docs/gst/tmpl/gstfdsink.sgml:
9440         * docs/gst/tmpl/gstfdsrc.sgml:
9441         * docs/gst/tmpl/gstfilesink.sgml:
9442         * docs/gst/tmpl/gstfilesrc.sgml:
9443         * docs/gst/tmpl/gsthttpsrc.sgml:
9444         * docs/gst/tmpl/gstidentity.sgml:
9445         * docs/gst/tmpl/gstindexfactory.sgml:
9446         * docs/gst/tmpl/gstmarshal.sgml:
9447         * docs/gst/tmpl/gstmd5sink.sgml:
9448         * docs/gst/tmpl/gstmultidisksrc.sgml:
9449         * docs/gst/tmpl/gstmultifilesrc.sgml:
9450         * docs/gst/tmpl/gstpadtemplate.sgml:
9451         * docs/gst/tmpl/gstpipefilter.sgml:
9452         * docs/gst/tmpl/gstschedulerfactory.sgml:
9453         * docs/gst/tmpl/gstsearchfuncs.sgml:
9454         * docs/gst/tmpl/gstshaper.sgml:
9455         * docs/gst/tmpl/gstspider.sgml:
9456         * docs/gst/tmpl/gstspideridentity.sgml:
9457         * docs/gst/tmpl/gststatistics.sgml:
9458         * docs/gst/tmpl/gsttee.sgml:
9459         * docs/gst/tmpl/gsttimecache.sgml:
9460         * docs/gst/tmpl/gsttypefind.sgml:
9461         * docs/gst/tmpl/gsttypefindfactory.sgml:
9462         * docs/gst/tmpl/gstxmlregistry.sgml:
9463         * docs/gst/tmpl/gthread-cothreads.sgml:
9464         * docs/gst/tmpl/old/cothreads.sgml:
9465         * docs/gst/tmpl/old/cothreads_compat.sgml:
9466         * docs/gst/tmpl/old/gettext.sgml:
9467         * docs/gst/tmpl/old/gobject2gtk.sgml:
9468         * docs/gst/tmpl/old/grammar.tab.sgml:
9469         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9470         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9471         * docs/gst/tmpl/old/gst_private.sgml:
9472         * docs/gst/tmpl/old/gstaggregator.sgml:
9473         * docs/gst/tmpl/old/gstarch.sgml:
9474         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9475         * docs/gst/tmpl/old/gstbufferstore.sgml:
9476         * docs/gst/tmpl/old/gstdata_private.sgml:
9477         * docs/gst/tmpl/old/gstdisksink.sgml:
9478         * docs/gst/tmpl/old/gstdisksrc.sgml:
9479         * docs/gst/tmpl/old/gstelementfactory.sgml:
9480         * docs/gst/tmpl/old/gstextratypes.sgml:
9481         * docs/gst/tmpl/old/gstfakesink.sgml:
9482         * docs/gst/tmpl/old/gstfakesrc.sgml:
9483         * docs/gst/tmpl/old/gstfdsink.sgml:
9484         * docs/gst/tmpl/old/gstfdsrc.sgml:
9485         * docs/gst/tmpl/old/gstfilesink.sgml:
9486         * docs/gst/tmpl/old/gstfilesrc.sgml:
9487         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9488         * docs/gst/tmpl/old/gstidentity.sgml:
9489         * docs/gst/tmpl/old/gstindexfactory.sgml:
9490         * docs/gst/tmpl/old/gstmarshal.sgml:
9491         * docs/gst/tmpl/old/gstmd5sink.sgml:
9492         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9493         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9494         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9495         * docs/gst/tmpl/old/gstpipefilter.sgml:
9496         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9497         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9498         * docs/gst/tmpl/old/gstshaper.sgml:
9499         * docs/gst/tmpl/old/gstspider.sgml:
9500         * docs/gst/tmpl/old/gstspideridentity.sgml:
9501         * docs/gst/tmpl/old/gststatistics.sgml:
9502         * docs/gst/tmpl/old/gsttee.sgml:
9503         * docs/gst/tmpl/old/gsttimecache.sgml:
9504         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9505         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9506         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9507         * docs/gst/tmpl/old/types.sgml:
9508         * docs/gst/tmpl/types.sgml:
9509
9510         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9511         gtkdoc-scan doesn't like files with the same name in different
9512         directories.
9513         * gst/elements/Makefile.am:
9514         * gst/elements/gstelements.c:
9515         * gst/elements/gsttypefind.c: 
9516         * gst/elements/gsttypefind.h:
9517         * gst/elements/gsttypefindelement.c:
9518         * gst/elements/gsttypefindelement.h:
9519
9520 2004-04-28  David Schleef  <ds@schleef.org>
9521
9522         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9523         patch (bug #141317):
9524         * gst/gst-i18n-lib.h: Allow disabling gettext.
9525         * gst/gstatomic_impl.h: disable warning when it's dumb.
9526         * gst/gstclock.c: fix include
9527         * gst/gstcompat.h: fix variadic macro
9528         * gst/gstinfo.c: fix include
9529         * gst/gstmacros.h: add defines for inlines on MSVC
9530         * gst/gstplugin.c: fix includes
9531         * gst/gstregistry.c: fix includes
9532         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9533         * gst/gstsystemclock.c: fix include
9534         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9535         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9536         * gst/registries/gstxmlregistry.c:
9537         (gst_xml_registry_parse_element_factory): fix use of non-portable
9538         functions
9539         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9540         * libs/gst/control/dparammanager.h: same
9541
9542 2004-04-28  David Schleef  <ds@schleef.org>
9543
9544         Move a bunch of unused files to old/ with names that are
9545         not case-insensitive-unique.  These files still contain some
9546         useful information that needs to be merged into gstbin.sgml,
9547         etc., so they shouldn't be deleted yet.
9548         * docs/gst/tmpl/GstBin.sgml:
9549         * docs/gst/tmpl/GstBuffer.sgml:
9550         * docs/gst/tmpl/GstCaps.sgml:
9551         * docs/gst/tmpl/GstClock.sgml:
9552         * docs/gst/tmpl/GstCompat.sgml:
9553         * docs/gst/tmpl/GstData.sgml:
9554         * docs/gst/tmpl/GstElement.sgml:
9555         * docs/gst/tmpl/GstEvent.sgml:
9556         * docs/gst/tmpl/GstIndex.sgml:
9557         * docs/gst/tmpl/GstStructure.sgml:
9558         * docs/gst/tmpl/GstTag.sgml:
9559         * docs/gst/tmpl/old/GstBin.sgml:
9560         * docs/gst/tmpl/old/GstBuffer.sgml:
9561         * docs/gst/tmpl/old/GstCaps.sgml:
9562         * docs/gst/tmpl/old/GstClock.sgml:
9563         * docs/gst/tmpl/old/GstCompat.sgml:
9564         * docs/gst/tmpl/old/GstData.sgml:
9565         * docs/gst/tmpl/old/GstElement.sgml:
9566         * docs/gst/tmpl/old/GstEvent.sgml:
9567         * docs/gst/tmpl/old/GstIndex.sgml:
9568         * docs/gst/tmpl/old/GstStructure.sgml:
9569         * docs/gst/tmpl/old/GstTag.sgml:
9570
9571 2004-04-28  David Schleef  <ds@schleef.org>
9572
9573         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9574         (gst_caps_append), (gst_caps_append_structure),
9575         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9576         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9577         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9578         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9579         (gst_caps_intersect), (gst_caps_normalize),
9580         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9581         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9582         * gst/gstcaps.h: use GST_IS_CAPS().
9583
9584 2004-04-26  David Schleef  <ds@schleef.org>
9585
9586         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9587         assembly.  gcc doesn't handle it correctly. (bug #141083)
9588         * gst/gsttrashstack.h: same
9589
9590 2004-04-25  Benjamin Otte  <otte@gnome.org>
9591
9592         * gst/gstelement.c: (gst_element_change_state):
9593           fix assertion to do an int comparison
9594
9595 2004-04-25  Benjamin Otte  <otte@gnome.org>
9596
9597         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9598           better debugging output on error
9599
9600 2004-04-25  Benjamin Otte  <otte@gnome.org>
9601
9602         * gst/gstcaps.c: (gst_caps_subtract):
9603           fix memleak
9604
9605 2004-04-23  Benjamin Otte  <otte@gnome.org>
9606
9607         * gst/gstvalue.c: (gst_value_compare_buffer),
9608         (_gst_value_initialize):
9609           add comparison function for buffers
9610
9611 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9612
9613         * docs/pwg/pwg.xml:
9614           Just found out that this so-called "ima-wav" format is really
9615           just "dvi adpcm" (according to the MS WAV documentation). So
9616           renaming it. We didn't use it yet anyway.
9617
9618 2004-04-23  Benjamin Otte  <otte@gnome.org>
9619
9620         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9621           call gst_caps_is_subset
9622
9623 2004-04-23  Benjamin Otte  <otte@gnome.org>
9624
9625         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9626         (gst_caps_is_subset):
9627           add documentation
9628
9629 2004-04-23  Benjamin Otte  <otte@gnome.org>
9630           
9631         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9632         (gst_caps_structure_subtract), (gst_caps_subtract),
9633         (gst_caps_structure_figure_out_union),
9634         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9635           fix simplifying and subtracting not working correctly with optional
9636           properties
9637           solve assorted problems that make it now simplify ebven more
9638         * docs/gst/tmpl/gstcaps.sgml:
9639         * gst/gstcaps.h:
9640           make gst_caps_do_simplify return a bool to indicate if it simplified
9641         * testsuite/caps/simplify.c: (main):
9642           add more checks. The tests is quite a bit useless right now because
9643           the core is heavily simplifying itself.
9644         * testsuite/caps/caps.h:
9645           fix caps to contain all optional properties
9646
9647 2004-04-22  Benjamin Otte  <otte@gnome.org>
9648
9649         * docs/gst/tmpl/gstcaps.sgml:
9650         * docs/gst/tmpl/gstfilesrc.sgml:
9651         * docs/gst/tmpl/gststructure.sgml:
9652         * docs/gst/tmpl/gstvalue.sgml:
9653           update for recent API changes
9654         * gst/gstcaps.c: (gst_caps_do_simplify):
9655           fix to stop trying with a freed structure
9656         * gst/gstpad.c: (gst_pad_link_fixate):
9657           simplify caps
9658         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9659           remove C++ comment
9660         * gst/gstpad.h:
9661           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9662         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9663         (gst_structure_to_string):
9664           keep the correct type when using lists of ranges
9665         * gst/gstvalue.c: (gst_value_list_prepend_value),
9666         (gst_value_list_append_value):
9667           copy the value before adding to the list (d'oh)
9668         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9669         (gst_value_subtract_int_range_int_range):
9670           handle overflows correctly
9671         * gst/gstvalue.c: (gst_value_subtract_from_list):
9672           fix memleak
9673         * testsuite/caps/caps.h:
9674           add a caps that caused segfaults
9675
9676 2004-04-22  Benjamin Otte  <otte@gnome.org>
9677
9678         * testsuite/refcounting/pad.c: (main):
9679           fix test
9680
9681 2004-04-22  Benjamin Otte  <otte@gnome.org>
9682
9683         * gst/gstcaps.c: (gst_caps_subtract):
9684           allow subtracting ANY and EMPTY from ANY caps
9685
9686 2004-04-22  Benjamin Otte  <otte@gnome.org>
9687
9688         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9689         (gst_caps_union):
9690           only simplify in functions that create new caps. Simplifying in
9691           gst_caps_append breaks tests.
9692
9693 2004-04-22  Benjamin Otte  <otte@gnome.org>
9694
9695         * gst/gstcaps.c: (gst_caps_structure_simplify):
9696           unset GValue after use
9697         * gst/gstcaps.c: (gst_caps_append), 
9698         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9699           use gst_caps_simplify (reduces registry size by 30%)
9700         * gst/gstpad.c: (gst_pad_template_new):
9701           don't allow NULL caps
9702
9703 2004-04-22  Benjamin Otte  <otte@gnome.org>
9704
9705         * docs/gst/gstreamer-sections.txt:
9706           add gst_caps_do_simplify
9707         * gst/gstcaps.c:
9708           add documentation for gst_caps_do_simplify
9709         * gst/gstvalue.h:
9710           fix typo in gst_value_register_subtract_func declaration for gst-doc
9711
9712 2004-04-22  Benjamin Otte  <otte@gnome.org>
9713
9714         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9715           fix bug when converting from empty string.
9716         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9717         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9718           use gst_caps_new_empty to allocate a new caps. Only that function
9719           allocates memory for caps now.
9720         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9721         (gst_caps_remove_structure):
9722           add ability to remove one structure (but not to header yet)
9723         * gst/gstcaps.c: (gst_caps_compare_structures),
9724         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9725         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9726         * gst/gstcaps.h:
9727           add gst_caps_do_simplify that tries to simplify a caps in place.
9728           Deprecate old gst_caps_simplify function.
9729         * testsuite/caps/caps.h:
9730           add caps.h containing a common set of caps to test against.
9731         * testsuite/caps/sets.c: (check_caps), (main):
9732           use it.
9733         * testsuite/caps/.cvsignore:
9734         * testsuite/caps/Makefile.am:
9735         * testsuite/caps/simplify.c: (check_caps), (main):
9736           add test to check correctness and efficency of caps simplification.
9737
9738 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9739
9740         reviewed by Benjamin Otte  <otte@gnome.org>
9741
9742         * gst/gstparse.c: (_gst_parse_escape):
9743           Free the GString used in _gst_parse_escape()
9744
9745 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9746
9747         * gst/gstpad.c: (gst_pad_link_negotiate):
9748           refuse to link if the link is not possible
9749         * configure.ac:
9750         * testsuite/Makefile.am:
9751         * testsuite/negotiation/.cvsignore:
9752         * testsuite/negotiation/Makefile.am:
9753         * testsuite/negotiation/pad_link.c: (main):
9754           add test that checks the above behaviour
9755
9756 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9757
9758         * docs/gst/gstreamer-sections.txt:
9759           add newly added API
9760
9761 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9762
9763         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9764         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9765         (gst_filesrc_open_file), (gst_filesrc_close_file),
9766         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9767         * gst/elements/gstfilesrc.h:
9768           add support for non-regular files (#140734)
9769
9770 2004-04-21  Benjamin Otte  <otte@gnome.org>
9771
9772         * gst/gstpad.c: (gst_pad_link_fixate):
9773           add sophisticated error checking code to see if fixation functions
9774           did their fixation right
9775
9776 2004-04-21  Benjamin Otte  <otte@gnome.org>
9777
9778         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9779           check for ANY caps before appending/unioning
9780         * gst/gstcaps.c: (gst_caps_is_subset),
9781         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9782         (gst_caps_structure_subtract), (gst_caps_subtract):
9783         * gst/gstcaps.h:
9784           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9785           the API. deprecate gst_caps_is_equal_fixed
9786         * gst/gstpad.c: (gst_pad_try_set_caps):
9787         * gst/gstqueue.c: (gst_queue_link):
9788           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9789         * gst/gststructure.c: (gst_structure_get_name_id):
9790         * gst/gststructure.h:
9791           add function gst_structure_get_name_id
9792         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9793         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9794         (gst_value_subtract_int_range_int_range),
9795         (gst_value_subtract_double_double_range),
9796         (gst_value_subtract_double_range_double),
9797         (gst_value_subtract_double_range_double_range),
9798         (gst_value_subtract_from_list), (gst_value_subtract_list),
9799         (gst_value_can_intersect), (gst_value_subtract),
9800         (gst_value_can_subtract), (gst_value_register_subtract_func),
9801         (_gst_value_initialize):
9802         * gst/gstvalue.h:
9803           add support for subtracting values from each other. Note that
9804           subtracting means subtracting as in set theory. Required for caps
9805           stuff above.
9806         * testsuite/caps/.cvsignore:
9807         * testsuite/caps/Makefile.am:
9808         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9809         * testsuite/caps/sets.c: (check_caps), (main):
9810         * testsuite/caps/subtract.c: (check_caps), (main):
9811           add tests for subtraction and equality code.
9812
9813 2004-04-20  David Schleef  <ds@schleef.org>
9814
9815         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9816         * gst/indexers/Makefile.am:
9817         * gst/schedulers/Makefile.am:
9818         * libs/gst/bytestream/Makefile.am:
9819         * libs/gst/control/Makefile.am:
9820         * libs/gst/getbits/Makefile.am:
9821
9822 2004-04-20  David Schleef  <ds@schleef.org>
9823
9824         * common/as-libtool.mak: Fine-tune DLL building.
9825         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9826         (like gst-plugins)
9827         * examples/plugins/Makefile.am: remove plugindir
9828         * gst/autoplug/Makefile.am: DLL building fixes
9829         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9830         Windows.
9831         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9832         * gst/indexers/Makefile.am: DLL building fixes
9833         * gst/schedulers/Makefile.am: DLL building fixes.
9834         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9835         * libs/gst/control/Makefile.am: same
9836         * libs/gst/getbits/Makefile.am: same
9837         * testsuite/Makefile.am: New dlopen directory
9838         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9839         when dlopened.
9840         * testsuite/dlopen/dlopen_gst.c: (main): same
9841         * testsuite/dlopen/loadgst.c: (do_test): same
9842
9843 2004-04-20  David Schleef  <ds@schleef.org>
9844
9845         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9846         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9847
9848 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9849
9850         * gst/gstelement.c: (gst_element_wait),
9851         (gst_element_set_time_delay), (gst_element_change_state):
9852           Use GST_TIME_*
9853
9854 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9855
9856         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9857         (gst_spider_identity_plug):
9858           improve debugging messages
9859         * gst/gstbin.c: (gst_bin_remove_func):
9860           make sure the state_change function is only called with simple state
9861           transitions
9862
9863 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9864
9865         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9866         (gst_fakesink_set_property), (gst_fakesink_chain):
9867         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9868         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9869         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9870         * gst/elements/gstidentity.c: (gst_identity_chain),
9871         (gst_identity_set_property):
9872         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9873         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9874           add warnings to _set_property for unknown arguments
9875           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9876
9877 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9878
9879         * Makefile.am:
9880         * docs/manuals.mak:
9881           add .po file download snippet
9882           fix a bug in the doc makefile
9883
9884 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9885
9886         * Makefile.am:
9887         * po/LINGUAS:
9888         * po/en_GB.po:
9889           Added en_GB translation (Gareth Owen)
9890
9891 2004-04-20  Johan Dahlin  <johan@gnome.org>
9892
9893         * gst/gstpad.c (_invent_event): Clean up
9894
9895 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9896
9897         * testsuite/caps/filtercaps.c: (main):
9898           fix test to test things correctly (caps are complicated)
9899
9900 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9901
9902         * testsuite/caps/Makefile.am:
9903         * testsuite/caps/filtercaps.c: (main):
9904           add test (that doesn't work right now, but should)
9905
9906 2004-04-19  David Schleef  <ds@schleef.org>
9907
9908         * configure.ac: Add test for allowing unaligned access.  Add define
9909         to put in gstconfig.h.
9910         * docs/gst/gstreamer-sections.txt: New symbols
9911         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9912         * docs/gst/tmpl/gstfilesrc.sgml:
9913         * docs/gst/tmpl/gstparse.sgml:
9914         * docs/gst/tmpl/gsttypes.sgml:
9915         * docs/gst/tmpl/gstutils.sgml:
9916         * docs/gst/tmpl/gstvalue.sgml:
9917         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9918         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9919         on most !i386/!powerpc architectures.  From Daniel Gazard
9920         <daniel.gazard@free.fr>.  (bug #140156)
9921         * po/af.po: Check in changes made by gettext.
9922         * po/az.po:
9923         * po/fr.po:
9924         * po/nl.po:
9925         * po/sr.po:
9926         * po/sv.po:
9927
9928 2004-04-20  Benjamin Otte  <otte@gnome.org>
9929
9930         * gst/schedulers/entryscheduler.c: 
9931         (gst_entry_scheduler_yield):
9932           refuse to yield when decoupled elements insist on doing that.
9933           At least it's better than crashing
9934
9935 2004-04-19  David Schleef  <ds@schleef.org>
9936
9937         * docs/libs/Makefile.am: Change sinclude to include
9938         * docs/gst/Makefile.am: same
9939         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9940
9941 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9942
9943         * po/LINGUAS:
9944         * po/uk.po:
9945           Added Ukrainian translation (Maxim V. Dziumanenko)
9946
9947 2004-04-19  Johan Dahlin  <johan@gnome.org>
9948
9949         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9950         checking here, do it before calling the function.
9951         Clean up, use for loops instead of while loops while iterating
9952         over lists.
9953
9954         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9955         in debug message.
9956         (gst_spider_create_and_plug): Improve debug message.
9957         General: Replace while loops which iterates over GLists with for
9958         loops. Which are much cleaner, improves readability, especially
9959         for gst_spider_identity_plug
9960
9961         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9962         fixes bug 140477
9963
9964 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9965
9966         * po/LINGUAS:
9967         * po/tr.po:
9968           Added Turkish translation (Baris Cicek)
9969
9970 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9971
9972         * docs/faq/troubleshooting.xml:
9973           Mention gst-register in the FAQ (fixes 139045).
9974
9975 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9976
9977         * docs/gst/gstreamer-sections.txt:
9978
9979 2004-04-17  Benjamin Otte  <otte@gnome.org>
9980
9981         * gst/gstelement.c: (gst_element_dispose):
9982           simplify
9983         * gst/gstpad.c: (gst_pad_call_chain_function):
9984           don't create loads of events due to bad macro usage
9985
9986 2004-04-16  David Schleef  <ds@schleef.org>
9987
9988         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9989         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9990         * gst/gstvalue.c: (gst_value_serialize_buffer),
9991         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9992         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9993         to indicate types that are fixed wrt caps or not.  Switching to
9994         this function fixes (bug #140298).
9995         * gst/gstvalue.h:
9996
9997 2004-04-16  David Schleef  <ds@schleef.org>
9998
9999         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
10000         for GST_UNALIGNED_ACESS, since we essentially know which archs
10001         are ok.
10002
10003 2004-04-17  Benjamin Otte  <otte@gnome.org>
10004
10005         * docs/gst/Makefile.am:
10006           ignore gst/parse directory when building docs (fixes #140205)
10007
10008 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10009
10010         * testsuite/refcounting/mem.c: (vmsize):
10011           do error checking
10012
10013 2004-04-16  Johan Dahlin  <johan@gnome.org>
10014
10015         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
10016         and gst_pad_call_get_function.
10017
10018 2004-04-15  David Schleef  <ds@schleef.org>
10019
10020         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
10021         checks if we can access unaligned memory.
10022         * configure.ac: Use it.
10023
10024 2004-04-16  Benjamin Otte  <otte@gnome.org>
10025
10026         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
10027         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10028         * gst/elements/gstfilesrc.h:
10029           s/seek_happened/need_discont/ and require discont before sending any
10030           data
10031
10032 2004-04-15  David Schleef  <ds@schleef.org>
10033
10034         * gst/gstvalue.c: (gst_value_serialize_buffer),
10035         (gst_value_deserialize_buffer), (_gst_value_initialize):
10036         Register these types as fundamental types. (bug #140015)
10037
10038 2004-04-16  Benjamin Otte  <otte@gnome.org>
10039
10040         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
10041         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
10042         (gst_pad_pull):
10043           implement enforcing discont events before buffers are passed. This
10044           allows state changes of only some elements and later correctly going
10045           on where they left off (or in short: you can now set audio sinks to
10046           NULL to release the device when the pipeline is paused)
10047         * gst/gstpad.c: (gst_pad_call_chain_function),
10048         (gst_pad_call_get_function):
10049         * gst/gstpad.h:
10050           add gst_pad_call_chain_function and gst_pad_call_get_function for
10051           scheduler interaction. They are required because of the changes
10052           above.
10053         * gst/schedulers/entryscheduler.c: (get_buffer),
10054         (gst_entry_scheduler_chain_wrapper),
10055         (gst_entry_scheduler_get_wrapper),
10056         (gst_entry_scheduler_state_transition),
10057         (gst_entry_scheduler_pad_link):
10058         * gst/schedulers/gstbasicscheduler.c:
10059         (gst_basic_scheduler_chain_wrapper),
10060         (gst_basic_scheduler_src_wrapper),
10061         (gst_basic_scheduler_chainhandler_proxy),
10062         (gst_basic_scheduler_gethandler_proxy),
10063         (gst_basic_scheduler_cothreaded_chain),
10064         (gst_basic_scheduler_chain_elements):
10065         * gst/schedulers/gstoptimalscheduler.c:
10066         (get_group_schedule_function), (pad_clear_queued),
10067         (gst_opt_scheduler_pad_link):
10068           use the new functions instead of calling get/chain-functions
10069           directly.
10070
10071 2004-04-15  David Schleef  <ds@schleef.org>
10072
10073         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
10074         * docs/gst/tmpl/gstinfo.sgml: same
10075         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
10076         gtk-doc put here.
10077         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
10078         * examples/queue/queue.c: (main):  We iterate pipelines, not
10079         bins.  (bug #139996)
10080
10081 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10082
10083         * docs/pwg/advanced-types.xml:
10084           Add MS RLE support. Also document Qt RLE although I have no sample
10085           files for that yet. And document an extra property for ADPCM.
10086
10087 2004-04-15  David Schleef  <ds@schleef.org>
10088
10089         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10090         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10091         Windows.
10092
10093 2004-04-15  David Schleef  <ds@schleef.org>
10094
10095         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10096         symbol names to not conflict with new gstinfo.h symbols.
10097         * gst/gstinfo.h: Add inline functions for all those crazy
10098         compilers that don't know how to handle variadic macros (MSVC).
10099
10100 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10101
10102         * configure.ac: bump nano to 1
10103
10104 === release 0.8.1 ===
10105
10106 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10107
10108         * NEWS:
10109         * RELEASE:
10110         * configure.ac:
10111           releasing 0.8.1, "Snow Brigade"
10112
10113 2004-04-14  David Schleef  <ds@schleef.org>
10114
10115         * testsuite/Makefile.am: define tests_ignore
10116         * testsuite/Rules: Added new tests_ignore, which get compiled,
10117         but not run (generally because they're inconsistent or have
10118         heisenbugs).  Now we can ensure all the .c files compile in
10119         testsuite/.
10120         * testsuite/bins/Makefile.am: define tests_ignore
10121         * testsuite/bytestream/Makefile.am:
10122         * testsuite/caps/Makefile.am:
10123         * testsuite/clock/Makefile.am:
10124         * testsuite/debug/Makefile.am:
10125         * testsuite/debug/global.c: (gst_debug_log_one),
10126         (gst_debug_log_two): Fix compilation problem.
10127         * testsuite/dynparams/Makefile.am:
10128         * testsuite/elements/Makefile.am:
10129         * testsuite/ghostpads/Makefile.am:
10130         * testsuite/indexers/Makefile.am:
10131         * testsuite/parse/Makefile.am:
10132         * testsuite/plugin/Makefile.am:
10133         * testsuite/refcounting/Makefile.am:
10134         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10135         results, because it's not calculated correctly.
10136         * testsuite/refcounting/pad.c: (main): same
10137         * testsuite/states/Makefile.am:
10138         * testsuite/tags/Makefile.am:
10139         * testsuite/threads/Makefile.am:
10140
10141 2004-04-14  David Schleef  <ds@schleef.org>
10142
10143         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10144         generating bad code around the cpu detection asm code.
10145
10146 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10147
10148         * tools/gst-inspect.c: (print_element_info):
10149           print numeric version of rank as well, since we added some - 1
10150           rank values to elements
10151
10152 2004-04-13  David Schleef  <ds@schleef.org>
10153
10154         * configure.ac:  Disable various code when compiling for MinGW.
10155         * gst/elements/Makefile.am:
10156         * gst/elements/gstelements.c:
10157         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10158         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10159         * gst/registries/gstxmlregistry.c: (make_dir):
10160
10161 2004-04-13  David Schleef  <ds@schleef.org>
10162
10163         * gst/Makefile.am:
10164         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10165         assembly.
10166         * gst/gstcpuid_i386.s: remove
10167
10168 2004-04-13  David Schleef  <ds@schleef.org>
10169
10170         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10171         seems to think it needs to be done.
10172         * docs/gst/tmpl/gstfakesink.sgml:
10173         * docs/gst/tmpl/gstfakesrc.sgml:
10174         * docs/gst/tmpl/gstfdsink.sgml:
10175         * docs/gst/tmpl/gstfdsrc.sgml:
10176         * docs/gst/tmpl/gstfilesink.sgml:
10177         * docs/gst/tmpl/gstfilesrc.sgml:
10178         * docs/gst/tmpl/gstidentity.sgml:
10179         * docs/gst/tmpl/gstmd5sink.sgml:
10180         * docs/gst/tmpl/gstmultifilesrc.sgml:
10181         * docs/gst/tmpl/gstpipefilter.sgml:
10182         * docs/gst/tmpl/gstshaper.sgml:
10183         * docs/gst/tmpl/gstspider.sgml:
10184         * docs/gst/tmpl/gstspideridentity.sgml:
10185         * docs/gst/tmpl/gststatistics.sgml:
10186         * docs/gst/tmpl/gsttee.sgml:
10187         * docs/gst/tmpl/gsttypefind.sgml:
10188         * docs/gst/tmpl/gstutils.sgml:
10189
10190 2004-04-13  David Schleef  <ds@schleef.org>
10191
10192         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10193         and to build DLLs on Windows.
10194         * gst/Makefile.am:
10195         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10196         (gst_filesrc_open_file):
10197         * gst/schedulers/Makefile.am:
10198
10199 2004-04-13  David Schleef  <ds@schleef.org>
10200
10201         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10202         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10203         fixating lists.
10204
10205 2004-04-12  David Schleef  <ds@schleef.org>
10206
10207         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10208         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10209         to using it.
10210         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10211         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10212         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10213         * gst/gststructure.c: (gst_structure_set_valist),
10214         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10215         support for buffers.
10216         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10217         intended to be const.
10218         * gst/gsttag.h: same
10219         * gst/gstvalue.c: (gst_value_serialize_buffer),
10220         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10221         to (de)serialize buffers.
10222         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10223         * testsuite/caps/string-conversions.c: (main):
10224         * testsuite/caps/value_serialize.c: add new test
10225
10226 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10227
10228         * docs/pwg/advanced-types.xml:
10229           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10230
10231 2004-04-11  Benjamin Otte  <otte@gnome.org>
10232
10233         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10234           rename categories to basic_*
10235         * gst/schedulers/gstbasicscheduler.c: 
10236         (gst_basic_scheduler_chain_wrapper),
10237         (gst_basic_scheduler_chainhandler_proxy),
10238         (gst_basic_scheduler_gethandler_proxy),
10239         (gst_basic_scheduler_eventhandler_proxy):
10240           debugging category fixes - put common stuff in log category
10241         * gst/schedulers/gstbasicscheduler.c: 
10242         (gst_basic_scheduler_chain_elements):
10243           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10244           active and linking two active chains
10245
10246 2004-04-10  Benjamin Otte  <otte@gnome.org>
10247
10248         * docs/pwg/intro-preface.xml:
10249           fix dead links and remove reference to Wiki
10250
10251 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10252
10253         * gst/schedulers/gstbasicscheduler.c:
10254           make sure we can switch back to the main function if we're still in
10255           the main function (supposed to fix #139617)
10256         * gst/schedulers/gthread-cothreads.h:
10257           don't throw an error when switching to the same cothread
10258
10259 2004-04-09  Benjamin Otte  <otte@gnome.org>
10260
10261         * gst/gstbin.c: (gst_bin_get_type):
10262         * gst/gstclock.c: (gst_clock_get_type):
10263         * gst/gstindex.c: (gst_index_get_type):
10264         * gst/gstobject.c: (gst_object_get_type),
10265         (gst_signal_object_get_type):
10266         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10267         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10268         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10269         * gst/gstqueue.c: (gst_queue_get_type):
10270         * gst/gstregistry.c: (gst_registry_get_type):
10271         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10272         * gst/gstthread.c: (gst_thread_get_type):
10273           don't use memchunks for these objects, use malloc instead
10274
10275 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10276
10277         * docs/gst/.cvsignore:
10278         * docs/gst/Makefile.am:
10279         * docs/gst/gstreamer-sections.txt:
10280         * docs/gst/tmpl/gstaggregator.sgml:
10281         * docs/gst/tmpl/gstbuffer.sgml:
10282         * docs/gst/tmpl/gstclock.sgml:
10283         * docs/gst/tmpl/gstelement.sgml:
10284         * docs/gst/tmpl/gstfakesink.sgml:
10285         * docs/gst/tmpl/gstfakesrc.sgml:
10286         * docs/gst/tmpl/gstfdsink.sgml:
10287         * docs/gst/tmpl/gstfdsrc.sgml:
10288         * docs/gst/tmpl/gstfilesink.sgml:
10289         * docs/gst/tmpl/gstfilesrc.sgml:
10290         * docs/gst/tmpl/gstidentity.sgml:
10291         * docs/gst/tmpl/gstindex.sgml:
10292         * docs/gst/tmpl/gstinfo.sgml:
10293         * docs/gst/tmpl/gstmd5sink.sgml:
10294         * docs/gst/tmpl/gstmultifilesrc.sgml:
10295         * docs/gst/tmpl/gstpad.sgml:
10296         * docs/gst/tmpl/gstpipefilter.sgml:
10297         * docs/gst/tmpl/gstpipeline.sgml:
10298         * docs/gst/tmpl/gstpluginfeature.sgml:
10299         * docs/gst/tmpl/gstqueue.sgml:
10300         * docs/gst/tmpl/gstregistry.sgml:
10301         * docs/gst/tmpl/gstscheduler.sgml:
10302         * docs/gst/tmpl/gstshaper.sgml:
10303         * docs/gst/tmpl/gstspider.sgml:
10304         * docs/gst/tmpl/gstspideridentity.sgml:
10305         * docs/gst/tmpl/gststatistics.sgml:
10306         * docs/gst/tmpl/gstsystemclock.sgml:
10307         * docs/gst/tmpl/gsttee.sgml:
10308         * docs/gst/tmpl/gstthread.sgml:
10309         * docs/gst/tmpl/gsttypefind.sgml:
10310         * docs/gst/tmpl/gstutils.sgml:
10311           further doc build fixes
10312
10313 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10314
10315         * docs/gst/Makefile.am:
10316           make docs exit on scanning problems
10317           fix nonsrcdir build issues
10318         * docs/gst/gstreamer-sections.txt:
10319           adding stuff from -unused
10320         * gst/gstqueue.h:
10321           create GstQueueSize
10322         * gst/schedulers/cothreads_compat.h:
10323           fix cothread warnings
10324
10325 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10326
10327         * docs/gst/gstreamer-sections.txt:
10328           remove defines deprecated by Benjamin
10329
10330 2004-04-07  Benjamin Otte  <otte@gnome.org>
10331
10332         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10333           when the buffer is complete, don't check if other buffers are needed
10334         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10335           check that the offset is >0 so we don't try to read before the
10336           beginning of the file
10337         * gst/gstpad.c: (gst_pad_set_pad_template):
10338           sink the template, so we don't end up with 130k pad templates
10339
10340 2004-04-06  Benjamin Otte  <otte@gnome.org>
10341
10342         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10343           don't ref the element, adding already reffed it. And we didn't unref
10344           it later anyway... (huge memleak when you used many spider elements)
10345         * gst/gstelement.c: (gst_element_base_class_finalize):
10346         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10347         (gst_element_register):
10348         * gst/gsturi.c: (gst_element_make_from_uri):
10349           use gst_object_(un)ref instead of g_object(un)ref
10350
10351 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10352
10353         * gst/gstbuffer.h:
10354           remove macro that wouldn't work anymore because struct member has
10355           been removed.
10356         * gst/schedulers/entryscheduler.c: (schedule_forward):
10357           fix segfault for unconnected pads
10358         
10359 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10360
10361         reviewed by David Schleef <ds@schleef.org>
10362
10363         * gst/gstinfo.h:
10364           *_FORMAT modifiers should require putting a % in front of them for
10365           consistency reasons.
10366
10367 2004-04-05  Colin Walters  <walters@redhat.com>
10368
10369         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10370         space.
10371
10372 2004-04-05  Benjamin Otte  <otte@gnome.org>
10373
10374         * configure.ac:
10375         * gst/Makefile.am:
10376         * gst/gst_private.h:
10377         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10378           add support for detecting if GStreamer runs inside valgrind.
10379           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10380           print a big message in valgrind that GStreamer has detected it's
10381           running inside and might now use different code.
10382         * gst/gstmemchunk.c: (populate), (free_area),
10383         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10384         (gst_mem_chunk_free):
10385           flag memchunks for valgrind, so it can detect leaking of chunks.
10386           This allows detecting leaks of GstBuffer and GstEvent correctly
10387           inside valgrind.
10388
10389 2004-04-05  David Schleef  <ds@schleef.org>
10390
10391         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10392           jensgr@gmx.net (Jens Granseuer)
10393
10394 2004-04-05  David Schleef  <ds@schleef.org>
10395
10396         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10397         (gst_buffer_default_free), (gst_buffer_default_copy),
10398         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10399         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10400         structures in one place.
10401
10402 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10403
10404         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10405           (GST_TIME_FORMAT, GST_TIME_ARGS)
10406
10407 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10408
10409         * testsuite/elements/Makefile.am:
10410           disable test until it stops breaking make distcheck
10411
10412 2004-04-05  Johan Dahlin  <johan@gnome.org>
10413
10414         * po/sv.po: Updated translation
10415
10416 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10417
10418         * gst/gstplugin.c: (gst_plugin_load_file):
10419           fix segfault for when original plugin was loaded statically
10420
10421 2004-04-05  Benjamin Otte  <otte@gnome.org>
10422
10423         * testsuite/debug/category.c: (main):
10424         * testsuite/debug/commandline.c: (main):
10425         * testsuite/debug/output.c: (main):
10426           fix tests to work again with debugging enabled
10427
10428 2004-04-05  Benjamin Otte  <otte@gnome.org>
10429
10430         * gst/schedulers/gstbasicscheduler.c:
10431         (gst_basic_scheduler_pad_link):
10432           fix to work with recent scheduling changes
10433
10434 2004-04-05  Benjamin Otte  <otte@gnome.org>
10435
10436         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10437         prepareChangeLog doesn't work when cvs indents):
10438           don't throw an error when no element can be scheduled, there's too
10439           many weird reasons why it doesn't work. Return STOPPED instead.
10440           decoupled elemts' schedulability doesn't depend on bufpens.
10441
10442 2004-04-04  Benjamin Otte  <otte@gnome.org>
10443
10444         * gst/schedulers/gstbasicscheduler.c:
10445         (gst_basic_scheduler_pad_select):
10446           fix uninitialized variable warnings
10447
10448 2004-04-04  Benjamin Otte  <otte@gnome.org>
10449
10450         * gst/gstpad.c: (gst_pad_collect_valist):
10451           fix uninitialized variable warning
10452         * gst/schedulers/entryscheduler.c: (schedule_forward):
10453           fix shadowed variable
10454
10455 2004-04-04  Benjamin Otte  <otte@gnome.org>
10456
10457         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10458         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10459         (gst_pad_select):
10460         * gst/gstpad.h:
10461         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10462         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10463         * gst/gstscheduler.h:
10464           implement gst_pad_collect as replacement for gst_pad_select.
10465           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10466           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10467           new pad_select, lock and unlock calls.
10468         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10469         * gst/cothreads.h:
10470         * gst/schedulers/cothreads_compat.h:
10471         * gst/schedulers/gthread-cothreads.h:
10472           remove unused cothread_lock and cothread_unlock calls
10473         * gst/schedulers/entryscheduler.c:
10474         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10475         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10476         (gst_entry_scheduler_pad_select):
10477           update to new API
10478         * gst/schedulers/gstbasicscheduler.c:
10479         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10480         (gst_basic_scheduler_pad_select):
10481           remove useless lock and unlock calls, update pad_select to new API
10482           (untested)
10483         * gst/schedulers/gstoptimalscheduler.c:
10484         (gst_opt_scheduler_class_init):
10485           remove useless select, lock and unlock function calls
10486         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10487           use gst_pad_collect instead of gst_pad_select
10488
10489 2004-04-04  Benjamin Otte  <otte@gnome.org>
10490
10491         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10492         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10493         (schedule_next_element), (print_entry):
10494           add can_schedule_pad to handle element states.
10495           add schedule_forward to select the correct entry to schedule next
10496
10497 2004-04-03  Benjamin Otte  <otte@gnome.org>
10498
10499         * gst/schedulers/entryscheduler.c: 
10500           remove unused variable, fix error inside Rb, fix compile warning in
10501           unreachable code
10502
10503 2004-04-03  Benjamin Otte  <otte@gnome.org>
10504
10505         * gst/schedulers/entryscheduler.c:
10506           completely revamp the inner workings, so it's a lot easier to
10507           understand and extend
10508
10509 2004-04-03  Andy Wingo  <wingo@pobox.com>
10510
10511         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10512         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10513         This allows better introspection of pipeline topology.
10514         (add_to_chain): Don't do trickery to put loop elements first;
10515         rather, queue a chain sort by marking the chain as dirty.
10516         (remove_from_chain): Mark the chain dirty.
10517         (sort_chain): New function. Sorts the group list so that terminal
10518         sinks are first. This means elements on the sink side will be
10519         preferentially sscheduled before elements on the src side of the
10520         pipeline.
10521         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10522         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10523         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10524         (group_inc_link): Change argument and variable names to match the
10525         new link structure member names (src and sink).
10526         (group_dec_link): Add some description
10527
10528 2004-04-03  Benjamin Otte  <otte@gnome.org>
10529
10530         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10531         * gst/gstinfo.h:
10532         * testsuite/debug/category.c: (main):
10533         * testsuite/debug/commandline.c: (main):
10534         * testsuite/debug/output.c: (main):
10535         * testsuite/debug/printf_extension.c: (main):
10536           fix to successfully build and test with --disable-gst-debug
10537           configure switch (fixes #138705)
10538
10539 2004-04-03  Benjamin Otte  <otte@gnome.org>
10540
10541         * docs/pwg/building-boiler.xml:
10542           add cvs login line and s/anonymous/anoncvs/
10543
10544 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10545
10546         reviewed by Benjamin Otte  <otte@gnome.org>
10547
10548         * gst/gststructure.c: (gst_structure_free):
10549           memleak fix: free fields array (partial fix for #134839)
10550
10551 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10552
10553         * docs/random/ds/0.9-suggested-changes:
10554           Add a note to change handoff use in fakesrc to be usable in
10555           a more generic way (fakesrc should be renamed to appsrc or so).
10556         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10557           Change signal type to scope, so we can fill the buffer in the
10558           handoff handler (that's the whole use of this signal...).
10559
10560 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10561
10562         * docs/pwg/other-ntoone.xml:
10563           Document muxers and n-to-1 elements.
10564
10565 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10566
10567         * gst/registries/gstxmlregistry.c
10568         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10569         determine if a file is a G_MODULE. The old one discards paths
10570         containing "so" somewhere in the middle. My home directory is
10571         called "soto". Go figure...
10572
10573 2004-03-31  David Schleef  <ds@schleef.org>
10574
10575         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10576         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10577         * gst/gstbuffer.h:
10578
10579 2004-03-31  David Schleef  <ds@schleef.org>
10580
10581         * gst/gstvalue.c: (gst_value_union_int_int_range),
10582         (gst_value_union_int_range_int_range), (gst_value_can_union),
10583         (gst_value_union), (_gst_value_initialize):  Add some union
10584         implementations.  We didn't have any previously.
10585         * testsuite/caps/Makefile.am:
10586         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10587         (gst_audioscale_getcaps), (test_caps), (main): A little test
10588         that is the same as the caps manipulation in audioscale.
10589
10590 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10591
10592         * docs/faq/general.xml:
10593           add entry about "does gst support format X?"
10594
10595 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10596
10597         * gst/gstthread.c:
10598           fix docs
10599         * gst/gstutils.h:
10600           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10601
10602 2004-03-30  Benjamin Otte  <otte@gnome.org>
10603
10604         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10605           set the offset of the buffer to the requested offset
10606         * gst/elements/gsttypefind.c: (stop_typefinding):
10607           revert patch 1.18 (which I unfortunately don't know the reason for).
10608           This is needed to allow downstream elements to seek. Otherwise
10609           typefind might overwrite a previous seek by downstream elements.
10610           This lead to errors with id3tag and typefind on some mp3s.
10611         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10612         (gst_entry_scheduler_iterate):
10613           be more verbose when debugging
10614
10615 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10616
10617         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10618           make sure we don't get NULL strings
10619
10620 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10621
10622         * gst/gstcaps.c:
10623         * gst/gstelement.c:
10624         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10625         * gst/gstindex.c: (gst_index_resolver_get_type),
10626         (gst_index_get_type), (gst_index_factory_get_type):
10627         * gst/gstinfo.c:
10628         * gst/gstpad.c:
10629         * gst/gstplugin.c:
10630         * gst/gsturi.c: (gst_uri_handler_get_type):
10631         * gst/gstvalue.c:
10632           first batch of documentation fixes
10633
10634 2004-03-29  David Schleef  <ds@schleef.org>
10635
10636         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10637         * docs/gst/gstreamer-docs.sgml:  More hacking
10638         * docs/gst/gstreamer-sections.txt:
10639         * docs/gst/tmpl/cothreads_compat.sgml:
10640         * docs/gst/tmpl/gstcaps.sgml:
10641         * docs/gst/tmpl/gstclock.sgml:
10642         * docs/gst/tmpl/gstelement.sgml:
10643         * docs/gst/tmpl/gstevent.sgml:
10644         * docs/gst/tmpl/gstpad.sgml:
10645         * docs/gst/tmpl/gstutils.sgml:
10646         * docs/gst/tmpl/gstxml.sgml:
10647         * docs/gst/tmpl/gthread-cothreads.sgml:
10648         * docs/random/ds/0.9-suggested-changes:
10649         * gst/elements/gstfakesink.h: doc fixes
10650         * gst/elements/gstfakesrc.h: doc fixes
10651         * gst/gstcaps.c: doc fixes
10652         * gst/gstcaps.h: doc fixes
10653         * gst/gstelement.c: doc fixes
10654         * gst/gstelement.h: doc fixes
10655         * gst/gstindex.c: doc fixes
10656         * gst/gstinfo.c: doc fixes
10657         * gst/gstpad.c: doc fixes
10658         * gst/gstpad.h: doc fixes
10659         * gst/gstplugin.c: doc fixes
10660         * gst/gsttypefind.h: doc fixes
10661         * gst/gsturi.c: doc fixes
10662         * gst/gstvalue.c: doc fixes
10663
10664 2004-03-29  Colin Walters  <walters@redhat.com>
10665
10666         * gst/registries/gstxmlregistry.c (get_time)
10667         (plugin_times_older_than_recurse):
10668         Use the result of stat to determine whether a path is a file,
10669         so we don't attempt to opendir() files.
10670
10671 2004-03-29  Benjamin Otte  <otte@gnome.org>
10672
10673         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10674           print caps in debugging output when setting caps failed
10675         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10676         (schedule_next_element), (get_buffer), (run_chainhandler),
10677         (element_may_start), (gst_entry_scheduler_chain_handler),
10678         (gst_entry_scheduler_get_handler),
10679         (gst_entry_scheduler_state_transition),
10680         (gst_entry_scheduler_pad_link):
10681           make this scheduler a testcase for mandatory
10682           discont-before-first-buffer which is needed if we want to allow apps
10683           to release the sound device.
10684           add SCHED_ASSERT macro to print scheduler state before an assertion
10685           triggers.
10686
10687 2004-03-29  Benjamin Otte  <otte@gnome.org>
10688
10689         * COPYING:
10690           replace by LGPL (former COPYING.LIB). The core is completely
10691           licensed LGPL.
10692         * COPYING.LIB:
10693           remove
10694
10695 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10696
10697         * po/af.po:
10698         * po/sv.po:
10699           updated Afrikaans and Swedish
10700
10701 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10702
10703         * po/LINGUAS:
10704         * po/az.po:
10705           adding Azerbaijani (Mətin Əmirov)
10706
10707 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10708
10709         * gst/gstelement.h: 
10710         * gst/gstelement.c (gst_element_set_time_delay): New function for
10711         setting element time taking into account a hardware buffering
10712         delay.
10713         (gst_element_set_time): Now just an invocation of
10714         gst_element_set_time_delay.
10715         * gst/gstclock.h: 
10716         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10717         allowing to set event times in the future.
10718         (gst_clock_get_event_time): Now just an invocation of
10719         gst_clock_get_event_time_delay.
10720
10721 2004-03-28  Benjamin Otte  <otte@gnome.org>
10722
10723         * gst/gstbin.c: (gst_bin_set_element_sched),
10724         (gst_bin_unset_element_sched):
10725           don't add decoupled elements to schedulers - otherwise it's
10726           impossible to control if a link to a decoupled element was already
10727           removed from a scheduler or not.
10728         * gst/schedulers/cothreads_compat.h:
10729         * gst/schedulers/gthread-cothreads.h:
10730           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10731           is no "unused" warning.
10732         * gst/schedulers/Makefile.am:
10733         * gst/schedulers/entryscheduler.c:
10734           add new scheduler, based on ideas from talking to David and Martin.
10735           It's supposed to be small and correct. Currently it's also slow (but
10736           it's not noticable)
10737         * examples/retag/retag.c: (main):
10738         * testsuite/bytestream/test1.c: (main):
10739           fix missing NULLs at end of variadic functions
10740         * testsuite/elements/.cvsignore:
10741           update
10742
10743 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10744
10745         * gst/gstevent.h:
10746         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10747
10748 2004-03-25  David Schleef  <ds@schleef.org>
10749
10750         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10751         * docs/gst/tmpl/gstaggregator.sgml:
10752         * docs/gst/tmpl/gstautoplugfactory.sgml:
10753         * docs/gst/tmpl/gstbin.sgml:
10754         * docs/gst/tmpl/gstbuffer.sgml:
10755         * docs/gst/tmpl/gstbufferstore.sgml:
10756         * docs/gst/tmpl/gstfakesink.sgml:
10757         * docs/gst/tmpl/gstfakesrc.sgml:
10758         * docs/gst/tmpl/gstmd5sink.sgml:
10759         * docs/gst/tmpl/gstreamer-unused.sgml:
10760         * docs/gst/tmpl/gstsearchfuncs.sgml:
10761         * docs/gst/tmpl/gstshaper.sgml:
10762         * docs/gst/tmpl/gstspider.sgml:
10763         * docs/gst/tmpl/gsttee.sgml:
10764         * docs/gst/tmpl/gstutils.sgml:
10765         * docs/gst/tmpl/gstvalue.sgml:
10766         * docs/gst/tmpl/gstxml.sgml:
10767         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10768         and we don't support it.
10769         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10770         (gst_use_threads), (gst_has_threads): same
10771         * gst/gstthreaddummy.c: same
10772         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10773         * gst/autoplug/gstspider.h: same
10774         * gst/elements/gstaggregator.h: Remove bogus function from header
10775         * gst/elements/gstfakesink.h: same
10776         * gst/elements/gstfakesrc.h: same
10777         * gst/elements/gstmd5sink.h: same
10778         * gst/elements/gstshaper.h: same
10779         * gst/elements/gsttee.h: same
10780         * gst/gstbin.c: doc fixes
10781         * gst/gstbin.h: Remove unused definition.
10782         * gst/gstbuffer.c: doc fixes
10783         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10784         * gst/gstfilter.c: doc fixes
10785         * gst/gsttag.c: doc fixes
10786         * gst/gstvalue.c: doc fixes
10787
10788 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10789
10790         * docs/pwg/advanced-types.xml:
10791           Document typefinding.
10792         * docs/pwg/other-oneton.xml:
10793           Document one-to-n elements, demuxers and parsers.
10794
10795 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10796
10797         reviewed by: David Schleef  <ds@schleef.org>
10798
10799         * configure.ac: Check bison version (bug #127838)
10800
10801 2004-03-25  David Schleef  <ds@schleef.org>
10802
10803         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10804         * docs/gst/gstreamer-sections.txt:
10805         * docs/gst/tmpl/gstautoplug.sgml:
10806         * docs/gst/tmpl/gststaticautoplug.sgml:
10807         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10808         * docs/gst/tmpl/gstutils.sgml:
10809         * docs/gst/tmpl/gstxml.sgml:
10810
10811 2004-03-24  David Schleef  <ds@schleef.org>
10812
10813         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10814         manual being such complete crap, that I decided to do major
10815         hacking of it.  This checkin replaces any fine tuning that
10816         may have been done previously, with the benefit of actually
10817         being complete for much of the API that was changed since
10818         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10819         * docs/gst/gstreamer-sections.txt:
10820         * docs/gst/tmpl/GstBin.sgml:
10821         * docs/gst/tmpl/GstBuffer.sgml:
10822         * docs/gst/tmpl/GstCaps.sgml:
10823         * docs/gst/tmpl/GstClock.sgml:
10824         * docs/gst/tmpl/GstCompat.sgml:
10825         * docs/gst/tmpl/GstData.sgml:
10826         * docs/gst/tmpl/GstElement.sgml:
10827         * docs/gst/tmpl/GstEvent.sgml:
10828         * docs/gst/tmpl/GstIndex.sgml:
10829         * docs/gst/tmpl/GstStructure.sgml:
10830         * docs/gst/tmpl/GstTag.sgml:
10831         * docs/gst/tmpl/cothreads.sgml:
10832         * docs/gst/tmpl/cothreads_compat.sgml:
10833         * docs/gst/tmpl/gettext.sgml:
10834         * docs/gst/tmpl/grammar.tab.sgml:
10835         * docs/gst/tmpl/gst-i18n-app.sgml:
10836         * docs/gst/tmpl/gst-i18n-lib.sgml:
10837         * docs/gst/tmpl/gst.sgml:
10838         * docs/gst/tmpl/gst_private.sgml:
10839         * docs/gst/tmpl/gstaggregator.sgml:
10840         * docs/gst/tmpl/gstarch.sgml:
10841         * docs/gst/tmpl/gstatomic.sgml:
10842         * docs/gst/tmpl/gstatomic_impl.sgml:
10843         * docs/gst/tmpl/gstbin.sgml:
10844         * docs/gst/tmpl/gstbuffer.sgml:
10845         * docs/gst/tmpl/gstbufferstore.sgml:
10846         * docs/gst/tmpl/gstcaps.sgml:
10847         * docs/gst/tmpl/gstclock.sgml:
10848         * docs/gst/tmpl/gstcompat.sgml:
10849         * docs/gst/tmpl/gstconfig.sgml:
10850         * docs/gst/tmpl/gstcpu.sgml:
10851         * docs/gst/tmpl/gstdata.sgml:
10852         * docs/gst/tmpl/gstdata_private.sgml:
10853         * docs/gst/tmpl/gstelement.sgml:
10854         * docs/gst/tmpl/gstenumtypes.sgml:
10855         * docs/gst/tmpl/gsterror.sgml:
10856         * docs/gst/tmpl/gstevent.sgml:
10857         * docs/gst/tmpl/gstfakesink.sgml:
10858         * docs/gst/tmpl/gstfakesrc.sgml:
10859         * docs/gst/tmpl/gstfilesink.sgml:
10860         * docs/gst/tmpl/gstfilter.sgml:
10861         * docs/gst/tmpl/gstindex.sgml:
10862         * docs/gst/tmpl/gstinfo.sgml:
10863         * docs/gst/tmpl/gstinterface.sgml:
10864         * docs/gst/tmpl/gstlog.sgml:
10865         * docs/gst/tmpl/gstmacros.sgml:
10866         * docs/gst/tmpl/gstmarshal.sgml:
10867         * docs/gst/tmpl/gstmd5sink.sgml:
10868         * docs/gst/tmpl/gstmultifilesrc.sgml:
10869         * docs/gst/tmpl/gstobject.sgml:
10870         * docs/gst/tmpl/gstpad.sgml:
10871         * docs/gst/tmpl/gstparse.sgml:
10872         * docs/gst/tmpl/gstpipeline.sgml:
10873         * docs/gst/tmpl/gstplugin.sgml:
10874         * docs/gst/tmpl/gstpluginfeature.sgml:
10875         * docs/gst/tmpl/gstqueue.sgml:
10876         * docs/gst/tmpl/gstreamer-unused.sgml:
10877         * docs/gst/tmpl/gstregistry.sgml:
10878         * docs/gst/tmpl/gstregistrypool.sgml:
10879         * docs/gst/tmpl/gstscheduler.sgml:
10880         * docs/gst/tmpl/gstsearchfuncs.sgml:
10881         * docs/gst/tmpl/gstshaper.sgml:
10882         * docs/gst/tmpl/gstspider.sgml:
10883         * docs/gst/tmpl/gstspideridentity.sgml:
10884         * docs/gst/tmpl/gststructure.sgml:
10885         * docs/gst/tmpl/gstsystemclock.sgml:
10886         * docs/gst/tmpl/gsttag.sgml:
10887         * docs/gst/tmpl/gsttaginterface.sgml:
10888         * docs/gst/tmpl/gsttee.sgml:
10889         * docs/gst/tmpl/gstthread.sgml:
10890         * docs/gst/tmpl/gsttrace.sgml:
10891         * docs/gst/tmpl/gsttrashstack.sgml:
10892         * docs/gst/tmpl/gsttypefind.sgml:
10893         * docs/gst/tmpl/gsttypes.sgml:
10894         * docs/gst/tmpl/gsturi.sgml:
10895         * docs/gst/tmpl/gsturitype.sgml:
10896         * docs/gst/tmpl/gstutils.sgml:
10897         * docs/gst/tmpl/gstvalue.sgml:
10898         * docs/gst/tmpl/gstversion.sgml:
10899         * docs/gst/tmpl/gstxml.sgml:
10900         * docs/gst/tmpl/gstxmlregistry.sgml:
10901         * docs/gst/tmpl/gthread-cothreads.sgml:
10902         * docs/gst/tmpl/types.sgml:
10903
10904 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10905
10906         * docs/pwg/other-sink.xml:
10907         * docs/pwg/other-source.xml:
10908           Documentation on how to write source and sink elements. Other
10909           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10910           manager, autoplugger) are all still pending.
10911
10912 2004-03-25  Benjamin Otte  <otte@gnome.org>
10913
10914         * testsuite/elements/Makefile.am:
10915         * testsuite/elements/gst-compprep-check:
10916           add check to make sure gst-compprep works
10917         * testsuite/elements/gst-inspect-check.in:
10918           improve initialization output
10919         * testsuite/Makefile.am:
10920         * testsuite/gst-inspect-check:
10921           remove old file
10922
10923 2004-03-24  David Schleef  <ds@schleef.org>
10924
10925         * testsuite/elements/Makefile.am:
10926         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10927         to the testsuite.
10928
10929 2004-03-24  Benjamin Otte  <otte@gnome.org>
10930
10931         * libs/gst/control/dparam.c: (gst_dparam_attach),
10932         (gst_dparam_detach):
10933         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10934           fix lvalue casts for real
10935
10936 2004-03-24  Benjamin Otte  <otte@gnome.org>
10937
10938         * gst/schedulers/gstbasicscheduler.c:
10939         (gst_basic_scheduler_src_wrapper):
10940         * gst/schedulers/gstoptimalscheduler.c:
10941         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10942         (pad_clear_queued), (gst_opt_scheduler_add_element),
10943         (gst_opt_scheduler_remove_element):
10944           fix GStreamer to not have issues with lvalue casts anymore (fixes
10945           #136841)
10946
10947 2004-03-24  Benjamin Otte  <otte@gnome.org>
10948
10949         * gst/gstelement.c:
10950           add documentation about a gobject quirk where the object hasn't the
10951           correct class pointer set on initialization
10952         * gst/schedulers/gstbasicscheduler.c:
10953         (gst_basic_scheduler_src_wrapper):
10954           make sure to not run into an infinite loop
10955
10956 2004-03-22  Benjamin Otte  <otte@gnome.org>
10957
10958         * gst/gstutils.c: (gst_util_dump_mem):
10959         * gst/gstutils.h:
10960           first argument of gst_util_dump_mem should be const
10961
10962 2004-03-22  Johan Dahlin  <johan@gnome.org>
10963
10964         * gst/gstvalue.h: Clean up a little bit.
10965
10966 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10967
10968         reviewed by Benjamin Otte  <otte@gnome.org>
10969
10970         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10971         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10972         (gst_aggregator_class_init), (gst_aggregator_init):
10973         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10974         (gst_filesrc_dispose), (gst_filesrc_set_location):
10975         * gst/elements/gstidentity.c: (gst_identity_finalize),
10976         (gst_identity_class_init), (gst_identity_chain):
10977         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10978         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10979         (gst_statistics_class_init):
10980         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10981         (gst_tee_get_property):
10982           clean up used memory in this elements correctly on teardown (closes
10983           #137279)
10984
10985 2004-03-20  Colin Walters  <walters@redhat.com>
10986
10987         * gst/registries/gstxmlregistry.c:
10988         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10989         registry saving atomic.
10990
10991 2004-03-20  Colin Walters  <walters@redhat.com>
10992
10993         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10994         Just use
10995         access() instead of actually creating and deleting files.
10996
10997 2004-03-18  David Schleef  <ds@schleef.org>
10998
10999         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
11000         (bug #137625)
11001
11002 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11003
11004         * po/sv.po: updated translation (Christian Rose)
11005
11006 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11007
11008         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11009         (gst_filesink_get_query_types), (_do_init),
11010         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
11011           return FALSE silently
11012         * po/af.po: updated translation (Petri Jooste)
11013
11014 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11015
11016         * Makefile.am:
11017         * configure.ac:
11018           dist common properly
11019         * po/af.po:
11020         * po/fr.po:
11021         * po/nl.po:
11022         * po/sr.po:
11023         * po/sv.po:
11024           refreshing translations
11025
11026 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11027
11028         * po/LINGUAS:
11029         * po/sv.po:
11030         * po/af.po:
11031           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
11032
11033 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11034
11035         * Makefile.am: use common/release.mak
11036
11037 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11038
11039         * docs/faq/gst-uninstalled:
11040           adding gst-monkeysaudio to the list of possible plugin dirs
11041
11042 2004-03-16  David Schleef  <ds@schleef.org>
11043
11044         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
11045         (gst_init_check_with_popt_table):  Fix some gettext strings to
11046         make them easier to translate.  Required making the strings
11047         non-const.
11048
11049 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11050
11051         * configure.ac: bump nano to 1
11052
11053 === release 0.8.0 ===
11054
11055 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11056
11057         * configure.ac: release 0.8.0, "Executive Slacks"
11058
11059 2004-03-16  Johan Dahlin  <johan@gnome.org>
11060
11061         * gst/schedulers/gstoptimalscheduler.c
11062         (gst_opt_scheduler_pad_unlink): Remove double ;,
11063         spotted by Scott Wheeler
11064
11065 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11066
11067         * configure.ac: bump libtool version
11068
11069 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11070
11071         * gst/gstcaps.h:
11072         * gst/gststructure.h:
11073           add reserved padding
11074
11075 2004-03-15  Benjamin Otte  <otte@gnome.org>
11076
11077         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11078           set the first parameter for select call correctly.
11079           (fixes #137230)
11080
11081 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11082
11083         * *.c,*.h: don't mix tabs and spaces
11084
11085 2004-03-15  Johan Dahlin  <johan@gnome.org>
11086
11087         * gst/schedulers/gstoptimalscheduler.c
11088         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11089         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11090
11091         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11092         
11093 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11094
11095         * testsuite/Rules:
11096           fix gst-register rules
11097
11098 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11099
11100         * testsuite/Rules:
11101           use versioned gst-register
11102
11103 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11104
11105         * docs/libs/gstreamer-libs-sections.txt:
11106           remove </SUBSECTION>
11107         * gst/gstplugin.c:
11108         * gst/gstregistry.c: (gst_registry_add_plugin):
11109         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11110         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11111           add debugging and fix some comment blocks
11112
11113 2004-03-15  Johan Dahlin  <johan@gnome.org>
11114
11115         * *.h: Revert indent changes.
11116         
11117 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11118
11119         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11120           g_error_free the g_error
11121         * tools/gst-feedback-m.m:
11122           check for other versions of gstreamer
11123         * tools/gst-indent:
11124           use sh, not bash
11125
11126 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11127
11128         * tools/gst-register.c: do not spill paths when registries are not
11129           writable, until we fix the "user running gst-register" case.
11130
11131 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11132
11133         * *.c, *.h: commit of gst-indent run on core
11134
11135 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11136
11137         * tools/gst-indent:
11138         * tools/Makefile.am:
11139           add our indentation style as a script
11140
11141 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11142
11143         * po/sr.po:
11144         * po/LINGUAS:
11145           added Serbian translation
11146
11147 2004-03-13  Benjamin Otte  <otte@gnome.org>
11148
11149         * gst/gstelement.c:
11150           add documentation note about gst_element_found_tags_for_pad not
11151           being usable in getfunctions. (see #137042)
11152
11153 2004-03-12  David Schleef  <ds@schleef.org>
11154
11155         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11156         change API right now!  Readd gst_caps_is_simple() macro.
11157         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11158         uninitialized variable.  I'd bet this caused crashes.
11159         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11160
11161 2004-03-12  Johan Dahlin  <johan@gnome.org>
11162
11163         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11164         * gst/gstcaps.h: Clean up
11165
11166         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11167         _gst_caps_initalize()
11168
11169         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11170         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11171
11172         * gst/gststructure.c (gst_structure_get_type): Ditto
11173
11174         * gst/gststructure.h: Ditto
11175         
11176 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11177
11178         * gst/gstqueue.c: (gst_queue_init):
11179           Reset default max. values in queues. Reason is simply to avoid
11180           braindead use. If you want wider values, use the properties. The
11181           default is supposed to always work. Wider values would make this
11182           beast a memory hog by default (250 full-PAL RGB32 video frames?
11183           That's 440 MB! No thank you).
11184
11185 2004-03-10  David Schleef  <ds@schleef.org>
11186
11187         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11188         were found.  (bug #136793)
11189
11190 2004-03-10  Johan Dahlin  <johan@gnome.org>
11191
11192         * gst/schedulers/gstoptimalscheduler.c
11193         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11194         links to elements within the same group, so we can finally remove
11195         that annoying warning. Refactor the code a little bit
11196         (group_dec_links_for_element): Split out
11197
11198 2004-03-09  David Schleef  <ds@schleef.org>
11199
11200         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11201         (bug #134863)
11202
11203 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11204
11205         * configure.ac: first bug fix due to major/minor bump
11206
11207 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11208
11209         * configure.ac: bump nano to 1
11210
11211 === release 0.7.6 ===
11212
11213 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11214
11215         * NEWS:
11216         * RELEASE:
11217         * configure.ac:
11218           releasing 0.7.6, "Almost"
11219         * po/fr.po:
11220         * po/nl.po:
11221         * tools/Makefile.am:
11222         * tools/gst-feedback-m.m:
11223           unversioned source
11224
11225 2004-03-09  Johan Dahlin  <johan@gnome.org>
11226
11227         Reviewed by: Thomas Vander Stichele
11228
11229         * gst/gstelement.c (gst_element_class_init): register second
11230         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11231         language bindings can (de)marshall correctly.
11232
11233         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11234
11235         * gst/gsterror.c (gst_g_error_get_type): New function
11236
11237         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11238         with VOID:OBJECT,OBJECT,STRING 
11239
11240 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11241
11242         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11243         Free a leaked g_timer on early returns.
11244
11245 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11246
11247         * docs/pwg/advanced-types.xml:
11248           Add cinepak description.
11249
11250 2004-03-07  David Schleef  <ds@schleef.org>
11251
11252         * docs/random/mimetypes:  Added cinepak description
11253
11254 2004-03-07  Andy Wingo  <wingo@pobox.com>
11255
11256         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11257
11258         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11259         there are no links to other groups when a group is destroyed.
11260         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11261         removed from a group, make sure the link count to elements linked
11262         to other pads is appropriately decremented. This really fixes
11263         #135672.
11264
11265         The 1.60->1.61 patch has been reapplied in light of this fix.
11266
11267         * gst/gstelement.c (gst_element_dispose): Really protect against
11268         multiple invocations this time.
11269
11270 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11271
11272         * docs/gst/gstreamer-sections.txt:
11273         * docs/gst/tmpl/gsttag.sgml:
11274           remove some deprecated functions, document some existing ones
11275         * gst/gsttag.c: (gst_tag_get_flag):
11276         * gst/gsttag.h:
11277           add accessor function
11278
11279 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11280
11281         * docs/gst/gstreamer-sections.txt:
11282         * docs/gst/tmpl/gsttag.sgml:
11283         * docs/gst/tmpl/gstxml.sgml:
11284         * gst/gsttag.c: (gst_tag_get_flag):
11285         * gst/gsttag.h:
11286
11287 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11288
11289         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11290         leak
11291
11292 2004-03-05  David Schleef  <ds@schleef.org>
11293
11294         * REQUIREMENTS: Add bison and flex.
11295         * configure.ac: Fix comment about bison.
11296         * docs/random/ds/0.9-suggested-changes: yer ma
11297         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11298
11299 2004-03-05  Benjamin Otte  <otte@gnome.org>
11300
11301         * gst/gstelement.c: (gst_element_error_full):
11302           revert recent recursive state changing commit - messing with other
11303           elements' states is evil and should be done by apps only.
11304
11305 2004-03-05  Benjamin Otte  <otte@gnome.org>
11306
11307         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11308           check for empty intersection instead of NULL caps
11309         (gst_element_get_compatible_pad_filtered):
11310           remove old workaround that is only a bug nowadays
11311
11312 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11313
11314         * gst/gstelement.c: (gst_element_error_full):
11315           make elements try to recursively change state to PAUSED on all
11316           parents after an error to suppress ensuing warnings
11317         * gst/parse/grammar.y:
11318           make it check if it was able to sync the state, and throw an error
11319           if not, so stuff like
11320           oggdemux ! vorbisdec ! osssink gets caught
11321
11322 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11323
11324         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11325           it contains lib64; use AS_AC_EXPAND to handle it properly
11326
11327 2004-03-05  David Schleef  <ds@schleef.org>
11328
11329         * gst/gstcpuid_i386.s:  Remove unused code
11330         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11331         (gst_getbits_newbuf): Remove MMX code
11332         * libs/gst/getbits/getbits.h: Remove MMX code
11333
11334 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11335
11336         * debian/.cvsignore:
11337         * debian/README.Debian:
11338         * debian/changelog:
11339         * debian/control:
11340         * debian/control.in:
11341         * debian/copyright:
11342         * debian/gstreamer-core-libs-dev.files:
11343         * debian/gstreamer-core-libs.files:
11344         * debian/gstreamer-core.files:
11345         * debian/gstreamer-core.postinst:
11346         * debian/gstreamer-core.postrm:
11347         * debian/gstreamer-doc.files:
11348         * debian/gstreamer-doc.links:
11349         * debian/gstreamer-doc.lintian:
11350         * debian/gstreamer-runtime.files:
11351         * debian/gstreamer-runtime.manpages:
11352         * debian/gstreamer-runtime.postinst:
11353         * debian/gstreamer-runtime.postrm:
11354         * debian/gstreamer-tools.files:
11355         * debian/gstreamer-tools.manpages:
11356         * debian/libgstreamer-dev.files:
11357         * debian/libgstreamer0.4.1.files:
11358         * debian/libgstreamerVERSION.files:
11359         * debian/rules:
11360         Debian package info not maintained here.
11361
11362 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11363
11364         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11365         * gst/gstbin.c: (gst_bin_class_init):
11366         * gst/gstelement.c: (gst_element_class_init):
11367         * gst/gstindex.c: (gst_index_class_init):
11368         * gst/gstobject.c: (gst_object_class_init),
11369         (gst_signal_object_class_init):
11370         * gst/gstpad.c: (gst_pad_template_class_init):
11371         * gst/gstregistry.c: (gst_registry_class_init):
11372         * gst/gsturi.c: (gst_uri_handler_base_init):
11373         * gst/gstxml.c: (gst_xml_class_init):
11374         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11375         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11376           make all signal names use dashes instead of underscore
11377
11378 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11379
11380         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11381
11382 2004-03-03  Benjamin Otte  <otte@gnome.org>
11383
11384         * gst/schedulers/gstoptimalscheduler.c:
11385           revert last commit by Andy Wingo. It causes segfaults on unreffing
11386           in Rhythmbox. (see bug #135672)
11387
11388 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11389
11390         * po/fr.po: fix typo
11391
11392 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11393
11394         * tools/gst-inspect.c: (main): 
11395         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11396
11397 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11398
11399         * configure.ac:
11400           get GLIB_ONLY and POPT flags for the nonversioned binaries
11401         * tools/Makefile.am:
11402           use them
11403
11404 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11405
11406         * gst/gst.c: (init_post):
11407           change so that GST_REGISTRY now is where the global registry gets
11408           saved, since that is where plugins now get attached to first, and
11409           spilled over to the user registry.  Note that in the case of using
11410           GST_REGISTRY env var, we don't want to affect any real registries
11411           beyond the one given by this var, and thus we don't set a user
11412           registry to spill to.  So make sure GST_REGISTRY is writable.
11413
11414 2004-03-01  David Schleef  <ds@schleef.org>
11415
11416         * AUTHORS:  Added some names.  Add yourself if you're missing.
11417
11418 2004-03-01  David Schleef  <ds@schleef.org>
11419
11420         * MAINTAINERS: Add
11421
11422 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11423
11424         * configure.ac:
11425           remove whitespace
11426         * docs/gst/tmpl/gstbuffer.sgml:
11427         * docs/gst/tmpl/gstdata.sgml:
11428         * docs/gst/tmpl/gstreamer-unused.sgml:
11429         * docs/gst/tmpl/gstxml.sgml:
11430           doc update
11431         * docs/manuals.mak:
11432           add a FIXME
11433         * docs/pwg/intro-preface.xml:
11434         * docs/pwg/pwg.xml:
11435           remove GNOME
11436         * gst/gst.c: (init_post):
11437           try GST_PLUGIN_PATH paths for the _global_registry first
11438         * gst/gstelement.h:
11439           add the error message as well, otherwise (null) debug info doesn't
11440           make much sense
11441         * tools/gst-register.c: (main):
11442           spill paths to next registry if this registry is not writable
11443         * po/fr.po:
11444         * po/nl.po:
11445           translation updates
11446
11447 2004-03-01  Johan Dahlin  <johan@gnome.org>
11448
11449         * gst/gstbuffer.c (_gst_buffer_initialize): 
11450         * gst/gstdata.c (gst_data_get_type): 
11451         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11452         instead of ref, since some applications that uses GBoxed
11453         routines depends on a function that actually returns a copy.
11454
11455 2004-02-27  Benjamin Otte  <otte@gnome.org>
11456
11457         * gst/gstbuffer.h:
11458           remove gst_buffer_free, use gst_data_unref
11459         * gst/gstdata.c: (gst_data_get_type):
11460           use refcounting in GstData GBoxed registration
11461         * gst/gstdata.h:
11462           remove gst_data_free, use gst_data_unref
11463
11464 2004-02-27  Johan Dahlin  <johan@gnome.org>
11465
11466         * gst/gstdata.c (gst_data_get_type): New function, register
11467         GstData as a GBoxed type.
11468
11469         * gst/gstdata.h (GST_TYPE_DATA): New macro
11470
11471 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11472
11473         * Makefile.am:
11474         * gstreamer.spec.in:
11475           put back RELEASE
11476         * gst/Makefile.am:
11477           clean up non-disting of built files
11478         * testsuite/debug/commandline.c:
11479           test fix for option rename
11480
11481 2004-02-26  David Schleef  <ds@schleef.org>
11482
11483         * configure.ac:  We don't really need glib-2.3.  Also remove
11484         some unneeded checks for library functions.
11485         * gst/Makefile.am:  Instead, we need to not dist files created
11486         by glib-genmarshal.
11487
11488 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11489
11490         * configure.ac:
11491           bump glib required version to 2.3.0 for g_value_takes_boxed
11492
11493  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11494
11495         * common/m4/gst-docs.m4
11496         change flavour text from enable to disable as enable is our default
11497         closes bug Bug 135304
11498
11499 === release 0.7.5 ===
11500  
11501  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11502  
11503         * NEWS:
11504           instate NEWS file
11505         * Makefile.am:
11506         * gstreamer.spec.in:
11507         * RELEASE:
11508           put back release
11509         * configure.ac:
11510         * docs/random/release:
11511           more updates
11512
11513 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11514
11515         * gst/gsttag.c: (_gst_tag_initialize):
11516         * po/fr.po:
11517         * po/nl.po:
11518           remove hyphen from codec tags
11519
11520 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11521
11522         * gst/parse/Makefile.am:
11523           fix dependency so that a make from a clean build works the first
11524           time
11525
11526 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11527
11528         * docs/random/release:
11529           update release strategy
11530         * po/fr.po:
11531           auto-update po file
11532         * po/nl.po:
11533           update dutch translation
11534
11535 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11536
11537         * docs/manual/debugging.xml:
11538         fix manual for new debugging system
11539
11540 2004-02-25  Andy Wingo  <wingo@pobox.com>
11541
11542         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11543         gst_pad_link_prepare. Please email the list with specific reasons
11544         for reverting.
11545
11546 2004-02-24  Andy Wingo  <wingo@pobox.com>
11547
11548         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11549         invocations.
11550
11551         * gst/schedulers/gstoptimalscheduler.c:
11552         I added a mess of prototypes at the top of the file by way of
11553         documentation. Some of the operations on chains and groups were
11554         re-organized.
11555
11556         (create_group): Added a type argument so if the group is enabled,
11557         the setup_group_scheduler knows what to do.
11558         (group_elements): Added a type argument here, too, to be passed on
11559         to create_group.
11560         (group_element_set_enabled): If an unlinked PLAYING element is
11561         added to a bin, we have to create a new group to hold the element,
11562         and this function will be called before the group is added to the
11563         chain. Thus we have a valid case for group->chain==NULL. Instead
11564         of calling chain_group_set_enabled, just set the flag on the group
11565         (the chain's status will be set when the group is added to it).
11566         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11567         Setup the group scheduler when the group is enabled, not
11568         specifically when an element goes PAUSED->PLAYING. This means
11569         PLAYING elements can be added, linked, and scheduled into a
11570         PLAYING pipeline, as was intended.
11571         (add_to_group): Don't ref the group twice. I don't know when this
11572         double-ref got in here. Removing it has the potential to cause
11573         segfaults if other parts of the scheduler are buggy. If you find
11574         that the scheduler is segfaulting for you, put in an extra ref
11575         here and see if that hacks over the underlying issue. Of course,
11576         then find out what code is unreffing a group it doesn't own...
11577         (create_group): Make the extra refcount floating, and remove it
11578         after adding the element. This means that...
11579         (unref_group): Destroy when the refcount reaches 0, not 1, like
11580         every other refcounted object in the known universe.
11581         (remove_from_group): When a group becomes empty, set it to be not
11582         active, and remove it from its chain. Don't unref it again,
11583         there's no floating reference any more.
11584         (destroy_group): We have to remove the group from the chain in
11585         remove_from_group (rather than here) to break refcounting cycles
11586         (the chain always has a ref on the group). So assert that
11587         group->chain==NULL.
11588         (ref_group_by_count): Removed, it was commented out anyway.
11589         (merge_chains): Use the remove_from_chain and add_to_chain
11590         primitives to do the reparenting, instead of rolling our own
11591         implementation.
11592         (add_to_chain): The first non-disabled group in the chain's group
11593         list will be the entry point for the chain. Because buffers can
11594         accumulate in loop elements' peer bufpens, we preferentially
11595         schedule loop groups before get groups to avoid unnecessary
11596         execution of get-based groups when the bufpens are already full.
11597         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11598         (get_group_schedule_function): Ditto.
11599         (loop_group_schedule_function): Ditto.
11600         (gst_opt_scheduler_loop_wrapper): Ditto.
11601         (gst_opt_scheduler_iterate): Ditto.
11602
11603         I understand the opt scheduler now, yippee!
11604
11605         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11606         (gst_pad_get_name, gst_pad_set_chain_function) 
11607         (gst_pad_set_get_function, gst_pad_set_event_function) 
11608         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11609         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11610         (gst_pad_set_query_function, gst_pad_get_query_types) 
11611         (gst_pad_get_query_types_default) 
11612         (gst_pad_set_internal_link_function) 
11613         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11614         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11615         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11616         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11617         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11618         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11619         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11620         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11621         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11622         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11623         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11624         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11625         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11626         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11627         argument checks, and some doc fixes.
11628
11629         (gst_pad_custom_new_from_template): Um, does anyone
11630         use these functions? Actually make a custom pad instead of a
11631         normal one.
11632         (gst_pad_try_set_caps): Transpose some checks.
11633         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11634         the pad is in negotiation.
11635         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11636         
11637         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11638
11639         * gst/gstelement.h: 
11640         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11641         on the list.
11642
11643 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11644
11645         * gst/gstbin.c: (gst_bin_add):
11646           add error for not being able to add elements
11647
11648 2004-02-22  Julien MOUTTE <julien@moutte.net>
11649
11650         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11651         audio-codec and video-codec.
11652
11653 2004-02-22  Benjamin Otte  <otte@gnome.org>
11654
11655         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11656
11657         * autogen.sh:
11658           replace test -e with test -x for mkinstalldirs to be more portable.
11659           (fixes #134816)
11660
11661 2004-02-22  Benjamin Otte  <otte@gnome.org>
11662
11663         * gst/gstpad.c:
11664           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11665           too noisy
11666         * gst/gsttag.c: (_gst_tag_initialize):
11667         * gst/gsttag.h:
11668           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11669         * libs/gst/control/dparam.c: (gst_dparam_attach):
11670         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11671           check that types for attached dparams match
11672
11673 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11674
11675         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11676         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11677         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11678           fix errors
11679
11680 2004-02-20  Andy Wingo  <wingo@pobox.com>
11681
11682         * gst/gstbin.c:
11683         * gst/gstbuffer.c:
11684         * gst/gstplugin.c:
11685         * gst/registries/gstxmlregistry.c: 
11686         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11687
11688         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11689         (gst_element_add_pad): DEBUG->INFO, some fixes.
11690         (gst_element_get_compatible_pad_template): Just see if the
11691         templates' caps intersect, not if one is a strict subset of the
11692         other. This conforms more to what gst_pad_link_intersect() does.
11693         (gst_element_class_add_pad_template): Don't memcpy the pad
11694         template, just ref it.
11695         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11696
11697         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11698         (gst_pad_link_filtered): Debug changes.
11699         (gst_pad_link_prepare): New function, consolidated from
11700         can_link_filtered and link_filtered.
11701
11702         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11703         look more like that of the functions in gstelement.c
11704
11705         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11706         object, and return the empty string if object is NULL.
11707
11708         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11709         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11710         LOG, not DEBUG. We still get flex info on debug.
11711
11712         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11713         debug string more verbose.
11714         (plugin_times_older_than): DEBUG->LOG.
11715
11716 2004-02-20  Julien MOUTTE <julien@moutte.net>
11717
11718         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11719         will emit found_tag for each stream they demux with the codec.
11720
11721 2004-02-20  Benjamin Otte  <otte@gnome.org>
11722
11723         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11724           copy navigation event correctly. Check freeing tag lists. 
11725         * gst/gstthread.c: (gst_thread_change_state):
11726           don't abort() on state changing mess - it might happen because of
11727           bugs.
11728         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11729           use boxed functions
11730         * gst/gstvalue.h:
11731           fix GST_VALUE_HOLDS_CAPS
11732
11733 2004-02-19  David Schleef  <ds@schleef.org>
11734
11735         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11736         and use it for GST_FUNCTION.  (bug #134750)
11737
11738 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11739
11740         * po/fr.po:
11741         * po/nl.po:
11742           updating translations
11743
11744 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11745
11746         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11747
11748 2004-02-18  kost@imn.htwk-leipzig.de
11749
11750         reviewed by: David Schleef  <ds@schleef.org>
11751
11752         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11753         for libgstcontrol.
11754
11755 2004-02-18  David Schleef  <ds@schleef.org>
11756
11757         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11758         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11759         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11760         * tools/gst-inspect.c: (print_element_info): Support dumping of
11761         double dparam information.
11762
11763 2004-02-17  David Schleef  <ds@schleef.org>
11764
11765         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11766         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11767         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11768         Use GST_TYPE_CAPS in signal prototype.
11769         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11770         Convert GST_TYPE_CAPS to boxed.
11771         * gst/gstelement.c: (gst_element_class_init):
11772         Use GST_TYPE_TAG_LIST in signal prototype.
11773         * gst/gstindex.c: (gst_index_class_init):
11774         * gst/gstindex.h:
11775         Add GST_TYPE_INDEX_ENTRY type.
11776         * gst/gstmarshal.list:
11777         Add necessary marshal types.
11778         * gst/gstpad.c: (gst_real_pad_class_init),
11779         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11780         (gst_pad_recover_caps_error):
11781         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11782         * gst/gststructure.c: (_gst_structure_initialize),
11783         (gst_structure_copy), (_gst_structure_copy_conditional):
11784         * gst/gststructure.h:
11785         Convert GST_TYPE_STRUCTURE to boxed.
11786         * gst/gsttag.c: (gst_tag_list_get_type):
11787         * gst/gsttag.h:
11788         Add GST_TYPE_TAG_LIST type.
11789
11790 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11791
11792         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11793         to what we agreed with david.
11794         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11795
11796 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11797
11798         * po/nl.po: update translation
11799
11800 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11801
11802         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11803           throw an error if spider is trying to play a mime type there is
11804           no decoder for
11805         * po/POTFILES.in:
11806           add gst/autoplug/gstspider.c for translation
11807
11808 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11809
11810         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11811         silently when the pad is negotiating.
11812
11813 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11814
11815         * docs/faq/Makefile.am:
11816           add script to run gstreamer uninstalled 
11817         * docs/faq/faq.xml:
11818         * docs/faq/developing.xml:
11819         * docs/faq/gst-uninstalled:
11820           extract script to run gstreamer uninstalled
11821         * docs/manuals.mak:
11822           add EXTRA_SOURCES variable for Makefile.am's to set to
11823           use additional SOURCE files for the doc build
11824
11825 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11826
11827         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11828
11829 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11830
11831         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11832         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11833         an error was thrown by osssink. Basically a state change failure for
11834         an element in a different scheduling group was considered as
11835         successful, which means that caps nego was going on and weird stuff
11836         happened. Like I wrote in the comment there, if someone wants to
11837         revert that please drop me a mail explaining why because I really see
11838         no point in keeping that broken behaviour there.
11839         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11840         be empty, we then return NULL which will trigger a nice error when 
11841         pulling from the pad.
11842
11843 2004-02-13  David Schleef  <ds@schleef.org>
11844
11845         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11846         (gst_dparam_get_property), (gst_dparam_set_property),
11847         (gst_dparam_do_update_default):
11848         * libs/gst/control/dparam.h:
11849         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11850         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11851         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11852         (gst_dpsmooth_do_update_double):
11853         * libs/gst/control/dparam_smooth.h:
11854         * libs/gst/control/dparammanager.c:
11855         (gst_dpman_inline_direct_update):
11856         Add support for double dparams.
11857
11858 2004-02-13  David Schleef  <ds@schleef.org>
11859
11860         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11861         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11862
11863 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11864
11865         reviewed by: David Schleef  <ds@schleef.org>
11866
11867         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11868         (gst_fdsrc_init), (gst_fdsrc_set_property),
11869         (gst_fdsrc_get_property), (gst_fdsrc_get):
11870         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11871         and sends an EOS event if file descriptor reading times out.
11872
11873 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11874
11875         * configure.ac:
11876           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11877
11878 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11879
11880         * configure.ac: pass required libxml version as argument
11881         (bug reported by Christophe Fergeau)
11882
11883 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11884   
11885         * docs/gst/gstreamer-docs.sgml:
11886         * docs/gst/tmpl/gstxml.sgml:
11887         * docs/libs/gstreamer-libs-docs.sgml:
11888           version API docs
11889
11890 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11891
11892         * gst/gstinfo.c:
11893         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11894         (gst_registry_pool_feature_filter):
11895         * gst/gstthread.c: (gst_thread_class_init):
11896         * gst/gstvalue.c:
11897           add includes exposed by building without libxml
11898         * gst/indexers/Makefile.am:
11899           do not build fileindex when LOADSAVE disabled; we should have
11900           a better libxml check later since fileindex depends on xml, not
11901           LOADSAVE or REGISTRY
11902         * libs/gst/control/Makefile.am:
11903           link with m
11904         * tools/Makefile.am:
11905           fix wrong source code for gst-xmlinspect
11906
11907 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11908
11909         * configure.ac:
11910           fix gcov help output
11911           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11912         * docs/random/release:
11913           some updated releasing notes
11914         * gstreamer.spec.in:
11915           more updates
11916
11917 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11918
11919         * docs/faq/faq.xml:
11920         * docs/manual/manual.xml:
11921         * docs/pwg/pwg.xml:
11922         * docs/pwg/titlepage.xml:
11923           put version in documentation
11924
11925 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11926
11927         * tools/Makefile.am: fix man page installation
11928
11929 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11930
11931         * configure.ac:
11932           don't check for libxml when load/save and registry disabled (#105844)
11933         * gstreamer.spec.in:
11934           sync with fedora candidate spec
11935
11936 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11937
11938         * po/fr.po:
11939         * po/nl.po:
11940           replace multidisksrc with multifilesrc
11941
11942 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11943
11944         * po/POTFILES.in:
11945           update to multidisksrc => multifilesrc file renaming (#134145)
11946
11947 2004-02-11  David Schleef  <ds@schleef.org>
11948
11949         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11950         * docs/gst/tmpl/gstpadtemplate.sgml: same
11951         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11952         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11953         fixing dance.
11954         * gst/gstutils.c: Remove disabled code that uses GstProps.
11955         * gst/registries/gstxmlregistry.h: same
11956         * docs/random/ds/0.9-suggested-changes: random notes
11957
11958 2004-02-11  kost@imn.htwk-leipzig.de
11959
11960         reviewed by: David Schleef  <ds@schleef.org>
11961
11962         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11963         initialisation of clock (bug #134128)
11964
11965 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11966
11967         * configure.ac:
11968         * gst/elements/Makefile.am:
11969         * gst/elements/gstelements.c:
11970         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11971         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11972         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11973         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11974         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11975         * gst/elements/gstmultifilesrc.h:
11976           rename multidisksrc to multifilesrc (part of #122200)
11977
11978 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11979
11980         * docs/manuals.mak:
11981           fix automake complaints
11982         * gst-element-check.m4:
11983           fix unquotedness
11984
11985 2004-02-11  David Schleef  <ds@schleef.org>
11986
11987         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11988         * gst/gstatomic_impl.h: Disable sparc implementation.
11989
11990 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11991
11992         * gst-element-check.m4:
11993           fix underquoted macros as reported by automake 1.8.x (#133800)
11994         * configure.ac:
11995           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11996           by autopoint (fixes #132996)
11997
11998 2004-02-10  Andy Wingo  <wingo@pobox.com>
11999
12000         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
12001         way to do inheritance.
12002         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
12003         (gst_pad_get_query_types, gst_pad_get_query_types_default):
12004         Routine docs.
12005         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
12006         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
12007         doc.
12008         (gst_pad_unlink, gst_pad_is_linked): Docs.
12009         (gst_pad_renegotiate): A brief description of capsnego.
12010         (gst_pad_try_set_caps): Document.
12011         (gst_pad_try_set_caps_nonfixed): Document.
12012         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
12013         (gst_pad_set_parent): Deprecated (although not out of the API).
12014         (gst_pad_get_parent): Deprecated, although many plugins use this.
12015         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
12016         are private and will go away in 0.9.
12017         (gst_pad_perform_negotiate): Doc.
12018         (gst_pad_link_unnegotiate): I think this is meant to be static.
12019         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
12020         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
12021         (gst_pad_get_peer): Doc updates.
12022         (gst_pad_caps_change_notify): Doc.
12023         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
12024         (gst_ghost_pad_new): Doc fixes.
12025
12026         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
12027         (gst_object_check_uniqueness): 
12028
12029         * gst/gstelement.c (gst_element_add_pad) 
12030         (gst_element_add_ghost_pad, gst_element_remove_pad) 
12031         (gst_element_remove_ghost_pad, gst_element_get_pad) 
12032         (gst_element_get_static_pad, gst_element_get_pad_list) 
12033         (gst_element_class_get_pad_template_list) 
12034         (gst_element_class_get_pad_template): Work on the docs.
12035         (gst_element_get_pad_template_list): Uses the class method.
12036         (gst_element_get_compatible_pad_template): Docs, and consolidate
12037         some test conditions. 
12038         (gst_element_get_pad_from_template): New static function.
12039         (gst_element_request_compatible_pad): Docs, and work with
12040         non-request compatible templates. 
12041         (gst_element_get_compatible_pad_filtered): Docs and remove
12042         redundant checks.
12043         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
12044         (gst_element_link_filtered, gst_element_link_many) 
12045         (gst_element_link, gst_element_link_pads) 
12046         (gst_element_unlink_many): Docs.
12047
12048 2004-02-05  Andy Wingo  <wingo@pobox.com>
12049
12050         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
12051         s/pointer/boxed/.
12052
12053         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
12054
12055         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
12056         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
12057         with the type=GST_TYPE_CAPS. This allows language bindings to know
12058         what kind of data they're dealing with.
12059
12060         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
12061         to NULL when g_value_init is called. GstCaps, which rolls its own
12062         type implementation, now does the same instead of allocating empty
12063         caps.
12064         (_gst_caps_initialize, _gst_caps_collect_value,
12065         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
12066         table methods. This allows G_VALUE_COLLECT to work.
12067
12068 2004-02-05  Andy Wingo  <wingo@pobox.com>
12069
12070         * configure.ac:
12071         * testsuite/Makefile.am (SUBDIRS): 
12072         * testsuite/ghostpads/Makefile.am: 
12073         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
12074
12075         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
12076         These two routines are the only ones that set
12077         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
12078         pad template. They should be made static, depending on ABI needs.
12079         (gst_real_pad_dispose): Handle the case of ghost pads without a
12080         parent. Assert after dealing with ghost pads that the ghost pad
12081         list is empty.
12082         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12083         set after creation.
12084         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12085         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12086         functions. set_property will call add_ghost_pad/remove_ghost_pad
12087         as appropriate.
12088         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12089
12090         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12091         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12092         (gst_element_remove_pad): Handle ghost pads as well.
12093         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12094         depending on API-stability needs).
12095
12096 2004-02-05  Andy Wingo  <wingo@pobox.com>
12097
12098         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12099         of course they're const
12100
12101 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12102
12103         * tools/Makefile.am:
12104         * tools/gst-feedback:
12105         * tools/gst-feedback-0.7:
12106           make gst-feedback versioned too for consistency
12107
12108 2004-02-11  David Schleef  <ds@schleef.org>
12109
12110         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12111         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12112
12113 2004-02-10  Julien MOUTTE <julien@moutte.net>
12114
12115         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12116         the structure does not contain a valid tag list. Adding a safety check
12117         to remove a noisy warning in that case.
12118
12119 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12120
12121         * gst/gst.c: fix name to be in line with others
12122
12123 2004-02-09  Julien MOUTTE <julien@moutte.net>
12124
12125         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12126         not shout that loud when len is 0. Just return 0 silently.
12127
12128 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12129
12130         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12131         because data_unref has one and I prefer the debug to be symetric.
12132         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12133         were refed when added to the queue and unrefed only once when the queue
12134         was flushed. Now the flush handler unref the buffers two times : first
12135         unref for the ref added when pushing in the queue's tail and second
12136         unref to destroy the flushed buffer.
12137
12138 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12139
12140         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12141
12142 2004-02-06  David Schleef  <ds@schleef.org>
12143
12144         * docs/random/ds/0.9-suggested-changes: Random ramblings
12145         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12146         to int before printing.
12147         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12148         * gst/parse/parse.l: same.  See bug #129600
12149
12150 2004-02-06  David Schleef  <ds@schleef.org>
12151
12152         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12153         (gst_index_add_entry), (gst_index_add_associationv),
12154         (gst_index_add_association): Add gst_index_add_associationv()
12155         and clean up gst_index_add_association(). #127133
12156
12157 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12158
12159         * autogen.sh: check out common with right tag if CVS/Tag exists
12160
12161 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12162
12163         * testsuite/ghostpads/ghostpads.c: (main):
12164           fix testsuite from segfaulting
12165
12166 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12167
12168         * Makefile.am: add release target
12169         * configure.ac: bump nano to 1
12170         * docs/random/release:
12171
12172 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12173
12174         * gst/gstcaps.h:
12175         * gst/gstelement.c: (gst_element_base_class_init),
12176         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12177         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12178         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12179         (gst_real_pad_dispose):
12180         * gst/gststructure.c: (gst_structure_free),
12181         (gst_structure_from_string):
12182           put reverted patch back in
12183         * gst/gstelement.c: (gst_element_remove_pad):
12184           free explicit caps if they're set
12185         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12186           copy the structure when fixating
12187
12188 2004-02-05  David Schleef  <ds@schleef.org>
12189
12190         * gst/gstmarshal.list:
12191         * gst/gstpad.c: (gst_real_pad_class_init),
12192         (_gst_real_pad_fixate_accumulator):
12193         Revert POINTER->BOXED change in signal marshaller.
12194
12195 === release 0.7.4 ===
12196                                                                                 
12197 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12198                                                                                 
12199         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12200         * configure.ac: changed for release
12201
12202 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12203
12204         * gstreamer.spec.in:
12205           bump required version of gtk-doc
12206
12207 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12208
12209         * gst/gstcaps.h:
12210         * gst/gstelement.c: (gst_element_base_class_init),
12211         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12212         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12213         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12214         (gst_real_pad_dispose):
12215         * gst/gststructure.c: (gst_structure_free),
12216         (gst_structure_from_string):
12217           revert patch that breaks applications, reapply after release
12218           to get this fixed properly
12219
12220 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12221
12222         * gst/gsttag.c: (_gst_tag_initialize):
12223         * gst/gsttag.h:
12224           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12225
12226 2004-02-04  David Schleef  <ds@schleef.org>
12227
12228         Fix some memleaks:
12229         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12230         (gst_spider_plug_from_srcpad):
12231         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12232
12233 2004-02-04  David Schleef  <ds@schleef.org>
12234
12235         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12236         a GstRealPad before accessing its structure members.
12237
12238 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12239
12240         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12241         (gst_clock_get_speed):
12242         * gst/gstclock.h:
12243           reset padding, remove unused fields
12244
12245 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12246
12247         * gst/autoplug/gstspideridentity.c:
12248         (gst_spider_identity_sink_loop_type_finding):
12249           use get_allowed_caps, not get_caps (fixes #132519)
12250         * gst/elements/gsttypefind.c: (stop_typefinding):
12251           use correct order when sending buffers and seeking
12252
12253 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12254
12255         * configure.ac:
12256         * gst/gstelement.h:
12257         * gst/gstpad.h:
12258         * gst/gstqueue.h:
12259           upgrade libtool CURRENT, reset padding
12260
12261 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12262
12263         * configure.ac:
12264           bump to prerelease
12265           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12266
12267 2004-02-04  David Schleef  <ds@schleef.org>
12268
12269         * docs/random/ds/0.9-suggested-changes: random notes
12270         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12271         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12272         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12273         expansion.
12274         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12275         (gst_filesink_get_query_types): same
12276         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12277         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12278         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12279         to use new GST_PTR_FORMAT.
12280         * gst/gstelement.h: deprecate function factory macros
12281         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12282         These are our last variadic macros that can't be replaced with
12283         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12284         attempting to deprecate gst_element_clock_wait().
12285         * gst/gstevent.h: same
12286         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12287         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12288         * gst/gstpad.h: deprecate function factory macros similar to above.
12289
12290 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12291
12292         * configure.ac:
12293         * tools/Makefile.am:
12294         * tools/gst-run.c: (popt_callback), (hash_print_key),
12295         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12296         (get_candidates), (main):
12297           add new source file to generate non-versioned wrapper binaries
12298           for our tools.
12299
12300 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12301
12302         * gst/gstevent.c: (_gst_event_free):
12303           actually break; inside the switch statement
12304         * gst/parse/grammar.y:
12305           fix memleak where GValues weren't unset
12306
12307 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12308
12309         * gst/gststructure.c: (gst_structure_from_string):
12310           fix huge memleak
12311         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12312         (new_entry), (gst_type_find_element_chain):
12313         * gst/gstelement.c: (gst_element_base_class_init),
12314         (gst_element_class_set_details):
12315         * gst/gstpad.c: (gst_pad_can_link_filtered):
12316           fix smaller memleaks
12317         * gst/gstpad.c: (gst_real_pad_dispose):
12318           check that explicit caps are gone
12319         * gst/gststructure.c: (gst_structure_free):
12320           actually free the structure
12321         * gst/gstelement.c: (gst_element_clear_pad_caps):
12322           unset explicit caps
12323
12324 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12325
12326         * tools/Makefile.am:
12327           use AM_CFLAGS since all the CFLAGS are the same
12328           use AM_LDFAGS
12329
12330 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12331
12332         * docs/manual/gnome.xml:
12333           expand example a little
12334         * gst/gst.c: (gst_init_with_popt_table),
12335         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12336           make sure popt option displays are done with right textdomain
12337           use GstPoptOption type
12338         * gst/gst.h:
12339           create GstPoptOption type
12340
12341 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12342
12343         * gst/gsterror.c: (_gst_stream_errors_init):
12344         * gst/gsterror.h:
12345           adding error type for no codec
12346         * po/POTFILES.in:
12347           add gst-inspect
12348         * po/nl.po:
12349           update dutch translation
12350         * tools/gst-inspect.c: (print_element_list), (main):
12351           do proper internationalization
12352         * tools/gst-launch.c: (idle_func):
12353           remove commented out function call
12354
12355 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12356
12357         * docs/README:
12358           add some error fixing notes
12359         * docs/gst/gstreamer-sections.txt:
12360           remove double entries
12361         * docs/gst/tmpl/gstbin.sgml:
12362         * docs/gst/tmpl/gstclock.sgml:
12363           remove override
12364         * docs/gst/tmpl/gstelement.sgml:
12365         * docs/gst/tmpl/gstindex.sgml:
12366         * docs/gst/tmpl/gstobject.sgml:
12367         * docs/gst/tmpl/gstpadtemplate.sgml:
12368         * docs/gst/tmpl/gstreamer-unused.sgml:
12369         * docs/gst/tmpl/gsttag.sgml:
12370         * docs/gst/tmpl/gstthread.sgml:
12371         * docs/gst/tmpl/gstxml.sgml:
12372         * gst/gsttag.h:
12373           sync header prototypes with c decls
12374         * gst/gsttaginterface.c:
12375           fix doc headers
12376
12377 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12378
12379         * gst/parse/Makefile.am:
12380         * gst/gstobject.h:
12381           get rid of gstmarshal.h dependency. It's not needed.
12382         * gst/gst.h:
12383         * gst/elements/gstfakesink.c:
12384         * gst/elements/gstfakesrc.c:
12385         * gst/elements/gstidentity.c:
12386         * gst/gstbin.c:
12387         * gst/gstelement.c:
12388         * gst/gstindex.c:
12389         * gst/gstobject.c:
12390         * gst/gstpad.c:
12391         * gst/gstthread.c:
12392         * gst/gstxml.c:
12393         * libs/gst/control/dparam.c:
12394         * libs/gst/control/dparammanager.c:
12395           include gstmarshal.h.
12396         Fixes #132045
12397
12398 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12399
12400         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12401         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12402         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12403         * gst/elements/gstfilesrc.h:
12404           don't ref the filesrc when creating mmaped buffers. Don't keep a
12405           list of not-yet-destroyed buffers.
12406         * gst/gstbuffer.h:
12407           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12408
12409 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12410
12411         * gst/gst.c: (init_pre):
12412           remove textdomain
12413
12414 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12415
12416         * docs/pwg/advanced-events.xml:
12417         * docs/pwg/advanced-scheduling.xml:
12418         * docs/pwg/intro-basics.xml:
12419         * docs/pwg/other-manager.xml:
12420         * docs/pwg/other-nton.xml:
12421         * docs/pwg/other-ntoone.xml:
12422         * docs/pwg/other-oneton.xml:
12423         * docs/pwg/pwg.xml:
12424           All sort of documentation... Forgot what. Point is that I want this
12425           in before I leave. The 'other-*' will be the last section and will
12426           explain issues specific to these type of elements.
12427
12428 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12429
12430         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12431         (gst_filesrc_get_read):
12432           set all the values on buffers that we can
12433
12434 2004-02-02  David Schleef  <ds@schleef.org>
12435
12436         Change usage of isblah() to g_ascii_isblah() to be more locale
12437         independent.  (#133076)
12438         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12439         * gst/gstutils.c:
12440         * gst/parse/parse.l:
12441
12442 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12443
12444         reviewed by: David Schleef  <ds@schleef.org>
12445
12446         Fix memory leaks:
12447         * gst/gstcaps.c: (gst_caps_to_string):
12448         * gst/registries/gstxmlregistry.c:
12449         (gst_xml_registry_add_path_list_func),
12450         (gst_xml_registry_parse_padtemplate):
12451
12452 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12453
12454         * gst/gstelement.c: (gst_element_default_error):
12455           suffix error messages with period
12456
12457 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12458
12459         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12460         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12461         * gst/gsterror.c: (gst_error_get_message):
12462           Suffix with dots
12463         * po/fr.po:
12464         * po/nl.po:
12465           Update translation files
12466
12467 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12468
12469         * gst/autoplug/gstspideridentity.c:
12470         (gst_spider_identity_sink_loop_type_finding):
12471         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12472         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12473         (gst_filesink_close_file), (gst_filesink_handle_event),
12474         (gst_filesink_chain):
12475         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12476         (gst_filesrc_get_read), (gst_filesrc_open_file):
12477         * gst/elements/gstidentity.c: (gst_identity_chain):
12478         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12479         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12480         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12481         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12482         * gst/gsterror.c: (_gst_core_errors_init),
12483         (_gst_library_errors_init), (_gst_resource_errors_init),
12484         (_gst_stream_errors_init), (gst_error_get_message):
12485         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12486         (gst_pad_recover_caps_error), (gst_pad_pull):
12487         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12488         * gst/schedulers/gstbasicscheduler.c:
12489         (gst_basic_scheduler_chainhandler_proxy),
12490         (gst_basic_scheduler_gethandler_proxy),
12491         (gst_basic_scheduler_cothreaded_chain):
12492           Suffix error messages with period.
12493           Use (NULL) instead of NULL
12494
12495 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12496
12497         * docs/gst/tmpl/gstelement.sgml:
12498         * docs/gst/tmpl/gstxml.sgml:
12499         * gst/gstelement.c: (gst_element_error_full):
12500           add element path to error
12501
12502 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12503
12504         * docs/random/mimetypes:
12505           update raw int/float info
12506         * gst/gsttag.c: (_gst_tag_initialize):
12507         * gst/gsttag.h:
12508           add GST_TAG_ENCODER
12509
12510 2004-01-30  David Schleef  <ds@schleef.org>
12511
12512         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12513           missing (#132991)
12514
12515 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12516
12517         reviewed by Benjamin Otte 
12518           parts of the patch submitted in bug #113913
12519
12520         * configure.ac:
12521           use AC_C_INLINE. Use = instead of == with test
12522         * examples/plugins/example.c:
12523         * gst/autoplug/gstspideridentity.c:
12524         * gst/elements/gstfdsrc.c:
12525         * gst/elements/gstfilesrc.c:
12526         * gst/elements/gstidentity.c:
12527         * gst/elements/gstmultidisksrc.c:
12528         * gst/elements/gststatistics.c:
12529         * gst/gstelement.c:
12530         * gst/gstobject.c:
12531         * gst/gstpad.c:
12532         * gst/gstpipeline.c:
12533         * gst/gstthread.c:
12534           don't end enums with a comma
12535         * gst/gstindex.c: (gst_index_compare_func):
12536           do explicit casting to gint
12537         * gst/gsttrace.c: (gst_trace_text_flush):
12538           #define strsize as a macro
12539
12540 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12541
12542         * docs/README:
12543         * docs/gst/gstreamer-docs.sgml:
12544         * docs/gst/gstreamer-sections.txt:
12545         * docs/gst/tmpl/gstelement.sgml:
12546         * docs/gst/tmpl/gsterror.sgml:
12547         * docs/gst/tmpl/gstinterface.sgml:
12548         * docs/gst/tmpl/gstreamer-unused.sgml:
12549         * docs/gst/tmpl/gststructure.sgml:
12550         * docs/gst/tmpl/gsttag.sgml:
12551         * docs/gst/tmpl/gsttaginterface.sgml:
12552         * docs/gst/tmpl/gstvalue.sgml:
12553         make sure all API ends up in the built docs
12554         * gst/gstinterface.c:
12555         * gst/gststructure.c: (gst_structure_id_set_value),
12556         (gst_structure_set_value), (gst_structure_id_get_value):
12557         * gst/gststructure.h:
12558         * gst/gstvalue.h:
12559         sync .h with .c declarations
12560
12561 2004-01-30  Julien Moutte  <julien@moutte.net>
12562
12563         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12564         Ronald will fix riffread.
12565
12566 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12567
12568         * docs/pwg/advanced-interfaces.xml:
12569           Added tuner interface docs.
12570
12571 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12572
12573         * docs/random/mimetypes:
12574           correct Theora information
12575         * gst/gstelement.h:
12576           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12577
12578 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12579
12580         * gst/gstelement.c: (gst_element_error_full):
12581         * gst/gstelement.h:
12582           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12583
12584 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12585
12586         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12587         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12588         again and even before DISCONT.
12589         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12590         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12591         bytestream so that it's not stopping to fill the bytestream if events
12592         different than EOS or DISCONT are received. Instead it process them so
12593         that they go downstream.
12594
12595 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12596
12597         * docs/gst/tmpl/gstelement.sgml:
12598         * docs/gst/tmpl/gstreamer-unused.sgml:
12599         * docs/gst/tmpl/gstxml.sgml:
12600         * gst/autoplug/gstspideridentity.c:
12601         (gst_spider_identity_sink_loop_type_finding):
12602         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12603         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12604         (gst_filesink_close_file), (gst_filesink_handle_event),
12605         (gst_filesink_chain):
12606         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12607         (gst_filesrc_get_read), (gst_filesrc_open_file):
12608         * gst/elements/gstidentity.c: (gst_identity_chain):
12609         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12610         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12611         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12612         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12613         * gst/gstelement.h:
12614         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12615         (gst_pad_recover_caps_error), (gst_pad_pull):
12616         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12617         * gst/schedulers/gstbasicscheduler.c:
12618         (gst_basic_scheduler_chainhandler_proxy),
12619         (gst_basic_scheduler_gethandler_proxy),
12620         (gst_basic_scheduler_cothreaded_chain):
12621           gst_element_error -> GST_ELEMENT_ERROR
12622
12623 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12624
12625         * docs/Makefile.am:
12626         * docs/gst/tmpl/gstelement.sgml:
12627         * docs/gst/tmpl/gstxml.sgml:
12628         * docs/manuals.mak:
12629         * docs/pwg/advanced-request.xml:
12630         * docs/pwg/advanced-scheduling.xml:
12631         * docs/pwg/advanced-tagging.xml:
12632           fix non-validating docbook using CDATA
12633           make sure make check-local gets run first to check if it validates
12634
12635 2004-01-29  Julien MOUTTE <julien@moutte.net>
12636
12637         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12638         handling (up and downstream).
12639         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12640         my_filter thing.
12641
12642 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12643
12644         * docs/pwg/advanced-tagging.xml:
12645           Add docs about tag writing.
12646
12647 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12648
12649         * docs/pwg/advanced-tagging.xml:
12650           Add a part about tag reading and application signalling... Tag
12651           writing still needs to be documented.
12652         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12653           We can set file locations in READY, too.
12654
12655 2004-01-29  Julien MOUTTE <julien@moutte.net>
12656
12657         * docs/random/ds/element-checklist: Adding some notes about src
12658         events.
12659
12660 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12661
12662         * docs/random/mimetypes:
12663           Update docs to point to correct elements for various mimetypes, and
12664           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12665           <stephane.loeuillet@tiscali.fr>.
12666
12667 2004-01-28  David Schleef  <ds@schleef.org>
12668
12669         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12670
12671 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12672
12673         * docs/random/mimetypes:
12674           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12675           undefined"
12676         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12677           make it only work in NULL.
12678         * gst/gstcaps.c:
12679           don't posion NULL caps
12680         * gst/gstelement.c: (gst_element_set_time):
12681           add debugging statement
12682         * gst/gstelement.c: (gst_element_emit_found_tag),
12683         (gst_element_found_tag_func), (gst_element_found_tags):
12684         * gst/gstelement.h:
12685           These functions take const taglists
12686         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12687           fix memleak
12688         * gst/gstpad.c: (gst_pad_event_default):
12689           make more effort on handling discont and clocks, g_warn if everything
12690           fails
12691         * gst/gststructure.c: (gst_structure_remove_fields),
12692         (gst_structure_remove_fields_valist):
12693         * gst/gststructure.h:
12694           add gst_structure_remove_fields(_valist)
12695         * gst/gsttag.c:
12696           fix doc glitch
12697
12698 2004-01-28  David Schleef  <ds@schleef.org>
12699
12700         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12701         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12702         Fix memory leakage of gst_caps_to_string().
12703
12704         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12705         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12706         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12707         (gst_spider_identity_sink_loop_type_finding):
12708         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12709         (find_suggest):
12710         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12711         (gst_pad_set_explicit_caps):
12712         * gst/parse/grammar.y:
12713
12714 2004-01-28  David Schleef  <ds@schleef.org>
12715
12716         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12717         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12718         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12719         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12720         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12721         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12722         (gst_debug_log_default), (_gst_info_printf_extension),
12723         (_gst_info_printf_extension_arginfo):  Add printf extension.
12724         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12725         * gst/gststructure.c: (gst_structure_to_string),
12726         (_gst_structure_parse_value): Use gst_value_deserialize() and
12727         remove old code.
12728         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12729         (gst_value_deserialize_boolean), (gst_strtoi),
12730         (gst_value_deserialize_int), (gst_value_deserialize_double),
12731         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12732         a bunch of deserialize functions and gst_value_deserialize.
12733         * gst/gstvalue.h: er, _de_serialize, not unserialize
12734         * testsuite/caps/string-conversions.c: (main): We don't currently
12735         handle (float) in caps, so convert these to (double).
12736         * testsuite/debug/Makefile.am: Add new test for the printf extension
12737         * testsuite/debug/printf_extension.c: (main): same
12738
12739 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12740
12741         * docs/random/company/time:
12742           Add some docs about clocking and time
12743
12744 2004-01-28  Julien MOUTTE <julien@moutte.net>
12745
12746         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12747
12748 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12749
12750         * docs/pwg/advanced-clock.xml:
12751         * docs/pwg/advanced-dparams.xml:
12752         * docs/pwg/advanced-events.xml:
12753         * docs/pwg/advanced-interfaces.xml:
12754         * docs/pwg/advanced-midi.xml:
12755         * docs/pwg/advanced-request.xml:
12756         * docs/pwg/advanced-scheduling.xml:
12757         * docs/pwg/advanced-tagging.xml:
12758         * docs/pwg/advanced-types.xml:
12759         * docs/pwg/appendix-checklist.xml:
12760         * docs/pwg/building-boiler.xml:
12761         * docs/pwg/building-chainfn.xml:
12762         * docs/pwg/building-filterfactory.xml:
12763         * docs/pwg/building-pads.xml:
12764         * docs/pwg/building-props.xml:
12765         * docs/pwg/building-signals.xml:
12766         * docs/pwg/building-state.xml:
12767         * docs/pwg/building-testapp.xml:
12768         * docs/pwg/intro-basics.xml:
12769         * docs/pwg/intro-preface.xml:
12770         * docs/pwg/other-autoplugger.xml:
12771         * docs/pwg/other-sink.xml:
12772         * docs/pwg/other-source.xml:
12773         * docs/pwg/titlepage.xml:
12774           fix up id's
12775
12776 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12777
12778         * docs/95NonPath:
12779         * docs/HACKING:
12780         * docs/README:
12781         * docs/building-the-docs-on-debian:
12782           collect relevant bits of doc info
12783
12784 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12785
12786         * docs/pwg/advanced_tagging.xml:
12787           Half-assed commit so Thomas can re-arrange document IDs here to be
12788           consistent, too.
12789
12790 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12791
12792         * docs/manual/autoplugging.xml:
12793         * docs/manual/bins-api.xml:
12794         * docs/manual/bins.xml:
12795         * docs/manual/buffers-api.xml:
12796         * docs/manual/buffers.xml:
12797         * docs/manual/clocks.xml:
12798         * docs/manual/components.xml:
12799         * docs/manual/cothreads.xml:
12800         * docs/manual/debugging.xml:
12801         * docs/manual/dparams-app.xml:
12802         * docs/manual/dynamic.xml:
12803         * docs/manual/elements-api.xml:
12804         * docs/manual/elements.xml:
12805         * docs/manual/factories.xml:
12806         * docs/manual/gnome.xml:
12807         * docs/manual/goals.xml:
12808         * docs/manual/helloworld.xml:
12809         * docs/manual/helloworld2.xml:
12810         * docs/manual/init-api.xml:
12811         * docs/manual/intro.xml:
12812         * docs/manual/links-api.xml:
12813         * docs/manual/links.xml:
12814         * docs/manual/manual.xml:
12815         * docs/manual/motivation.xml:
12816         * docs/manual/pads-api.xml:
12817         * docs/manual/pads.xml:
12818         * docs/manual/plugins-api.xml:
12819         * docs/manual/plugins.xml:
12820         * docs/manual/programs.xml:
12821         * docs/manual/queues.xml:
12822         * docs/manual/quotes.xml:
12823         * docs/manual/schedulers.xml:
12824         * docs/manual/states-api.xml:
12825         * docs/manual/states.xml:
12826         * docs/manual/threads.xml:
12827         * docs/manual/typedetection.xml:
12828         * docs/manual/xml.xml:
12829           use chapter, part, section or misc as id starts for all bits
12830
12831 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12832
12833         * docs/gst/gstreamer-sections.txt:
12834           Fix up TITLE of the sections
12835
12836 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12837
12838         * docs/pwg/advanced_interfaces.xml:
12839           Add documentation on propertyprobing.
12840         * docs/pwg/advanced_events.xml:
12841         * docs/pwg/advanced_tagging.xml:
12842         * docs/pwg/building_boiler.xml:
12843         * docs/pwg/building_filterfactory.xml:
12844         * docs/pwg/pwg.xml:
12845           Move filterfactory and tagging into their own chapter, add a chapter
12846           on events. all these are empty placeholders that will be filled in
12847           some day.
12848
12849 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12850
12851         * docs/pwg/advanced_interfaces.xml:
12852           Docs for mixer interface. Also a check for website uploading.
12853
12854 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12855
12856         * docs/HACKING:
12857         * docs/Makefile.am:
12858         * docs/faq/Makefile.am:
12859         * docs/gst/Makefile.am:
12860         * docs/gst/tmpl/gstelement.sgml:
12861         * docs/gst/tmpl/gstplugin.sgml:
12862         * docs/gst/tmpl/gstreamer-unused.sgml:
12863         * docs/libs/Makefile.am:
12864         * docs/manual/Makefile.am:
12865         * docs/manuals.mak:
12866         * docs/pwg/Makefile.am:
12867         * docs/upload.mak:
12868           Separate out upload target and make it similar for
12869           both docbook and gtk-doc docs
12870
12871 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12872
12873         * docs/manuals.mak:
12874           Fix upload target to work with freedesktop
12875
12876 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12877
12878         * docs/pwg/advanced_types.xml:
12879           Add notes on creating your own types.
12880         * docs/pwg/building_boiler.xml:
12881         * docs/pwg/building_pads.xml:
12882         * docs/pwg/building_state.xml:
12883           Add some stuff about how to retrieve values from structures, how
12884           that relates to types and change layout slightly again to be almost
12885           perfect.
12886
12887 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12888
12889         * docs/pwg/advanced_dparams.xml:
12890         * docs/pwg/advanced_scheduling.xml:
12891           Change index layout slightly.
12892
12893 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12894
12895         * docs/pwg/advanced_clock.xml:
12896         * docs/pwg/advanced_interfaces.xml:
12897         * docs/pwg/advanced_midi.xml:
12898           General placeholders for now.
12899         * docs/pwg/advanced_request.xml:
12900           Explanation about sometimes and request pads.
12901         * docs/pwg/advanced_scheduling.xml:
12902           Concept of bytestream, loopfunctions and schedulers.
12903         * docs/pwg/building_boiler.xml:
12904           Add something about plugin-init.
12905
12906 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12907
12908         * docs/pwg/building_pads.xml:
12909           Fix broken docbook
12910
12911 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12912
12913         * docs/pwg/advanced_interfaces.xml:
12914         * docs/pwg/pwg.xml:
12915           Add as a placeholder for future filling-in.
12916         * docs/pwg/basics_autoplugging.xml:
12917         * docs/pwg/basics_buffers.xml:
12918         * docs/pwg/basics_elements.xml:
12919         * docs/pwg/basics_events.xml:
12920         * docs/pwg/basics_plugins.xml:
12921         * docs/pwg/basics_types.xml:
12922           Remove, because unused (this is all in intro_basics.xml).
12923         * docs/pwg/building_signals.xml:
12924           Short intro to signals + reference to GObject docs - we really
12925           shouldn't go into these sort of things to deply because we don't
12926           use them that extensively anyway.
12927         * docs/pwg/building_state.xml:
12928           Explanation of states. Benjamin, please check.
12929         * docs/pwg/building_testapp.xml:
12930           Put everything in one page - putting only a few lines of content
12931           per page doesn't really make sense.
12932
12933           Time to get into the advanced topics. ;).
12934
12935 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12936
12937         * docs/pwg/advanced_types.xml:
12938           Finish documenting the current state of mimetypes.
12939         * docs/pwg/building_boiler.xml:
12940         * docs/pwg/building_chainfn.xml:
12941         * docs/pwg/building_pads.xml:
12942         * docs/pwg/building_props.xml:
12943         * docs/pwg/building_testapp.xml:
12944           Start documenting the "how to build a simple audio filter" part
12945           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12946           states and (maybe?) a short introduction to capsnego in the chapter
12947           on pads (building_pads.xml). Capsnego should probably be explained
12948           fully in advanced_capsnego.xml or so.
12949
12950 2004-01-26  David Schleef  <ds@schleef.org>
12951
12952         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12953         * gst/gstpad.h: Add new function to allow element to (somewhat)
12954         specify non-fixed caps on a pad.
12955         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12956         that I added a few weeks ago.
12957
12958 2004-01-26  David Schleef  <ds@schleef.org>
12959
12960         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12961           making try_set_caps() work with non-fixed caps.
12962
12963 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12964
12965         * docs/pwg/advanced_types.xml:
12966         * docs/pwg/intro_basics.xml:
12967         * docs/pwg/intro_preface.xml:
12968         * docs/pwg/pwg.xml:
12969         * docs/pwg/titlepage.xml:
12970           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12971           in here (docs/random/mimetypes), and will from there on work on both
12972           updating outdated parts and adding missing parts.
12973           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12974
12975 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12976
12977         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12978           policy is set
12979
12980 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12981
12982         * gst/gstelement.h:
12983           remove gst_element_factory_get_version. It doesn't exist anymore.
12984         * gst/gstplugin.c:
12985         * gst/gstplugin.h:
12986           remove gst_plugin_set_name and change gst_plugin_get_longname to
12987           gst_plugin_get_description to match code.
12988         * gst/gsterror.h:
12989           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12990         * gst/gstpad.c: (gst_pad_try_set_caps):
12991           make it work with nonfixed caps.
12992           Note that even in the nonfixed case the link function of the pad
12993           that tries to set caps isn't called.
12994
12995 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12996
12997         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12998           fix bug where buffer was not assembled correctly
12999         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
13000           silence by default
13001         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13002           only seek if there's no more buffers that could work without seeking
13003
13004 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13005
13006         * gst/gsttag.c: (_gst_tag_initialize):
13007         * gst/gsttag.h:
13008           Add application tag (for encoding/muxing app).
13009
13010 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13011
13012         * autogen.sh:
13013           make autopoint force, and libtoolize not copy
13014         * common/m4/as-docbook.m4:
13015           added docbook xml catalog setup check
13016         * common/m4/gst-doc.m4:
13017           use docbook check
13018
13019 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13020
13021         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13022         * gst/gsttag.h:
13023           add GstTagFlag
13024
13025 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13026
13027         * docs/gst/gstreamer-sections.txt:
13028         * docs/gst/tmpl/gst.sgml:
13029         * docs/gst/tmpl/gstbuffer.sgml:
13030         * docs/gst/tmpl/gstclock.sgml:
13031         * docs/gst/tmpl/gstelement.sgml:
13032         * docs/gst/tmpl/gstreamer-unused.sgml:
13033         * docs/gst/tmpl/gstxml.sgml:
13034           sync latest API changes to docs
13035
13036 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13037
13038         * gst/gstpluginfeature.c:
13039           fix doc snippet
13040         * tools/gst-inspect.c: (print_element_list):
13041           fix output of typefind
13042           add GPL header
13043         * tools/gst-launch.c:
13044           add GPL header
13045
13046 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13047
13048         * gst/elements/Makefile.am:
13049         * gst/elements/gstelements.c:
13050         * gst/elements/gsttypefindelement.c:
13051         * gst/elements/gsttypefindelement.h:
13052         * po/POTFILES.in:
13053         * po/fr.po:
13054         * po/nl.po:
13055           renamed gsttypefindelement to gsttypefind, conserving CVS history
13056
13057 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13058
13059         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
13060         * gst/gsttag.h:
13061           add some tags used in ogg as well
13062           fix _ in replaygain tags
13063
13064 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13065
13066         * gst/gsterror.h:
13067           fix wrong GST_LIBRARY_ERROR_ENCODE addition
13068
13069 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13070
13071         * gst/gstelement.c: (gst_element_error_full):
13072         * gst/gstelement.h:
13073           change _extended to _full
13074
13075 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13076
13077         reviewed by: <delete if not using a buddy>
13078
13079         * docs/gst/tmpl/gst.sgml:
13080         * docs/gst/tmpl/gstbuffer.sgml:
13081         * docs/gst/tmpl/gstclock.sgml:
13082         * docs/gst/tmpl/gstelement.sgml:
13083         * docs/gst/tmpl/gstreamer-unused.sgml:
13084         * docs/gst/tmpl/gstxml.sgml:
13085         * gst/gstelement.c: (gst_element_error_full):
13086         * gst/gstelement.h:
13087
13088 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13089
13090         * gst/gstelement.h: fix _gst_element_error_printf prototype
13091
13092 2004-01-20  David Schleef  <ds@schleef.org>
13093
13094         * gst/gststructure.c: (gst_structure_to_string):
13095         Convert function to use gst_value_serialize().
13096         * gst/gstvalue.c: (gst_value_serialize_list),
13097         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13098         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13099         (gst_value_serialize_int), (gst_value_serialize_double),
13100         (gst_string_wrap), (gst_value_serialize_string),
13101         (gst_value_serialize), (gst_value_deserialize):
13102         * gst/gstvalue.h:
13103         Add implementations for serialize.
13104
13105 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13106
13107         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13108         we want to keep that one in the future or change xvidenc.c to use 
13109         another error.
13110
13111 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13112
13113         * gst/gstelement.c: (_gst_element_error_printf):
13114         * gst/gstelement.h:
13115           privatise function
13116
13117 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13118
13119         * docs/random/error:
13120           doc explaining error system
13121         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13122           cleanup
13123
13124 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13125
13126         * gst/gst-i18n-app.h:
13127         * gst/gst-i18n-lib.h:
13128           remove inclusion of config.h
13129         * po/POTFILES.in:
13130         * po/nl.po:
13131           add gst/gstelement.c
13132
13133 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13134
13135         * po/nl.po: updated Dutch translation
13136
13137 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13138
13139         * gst/gsterror.c: (_gst_core_errors_init),
13140         (_gst_library_errors_init), (_gst_resource_errors_init),
13141         (_gst_stream_errors_init):
13142         remove ending punctuation dots
13143
13144 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13145
13146         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13147         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13148         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13149         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13150         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13151         use GST_ERROR_SYSTEM
13152
13153 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13154
13155         * gst/gstelement.c: (gst_element_error_printf),
13156         (gst_element_error_extended):
13157         * gst/gstelement.h:
13158           add a helper printf function so we can have NULL values passed.
13159
13160 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13161
13162         * gst/gstelement.h:
13163           add G_STMT macros to gst_element_error, which isn't strictly
13164           necessary but people tell me to anyway.
13165
13166 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13167
13168         * gst/Makefile.am:
13169         * gst/autoplug/gstspideridentity.c:
13170         (gst_spider_identity_sink_loop_type_finding):
13171         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13172         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13173         (gst_filesink_close_file), (gst_filesink_handle_event),
13174         (gst_filesink_chain):
13175         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13176         (gst_filesrc_map_region), (gst_filesrc_get_read),
13177         (gst_filesrc_open_file):
13178         * gst/elements/gstidentity.c: (gst_identity_chain):
13179         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13180         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13181         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13182         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13183         * gst/gst.h:
13184         * gst/gst_private.h:
13185         * gst/gstelement.c: (gst_element_class_init),
13186         (gst_element_default_error), (gst_element_error_func),
13187         (gst_element_error_extended):
13188         * gst/gstelement.h:
13189         * gst/gsterror.c: (_gst_core_errors_init),
13190         (_gst_library_errors_init), (_gst_resource_errors_init),
13191         (_gst_stream_errors_init), (gst_error_get_message):
13192         * gst/gsterror.h:
13193         * gst/gstinfo.c: (_gst_debug_init):
13194         * gst/gstmarshal.list:
13195         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13196         (gst_pad_recover_caps_error), (gst_pad_pull):
13197         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13198         * gst/schedulers/gstbasicscheduler.c:
13199         (gst_basic_scheduler_chainhandler_proxy),
13200         (gst_basic_scheduler_gethandler_proxy),
13201         (gst_basic_scheduler_cothreaded_chain):
13202         * po/POTFILES.in:
13203         * po/fr.po:
13204         * po/nl.po:
13205           change error signal
13206           add error categories
13207
13208 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13209
13210         * gst/gsttag.c: (_gst_tag_initialize):
13211         * gst/gsttag.h:
13212         Add replaygain tag
13213
13214 2004-01-18  Colin Walters  <walters@verbum.org>
13215
13216         * examples/retag/retag.c: Call gst_init before processing
13217         program args.  Add g_assert to _link_many call.
13218
13219 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13220
13221         * gst/gstpad.c: (gst_pad_alloc_buffer):
13222           Return a newly allocated buffer when the pad has no peer.
13223
13224 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13225
13226         * gst/gstclock.c: (gst_clock_get_time):
13227           make it compile with gcc 2.95 again.
13228           Patch by Scott Wheeler
13229
13230 2004-01-15  David Schleef  <ds@schleef.org>
13231
13232         * gst/gstcaps.h:
13233         Added gst_caps_is_simple() macro.
13234         * testsuite/caps/caps.c: (test1):
13235         * testsuite/caps/intersect2.c: (main):
13236         * testsuite/caps/intersection.c: (main):
13237         Fixes to make 'make check' work again after removing
13238         gst_caps_is_chained().
13239
13240 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13241
13242         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13243         and additions to the MIDI document.
13244
13245 2004-01-15  David Schleef  <ds@schleef.org>
13246
13247         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13248         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13249         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13250
13251 2004-01-15  David Schleef  <ds@schleef.org>
13252
13253         * gst/gstqueue.c:
13254         * gst/gstqueue.h:
13255         Fix the spelling of "treshold" and make min_threshold actually
13256         affect the queue.
13257
13258 2004-01-15  David Schleef  <ds@schleef.org>
13259
13260         * gst/gstcaps.c:
13261         Add lots of documentation.
13262         * gst/gstcaps.h:
13263         Deprecate a few functions.
13264         * gst/gstpad.c:
13265         Removed use of deprecated functions.
13266
13267 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13268
13269         * gst/gstpad.c: (gst_pad_is_linked):
13270         * gst/gstpad.h:
13271           implement gst_pad_is_linked
13272         * gst/gstelement.h:
13273           reserve space for initiate_state_change
13274
13275 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13276
13277         * gst/autoplug/gstspideridentity.c:
13278         (gst_spider_identity_sink_loop_type_finding):
13279           break infinite loop by just returning instead of looping
13280         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13281           set event time difference correctly. Set it to 1 second instead
13282           of 100ms to be more tolerant
13283         * gst/gstelement.c: (gst_element_set_time):
13284           add debugging output
13285
13286 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13287
13288         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13289           query if buffers are inside the pool, ignore events
13290
13291 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13292
13293         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13294         (gst_clock_set_speed), (gst_clock_set_active),
13295         (gst_clock_is_active), (gst_clock_reset),
13296         (gst_clock_handle_discont):
13297         * gst/gstclock.h:
13298           deprecate old interface and disable functions that aren't in use
13299           anymore.
13300         * gst/gstelement.h:
13301         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13302         (gst_element_set_time), (gst_element_adjust_time):
13303           add concept of "element time" and functions to get/set this time.
13304         * gst/gstelement.c: (gst_element_change_state):
13305           update element time correctly.
13306         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13307           This is a debug message, not a g_critical.
13308         * gst/gstpad.c: (gst_pad_event_default):
13309           handle discontinuous events right with element time.
13310         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13311           update to clocking fixes.
13312           set clocks on elements in READY=>PAUSED. The old behaviour caused
13313           a wrong element time on the first element that started playing.
13314         * gst/schedulers/gstbasicscheduler.c:
13315         (gst_basic_scheduler_class_init):
13316         * gst/schedulers/gstoptimalscheduler.c:
13317         (gst_opt_scheduler_class_init):
13318           remove code that just implements the default behaviour.
13319         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13320           update to use new clocking functions
13321         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13322         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13323           update to test new element time.
13324         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13325           use _get_allowed_caps instead of _get_caps. This catches filtered
13326           caps correctly.
13327         * testsuite/debug/commandline.c:
13328           update for new GST_DEBUG syntax.
13329         * testsuite/threads/Makefile.am:
13330           disable a test that only works sometimes.
13331
13332 2004-01-13  Julien MOUTTE <julien@moutte.net>
13333
13334         * po/LINGUAS: Adding fr.
13335         * po/fr.po: Adding french translation.
13336
13337 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13338
13339         * gst/parse/grammar.y:
13340         * po/POTFILES.in:
13341         * po/nl.po:
13342         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13343           translate parsing error messages
13344
13345 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13346
13347         * po/POTFILES.in: adding gst-launch
13348         * po/nl.po: updated translation, all 99 strings translated
13349         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13350         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13351           fix strings for translation
13352
13353 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13354
13355         * gst/gst.c:
13356           - capitalize beginnings of popt options
13357           - fix strings for translation
13358           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13359
13360 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13361
13362         * po/README: add some notes on how to update translations
13363
13364 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13365
13366         * ABOUT-NLS: removed, is autogenerated from autopoint
13367         * autogen.sh: add autopoint stuff
13368         * configure.ac: fix up gettext stuff
13369         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13370         * gst/elements/gsttypefindelement.c: add header include
13371         * gst/gettext.h: add header, copy from system-installed header
13372         * gst/gst-i18n-app.h: to be included by each app having translations
13373         * gst/gst-i18n-lib.h: to be included by each lib having translations
13374         * gst/gst.c: (init_pre): fix up gettext calls
13375         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13376         * po/LINGUAS: the new way to specify translations present
13377         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13378         * po/Makevars: the variables filled in for GStreamer
13379         * po/POTFILES.in: added new files with translations
13380         * po/de.po: has new strings
13381         * po/nl.po: readded, has new strings
13382
13383 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13384
13385         * gst/gsttag.c: fix some strings marked for translation
13386
13387 2004-01-13  Iain <iain@prettypeople.org>
13388
13389         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13390         group when we add an element to it, cos we unref it when we remove one
13391
13392 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13393
13394         * testsuite/debug/commandline.c: (debug_not_reached):
13395         * testsuite/debug/output.c: (check_message):
13396           fix testsuite
13397
13398 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13399
13400         * examples/cutter/.cvsignore:
13401         * examples/helloworld/.cvsignore:
13402         * examples/launch/.cvsignore:
13403         * examples/manual/.cvsignore:
13404         * examples/mixer/.cvsignore:
13405         * examples/pingpong/.cvsignore:
13406         * examples/plugins/.cvsignore:
13407         * examples/queue/.cvsignore:
13408         * examples/queue2/.cvsignore:
13409         * examples/queue3/.cvsignore:
13410         * examples/queue4/.cvsignore:
13411         * examples/retag/.cvsignore:
13412         * examples/thread/.cvsignore:
13413         * examples/typefind/.cvsignore:
13414         * examples/xml/.cvsignore:
13415         * gst/.cvsignore:
13416         * gst/autoplug/.cvsignore:
13417         * gst/elements/.cvsignore:
13418         * gst/indexers/.cvsignore:
13419         * gst/parse/.cvsignore:
13420         * gst/registries/.cvsignore:
13421         * gst/schedulers/.cvsignore:
13422         * libs/gst/bytestream/.cvsignore:
13423         * libs/gst/control/.cvsignore:
13424         * libs/gst/getbits/.cvsignore:
13425         * tests/.cvsignore:
13426         * tests/bufspeed/.cvsignore:
13427         * tests/instantiate/.cvsignore:
13428         * tests/memchunk/.cvsignore:
13429         * tests/muxing/.cvsignore:
13430         * tests/sched/.cvsignore:
13431         * tests/seeking/.cvsignore:
13432         * tests/threadstate/.cvsignore:
13433         * testsuite/.cvsignore:
13434         * testsuite/caps/.cvsignore:
13435         * testsuite/cleanup/.cvsignore:
13436         * testsuite/dynparams/.cvsignore:
13437         * testsuite/plugin/.cvsignore:
13438         * tools/.cvsignore:
13439           update - this is huge, because it includes *.bb, *.bbg and *.da files
13440           which are generated for gcov.
13441
13442 2004-01-11  David Schleef  <ds@schleef.org>
13443
13444         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13445         a function to parse integers in ways that strto[u]l() does not.
13446
13447 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13448
13449         * tools/gst-inspect.c: (print_caps):
13450           improve output of caps a bit
13451
13452 2004-01-11  David Schleef  <ds@schleef.org>
13453
13454         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13455         inherit correct flags (READONLY and DONTKEEP).
13456
13457 2004-01-11  David Schleef  <ds@schleef.org>
13458
13459         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13460         (gst_filesrc_map_region):
13461         * gst/gstbuffer.c: (_gst_buffer_initialize),
13462         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13463         (gst_buffer_new), (gst_buffer_create_sub),
13464         (gst_buffer_is_span_fast), (gst_buffer_span):
13465         * gst/gstbuffer.h:
13466         Change GstBuffer private structure element names. (all files)
13467         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13468         (gst_queue_link):
13469         * gst/gstqueue.h:
13470         Implement getcaps/pad_link functions that handle the case where
13471         there are data in the queue.
13472
13473 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13474
13475         * gst/elements/gstbufferstore.c:
13476           initialize debugging structure correctly
13477         * gst/elements/gsttee.c: (gst_tee_set_property):
13478           g_object_notify when property was changed
13479         * gst/elements/gsttypefindelement.c:
13480         (gst_type_find_element_change_state):
13481           clear caps correctly
13482
13483 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13484
13485         * gst/gstqueue.c: (gst_queue_init):
13486           Use better defaults for when a queue should block. This
13487           gets rid of jerky playback for quite a few files.
13488           It takes more memory.
13489
13490 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13491
13492         (gst_xml_registry_parse_padtemplate):
13493           make critical message slightly more useful
13494
13495 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13496
13497         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13498         (gst_debug_message_get), (gst_debug_log_default):
13499         * gst/gstinfo.h:
13500           Change gst_debug_log(_valist) to take a const format string.
13501           Change prototype of log function and functions using those to 
13502           take a GstDebugMessage instead of a string that requires using
13503           gst_debug_message_get.
13504
13505 2004-01-08  David Schleef  <ds@schleef.org>
13506
13507         * Makefile.am:
13508         * configure.ac:
13509         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13510         and -ftest-coverage, which allows gcov to show information about
13511         testsuite coverage.
13512
13513 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13514
13515         * gst/gstutils.h:
13516           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13517           GST_PARENT_CALL_WITH_DEFAULT
13518         * gst/elements/gstaggregator.c: 
13519         * gst/elements/gstbufferstore.c: 
13520         * gst/elements/gstfakesink.c: 
13521         * gst/elements/gstfakesrc.c: 
13522         * gst/elements/gstfdsink.c: 
13523         * gst/elements/gstfdsrc.c: 
13524         * gst/elements/gstfilesink.c: 
13525         * gst/elements/gstfilesrc.c: 
13526         * gst/elements/gstidentity.c: 
13527         * gst/elements/gstmd5sink.c: 
13528         * gst/elements/gstmultidisksrc.c:
13529         * gst/elements/gstpipefilter.c: 
13530         * gst/elements/gstshaper.c:
13531         * gst/elements/gststatistics.c:
13532         * gst/elements/gsttee.c:
13533         * gst/elements/gsttypefindelement.c:
13534           use them.
13535
13536 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13537
13538         * docs/gst/gstreamer-docs.sgml: remove props
13539         * docs/gst/gstreamer-sections.txt: remove props
13540         * docs/gst/tmpl/gst.sgml:
13541         * docs/gst/tmpl/gstbin.sgml:
13542         * docs/gst/tmpl/gstbuffer.sgml:
13543         * docs/gst/tmpl/gstcaps.sgml:
13544         * docs/gst/tmpl/gstclock.sgml:
13545         * docs/gst/tmpl/gstelement.sgml:
13546         * docs/gst/tmpl/gstindex.sgml:
13547         * docs/gst/tmpl/gstobject.sgml:
13548         * docs/gst/tmpl/gstpad.sgml:
13549         * docs/gst/tmpl/gstpadtemplate.sgml:
13550         * docs/gst/tmpl/gstreamer-unused.sgml:
13551         * docs/gst/tmpl/gstthread.sgml:
13552         * docs/gst/tmpl/gstxml.sgml:
13553           sync with code reorganization
13554
13555 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13556
13557         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13558         Make the 'Could not find compatible pad' message more informative.
13559
13560 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13561                                                                                 
13562         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13563           Fix for if we pass NULL as property to location.
13564         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13565         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13566           Fix for instantiate-test (see below).
13567         * gst/gststructure.c: (_gst_structure_parse_value):
13568           Fix compile error on gcc-2.96.
13569         * configure.ac:
13570         * tests/Makefile.am:
13571         * tests/instantiate/Makefile.am:
13572         * tests/instantiate/create.c: (create_all_elements), (main):
13573           Add a test that instantiates all elements. This makes it easy to
13574           track dead code for old API/design (like setting event functions
13575           on sink pads and so on).
13576
13577 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13578
13579         * gst/gstcaps.c: (gst_caps_append_structure):
13580           Move the poisoning to allow a NULL structure
13581         * gst/gstevent.c: (_gst_event_free):
13582           When freeing a navigation event, free the structure
13583           also
13584
13585 2004-01-04  David Schleef  <ds@schleef.org>
13586
13587         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13588         Remove usage of gst_pad_proxy_fixate.
13589         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13590         (gst_caps_split_one), (gst_caps_replace):
13591         Add poisoning code.
13592         * gst/gstmarshal.list:
13593         Add pointer__pointer for fixate signal
13594         * gst/gstpad.c: (gst_real_pad_class_init),
13595         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13596         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13597         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13598         Add poisoning code. Add fixate signal on RealPad. Change
13599         set_explicit_caps() to take const GstCaps, like try_set_caps().
13600         * gst/gstpad.h:
13601         * testsuite/caps/Makefile.am:
13602         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13603
13604 2004-01-03  David Schleef  <ds@schleef.org>
13605
13606         * gst/elements/gsttypefindelement.c:
13607         (gst_type_find_element_have_type), (gst_type_find_element_init):
13608         Use gst_pad_use_explicit_caps for src pad.
13609         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13610         before using it.
13611
13612 2004-01-03  David Schleef  <ds@schleef.org>
13613
13614         * gst/gstelement.c: (gst_element_link_pads_filtered),
13615         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13616         that linking was successful.
13617         * gst/gstpad.c: (gst_pad_link_free),
13618         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13619         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13620         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13621         GstPadLinkReturn correctly between functions, and don't fail
13622         when DELAYED is used (DELAYED is very important).  Better
13623         cleanup on unlinking and unnegotiation.  Should fix some spider
13624         bugs.
13625
13626 2004-01-02  David Schleef  <ds@schleef.org>
13627
13628         * gst/gstelement.c: (gst_element_class_init),
13629         (gst_element_base_class_init): ->padtemplates should be cleared
13630         in base_init, since we need to have a fresh list for every
13631         class.  (Alternately, we chould copy the list and share the
13632         actual pad templates (not the list), but that would require
13633         changing every plugin to move pad template registration from
13634         base_init to class_init.)
13635
13636 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13637
13638         * gst/gstelement.c: (gst_element_class_add_pad_template):
13639           Refuse registering a pad template if another pad template
13640           with the same name already exists (#114715).
13641
13642 2004-01-02  David Schleef  <ds@schleef.org>
13643
13644         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13645         (gst_caps_is_equal_fixed): Add new function.
13646         * gst/gstcaps.h: ditto.
13647         * gst/gstpad.c: (gst_real_pad_class_init),
13648         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13649         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13650         check new caps against existing caps -- if they're the same, return
13651         OK without renegotiating.  caps-nego-failed signal fixed so that
13652         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13653         to save an extra caps copy.  Don't complete negotiation if a pad
13654         link function returns DELAYED.
13655
13656 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13657
13658         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13659           Fix wrong g_return_if_fail
13660
13661 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13662
13663         * gst/gstbin.c: (gst_bin_class_init):
13664         Change the marshalling of element_added/element_removed
13665         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13666         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13667
13668 2004-01-01  David Schleef  <ds@schleef.org>
13669
13670         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13671         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13672         (gst_pad_use_explicit_caps):
13673         * gst/gstpad.h:
13674         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13675         to use an internal getcaps and link fuction so that negotiation
13676         always results in the explicitly set caps.
13677         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13678         are particularly useful for decoders.
13679
13680 2003-12-31  David Schleef  <ds@schleef.org>
13681
13682         * gst/elements/gstidentity.c: (gst_identity_class_init),
13683         (gst_identity_init), (gst_identity_chain),
13684         (gst_identity_set_property), (gst_identity_get_property):
13685         * gst/elements/gstidentity.h:
13686         * gst/gstqueue.c: (gst_queue_init):
13687           Negotiation fixes.
13688
13689 2003-12-31  David Schleef  <ds@schleef.org>
13690
13691         * gst/gstcaps.c: (gst_caps_intersect),
13692         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13693           Implement gst_caps_normalize().
13694         * testsuite/caps/normalisation.c: (main):
13695           Add an additional test
13696
13697 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13698
13699         * gst/gstqueue.c: (gst_queue_init):
13700           use gst_pad_proxy_getcaps()
13701
13702 2003-12-31  David Schleef  <ds@schleef.org>
13703
13704         * gst/elements/gstshaper.c: (gst_shaper_link):
13705         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13706         * gst/gstqueue.c: (gst_queue_link):
13707           Negotiation fixes.
13708
13709 2003-12-31  David Schleef  <ds@schleef.org>
13710
13711         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13712         * gst/gstpad.h: Add functions that are useful as default pad
13713         link and fixate functions for elements.
13714
13715 2003-12-30  David Schleef  <ds@schleef.org>
13716
13717         * gst/gstpad.c: (gst_pad_link_try):
13718           Fix segfault when attempting to return to old caps
13719
13720 2003-12-29  David Schleef  <ds@schleef.org>
13721
13722         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13723         (gst_caps_structure_simplify), (gst_caps_simplify):
13724         * gst/gstcaps.h:
13725           Add simplify function
13726         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13727         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13728         * gst/gstpad.h:
13729           Copy over srcnotify, sinknotify when calling old pad_link
13730           functions.  Add new is_negotiated() function.
13731         * gst/gststructure.c: (gst_structure_copy):
13732           Fix an incredibly stupid bug that should have been noticed
13733           weeks ago.  _copy() returned the argument, not the new copy.
13734
13735 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13736
13737         * gst/gstcaps.c: (gst_caps_append):
13738           add sanity checks
13739         * gst/gstcaps.h: (gst_caps_debug):
13740           remove, it doesn't exist anymore.
13741         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13742         (gst_element_threadsafe_properties_post_run):
13743           make debugging messages not clutter up THREAD debug category
13744         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13745         (gst_element_change_state):
13746           update to new caps API
13747         * gst/gstinterface.c: (gst_implements_interface_cast):
13748           don't put vital code in g_return_if_fail
13749         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13750         (gst_pad_link_filtered):
13751           add pst_pad_try_link and use it.
13752         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13753           implement correctly, deprecate first one.
13754         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13755           add and implement.
13756         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13757           implement.
13758         (gst_pad_get_negotiated_caps):
13759           add and implement. Make GST_PAD_CAPS call this function.
13760         (gst_pad_get_caps):
13761           remove unneeded check..
13762         (gst_pad_recover_caps_error):
13763           disable, always return FALSE.
13764         (gst_real_pad_dispose):
13765           don't free caps and appfilter anymore, they're unused.
13766         * gst/gstpad.h:
13767           Reflect changes mentioned above.
13768         * gst/gstsystemclock.c: (gst_system_clock_wait):
13769           Make 'clock is way behind' a debugging message.
13770         * gst/gstthread.c: (gst_thread_change_state):
13771           Fix debugging message
13772
13773 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13774
13775         * gst/gstinfo.h:
13776           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13777         * docs/gst/tmpl/gstreamer-unused.sgml:
13778           removed all traces of cvs conflicts
13779
13780 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13781
13782         * configure.ac:
13783         * gst/schedulers/cothreads_compat.h:
13784         * libs/Makefile.am:
13785           remove last instances of wingo cothread usage
13786
13787 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13788
13789         * gst/gstplugin.c:
13790         * gst/gstversion.h.in:
13791         * gst/parse/grammar.y:
13792           change comment block from /** to /* when not gtk-doc comments
13793
13794 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13795
13796         * gst/gst.c: whitespace and doc style fixes
13797
13798 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13799
13800         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13801
13802 2003-12-24  Colin Walters  <walters@verbum.org>
13803
13804         * gst/elements/gsttypefindelement.c:
13805           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13806           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13807           Don't double-free caps.
13808
13809 2003-12-23  David Schleef  <ds@schleef.org>
13810
13811         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13812           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13813           Many little fixes and additions of debug statements to
13814           get rhythmbox working.
13815
13816 2003-12-23  Colin Walters  <walters@verbum.org>
13817
13818         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13819         Use GST_PAD_LINK_SUCCESSFUL.
13820
13821 2003-12-23  David Schleef  <ds@schleef.org>
13822
13823         * gst/elements/gstaggregator.c:
13824         * gst/elements/gsttee.c:
13825           Use gst_pad_proxy_getcaps().
13826         * gst/gstpad.c:
13827         * gst/gstpad.h:
13828           Add gst_pad_proxy_getcaps(), which filter elements can use
13829           as a generic getcaps implementation.
13830           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13831           was advertised.
13832
13833 2003-12-23  David Schleef  <ds@schleef.org>
13834
13835         * gst/gstpad.c:
13836           Rearrange/rewrite much of the pad negotiation code, since it
13837           resembled pasta.  This actually changes the way some
13838           negotiation works, since the previous code was inconsistent
13839           depending on how it was invoked.  Add (internal) structure
13840           GstPadLink, which is used to hold some information (more in
13841           the future) about the link between two pads.  Fixes a number
13842           of bugs, including random lossage of filter caps when the
13843           initial negotiation is delayed.  A few functions are still
13844           unimplemented.
13845         * gst/gstpad.h:
13846           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13847           these when testing GstPadLinkReturn values instead of comparing
13848           directly.
13849
13850 2003-12-23  David Schleef  <ds@schleef.org>
13851
13852         * gst/gstvalue.c: 
13853         * gst/gstvalue.h:
13854           Rearrange lots of code.  Change registration of compare function
13855           into registration of compare/serialize/deserialize functions.
13856           Doesn't include implementation of gst_value_[de]serialize(),
13857           but that should be easy.
13858
13859 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13860
13861         * docs/gst/gstreamer-sections.txt:
13862         * docs/gst/tmpl/gstprops.sgml: removed
13863         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13864           David removed props and caps code, so let's remove their docs as well.
13865           Removed all no longer existing symbols from gstreamer-sections.txt
13866           
13867 2003-12-22  Colin Walters  <walters@verbum.org>
13868
13869         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13870           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13871           of tags directly.
13872
13873 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13874
13875         * gst/elements/gstelements.c:
13876           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13877         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13878           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13879           gst_caps (peer).
13880
13881 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13882
13883         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13884         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13885         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13886         (gst_spider_identity_sink_loop_type_finding):
13887         * gst/autoplug/gstspideridentity.h:
13888           Fix autoplugging in spider element, so it works with new caps.
13889           This was mainly caused by identifying empty caps incorrectly.
13890
13891 2003-12-22  David Schleef  <ds@schleef.org>
13892
13893         * gststructure.c, gstvalue.c, gstvalue.h: Add
13894           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13895           using g_value_copy()
13896
13897 2003-12-21  David Schleef  <ds@schleef.org>
13898
13899         * many, many files: Merge CAPS branch.  This includes:
13900           - implemention of GstValue and several GstValue types
13901           - implemention of GstStructure
13902           - entire rewrite of GstCaps
13903           - removal of GstProps
13904           - many changes to GstPad to compensate for new caps paradigm
13905           - removal of GstBufferpool
13906         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13907         gstvalue.h, gst/gstcaps[2]*.[ch]:
13908           - rename gstcaps2.[ch] to gstcaps.[ch]
13909
13910 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13911
13912         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13913         (gst_queue_chain), (gst_queue_handle_src_event):
13914           implement timeout for sending events. Workaround for if the
13915           pipeline on this queue is not passing any data.
13916
13917 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13918                                                                                 
13919         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13920         * moved CVS to freedesktop.org